diff --git a/.storybook/main.ts b/.storybook/main.ts
index 991699cd5c..83a74d4f54 100644
--- a/.storybook/main.ts
+++ b/.storybook/main.ts
@@ -3,6 +3,7 @@ import type { StorybookConfig } from '@storybook/react-vite';
const config: StorybookConfig = {
stories: ['../packages/**/*.stories.@(j|t)s?(x)'],
addons: [
+ '@storybook/addon-outline',
'@storybook/addon-actions',
'@storybook/addon-controls',
'@storybook/addon-interactions',
diff --git a/.storybook/preview.tsx b/.storybook/preview.tsx
index 76b86176db..e24fa709d1 100644
--- a/.storybook/preview.tsx
+++ b/.storybook/preview.tsx
@@ -8,7 +8,6 @@ import React from 'react';
import { Provider } from 'react-redux';
import { MemoryRouter } from 'react-router-dom';
-// @ts-ignore
const { VITE_LOCAL_STORYBOOK } = import.meta.env;
initialize({
@@ -21,6 +20,9 @@ initialize({
const queryClient = new QueryClient();
const preview: Preview = {
+ parameters: {
+ margin: '40px'
+ },
decorators: [
Story => {
const store = configureStore();
@@ -28,14 +30,22 @@ const preview: Preview = {
-
-
-
+
);
},
+ // Decorator som legger på ekstra margin. Kan overstyrast med parameter på komponentnivå/enkeltstories ved behov.
+ // Feks viss ein lager stories for komponenter som skal vise på toppnivå på sida kan det vere lurt å sette parameter
+ // layout: "fullscreen", som også fjerner margin her.
+ (Story, {parameters}) => {
+ return parameters.margin !== null && parameters.layout !== 'fullscreen' ?
+
+
+
:
+
+ },
],
loaders: [
async context => {
diff --git a/README.md b/README.md
index 3b551c7f99..0a26c0af1b 100644
--- a/README.md
+++ b/README.md
@@ -43,6 +43,7 @@ Aktiveres ved å definere en eller flere features i `.env.development`fil i _env
## Pakkeoppdatering
### Avhengigheter som må ha samme versjon
+
Noen sub-pakker i dette prosjekt har avhengigheter til kode fra [ft-frontend-saksbehandling](https://github.com/navikt/ft-frontend-saksbehandling).
Samtidig har disse sub-pakkene felles avhengigheter med koden i [ft-frontend-saksbehandling](https://github.com/navikt/ft-frontend-saksbehandling).
@@ -71,7 +72,10 @@ Kode som legges inn her blir kontrollert av en strengere tsconfig.json. Gammel k
det motsatte skal ikke skje, kode under _packages/v2_ skal aldri importere kode som ikke ligger under _v2_. På denne
måten får vi gjort en gradvis overgang til bedre kontrollert typescript.
+Mer info om dette i [v2/README](./packages/v2/README.md)
+
## Bygg og utrulling
+
Ved merge av **PR til master** branch blir koden bygd inn i et Docker image og rulla ut til testmiljø på https://k9.dev.intern.nav.no.
Etter godkjenning i pipeline blir samme Docker image rulla ut i produksjon på https://k9.intern.nav.no/.
@@ -80,6 +84,7 @@ skjer automatisk ved merge av **PR til dev-next1** branch. Denne utrulling lever
hver nye utrulling her stenges servicen ned inntil det skjer en ny utrulling.
### Storybook
+
Katalog med brukergrensesnitt-komponenter blir publisert i storybook på https://navikt.github.io/k9-sak-web/
## For NAV-ansatte
diff --git a/_mocks/featureToggles.ts b/_mocks/featureToggles.ts
index 2209e5d8a2..cb8d1e4c1c 100644
--- a/_mocks/featureToggles.ts
+++ b/_mocks/featureToggles.ts
@@ -46,8 +46,8 @@ export const featureTogglesFactory = () => [
value: process.env.VITE_AKSJONSPUNKT_9015,
},
{
- key: "ALDERSVILKAR_KRONISK_SYK",
- value: process.env.VITE_ALDERSVILKAR_KRONISK_SYK
+ key: 'ALDERSVILKAR_KRONISK_SYK',
+ value: process.env.VITE_ALDERSVILKAR_KRONISK_SYK,
},
{
key: 'FRITEKST_REDIGERING',
@@ -80,5 +80,9 @@ export const featureTogglesFactory = () => [
{
key: 'UTVIDET_VARSELFELT',
value: process.env.VITE_UTVIDET_VARSELFELT,
- }
+ },
+ {
+ key: 'SKILL_UT_PRIVATPERSON',
+ value: process.env.VITE_SKILL_UT_PRIVATPERSON,
+ },
];
diff --git a/deploy/dev-fss-k9saksbehandling.yml b/deploy/dev-fss-k9saksbehandling.yml
index fad9b01ca0..58611014c0 100644
--- a/deploy/dev-fss-k9saksbehandling.yml
+++ b/deploy/dev-fss-k9saksbehandling.yml
@@ -109,3 +109,5 @@ spec:
value: "true"
- name: UTVIDET_VARSELFELT
value: "true"
+ - name: SKILL_UT_PRIVATPERSON
+ value: "true"
diff --git a/deploy/prod-fss-k9saksbehandling.yml b/deploy/prod-fss-k9saksbehandling.yml
index 1bd4e8da07..c315db1805 100644
--- a/deploy/prod-fss-k9saksbehandling.yml
+++ b/deploy/prod-fss-k9saksbehandling.yml
@@ -106,3 +106,5 @@ spec:
value: "false"
- name: UTVIDET_VARSELFELT
value: "true"
+ - name: SKILL_UT_PRIVATPERSON
+ value: "false"
diff --git a/envDir/.env.development b/envDir/.env.development
index 71e32718b9..d8b57743ab 100644
--- a/envDir/.env.development
+++ b/envDir/.env.development
@@ -16,3 +16,4 @@ VITE_FIX_SOKNADSFRIST_KALENDER_OG_READONLY=true
VITE_INKLUDER_KALENDER_PILS=true
VITE_OVERSTYRING_UTTAK=true
VITE_NYE_NOKKELTALL=true
+VITE_SKILL_UT_PRIVATPERSON=true
diff --git a/feature-toggles.json b/feature-toggles.json
index 95521b80d6..87b84bd75c 100644
--- a/feature-toggles.json
+++ b/feature-toggles.json
@@ -86,5 +86,9 @@
{
"key": "UTVIDET_VARSELFELT",
"value": "${UTVIDET_VARSELFELT}"
+ },
+ {
+ "key": "SKILL_UT_PRIVATPERSON",
+ "value": "${SKILL_UT_PRIVATPERSON}"
}
]
diff --git a/package.json b/package.json
index 638d0aba03..0a82079955 100644
--- a/package.json
+++ b/package.json
@@ -34,7 +34,7 @@
"storybook": "VITE_LOCAL_STORYBOOK=true storybook dev -p 9001",
"build-storybook": "storybook build -o .static_storybook",
"build-storybook-test": "VITE_LOCAL_STORYBOOK=true storybook build --test -o .static_storybook",
- "prepare": "husky install",
+ "prepare": "husky",
"sentry-release": "(SENTRY_RELEASE=$(git rev-parse --short HEAD); node ./scripts/sentry-release.cjs)"
},
"workspaces": [
@@ -43,16 +43,16 @@
],
"dependencies": {
"@hookform/error-message": "^2.0.1",
- "@navikt/aksel-icons": "6.13.0",
- "@navikt/ds-css": "6.13.0",
- "@navikt/ds-react": "6.13.0",
- "@navikt/ds-tailwind": "^6.13.0",
- "@navikt/familie-endringslogg": "13.1.1",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/aksel-icons": "6.16.3",
+ "@navikt/ds-css": "6.16.3",
+ "@navikt/ds-react": "6.16.3",
+ "@navikt/ds-tailwind": "^6.16.3",
+ "@navikt/familie-endringslogg": "13.1.2",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"@popperjs/core": "2.11.8",
- "@sentry/browser": "8.27.0",
- "@sentry/react": "^8.27.0",
- "axios": "1.7.5",
+ "@sentry/browser": "8.28.0",
+ "@sentry/react": "^8.28.0",
+ "axios": "1.7.7",
"date-fns": "3.6.0",
"date-fns-tz": "3.1.3",
"history": "5.3.0",
@@ -61,13 +61,13 @@
"postcss-import": "^16.1.0",
"react": "18.3.1",
"react-dom": "18.3.1",
- "react-router": "6.26.0",
- "react-router-dom": "6.26.0",
+ "react-router": "6.26.1",
+ "react-router-dom": "6.26.1",
"vite-plugin-svgr": "4.2.0"
},
"devDependencies": {
- "@playwright/test": "^1.46.1",
- "@sentry/cli": "2.34.1",
+ "@playwright/test": "^1.47.0",
+ "@sentry/cli": "2.35.0",
"@storybook/addon-a11y": "^8.2.9",
"@storybook/addon-actions": "^8.2.9",
"@storybook/addon-docs": "^8.2.9",
@@ -85,7 +85,7 @@
"@testing-library/user-event": "14.5.2",
"@types/history": "5.0.0",
"@types/prop-types": "15.7.12",
- "@types/react": "18.3.3",
+ "@types/react": "18.3.5",
"@types/react-collapse": "5.0.4",
"@types/react-router-dom": "5.3.3",
"@types/redux-form": "8.3.11",
@@ -95,16 +95,16 @@
"cross-env": "7.0.3",
"eslint": "9.9.1",
"eslint-config-prettier": "9.1.0",
- "eslint-plugin-jsx-a11y": "6.9.0",
- "eslint-plugin-react": "7.35.0",
+ "eslint-plugin-jsx-a11y": "6.10.0",
+ "eslint-plugin-react": "7.35.2",
"eslint-plugin-vitest": "~0.5.4",
"globals": "^15.9.0",
"husky": "9.1.5",
- "jsdom": "24.1.1",
- "lint-staged": "15.2.9",
- "msw": "2.4.1",
+ "jsdom": "24.1.3",
+ "lint-staged": "15.2.10",
+ "msw": "2.4.2",
"msw-storybook-addon": "^2.0.3",
- "postcss": "^8.4.41",
+ "postcss": "^8.4.45",
"prettier": "3.3.3",
"react-popper": "2.3.0",
"storybook": "^8.2.9",
@@ -115,13 +115,13 @@
"typed-css-modules": "^0.9.1",
"typescript": "5.5.4",
"typescript-eslint": "^7.18.0",
- "vite": "^5.4.2",
+ "vite": "^5.4.3",
"vite-plugin-html": "^3.2.2",
"vitest": "2.0.5",
"vitest-axe": "0.1.0"
},
"resolutions": {
- "postcss": "8.4.41",
+ "postcss": "8.4.45",
"parse-url": "8.1.0",
"@types/react": "17"
},
diff --git a/packages/behandling-felles/package.json b/packages/behandling-felles/package.json
index 51a27744de..42d5523362 100644
--- a/packages/behandling-felles/package.json
+++ b/packages/behandling-felles/package.json
@@ -16,7 +16,7 @@
"@k9-sak-web/modal-sett-pa-vent": "1.0.0",
"@k9-sak-web/rest-api-hooks": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"classnames": "2.5.1",
"react": "18.3.1",
"react-intl": "6.6.8",
diff --git a/packages/behandling-frisinn/package.json b/packages/behandling-frisinn/package.json
index eca812fa12..9b6379dd90 100644
--- a/packages/behandling-frisinn/package.json
+++ b/packages/behandling-frisinn/package.json
@@ -18,8 +18,8 @@
"@k9-sak-web/rest-api": "1.0.0",
"@k9-sak-web/rest-api-hooks": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ft-fakta-beregning-redesign": "1.2.21",
- "@navikt/ft-prosess-beregningsgrunnlag": "6.5.26",
+ "@navikt/ft-fakta-beregning-redesign": "1.2.27",
+ "@navikt/ft-prosess-beregningsgrunnlag": "6.5.32",
"react": "18.3.1",
"react-intl": "6.6.8"
}
diff --git a/packages/behandling-omsorgspenger/package.json b/packages/behandling-omsorgspenger/package.json
index fc170eb445..a15858bf4a 100644
--- a/packages/behandling-omsorgspenger/package.json
+++ b/packages/behandling-omsorgspenger/package.json
@@ -31,9 +31,9 @@
"@k9-sak-web/rest-api": "1.0.0",
"@k9-sak-web/rest-api-hooks": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ft-fakta-beregning-redesign": "1.2.21",
- "@navikt/ft-fakta-fordel-beregningsgrunnlag": "7.5.22",
- "@navikt/ft-prosess-beregningsgrunnlag": "6.5.26",
+ "@navikt/ft-fakta-beregning-redesign": "1.2.27",
+ "@navikt/ft-fakta-fordel-beregningsgrunnlag": "7.5.29",
+ "@navikt/ft-prosess-beregningsgrunnlag": "6.5.32",
"react": "18.3.1",
"react-intl": "6.6.8"
}
diff --git a/packages/behandling-opplaeringspenger/package.json b/packages/behandling-opplaeringspenger/package.json
index 8bd4071d32..043a8b8e5c 100644
--- a/packages/behandling-opplaeringspenger/package.json
+++ b/packages/behandling-opplaeringspenger/package.json
@@ -35,10 +35,10 @@
"@k9-sak-web/rest-api-hooks": "1.0.0",
"@k9-sak-web/sak-app": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ft-fakta-beregning-redesign": "1.2.21",
- "@navikt/ft-fakta-fordel-beregningsgrunnlag": "7.5.22",
- "@navikt/ft-prosess-beregningsgrunnlag": "6.5.26",
- "axios": "1.7.5",
+ "@navikt/ft-fakta-beregning-redesign": "1.2.27",
+ "@navikt/ft-fakta-fordel-beregningsgrunnlag": "7.5.29",
+ "@navikt/ft-prosess-beregningsgrunnlag": "6.5.32",
+ "axios": "1.7.7",
"react": "18.3.1",
"react-intl": "6.6.8"
}
diff --git a/packages/behandling-pleiepenger-sluttfase/package.json b/packages/behandling-pleiepenger-sluttfase/package.json
index c2ef7d1848..f3e9a71224 100644
--- a/packages/behandling-pleiepenger-sluttfase/package.json
+++ b/packages/behandling-pleiepenger-sluttfase/package.json
@@ -16,7 +16,6 @@
"@fpsak-frontend/prosess-varsel-om-revurdering": "1.0.0",
"@fpsak-frontend/prosess-vedtak": "1.0.0",
"@fpsak-frontend/prosess-vilkar-opptjening-oms": "1.0.0",
- "@fpsak-frontend/prosess-vilkar-sokers-opplysningsplikt": "1.0.0",
"@fpsak-frontend/shared-components": "1.0.0",
"@fpsak-frontend/utils": "1.0.0",
"@k9-sak-web/behandling-felles": "1.0.0",
@@ -31,10 +30,10 @@
"@k9-sak-web/rest-api-hooks": "1.0.0",
"@k9-sak-web/sak-app": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ft-fakta-beregning-redesign": "1.2.21",
- "@navikt/ft-fakta-fordel-beregningsgrunnlag": "7.5.22",
- "@navikt/ft-prosess-beregningsgrunnlag": "6.5.26",
- "axios": "1.7.5",
+ "@navikt/ft-fakta-beregning-redesign": "1.2.27",
+ "@navikt/ft-fakta-fordel-beregningsgrunnlag": "7.5.29",
+ "@navikt/ft-prosess-beregningsgrunnlag": "6.5.32",
+ "axios": "1.7.7",
"react": "18.3.1",
"react-intl": "6.6.8"
}
diff --git a/packages/behandling-pleiepenger-sluttfase/src/panelDefinisjoner/prosessStegPaneler/inngangsvilkarPaneler/SokersOpplysningspliktPanelDef.tsx b/packages/behandling-pleiepenger-sluttfase/src/panelDefinisjoner/prosessStegPaneler/inngangsvilkarPaneler/SokersOpplysningspliktPanelDef.tsx
deleted file mode 100644
index afef0f901c..0000000000
--- a/packages/behandling-pleiepenger-sluttfase/src/panelDefinisjoner/prosessStegPaneler/inngangsvilkarPaneler/SokersOpplysningspliktPanelDef.tsx
+++ /dev/null
@@ -1,44 +0,0 @@
-import React from 'react';
-
-import vilkarType from '@fpsak-frontend/kodeverk/src/vilkarType';
-import aksjonspunktCodes from '@fpsak-frontend/kodeverk/src/aksjonspunktCodes';
-import behandlingType from '@fpsak-frontend/kodeverk/src/behandlingType';
-import SokersOpplysningspliktVilkarProsessIndex from '@fpsak-frontend/prosess-vilkar-sokers-opplysningsplikt';
-import { ProsessStegPanelDef } from '@k9-sak-web/behandling-felles';
-import { Aksjonspunkt, Behandling } from '@k9-sak-web/types';
-
-class SokersOpplysningspliktPanelDef extends ProsessStegPanelDef {
- getId = () => 'SOKERS_OPPLYSNINGSPLIKT';
-
- getTekstKode = () => 'Inngangsvilkar.Opptjeningsvilkaret';
-
- getKomponent = props => ;
-
- getAksjonspunktKoder = () => [
- aksjonspunktCodes.SOKERS_OPPLYSNINGSPLIKT_OVST,
- aksjonspunktCodes.SOKERS_OPPLYSNINGSPLIKT_MANU,
- ];
-
- getAksjonspunktTekstkoder = () => [
- 'SokersOpplysningspliktForm.UtfyllendeOpplysninger',
- 'SokersOpplysningspliktForm.UtfyllendeOpplysninger',
- ];
-
- getVilkarKoder = () => [vilkarType.SOKERSOPPLYSNINGSPLIKT];
-
- getOverstyrVisningAvKomponent = ({
- behandling,
- aksjonspunkterForSteg,
- }: {
- behandling: Behandling;
- aksjonspunkterForSteg: Aksjonspunkt[];
- }) => {
- const isRevurdering = behandlingType.REVURDERING === behandling.type;
- const hasAp = aksjonspunkterForSteg.some(ap => ap.definisjon === aksjonspunktCodes.SOKERS_OPPLYSNINGSPLIKT_MANU);
- return !(isRevurdering && !hasAp);
- };
-
- getData = ({ soknad }) => ({ soknad });
-}
-
-export default SokersOpplysningspliktPanelDef;
diff --git a/packages/behandling-pleiepenger/package.json b/packages/behandling-pleiepenger/package.json
index d2d2050a0c..587eb9ad31 100644
--- a/packages/behandling-pleiepenger/package.json
+++ b/packages/behandling-pleiepenger/package.json
@@ -17,7 +17,6 @@
"@fpsak-frontend/prosess-varsel-om-revurdering": "1.0.0",
"@fpsak-frontend/prosess-vedtak": "1.0.0",
"@fpsak-frontend/prosess-vilkar-opptjening-oms": "1.0.0",
- "@fpsak-frontend/prosess-vilkar-sokers-opplysningsplikt": "1.0.0",
"@fpsak-frontend/shared-components": "1.0.0",
"@fpsak-frontend/utils": "1.0.0",
"@k9-sak-web/behandling-felles": "1.0.0",
@@ -36,10 +35,10 @@
"@k9-sak-web/sak-app": "1.0.0",
"@k9-sak-web/types": "1.0.0",
"@navikt/diagnosekoder": "^1.2024.0",
- "@navikt/ft-fakta-beregning-redesign": "1.2.21",
- "@navikt/ft-fakta-fordel-beregningsgrunnlag": "7.5.22",
- "@navikt/ft-prosess-beregningsgrunnlag": "6.5.26",
- "axios": "1.7.5",
+ "@navikt/ft-fakta-beregning-redesign": "1.2.27",
+ "@navikt/ft-fakta-fordel-beregningsgrunnlag": "7.5.29",
+ "@navikt/ft-prosess-beregningsgrunnlag": "6.5.32",
+ "axios": "1.7.7",
"react": "18.3.1",
"react-intl": "6.6.8"
}
diff --git a/packages/behandling-pleiepenger/src/panelDefinisjoner/prosessStegPaneler/inngangsvilkarPaneler/SokersOpplysningspliktPanelDef.tsx b/packages/behandling-pleiepenger/src/panelDefinisjoner/prosessStegPaneler/inngangsvilkarPaneler/SokersOpplysningspliktPanelDef.tsx
deleted file mode 100644
index afef0f901c..0000000000
--- a/packages/behandling-pleiepenger/src/panelDefinisjoner/prosessStegPaneler/inngangsvilkarPaneler/SokersOpplysningspliktPanelDef.tsx
+++ /dev/null
@@ -1,44 +0,0 @@
-import React from 'react';
-
-import vilkarType from '@fpsak-frontend/kodeverk/src/vilkarType';
-import aksjonspunktCodes from '@fpsak-frontend/kodeverk/src/aksjonspunktCodes';
-import behandlingType from '@fpsak-frontend/kodeverk/src/behandlingType';
-import SokersOpplysningspliktVilkarProsessIndex from '@fpsak-frontend/prosess-vilkar-sokers-opplysningsplikt';
-import { ProsessStegPanelDef } from '@k9-sak-web/behandling-felles';
-import { Aksjonspunkt, Behandling } from '@k9-sak-web/types';
-
-class SokersOpplysningspliktPanelDef extends ProsessStegPanelDef {
- getId = () => 'SOKERS_OPPLYSNINGSPLIKT';
-
- getTekstKode = () => 'Inngangsvilkar.Opptjeningsvilkaret';
-
- getKomponent = props => ;
-
- getAksjonspunktKoder = () => [
- aksjonspunktCodes.SOKERS_OPPLYSNINGSPLIKT_OVST,
- aksjonspunktCodes.SOKERS_OPPLYSNINGSPLIKT_MANU,
- ];
-
- getAksjonspunktTekstkoder = () => [
- 'SokersOpplysningspliktForm.UtfyllendeOpplysninger',
- 'SokersOpplysningspliktForm.UtfyllendeOpplysninger',
- ];
-
- getVilkarKoder = () => [vilkarType.SOKERSOPPLYSNINGSPLIKT];
-
- getOverstyrVisningAvKomponent = ({
- behandling,
- aksjonspunkterForSteg,
- }: {
- behandling: Behandling;
- aksjonspunkterForSteg: Aksjonspunkt[];
- }) => {
- const isRevurdering = behandlingType.REVURDERING === behandling.type;
- const hasAp = aksjonspunkterForSteg.some(ap => ap.definisjon === aksjonspunktCodes.SOKERS_OPPLYSNINGSPLIKT_MANU);
- return !(isRevurdering && !hasAp);
- };
-
- getData = ({ soknad }) => ({ soknad });
-}
-
-export default SokersOpplysningspliktPanelDef;
diff --git a/packages/behandling-tilbakekreving/package.json b/packages/behandling-tilbakekreving/package.json
index b91e2db417..7233a302ff 100644
--- a/packages/behandling-tilbakekreving/package.json
+++ b/packages/behandling-tilbakekreving/package.json
@@ -16,8 +16,8 @@
"@k9-sak-web/rest-api": "1.0.0",
"@k9-sak-web/rest-api-hooks": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ft-kodeverk": "^2.4.15",
- "@navikt/ft-prosess-tilbakekreving-foreldelse": "3.3.21",
+ "@navikt/ft-kodeverk": "^2.4.17",
+ "@navikt/ft-prosess-tilbakekreving-foreldelse": "3.3.27",
"react": "18.3.1",
"react-intl": "6.6.8"
}
diff --git a/packages/fakta-etablert-tilsyn/package.json b/packages/fakta-etablert-tilsyn/package.json
index 22fd040b55..b318c7a95e 100644
--- a/packages/fakta-etablert-tilsyn/package.json
+++ b/packages/fakta-etablert-tilsyn/package.json
@@ -10,14 +10,14 @@
"dev": "vite serve"
},
"devDependencies": {
- "vite": "^5.4.2",
+ "vite": "^5.4.3",
"vite-plugin-node-polyfills": "^0.22.0"
},
"dependencies": {
- "@navikt/ds-css": "6.13.0",
+ "@navikt/ds-css": "6.16.3",
"@navikt/ds-icons": "3.4.3",
- "@navikt/ds-react": "6.13.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ds-react": "6.16.3",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"@popperjs/core": "2.11.8",
"classnames": "2.5.1",
"dayjs": "1.11.13",
@@ -25,7 +25,7 @@
"react": "18.3.1",
"react-collapse": "5.1.1",
"react-dom": "18.3.1",
- "react-hook-form": "7.52.2",
+ "react-hook-form": "7.53.0",
"react-popper": "2.3.0"
},
"msw": {
diff --git a/packages/fakta-inntektsmelding/package.json b/packages/fakta-inntektsmelding/package.json
index fddad23a57..9f9989e591 100644
--- a/packages/fakta-inntektsmelding/package.json
+++ b/packages/fakta-inntektsmelding/package.json
@@ -10,23 +10,23 @@
"author": "NAV IT",
"license": "MIT",
"devDependencies": {
- "msw": "2.4.1",
- "vite": "^5.4.2",
+ "msw": "2.4.2",
+ "vite": "^5.4.3",
"vite-plugin-node-polyfills": "^0.22.0"
},
"dependencies": {
- "@navikt/ds-css": "6.13.0",
+ "@navikt/ds-css": "6.16.3",
"@navikt/ds-icons": "3.4.3",
- "@navikt/ds-react": "6.13.0",
- "@navikt/ft-form-hooks": "5.0.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ds-react": "6.16.3",
+ "@navikt/ft-form-hooks": "5.0.5",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"@popperjs/core": "2.11.8",
"classnames": "2.5.1",
"dayjs": "1.11.13",
"react": "18.3.1",
"react-collapse": "5.1.1",
"react-dom": "18.3.1",
- "react-hook-form": "7.52.2",
+ "react-hook-form": "7.53.0",
"react-popper": "2.3.0"
},
"msw": {
diff --git a/packages/fakta-institusjon/package.json b/packages/fakta-institusjon/package.json
index 000fb0ea07..3d3c7714a6 100644
--- a/packages/fakta-institusjon/package.json
+++ b/packages/fakta-institusjon/package.json
@@ -7,7 +7,7 @@
"dependencies": {
"@fpsak-frontend/form": "*",
"@k9-sak-web/types": "*",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"formik": "2.4.6"
}
}
diff --git "a/packages/fakta-medisinsk-vilk\303\245r/package.json" "b/packages/fakta-medisinsk-vilk\303\245r/package.json"
index 2ba9b2ba26..4b011445e2 100644
--- "a/packages/fakta-medisinsk-vilk\303\245r/package.json"
+++ "b/packages/fakta-medisinsk-vilk\303\245r/package.json"
@@ -11,26 +11,26 @@
},
"devDependencies": {
"cors": "^2.8.5",
- "msw": "2.4.1",
- "vite": "^5.4.2",
+ "msw": "2.4.2",
+ "vite": "^5.4.3",
"vite-plugin-node-polyfills": "^0.22.0"
},
"dependencies": {
"@fpsak-frontend/form": "1.0.0",
"@navikt/diagnosekoder": "^1.2024.0",
- "@navikt/ds-css": "6.13.0",
+ "@navikt/ds-css": "6.16.3",
"@navikt/ds-icons": "3.4.3",
- "@navikt/ds-react": "6.13.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ds-react": "6.16.3",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"@popperjs/core": "2.11.8",
- "@tanstack/react-query": "^5.52.3",
- "axios": "1.7.5",
+ "@tanstack/react-query": "^5.55.0",
+ "axios": "1.7.7",
"classnames": "2.5.1",
"dayjs": "1.11.13",
"react": "18.3.1",
"react-collapse": "5.1.1",
"react-dom": "18.3.1",
- "react-hook-form": "7.52.2",
+ "react-hook-form": "7.53.0",
"react-outside-click-handler": "1.3.0",
"react-popper": "2.3.0"
},
diff --git a/packages/fakta-medlemskap/package.json b/packages/fakta-medlemskap/package.json
index 5e3614c01b..71c8c7165d 100644
--- a/packages/fakta-medlemskap/package.json
+++ b/packages/fakta-medlemskap/package.json
@@ -12,8 +12,8 @@
"@fpsak-frontend/shared-components": "1.0.0",
"@fpsak-frontend/utils": "1.0.0",
"@k9-sak-web/fakta-felles": "1.0.0",
- "@navikt/ft-form-hooks": "5.0.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ft-form-hooks": "5.0.5",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"i18n-iso-countries": "7.11.3",
"moment": "2.30.1",
"prop-types": "15.8.1",
diff --git a/packages/fakta-medlemskap/src/MedlemskapFaktaIndex.stories.tsx b/packages/fakta-medlemskap/src/MedlemskapFaktaIndex.stories.tsx
index 4b02ad973d..e3ed4f1e64 100644
--- a/packages/fakta-medlemskap/src/MedlemskapFaktaIndex.stories.tsx
+++ b/packages/fakta-medlemskap/src/MedlemskapFaktaIndex.stories.tsx
@@ -151,6 +151,68 @@ const medlemskap = {
},
],
};
+
+const periodeMed5020 = {
+ vurderingsdato: '2018-11-07',
+ personopplysninger: {
+ fnr: null,
+ aktoerId: '1615078487209',
+ diskresjonskode: null,
+ nummer: null,
+ navBrukerKjonn: {
+ kode: 'K',
+ kodeverk: 'BRUKER_KJOENN',
+ },
+ statsborgerskap: {
+ kode: 'NOR',
+ kodeverk: 'LANDKODER',
+ navn: 'Norge',
+ },
+ avklartPersonstatus: {
+ orginalPersonstatus: {
+ kode: 'BOSA',
+ kodeverk: 'PERSONSTATUS_TYPE',
+ },
+ overstyrtPersonstatus: {
+ kode: 'BOSA',
+ kodeverk: 'PERSONSTATUS_TYPE',
+ },
+ },
+ personstatus: {
+ kode: 'BOSA',
+ kodeverk: 'PERSONSTATUS_TYPE',
+ },
+ sivilstand: {
+ kode: 'UGIF',
+ kodeverk: 'SIVILSTAND_TYPE',
+ },
+ navn: 'Mygg Robust',
+ dodsdato: null,
+ fodselsdato: '1966-08-02',
+ adresser: [],
+ region: {
+ kode: 'NORDEN',
+ kodeverk: 'REGION',
+ },
+ annenPart: null,
+ ektefelle: null,
+ barn: [],
+ barnSoktFor: [],
+ barnFraTpsRelatertTilSoknad: [],
+ harVerge: false,
+ },
+ aksjonspunkter: ['5020'],
+ årsaker: ['SKJÆRINGSTIDSPUNKT'],
+ oppholdsrettVurdering: null,
+ erEosBorger: null,
+ lovligOppholdVurdering: null,
+ bosattVurdering: null,
+ medlemskapManuellVurderingType: null,
+ begrunnelse: null,
+};
+
+const medlemskapAp5020 = { ...medlemskap, perioder: [periodeMed5020] };
+
const fagsakPerson = {};
const merknaderFraBeslutter = {
@@ -187,7 +249,7 @@ export const VisAksjonspunktForAvklaringOmBrukerErBosatt = args => (
VisAksjonspunktForAvklaringOmBrukerErBosatt.args = {
behandling,
- medlemskap,
+ medlemskap: medlemskapAp5020,
soknad,
arbeidsforhold,
fagsakPerson,
diff --git a/packages/fakta-medlemskap/src/components/oppholdInntektOgPerioder/OppholdINorgeOgAdresserFaktaPanel.tsx b/packages/fakta-medlemskap/src/components/oppholdInntektOgPerioder/OppholdINorgeOgAdresserFaktaPanel.tsx
index 45cf75b4c5..bb42dec438 100644
--- a/packages/fakta-medlemskap/src/components/oppholdInntektOgPerioder/OppholdINorgeOgAdresserFaktaPanel.tsx
+++ b/packages/fakta-medlemskap/src/components/oppholdInntektOgPerioder/OppholdINorgeOgAdresserFaktaPanel.tsx
@@ -53,7 +53,6 @@ const lagOppholdIUtland = (utlandsOpphold: Opphold['utlandsopphold']) =>
interface OppholdINorgeOgAdresserFaktaPanelProps {
readOnly: boolean;
- // alleKodeverk: { [key: string]: KodeverkMedNavn[] };
alleMerknaderFraBeslutter: MerknaderFraBeslutter;
}
diff --git a/packages/fakta-medlemskap/src/components/oppholdInntektOgPerioder/StatusForBorgerFaktaPanel.spec.tsx b/packages/fakta-medlemskap/src/components/oppholdInntektOgPerioder/StatusForBorgerFaktaPanel.spec.tsx
index 6c811b73cb..1132acb6b5 100644
--- a/packages/fakta-medlemskap/src/components/oppholdInntektOgPerioder/StatusForBorgerFaktaPanel.spec.tsx
+++ b/packages/fakta-medlemskap/src/components/oppholdInntektOgPerioder/StatusForBorgerFaktaPanel.spec.tsx
@@ -4,7 +4,6 @@ import { Aksjonspunkt } from '@k9-sak-web/types';
import { screen } from '@testing-library/react';
import React from 'react';
import { FormProvider, useForm } from 'react-hook-form';
-
import { Periode } from './Periode';
import StatusForBorgerFaktaPanel from './StatusForBorgerFaktaPanel';
diff --git a/packages/fakta-om-barnet/package.json b/packages/fakta-om-barnet/package.json
index fdb01efb13..84d81b56f2 100644
--- a/packages/fakta-om-barnet/package.json
+++ b/packages/fakta-om-barnet/package.json
@@ -10,20 +10,20 @@
"dev": "vite serve"
},
"devDependencies": {
- "msw": "2.4.1",
- "vite": "^5.4.2",
+ "msw": "2.4.2",
+ "vite": "^5.4.3",
"vite-plugin-node-polyfills": "^0.22.0"
},
"dependencies": {
- "@navikt/ds-react": "6.13.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ds-react": "6.16.3",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"@popperjs/core": "2.11.8",
"classnames": "2.5.1",
"dayjs": "1.11.13",
"react": "18.3.1",
"react-collapse": "5.1.1",
"react-dom": "18.3.1",
- "react-hook-form": "7.52.2",
+ "react-hook-form": "7.53.0",
"react-popper": "2.3.0",
"tailwindcss": "^3.4.10"
},
diff --git a/packages/fakta-omsorgen-for/package.json b/packages/fakta-omsorgen-for/package.json
index 2bcc90ddb6..a7d8d06f75 100644
--- a/packages/fakta-omsorgen-for/package.json
+++ b/packages/fakta-omsorgen-for/package.json
@@ -10,16 +10,16 @@
"dev": "vite serve"
},
"devDependencies": {
- "msw": "2.4.1",
- "vite": "^5.4.2",
+ "msw": "2.4.2",
+ "vite": "^5.4.3",
"vite-plugin-node-polyfills": "^0.22.0"
},
"dependencies": {
- "@navikt/ds-css": "6.13.0",
+ "@navikt/ds-css": "6.16.3",
"@navikt/ds-icons": "3.4.3",
- "@navikt/ds-react": "6.13.0",
- "@navikt/fnrvalidator": "2.1.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ds-react": "6.16.3",
+ "@navikt/fnrvalidator": "2.1.2",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"@popperjs/core": "2.11.8",
"classnames": "2.5.1",
"dayjs": "1.11.13",
@@ -27,7 +27,7 @@
"react": "18.3.1",
"react-collapse": "5.1.1",
"react-dom": "18.3.1",
- "react-hook-form": "7.52.2",
+ "react-hook-form": "7.53.0",
"react-intl": "6.6.8",
"react-popper": "2.3.0"
},
diff --git a/packages/fakta-opplaering/package.json b/packages/fakta-opplaering/package.json
index 62ff08d54d..990bf7e5a0 100644
--- a/packages/fakta-opplaering/package.json
+++ b/packages/fakta-opplaering/package.json
@@ -9,8 +9,8 @@
"@fpsak-frontend/utils": "*",
"@k9-sak-web/types": "*",
"@navikt/ds-icons": "3.4.3",
- "@navikt/ds-react": "6.13.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ds-react": "6.16.3",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"classnames": "2.5.1",
"dayjs": "1.11.13",
"formik": "2.4.6",
diff --git a/packages/fakta-overstyr-beregning/package.json b/packages/fakta-overstyr-beregning/package.json
index d22a0d71e0..69e79cf77b 100644
--- a/packages/fakta-overstyr-beregning/package.json
+++ b/packages/fakta-overstyr-beregning/package.json
@@ -9,7 +9,7 @@
"@fpsak-frontend/shared-components": "1.0.0",
"@fpsak-frontend/utils": "workspace:^",
"@k9-sak-web/types": "workspace:^",
- "@navikt/ds-react": "6.13.0",
+ "@navikt/ds-react": "6.16.3",
"date-fns": "3.6.0",
"formik": "2.4.6",
"react": "18.3.1",
diff --git a/packages/form/package.json b/packages/form/package.json
index ae6ce376b6..f1e5c103ad 100644
--- a/packages/form/package.json
+++ b/packages/form/package.json
@@ -8,12 +8,12 @@
"dependencies": {
"@fpsak-frontend/shared-components": "1.0.0",
"@fpsak-frontend/utils": "1.0.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"classnames": "2.5.1",
"formik": "2.4.6",
"moment": "2.30.1",
"react": "18.3.1",
- "react-hook-form": "7.52.2",
+ "react-hook-form": "7.53.0",
"react-intl": "6.6.8",
"react-redux": "9.1.2",
"redux": "5.0.1",
diff --git a/packages/mocks/mockdata/utenlandsoppholdMock.js b/packages/mocks/mockdata/utenlandsoppholdMock.js
index fb91b7ed16..6f895d4446 100644
--- a/packages/mocks/mockdata/utenlandsoppholdMock.js
+++ b/packages/mocks/mockdata/utenlandsoppholdMock.js
@@ -78,6 +78,22 @@ const utenlandsopphold = {
region: 'EOS', // REGION
årsak: 'INGEN',
},
+ {
+ periode: `${dayjs().subtract(52, 'day').format('YYYY-MM-DD')}/${dayjs()
+ .subtract(47, 'day')
+ .format('YYYY-MM-DD')}`,
+ landkode: 'XXK', // LANDKODER
+ region: 'ANNET', // REGION
+ årsak: 'INGEN',
+ },
+ {
+ periode: `${dayjs().subtract(59, 'day').format('YYYY-MM-DD')}/${dayjs()
+ .subtract(55, 'day')
+ .format('YYYY-MM-DD')}`,
+ landkode: 'GBR', // LANDKODER
+ region: 'EOS', // REGION
+ årsak: 'INGEN',
+ },
],
};
diff --git a/packages/prosess-aarskvantum-oms/package.json b/packages/prosess-aarskvantum-oms/package.json
index 9c6f83349c..d3c90a0393 100644
--- a/packages/prosess-aarskvantum-oms/package.json
+++ b/packages/prosess-aarskvantum-oms/package.json
@@ -19,7 +19,7 @@
"react-dom": "18.3.1",
"react-intl": "6.6.8",
"react-redux": "9.1.2",
- "react-router-dom": "6.26.0",
+ "react-router-dom": "6.26.1",
"redux-form": "8.3.10"
},
"devDependencies": {
diff --git a/packages/prosess-avregning/src/components/AvregningPanel.jsx b/packages/prosess-avregning/src/components/AvregningPanel.jsx
index 04e6adcd77..ded0eac012 100644
--- a/packages/prosess-avregning/src/components/AvregningPanel.jsx
+++ b/packages/prosess-avregning/src/components/AvregningPanel.jsx
@@ -201,7 +201,12 @@ export class AvregningPanelImpl extends Component {
{
case fagsakYtelseType.OMSORGSPENGER:
case fagsakYtelseType.OMSORGSPENGER_KRONISK_SYKT_BARN:
case fagsakYtelseType.OMSORGSPENGER_MIDLERTIDIG_ALENE:
+ case fagsakYtelseType.OMSORGSPENGER_ALENE_OM_OMSORGEN:
return [
{ kode: '9-2', navn: '§ 9-2' },
{ kode: '9-3', navn: '§ 9-3' },
diff --git a/packages/prosess-omsorgsdager/package.json b/packages/prosess-omsorgsdager/package.json
index 6e1417a377..9a296e3fc5 100644
--- a/packages/prosess-omsorgsdager/package.json
+++ b/packages/prosess-omsorgsdager/package.json
@@ -10,18 +10,18 @@
"dev": "vite serve"
},
"devDependencies": {
- "vite": "^5.4.2",
+ "vite": "^5.4.3",
"vite-plugin-node-polyfills": "^0.22.0",
"vitest-axe": "^0.1.0"
},
"dependencies": {
- "@navikt/ds-css": "6.13.0",
- "@navikt/ds-react": "6.13.0",
+ "@navikt/ds-css": "6.16.3",
+ "@navikt/ds-react": "6.16.3",
"classnames": "2.5.1",
"dayjs": "1.11.13",
"lodash": "4.17.21",
"react": "18.3.1",
"react-dom": "18.3.1",
- "react-hook-form": "7.52.2"
+ "react-hook-form": "7.53.0"
}
}
diff --git a/packages/prosess-tilkjent-ytelse/i18n/nb_NO.json b/packages/prosess-tilkjent-ytelse/i18n/nb_NO.json
index 0ce535742f..4a279d17e4 100644
--- a/packages/prosess-tilkjent-ytelse/i18n/nb_NO.json
+++ b/packages/prosess-tilkjent-ytelse/i18n/nb_NO.json
@@ -40,6 +40,7 @@
"TilkjentYtelse.NyPeriode.TilSoker": "Til søker",
"TilkjentYtelse.NyPeriode.Refusjon": "Refusjon",
"TilkjentYtelse.NyPeriode.Arbeidsgiver": "Arbeidsgiver",
+ "TilkjentYtelse.NyPeriode.ArbeidsgiverPrivatperson": "Arbeidsgiver (privatperson)",
"TilkjentYtelse.NyPeriode.Arbeidsforhold": "Arbeidsforhold",
"TilkjentYtelse.NyPeriode.AktivitetsStatus": "Aktivitetsstatus",
"TilkjentYtelse.NyPeriode.Inntektskategori": "Inntektskategori",
diff --git a/packages/prosess-tilkjent-ytelse/src/components/TilkjentYteleseUtils.ts b/packages/prosess-tilkjent-ytelse/src/components/TilkjentYteleseUtils.ts
index ebc8809ec7..7ebb8de934 100644
--- a/packages/prosess-tilkjent-ytelse/src/components/TilkjentYteleseUtils.ts
+++ b/packages/prosess-tilkjent-ytelse/src/components/TilkjentYteleseUtils.ts
@@ -1,4 +1,5 @@
import { KodeverkType } from '@k9-sak-web/lib/kodeverk/types/KodeverkType.js';
+import { ArbeidsgiverOpplysningerPerId } from '@k9-sak-web/types';
export const getAktivitet = (aktivitetStatus, kodeverkNavnFraKode) =>
// hvis valgtAndel ikke satt ennå return tom string.
@@ -10,7 +11,7 @@ export const getInntektskategori = (inntektkategori, kodeverkNavnFraKode) =>
const getEndCharFromId = id => (id ? `...${id.substring(id.length - 4, id.length)}` : '');
-export const createVisningsnavnForAndel = (andel, kodeverkNavnFraKode, arbeidsgiverOpplysningerPerId) => {
+export const createArbeidsgiverVisningsnavnForAndel = (andel, kodeverkNavnFraKode, arbeidsgiverOpplysningerPerId) => {
if (!andel) return '';
let identifikator;
@@ -18,8 +19,6 @@ export const createVisningsnavnForAndel = (andel, kodeverkNavnFraKode, arbeidsgi
identifikator = andel.arbeidsgiverOrgnr;
} else if (andel.arbeidsgiver?.arbeidsgiverOrgnr) {
identifikator = andel.arbeidsgiver.arbeidsgiverOrgnr;
- } else if (andel.arbeidsgiver?.identifikator) {
- identifikator = andel.arbeidsgiver.identifikator;
}
if (!identifikator) {
@@ -38,4 +37,33 @@ export const createVisningsnavnForAndel = (andel, kodeverkNavnFraKode, arbeidsgi
return `${navn} (${identifikator})${getEndCharFromId(andel.eksternArbeidsforholdId)}`;
};
-export default createVisningsnavnForAndel;
+export const createPrivatarbeidsgiverVisningsnavnForAndel = (
+ andel,
+ getKodeverknavn,
+ arbeidsgiverOpplysningerPerId: ArbeidsgiverOpplysningerPerId,
+) => {
+ if (!andel) return '';
+
+ let identifikator;
+ if (andel.arbeidsgiverPersonIdent) {
+ identifikator = andel.arbeidsgiverPersonIdent;
+ } else if (andel.arbeidsgiver?.arbeidsgiverPersonIdent) {
+ identifikator = andel.arbeidsgiver.arbeidsgiverPersonIdent;
+ }
+
+ if (identifikator == null) {
+ return '';
+ }
+
+ const arbeidsgiverOpplysninger = Object.values(arbeidsgiverOpplysningerPerId).find(
+ v => v?.personIdentifikator === identifikator,
+ );
+
+ const navn = arbeidsgiverOpplysninger != null ? arbeidsgiverOpplysninger?.navn : '';
+
+ if (!navn) {
+ return `${identifikator}${getEndCharFromId(andel.eksternArbeidsforholdId)}`;
+ }
+
+ return `${navn} (${identifikator})${getEndCharFromId(andel.eksternArbeidsforholdId)}`;
+};
diff --git a/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelse.spec.tsx b/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelse.spec.tsx
index fcce10693d..9728a36b2d 100644
--- a/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelse.spec.tsx
+++ b/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelse.spec.tsx
@@ -41,6 +41,7 @@ describe('', () => {
arbeidsgiver: '973861778',
arbeidsgiverOrgnr: '',
aktivitetStatus: '',
+ arbeidsgiverPersonIdent: '',
arbeidsforholdId: '',
eksternArbeidsforholdId: '',
arbeidsgiverNavn: '',
diff --git a/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelse.tsx b/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelse.tsx
index 02a4f7afb2..5c461b62db 100644
--- a/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelse.tsx
+++ b/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelse.tsx
@@ -6,7 +6,7 @@ import { KodeverkType } from '@k9-sak-web/lib/kodeverk/types/KodeverkType.js';
import moment from 'moment';
import React, { Component, RefObject } from 'react';
import { WrappedComponentProps, injectIntl } from 'react-intl';
-import { createVisningsnavnForAndel } from './TilkjentYteleseUtils';
+import { createArbeidsgiverVisningsnavnForAndel } from './TilkjentYteleseUtils';
import TilkjentYtelseTimelineData from './TilkjentYtelseTimelineData';
import styles from './tilkjentYtelse.module.css';
@@ -63,7 +63,11 @@ const createTooltipContent = (intl, item, kodeverkNavnFraKode, arbeidsgiverOpply
formatMessage(
{ id: 'Timeline.tooltip.dagsatsPerAndel' },
{
- arbeidsgiver: createVisningsnavnForAndel(andel, kodeverkNavnFraKode, arbeidsgiverOpplysningerPerId),
+ arbeidsgiver: createArbeidsgiverVisningsnavnForAndel(
+ andel,
+ kodeverkNavnFraKode,
+ arbeidsgiverOpplysningerPerId,
+ ),
dagsatsPerAndel: Number(andel.refusjon) + Number(andel.tilSoker),
},
),
diff --git a/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelseTimeLineData.spec.tsx b/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelseTimeLineData.spec.tsx
index eaaf319c87..64a27e607e 100644
--- a/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelseTimeLineData.spec.tsx
+++ b/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelseTimeLineData.spec.tsx
@@ -2,7 +2,7 @@ import { renderWithIntl } from '@fpsak-frontend/utils-test/test-utils';
import { screen } from '@testing-library/react';
import React from 'react';
import messages from '../../i18n/nb_NO.json';
-import createVisningsnavnForAndel from './TilkjentYteleseUtils';
+import { createArbeidsgiverVisningsnavnForAndel } from './TilkjentYteleseUtils';
import { PeriodeMedId } from './TilkjentYtelse';
import TilkjentYtelseTimeLineData from './TilkjentYtelseTimelineData';
@@ -73,6 +73,8 @@ describe('', () => {
);
expect(screen.getByText('Aktivitetsstatus:')).toBeInTheDocument();
- expect(createVisningsnavnForAndel(selectedItemDataFL.andeler[0], kodeverkNavnFraKode, {})).toBe('Frilans');
+ expect(createArbeidsgiverVisningsnavnForAndel(selectedItemDataFL.andeler[0], kodeverkNavnFraKode, {})).toBe(
+ 'Frilans',
+ );
});
});
diff --git a/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelseTimelineData.tsx b/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelseTimelineData.tsx
index b9d73551a0..397754a8b0 100644
--- a/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelseTimelineData.tsx
+++ b/packages/prosess-tilkjent-ytelse/src/components/TilkjentYtelseTimelineData.tsx
@@ -7,7 +7,8 @@ import moment from 'moment';
import React, { useEffect } from 'react';
import { FormattedMessage, useIntl } from 'react-intl';
import { useKodeverkContext } from '@k9-sak-web/gui/kodeverk/index.js';
-import { createVisningsnavnForAndel, getAktivitet } from './TilkjentYteleseUtils';
+
+import { createArbeidsgiverVisningsnavnForAndel, getAktivitet } from './TilkjentYteleseUtils';
import { PeriodeMedId } from './TilkjentYtelse';
import styles from './tilkjentYtelse.module.css';
import UtbetalingsgradDetaljer from './UtbetalingsgradDetaljer';
@@ -155,7 +156,7 @@ const TilkjentYtelseTimeLineData = ({
id="Timeline.tooltip.dagsatsPerAndel"
key={`index${index + 1}`}
values={{
- arbeidsgiver: createVisningsnavnForAndel(
+ arbeidsgiver: createArbeidsgiverVisningsnavnForAndel(
andel,
kodeverkNavnFraKode,
arbeidsgiverOpplysningerPerId,
@@ -176,7 +177,7 @@ const TilkjentYtelseTimeLineData = ({
id="Timeline.tooltip.dagsatsPerAndel"
key={`index${index + 1}`}
values={{
- arbeidsgiver: createVisningsnavnForAndel(
+ arbeidsgiver: createArbeidsgiverVisningsnavnForAndel(
andel,
kodeverkNavnFraKode,
arbeidsgiverOpplysningerPerId,
@@ -196,13 +197,17 @@ const TilkjentYtelseTimeLineData = ({
{andeler.map((andel, index) => {
- const label = createVisningsnavnForAndel(andel, kodeverkNavnFraKode, arbeidsgiverOpplysningerPerId);
+ const label = createArbeidsgiverVisningsnavnForAndel(
+ andel,
+ kodeverkNavnFraKode,
+ arbeidsgiverOpplysningerPerId,
+ );
return ;
})}
{andeler.map((andel, index) => (
diff --git a/packages/prosess-tilkjent-ytelse/src/components/manuellePerioder/Andeler.tsx b/packages/prosess-tilkjent-ytelse/src/components/manuellePerioder/Andeler.tsx
index 12ff42e11d..fa2fea18b0 100644
--- a/packages/prosess-tilkjent-ytelse/src/components/manuellePerioder/Andeler.tsx
+++ b/packages/prosess-tilkjent-ytelse/src/components/manuellePerioder/Andeler.tsx
@@ -4,7 +4,11 @@ import React from 'react';
import { useKodeverkContext } from '@k9-sak-web/gui/kodeverk/index.js';
import { WrappedComponentProps, useIntl } from 'react-intl';
import { FieldArrayFieldsProps, FieldArrayMetaProps } from 'redux-form';
-import { createVisningsnavnForAndel, getInntektskategori } from '../TilkjentYteleseUtils';
+import {
+ createArbeidsgiverVisningsnavnForAndel,
+ createPrivatarbeidsgiverVisningsnavnForAndel,
+ getInntektskategori,
+} from '../TilkjentYteleseUtils';
interface OwnProps {
fields: FieldArrayFieldsProps
;
@@ -25,6 +29,7 @@ interface OwnProps {
const headerTextCodes = [
'TilkjentYtelse.NyPeriode.Inntektskategori',
'TilkjentYtelse.NyPeriode.Arbeidsgiver',
+ 'TilkjentYtelse.NyPeriode.ArbeidsgiverPrivatperson',
'TilkjentYtelse.NyPeriode.TilSoker',
'TilkjentYtelse.NyPeriode.Refusjon',
'TilkjentYtelse.NyPeriode.Ubetalingsgrad',
@@ -61,7 +66,12 @@ const Andeler = ({ fields, meta, arbeidsgivere }: Partial & WrappedCom
{fields.map((fieldId: string, index: number, field: FieldArrayFieldsProps) => {
const andel = field.get(index);
const inntektskategori = getInntektskategori(andel.inntektskategori, kodeverkNavnFraKode);
- const arbeidsgiver = createVisningsnavnForAndel(andel, kodeverkNavnFraKode, arbeidsgivere);
+ const arbeidsgiver = createArbeidsgiverVisningsnavnForAndel(andel, kodeverkNavnFraKode, arbeidsgivere);
+ const arbeidsgiverPrivatperson = createPrivatarbeidsgiverVisningsnavnForAndel(
+ andel,
+ kodeverkNavnFraKode,
+ arbeidsgivere,
+ );
return (
@@ -71,6 +81,9 @@ const Andeler = ({ fields, meta, arbeidsgivere }: Partial & WrappedCom
{arbeidsgiver}
+
+ {arbeidsgiverPrivatperson}
+
{andel.tilSoker}
diff --git a/packages/prosess-tilkjent-ytelse/src/components/manuellePerioder/NyAndel.tsx b/packages/prosess-tilkjent-ytelse/src/components/manuellePerioder/NyAndel.tsx
index d083617bca..6d88eb76f3 100644
--- a/packages/prosess-tilkjent-ytelse/src/components/manuellePerioder/NyAndel.tsx
+++ b/packages/prosess-tilkjent-ytelse/src/components/manuellePerioder/NyAndel.tsx
@@ -2,7 +2,7 @@ import addCircleIcon from '@fpsak-frontend/assets/images/add-circle.svg';
import { InputField, SelectField } from '@fpsak-frontend/form';
import inntektskategorier from '@fpsak-frontend/kodeverk/src/inntektskategorier';
import kodeverkTyper from '@fpsak-frontend/kodeverk/src/kodeverkTyper';
-import { FlexColumn, FlexRow, Image, PeriodFieldArray } from '@fpsak-frontend/shared-components';
+import { FlexColumn, FlexRow, Image, PeriodFieldArray, useFeatureToggles } from '@fpsak-frontend/shared-components';
import { hasValidDecimal, maxValue, minValue, required } from '@fpsak-frontend/utils';
import { ArbeidsgiverOpplysningerPerId, KodeverkMedNavn } from '@k9-sak-web/types';
import React, { useState } from 'react';
@@ -11,6 +11,7 @@ import { FieldArrayFieldsProps, FieldArrayMetaProps } from 'redux-form';
import NyArbeidsgiverModal from './NyArbeidsgiverModal';
import styles from './periode.module.css';
+import {atLeastOneRequired} from "@fpsak-frontend/utils/src/validation/validators";
const minValue0 = minValue(0);
const maxValue100 = maxValue(100);
@@ -25,6 +26,28 @@ const mapArbeidsgivere = (arbeidsgivere: ArbeidsgiverOpplysningerPerId) =>
))
: [];
+const mapArbeidsgivereOrg = (arbeidsgivere: ArbeidsgiverOpplysningerPerId) =>
+ arbeidsgivere
+ ? Object.values(arbeidsgivere)
+ .filter(arbeidsgiver => arbeidsgiver.personIdentifikator == null) // erPrivatPerson returneres ikke fra backend
+ .map(({ navn, identifikator }) => (
+
+ {navn} ({identifikator})
+
+ ))
+ : [];
+
+const mapArbeidsgiverePrivatperson = (arbeidsgivere: ArbeidsgiverOpplysningerPerId) =>
+ arbeidsgivere
+ ? Object.values(arbeidsgivere)
+ .filter(arbeidsgiver => arbeidsgiver.personIdentifikator != null) // erPrivatPerson returneres ikke fra backend
+ .map(({ navn, personIdentifikator }) => (
+
+ {navn} ({personIdentifikator})
+
+ ))
+ : [];
+
const getInntektskategori = alleKodeverk => {
const aktivitetsstatuser = alleKodeverk[kodeverkTyper.INNTEKTSKATEGORI];
return aktivitetsstatuser.map(ik => (
@@ -71,6 +94,8 @@ export const NyAndel = ({
behandlingVersjon,
}: OwnProps & WrappedComponentProps) => {
const [isOpen, setOpen] = useState(false);
+ const [featureToggles] = useFeatureToggles();
+ const skillUtPrivatperson = featureToggles?.SKILL_UT_PRIVATPERSON;
const allFields = fields.getAll();
@@ -101,24 +126,37 @@ export const NyAndel = ({
/>
{!erSN && !erFL && (
-
-
- setOpen(true)}
- onKeyDown={() => setOpen(true)}
- className={styles.addArbeidsforhold}
- role="button"
- tabIndex={0}
- >
-
-
-
+ <>
+
+ atLeastOneRequired(value, values.arbeidsgiverPersonIdent)]
+ : [required]}
+ selectValues={skillUtPrivatperson ? mapArbeidsgivereOrg(arbeidsgivere) : mapArbeidsgivere(arbeidsgivere)}
+ />
+ setOpen(true)}
+ onKeyDown={() => setOpen(true)}
+ className={styles.addArbeidsforhold}
+ role="button"
+ tabIndex={0}
+ >
+
+
+
+ {skillUtPrivatperson && (
+ atLeastOneRequired(value, values.arbeidsgiverOrgnr)]}
+ selectValues={mapArbeidsgiverePrivatperson(arbeidsgivere)}
+ />
+ )}
+ >
)}
({
kodeverk: 'INNTEKTSKATEGORI',
},
arbeidsgiverOrgnr: andel.arbeidsgiverOrgnr,
+ arbeidsgiverPersonIdent: andel.arbeidsgiverPersonIdent,
tilSoker: andel.tilSoker,
refusjon: andel.refusjon || 0,
utbetalingsgrad: andel.utbetalingsgrad || 100,
diff --git a/packages/prosess-uttak/package.json b/packages/prosess-uttak/package.json
index e07daf2448..675c9e1002 100644
--- a/packages/prosess-uttak/package.json
+++ b/packages/prosess-uttak/package.json
@@ -10,23 +10,23 @@
"author": "NAV IT",
"license": "MIT",
"devDependencies": {
- "vite": "^5.4.2",
+ "vite": "^5.4.3",
"vite-plugin-node-polyfills": "^0.22.0"
},
"dependencies": {
"@hookform/resolvers": "^3.9.0",
- "@navikt/ds-css": "6.13.0",
- "@navikt/ds-react": "6.13.0",
- "@navikt/ft-form-hooks": "5.0.0",
- "@navikt/ft-form-validators": "2.3.18",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ds-css": "6.16.3",
+ "@navikt/ds-react": "6.16.3",
+ "@navikt/ft-form-hooks": "5.0.5",
+ "@navikt/ft-form-validators": "2.3.22",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"@popperjs/core": "2.11.8",
"classnames": "2.5.1",
"dayjs": "1.11.13",
"react": "18.3.1",
"react-collapse": "5.1.1",
"react-dom": "18.3.1",
- "react-hook-form": "7.52.2",
+ "react-hook-form": "7.53.0",
"react-popper": "2.3.0",
"yup": "1.4.0"
}
diff --git a/packages/prosess-vedtak-tilbakekreving/src/components/brev/TilbakekrevingEditerVedtaksbrevPanel.spec.tsx b/packages/prosess-vedtak-tilbakekreving/src/components/brev/TilbakekrevingEditerVedtaksbrevPanel.spec.tsx
index 3182678123..cc23ca67ee 100644
--- a/packages/prosess-vedtak-tilbakekreving/src/components/brev/TilbakekrevingEditerVedtaksbrevPanel.spec.tsx
+++ b/packages/prosess-vedtak-tilbakekreving/src/components/brev/TilbakekrevingEditerVedtaksbrevPanel.spec.tsx
@@ -2,7 +2,7 @@ import React from 'react';
import { renderWithIntlAndReduxForm } from '@fpsak-frontend/utils-test/test-utils';
import { screen } from '@testing-library/react';
import TilbakekrevingEditerVedtaksbrevPanel from './TilbakekrevingEditerVedtaksbrevPanel';
-import {K9sakApiKeys, requestApi} from "@k9-sak-web/sak-app/src/data/k9sakApi";
+import { K9sakApiKeys, requestApi } from '@k9-sak-web/sak-app/src/data/k9sakApi';
describe('', () => {
const vedtaksbrevAvsnitt = [
diff --git a/packages/prosess-vedtak-tilbakekreving/src/components/brev/TilbakekrevingVedtakUtdypendeTekstPanel.spec.tsx b/packages/prosess-vedtak-tilbakekreving/src/components/brev/TilbakekrevingVedtakUtdypendeTekstPanel.spec.tsx
index 9a191aff5f..ae8dd772f0 100644
--- a/packages/prosess-vedtak-tilbakekreving/src/components/brev/TilbakekrevingVedtakUtdypendeTekstPanel.spec.tsx
+++ b/packages/prosess-vedtak-tilbakekreving/src/components/brev/TilbakekrevingVedtakUtdypendeTekstPanel.spec.tsx
@@ -4,7 +4,7 @@ import React from 'react';
import { intlMock } from '../../../i18n';
import messages from '../../../i18n/nb_NO.json';
import { TilbakekrevingVedtakUtdypendeTekstPanel } from './TilbakekrevingVedtakUtdypendeTekstPanel';
-import {K9sakApiKeys, requestApi} from "@k9-sak-web/sak-app/src/data/k9sakApi";
+import { K9sakApiKeys, requestApi } from '@k9-sak-web/sak-app/src/data/k9sakApi';
describe('', () => {
it('skal vise lenke for å skrive inn tekst når felt ikke har verdi og en ikke er i readonly-modus', () => {
diff --git a/packages/prosess-vedtak-tilbakekreving/src/components/brev/TilbakekrevingVedtakUtdypendeTekstPanel.tsx b/packages/prosess-vedtak-tilbakekreving/src/components/brev/TilbakekrevingVedtakUtdypendeTekstPanel.tsx
index 33338ca162..a7cca6cd52 100644
--- a/packages/prosess-vedtak-tilbakekreving/src/components/brev/TilbakekrevingVedtakUtdypendeTekstPanel.tsx
+++ b/packages/prosess-vedtak-tilbakekreving/src/components/brev/TilbakekrevingVedtakUtdypendeTekstPanel.tsx
@@ -1,6 +1,6 @@
import addCircleIcon from '@fpsak-frontend/assets/images/add-circle.svg';
import { behandlingFormValueSelector, TextAreaField } from '@fpsak-frontend/form';
-import {Image, useFeatureToggles, VerticalSpacer} from '@fpsak-frontend/shared-components';
+import { Image, useFeatureToggles, VerticalSpacer } from '@fpsak-frontend/shared-components';
import { hasValidText, maxLength, minLength, required } from '@fpsak-frontend/utils';
import { Detail } from '@navikt/ds-react';
import React, { useState } from 'react';
@@ -32,11 +32,13 @@ export const TilbakekrevingVedtakUtdypendeTekstPanel = ({
fritekstPakrevet,
maximumLength,
}: OwnProps & WrappedComponentProps) => {
- const [featureToggles] = useFeatureToggles()
- const utvidetVarseltekst = featureToggles?.UTVIDET_VARSELTEKST
+ const [featureToggles] = useFeatureToggles();
+ const utvidetVarseltekst = featureToggles?.UTVIDET_VARSELTEKST;
const [isTextfieldHidden, hideTextField] = useState(isEmpty && !fritekstPakrevet);
const valideringsRegler = fritekstPakrevet ? valideringsreglerPakrevet : valideringsregler;
- valideringsRegler.push(maximumLength ? maxLength(maximumLength) : (utvidetVarseltekst ? maxLength12000 : maxLength4000));
+ valideringsRegler.push(
+ maximumLength ? maxLength(maximumLength) : utvidetVarseltekst ? maxLength12000 : maxLength4000,
+ );
return (
<>
{isTextfieldHidden && !readOnly && (
diff --git a/packages/prosess-vilkar-alder/package.json b/packages/prosess-vilkar-alder/package.json
index e5648bd44c..13ebc7eecf 100644
--- a/packages/prosess-vilkar-alder/package.json
+++ b/packages/prosess-vilkar-alder/package.json
@@ -9,10 +9,10 @@
"@fpsak-frontend/shared-components": "1.0.0",
"@fpsak-frontend/utils": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ft-form-hooks": "5.0.0",
- "@navikt/ft-form-validators": "2.3.18",
+ "@navikt/ft-form-hooks": "5.0.5",
+ "@navikt/ft-form-validators": "2.3.22",
"react": "18.3.1",
- "react-hook-form": "7.52.2",
+ "react-hook-form": "7.53.0",
"react-intl": "6.6.8"
}
}
diff --git a/packages/prosess-vilkar-opptjening-oms/package.json b/packages/prosess-vilkar-opptjening-oms/package.json
index 935c0de59f..dfd7ba3fbf 100644
--- a/packages/prosess-vilkar-opptjening-oms/package.json
+++ b/packages/prosess-vilkar-opptjening-oms/package.json
@@ -11,7 +11,7 @@
"@fpsak-frontend/utils": "1.0.0",
"@k9-sak-web/prosess-felles": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"classnames": "2.5.1",
"dayjs": "1.11.13",
"lodash": "4.17.21",
diff --git a/packages/prosess-vilkar-overstyring/package.json b/packages/prosess-vilkar-overstyring/package.json
index 5c406d86e5..b4056d422d 100644
--- a/packages/prosess-vilkar-overstyring/package.json
+++ b/packages/prosess-vilkar-overstyring/package.json
@@ -13,7 +13,7 @@
"@k9-sak-web/prosess-felles": "1.0.0",
"@k9-sak-web/sak-app": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"classnames": "2.5.1",
"moment": "2.30.1",
"react": "18.3.1",
diff --git a/packages/prosess-vilkar-overstyring/src/VilkarresultatMedOverstyringProsessIndex.tsx b/packages/prosess-vilkar-overstyring/src/VilkarresultatMedOverstyringProsessIndex.tsx
index d7966b4232..6f31f117e8 100644
--- a/packages/prosess-vilkar-overstyring/src/VilkarresultatMedOverstyringProsessIndex.tsx
+++ b/packages/prosess-vilkar-overstyring/src/VilkarresultatMedOverstyringProsessIndex.tsx
@@ -1,13 +1,12 @@
-import React, { SetStateAction, useEffect, useState } from 'react';
-import classNames from 'classnames/bind';
-import { RawIntlProvider, createIntl, createIntlCache } from 'react-intl';
-
import vilkarUtfallType from '@fpsak-frontend/kodeverk/src/vilkarUtfallType';
import { useFeatureToggles } from '@fpsak-frontend/shared-components';
import { dateFormat } from '@fpsak-frontend/utils';
import hentAktivePerioderFraVilkar from '@fpsak-frontend/utils/src/hentAktivePerioderFraVilkar';
import { Aksjonspunkt, Behandling, SubmitCallback, Vilkar } from '@k9-sak-web/types';
import { SideMenu } from '@navikt/ft-plattform-komponenter';
+import classNames from 'classnames/bind';
+import React, { SetStateAction, useEffect, useState } from 'react';
+import { RawIntlProvider, createIntl, createIntlCache } from 'react-intl';
import VilkarresultatMedOverstyringFormPeriodisert from './components-periodisert/VilkarresultatMedOverstyringFormPeriodisert';
import VilkarresultatMedOverstyringForm from './components/VilkarresultatMedOverstyringForm';
import VilkarresultatMedOverstyringHeader from './components/VilkarresultatMedOverstyringHeader';
diff --git a/packages/prosess-vilkar-overstyring/src/components-periodisert/VilkarresultatMedOverstyringFormPeriodisert.tsx b/packages/prosess-vilkar-overstyring/src/components-periodisert/VilkarresultatMedOverstyringFormPeriodisert.tsx
index db56861f64..bfd168a9ff 100644
--- a/packages/prosess-vilkar-overstyring/src/components-periodisert/VilkarresultatMedOverstyringFormPeriodisert.tsx
+++ b/packages/prosess-vilkar-overstyring/src/components-periodisert/VilkarresultatMedOverstyringFormPeriodisert.tsx
@@ -1,6 +1,3 @@
-import React, { FunctionComponent, SetStateAction, useEffect } from 'react';
-import { FormattedMessage } from 'react-intl';
-import moment from 'moment';
import advarselIkonUrl from '@fpsak-frontend/assets/images/advarsel_ny.svg';
import aksjonspunktStatus from '@fpsak-frontend/kodeverk/src/aksjonspunktStatus';
import BehandlingType from '@fpsak-frontend/kodeverk/src/behandlingType';
@@ -19,7 +16,10 @@ import { Aksjonspunkt, SubmitCallback } from '@k9-sak-web/types';
import Vilkarperiode from '@k9-sak-web/types/src/vilkarperiode';
import { BodyShort, Button, Label } from '@navikt/ds-react';
import { Form } from '@navikt/ft-form-hooks';
+import moment from 'moment';
+import React, { FunctionComponent, SetStateAction, useEffect } from 'react';
import { useForm } from 'react-hook-form';
+import { FormattedMessage } from 'react-intl';
import { VilkarresultatMedOverstyringFormState } from './FormState';
import OverstyrBekreftKnappPanel from './OverstyrBekreftKnappPanel';
import { VilkarresultatMedBegrunnelse } from './VilkarresultatMedBegrunnelse';
diff --git a/packages/prosess-vilkar-overstyring/src/components/VilkarresultatMedOverstyringForm.tsx b/packages/prosess-vilkar-overstyring/src/components/VilkarresultatMedOverstyringForm.tsx
index ad8056c7de..ad1e540e5a 100644
--- a/packages/prosess-vilkar-overstyring/src/components/VilkarresultatMedOverstyringForm.tsx
+++ b/packages/prosess-vilkar-overstyring/src/components/VilkarresultatMedOverstyringForm.tsx
@@ -1,6 +1,3 @@
-import React, { SetStateAction, useEffect } from 'react';
-import { FormattedMessage } from 'react-intl';
-import moment from 'moment';
import advarselIkonUrl from '@fpsak-frontend/assets/images/advarsel_ny.svg';
import aksjonspunktStatus from '@fpsak-frontend/kodeverk/src/aksjonspunktStatus';
import BehandlingType from '@fpsak-frontend/kodeverk/src/behandlingType';
@@ -19,7 +16,10 @@ import { Aksjonspunkt, SubmitCallback } from '@k9-sak-web/types';
import Vilkarperiode from '@k9-sak-web/types/src/vilkarperiode';
import { BodyShort, Button, Label } from '@navikt/ds-react';
import { Form } from '@navikt/ft-form-hooks';
+import moment from 'moment';
+import React, { SetStateAction, useEffect } from 'react';
import { useForm } from 'react-hook-form';
+import { FormattedMessage } from 'react-intl';
import { VilkarresultatMedOverstyringFormState } from './FormState';
import OverstyrBekreftKnappPanel from './OverstyrBekreftKnappPanel';
import VilkarresultatMedBegrunnelse from './VilkarresultatMedBegrunnelse';
diff --git a/packages/prosess-vilkar-overstyring/src/components/VilkarresultatMedOverstyringHeader.tsx b/packages/prosess-vilkar-overstyring/src/components/VilkarresultatMedOverstyringHeader.tsx
index ec4b82084f..a7e840e619 100644
--- a/packages/prosess-vilkar-overstyring/src/components/VilkarresultatMedOverstyringHeader.tsx
+++ b/packages/prosess-vilkar-overstyring/src/components/VilkarresultatMedOverstyringHeader.tsx
@@ -1,13 +1,12 @@
-import React, { SetStateAction } from 'react';
-import { FormattedMessage } from 'react-intl';
-import { Detail, Heading, Label } from '@navikt/ds-react';
import avslattImage from '@fpsak-frontend/assets/images/avslaatt_hover.svg';
import innvilgetImage from '@fpsak-frontend/assets/images/innvilget_hover.svg';
-import keyUtgraetImage from '@fpsak-frontend/assets/images/key-1-rotert-utgraet.svg';
import keyImage from '@fpsak-frontend/assets/images/key-1-rotert.svg';
import vilkarUtfallType from '@fpsak-frontend/kodeverk/src/vilkarUtfallType';
import { FlexColumn, FlexContainer, FlexRow, Image, VerticalSpacer } from '@fpsak-frontend/shared-components';
import { Aksjonspunkt } from '@k9-sak-web/types';
+import { Button, Detail, Heading, Label } from '@navikt/ds-react';
+import React, { SetStateAction } from 'react';
+import { FormattedMessage } from 'react-intl';
import styles from './vilkarresultatMedOverstyringForm.module.css';
import { Lovreferanse } from '@k9-sak-web/gui/shared/lovreferanse/Lovreferanse.js';
@@ -92,20 +91,16 @@ const VilkarresultatMedOverstyringHeader = ({
{erVilkarOk !== undefined &&
!isHidden(kanOverstyreAccess.isEnabled, aksjonspunktCodes, overstyringApKode) && (
- <>
- {!erOverstyrt && !overrideReadOnly && (
-
-
-
-
- )}
- {(erOverstyrt || overrideReadOnly) && (
-
-
-
-
- )}
- >
+
+
+ }
+ disabled={erOverstyrt || overrideReadOnly}
+ />
+
)}
diff --git a/packages/prosess-vilkar-overstyring/src/components/vilkarresultatMedOverstyringForm.module.css b/packages/prosess-vilkar-overstyring/src/components/vilkarresultatMedOverstyringForm.module.css
index 5101ab7816..cf636798bb 100644
--- a/packages/prosess-vilkar-overstyring/src/components/vilkarresultatMedOverstyringForm.module.css
+++ b/packages/prosess-vilkar-overstyring/src/components/vilkarresultatMedOverstyringForm.module.css
@@ -4,12 +4,6 @@
}
.key {
- cursor: pointer;
- height: 20px;
- width: 20px;
-}
-
-.keyWithoutCursor {
height: 20px;
width: 20px;
}
diff --git a/packages/prosess-vilkar-sokers-opplysningsplikt/i18n/index.js b/packages/prosess-vilkar-sokers-opplysningsplikt/i18n/index.js
deleted file mode 100644
index 41eeb9b096..0000000000
--- a/packages/prosess-vilkar-sokers-opplysningsplikt/i18n/index.js
+++ /dev/null
@@ -1,9 +0,0 @@
-import {
- intlWithMessages,
-} from '@fpsak-frontend/utils-test/intl-test-helper';
-
-import messages from './nb_NO.json';
-
-
-export const intlMock = intlWithMessages(messages);
-
diff --git a/packages/prosess-vilkar-sokers-opplysningsplikt/i18n/nb_NO.json b/packages/prosess-vilkar-sokers-opplysningsplikt/i18n/nb_NO.json
deleted file mode 100644
index cbe31258aa..0000000000
--- a/packages/prosess-vilkar-sokers-opplysningsplikt/i18n/nb_NO.json
+++ /dev/null
@@ -1,64 +0,0 @@
-{
- "SokersOpplysningspliktForm.SokersOpplysningsplikt": "Søkers opplysningsplikt",
- "SokersOpplysningspliktForm.UtfyllendeOpplysninger": "Vurder om søker har oppfylt opplysningsplikten etter § 21-3 og § 21-7",
- "SokersOpplysningspliktForm.VilkarOppfylt": "Vilkåret er oppfylt",
- "SokersOpplysningspliktForm.VilkarIkkeOppfylt": "Vilkåret er ikke oppfylt",
- "SokersOpplysningspliktForm.VilkarIkkeOppfyltMerInfo": "Manglende opplysninger, foreslå avslag",
- "SokersOpplysningspliktForm.ManglendeDokumentasjon": "Manglende dokumentasjon",
-
- "VilkarresultatMedOverstyringForm.ErOppfylt": "Vilkåret er oppfylt",
- "VilkarresultatMedOverstyringForm.ErIkkeOppfylt": "Vilkåret er avslått",
- "VilkarresultatMedOverstyringForm.IkkeBehandlet": "Ikke behandlet",
- "VilkarresultatMedOverstyringForm.Endret": "Endret av saksbehandler",
- "Behandling.EditedField": "Saksbehandler har endret feltets verdi",
- "ShowVilkarStatus.Check": "Informasjonen er utfylt",
- "VilkarResultPicker.Arsak": "Avslagsårsak",
- "VilkarResultPicker.SelectArsak": "Velg årsak",
- "VilkarResultPicker.VilkarOppfylt": "Vilkåret er oppfylt",
- "VilkarResultPicker.VilkarIkkeOppfylt": "Vilkåret er ikke oppfylt",
- "VilkarResultPanel.VilkarOppfylt": "Vilkåret er oppfylt",
- "VilkarResultPanel.VilkarIkkeOppfylt": "Vilkåret er ikke oppfylt",
- "SubmitButton.ConfirmInformation": "Bekreft og fortsett",
- "HelpText.Aksjonspunkt": "Aksjonspunkt",
- "HelpText.Aksjonspunkt.BehandletAksjonspunkt": "Behandlet aksjonspunkt: ",
- "HelpText.ToTrinnsKontroll": "Kontroller endrede opplysninger og faglige vurderinger",
- "ValidationMessage.NotEmpty": "Feltet må fylles ut",
- "ValidationMessage.MinLength": "Du må skrive minst {length} tegn",
- "ValidationMessage.MaxLength": "Du kan skrive maksimalt {length} tegn",
- "ValidationMessage.MinValue": "Feltet må være større eller lik {length}",
- "ValidationMessage.MaxValue": "Feltet må være mindre eller lik {length}",
- "ValidationMessage.InvalidDate": "Dato må skrives slik : dd.mm.åååå",
- "ValidationMessage.DateNotBeforeOrEqual": "Dato må være før eller lik {limit}",
- "ValidationMessage.DateNotAfterOrEqual": "Dato må være etter eller lik {limit}",
- "ValidationMessage.DateRangesOverlapping": "Perioder kan ikke overlappe i tid",
- "ValidationMessage.DateRangesOverlappingPeriodTypes": "Perioder kan ikke overlappe i tid (uttak, utsettelse, gradering, overforing, opphold)",
- "ValidationMessage.DatesNotEqual": "Dato må være lik {value}",
- "ValidationMessage.InvalidInteger": "Tallet kan ikke ha desimaler",
- "ValidationMessage.InvalidDecimal": "Tallet kan ikke inneholde mer enn to desimaler",
- "ValidationMessage.InvalidDatesInPeriod": "Periode må skrives slik : dd.mm.åååå - dd.mm.åååå",
- "ValidationMessage.InvalidPeriod": "Startdato må være før eller lik sluttdato",
- "ValidationMessage.InvalidPeriodRange": "Periode er utenfor opptjeningsperioden",
- "ValidationMessage.InvalidNumber": "Feltet kan kun inneholde tall",
- "ValidationMessage.utbetalingsgradErMerSamtidigUttaksprosent": "Feltet kan ikke være høyere enn samtidig uttaksprosent",
- "ValidationMessage.maxLengthOrFodselsnr": "Du kan skrive maksimalt {length} tegn eller et fødselsnummer (11 siffer)",
- "ValidationMessage.Registrering.TerminEllerFoedselMessage": "Fyll ut informasjon om termindato eller fødselsdato",
- "ValidationMessage.InvalidFodselsnummerFormat": "Feltet må være et fødselsnummer (11 siffer)",
- "ValidationMessage.InvalidFodselsnummer": "Ugyldig fødselsnummer",
- "ValidationMessage.SammeFodselsnummerSomSoker": "Fødselsnummer til den andre forelderen kan ikke være det samme som søker.",
- "ValidationMessage.InvalidText": "Feltet inneholder ugyldige tegn: {text}",
- "ValidationMessage.InvalidValue": "Feltet inneholder en ugyldig verdi: {value}",
- "ValidationMessage.ArrayMinLength": "Listen må ha lengde større enn: {length}",
- "ValidationMessage.InvalidSaksnummerOrFodselsnummerFormat": "Ugyldig saksnummer eller fødselsnummer",
- "ValidationMessage.InvalidTrekkAntallDagerUttakForm": "Antall dager i {periode} kan ikke være høyere enn {maxDays}",
- "ValidationMessage.InvalidTrekkDagerFlerbarnsdager": "Antall dager med flerbarnsdager kan ikke være høyere enn {maxDays}",
- "ValidationMessage.NegativeSaldo": "Antall dager kan ikke overstige dagene som gjenstår på {periode}. Det er oppgitt {days} dager for mye.",
- "ValidationMessage.InvalidStonadskonto": "Stønadskonto {konto} er ikke tilgjengelig",
- "ValidationMessage.MinstEnPeriodeRequired": "Minst en av følgende perioder må være utfylt: fullt uttak, overføring av kvote, utsettelse eller gradering",
- "ValidationMessage.trekkdagerErMerEnnNullUtsettelse": "Ingen trekkdager for utsettelse",
- "ValidationMessage.utbetalingMerEnnNullUtsettelse": "Ingen utbetalingsgrad for utsettelse",
- "ValidationMessage.ukerOgDagerVidNullUtbetalningsgradMessage": "Trekk minst en dag når utbetalingsgraden er høyre enn 0%",
- "ValidationMessage.UtsettelseUtenFullArbeid": "Søker har ikke 100% stilling, vurder om perioden kan utsettes.",
- "ValidationMessage.MerEn100Prosent": "Samlet utbetalingsgrad og andel i arbeid bør ikke overskride 100%.",
- "ValidationMessage.MerEn100ProsentOgOgyldigUtsettlse": "Samlet utbetalingsgrad og andel i arbeid bør ikke overskride 100%. Søker har ikke 100% stilling, vurder om perioden kan utsettes.",
- "ValidationMessage.InvalidOrganisasjonsnummer": "Ugyldig organisasjonsnummer."
-}
diff --git a/packages/prosess-vilkar-sokers-opplysningsplikt/index.ts b/packages/prosess-vilkar-sokers-opplysningsplikt/index.ts
deleted file mode 100644
index 6324b52281..0000000000
--- a/packages/prosess-vilkar-sokers-opplysningsplikt/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export { default } from './src/SokersOpplysningspliktVilkarProsessIndex';
diff --git a/packages/prosess-vilkar-sokers-opplysningsplikt/package.json b/packages/prosess-vilkar-sokers-opplysningsplikt/package.json
deleted file mode 100644
index f6e01c2bb0..0000000000
--- a/packages/prosess-vilkar-sokers-opplysningsplikt/package.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
- "name": "@fpsak-frontend/prosess-vilkar-sokers-opplysningsplikt",
- "version": "1.0.0",
- "module": "index.ts",
- "license": "MIT",
- "private": true,
- "dependencies": {
- "@fpsak-frontend/kodeverk": "1.0.0",
- "@fpsak-frontend/shared-components": "1.0.0",
- "@fpsak-frontend/utils": "1.0.0",
- "@k9-sak-web/gui": "1.0.0",
- "@k9-sak-web/types": "1.0.0",
- "moment": "2.30.1",
- "react": "18.3.1",
- "react-intl": "6.6.8",
- "react-redux": "9.1.2",
- "redux": "5.0.1",
- "redux-form": "8.3.10",
- "reselect": "5.1.1"
- },
- "devDependencies": {
- "@fpsak-frontend/utils-test": "1.0.0"
- }
-}
diff --git a/packages/prosess-vilkar-sokers-opplysningsplikt/src/SokersOpplysningspliktVilkarProsessIndex.stories.tsx b/packages/prosess-vilkar-sokers-opplysningsplikt/src/SokersOpplysningspliktVilkarProsessIndex.stories.tsx
deleted file mode 100644
index 63a16e45cf..0000000000
--- a/packages/prosess-vilkar-sokers-opplysningsplikt/src/SokersOpplysningspliktVilkarProsessIndex.stories.tsx
+++ /dev/null
@@ -1,152 +0,0 @@
-import { action } from '@storybook/addon-actions';
-import React from 'react';
-
-import aksjonspunktCodes from '@fpsak-frontend/kodeverk/src/aksjonspunktCodes';
-import aksjonspunktStatus from '@fpsak-frontend/kodeverk/src/aksjonspunktStatus';
-import avslagsarsakCodes from '@fpsak-frontend/kodeverk/src/avslagsarsakCodes';
-import dokumentTypeId from '@fpsak-frontend/kodeverk/src/dokumentTypeId';
-import vilkarUtfallType from '@fpsak-frontend/kodeverk/src/vilkarUtfallType';
-import { Aksjonspunkt, Behandling, Soknad } from '@k9-sak-web/types';
-import alleKodeverk from '@k9-sak-web/gui/storybook/mocks/alleKodeverk.json';
-import { KodeverkProvider } from '@k9-sak-web/gui/kodeverk/index.js';
-import alleKodeverkV2 from '@k9-sak-web/lib/kodeverk/mocks/alleKodeverkV2.json';
-import { behandlingType } from "@k9-sak-web/backend/k9sak/kodeverk/behandling/BehandlingType.js";
-import SokersOpplysningspliktVilkarProsessIndex from './SokersOpplysningspliktVilkarProsessIndex';
-
-const soknad = {
- manglendeVedlegg: [
- {
- dokumentType: dokumentTypeId.INNTEKTSMELDING,
- arbeidsgiver: {
- organisasjonsnummer: '1234',
- navn: 'Statoil',
- },
- },
- ],
-} as Soknad;
-
-export default {
- title: 'prosess/prosess-vilkar-sokers-opplysningsplikt',
- component: SokersOpplysningspliktVilkarProsessIndex,
-};
-
-export const visÅpentAksjonspunkt = args => (
-
- Promise}
- status={vilkarUtfallType.IKKE_VURDERT}
- isAksjonspunktOpen
- vilkar={[]}
- {...args}
- />
-
-);
-
-visÅpentAksjonspunkt.args = {
- isReadOnly: false,
- readOnlySubmitButton: false,
-};
-
-export const visOppfyltVilkår = args => (
-
- Promise}
- status={vilkarUtfallType.OPPFYLT}
- isAksjonspunktOpen={false}
- vilkar={[]}
- {...args}
- />
-
-);
-
-visOppfyltVilkår.args = {
- isReadOnly: true,
- readOnlySubmitButton: true,
-};
-
-export const visAvslåttVilkår = args => (
-
- Promise}
- status={vilkarUtfallType.IKKE_OPPFYLT}
- isAksjonspunktOpen={false}
- vilkar={[]}
- {...args}
- />
-
-);
-
-visAvslåttVilkår.args = {
- isReadOnly: true,
- readOnlySubmitButton: true,
-};
diff --git a/packages/prosess-vilkar-sokers-opplysningsplikt/src/SokersOpplysningspliktVilkarProsessIndex.tsx b/packages/prosess-vilkar-sokers-opplysningsplikt/src/SokersOpplysningspliktVilkarProsessIndex.tsx
deleted file mode 100644
index 9f2bcb3552..0000000000
--- a/packages/prosess-vilkar-sokers-opplysningsplikt/src/SokersOpplysningspliktVilkarProsessIndex.tsx
+++ /dev/null
@@ -1,56 +0,0 @@
-import React from 'react';
-import { createIntl, createIntlCache, RawIntlProvider } from 'react-intl';
-
-import { Soknad } from '@k9-sak-web/types';
-import { StandardProsessFormProps } from '@k9-sak-web/prosess-felles';
-import { KodeverkType } from '@k9-sak-web/lib/kodeverk/types/KodeverkType.js';
-import { KodeverkObject } from '@k9-sak-web/lib/kodeverk/types/KodeverkV2.js';
-import { useKodeverkContext } from '@k9-sak-web/gui/kodeverk/index.js';
-
-import SokersOpplysningspliktForm from './components/SokersOpplysningspliktForm';
-
-import messages from '../i18n/nb_NO.json';
-
-const cache = createIntlCache();
-
-const intl = createIntl(
- {
- locale: 'nb-NO',
- messages,
- },
- cache,
-);
-
-interface OwnProps {
- soknad: Soknad;
-}
-
-const SokersOpplysningspliktVilkarProsessIndex = ({
- behandling,
- soknad,
- aksjonspunkter,
- status,
- submitCallback,
- isReadOnly,
- readOnlySubmitButton,
-}: OwnProps & StandardProsessFormProps) => {
- const { hentKodeverkForKode } = useKodeverkContext();
- return (
-
-
-
- );
-};
-
-export default SokersOpplysningspliktVilkarProsessIndex;
diff --git a/packages/prosess-vilkar-sokers-opplysningsplikt/src/components/SokersOpplysningspliktForm.spec.tsx b/packages/prosess-vilkar-sokers-opplysningsplikt/src/components/SokersOpplysningspliktForm.spec.tsx
deleted file mode 100644
index e086927cf7..0000000000
--- a/packages/prosess-vilkar-sokers-opplysningsplikt/src/components/SokersOpplysningspliktForm.spec.tsx
+++ /dev/null
@@ -1,165 +0,0 @@
-import React from 'react';
-import { screen } from '@testing-library/react';
-
-import aksjonspunktCodes from '@fpsak-frontend/kodeverk/src/aksjonspunktCodes';
-import dokumentTypeId from '@fpsak-frontend/kodeverk/src/dokumentTypeId';
-import vilkarUtfallType from '@fpsak-frontend/kodeverk/src/vilkarUtfallType';
-import { reduxFormPropsMock } from '@fpsak-frontend/utils-test/redux-form-test-helper';
-import { renderWithIntlAndReduxForm } from '@fpsak-frontend/utils-test/test-utils';
-import { Behandling, ManglendeVedleggSoknad, Soknad } from '@k9-sak-web/types';
-import { intlMock } from '../../i18n';
-import messages from '../../i18n/nb_NO.json';
-import {
- SokersOpplysningspliktFormImpl,
- buildInitialValues,
- getSortedManglendeVedlegg,
-} from './SokersOpplysningspliktForm';
-
-describe('', () => {
- it('skal vise tabell med manglende vedlegg', () => {
- const manglendeVedlegg = [
- {
- dokumentType: dokumentTypeId.INNTEKTSMELDING,
- arbeidsgiver: {
- organisasjonsnummer: '973861778',
- navn: 'Statoil Asaavd Statoil Sokkelvirksomhet',
- },
- brukerHarSagtAtIkkeKommer: false,
- },
- {
- dokumentType: dokumentTypeId.DOKUMENTASJON_AV_TERMIN_ELLER_FØDSEL,
- arbeidsgiver: null,
- brukerHarSagtAtIkkeKommer: null,
- },
- ] as ManglendeVedleggSoknad[];
-
- const dokumentTypeIds = [
- {
- kode: dokumentTypeId.INNTEKTSMELDING,
- navn: 'Inntektsmelding',
- kodeverk: '',
- },
- {
- kode: dokumentTypeId.DOKUMENTASJON_AV_TERMIN_ELLER_FØDSEL,
- navn: 'terminbekreftelse',
- kodeverk: '',
- },
- ];
-
- renderWithIntlAndReduxForm(
- undefined}
- originalErVilkarOk
- />,
- { messages },
- );
-
- expect(screen.getAllByRole('table').length).toBe(1);
- expect(screen.getByText('Inntektsmelding')).toBeInTheDocument();
- expect(screen.getByText('Statoil Asaavd Statoil Sokkelvirksomhet (973861778)')).toBeInTheDocument();
- expect(screen.getByText('terminbekreftelse')).toBeInTheDocument();
- expect(screen.getByText('Manglende opplysninger, foreslå avslag')).toBeInTheDocument();
- });
-
- it('skal ikke vise tabell når ingen vedlegg mangler', () => {
- const manglendeVedlegg = [];
- const dokumentTypeIds = [];
-
- renderWithIntlAndReduxForm(
- undefined}
- originalErVilkarOk
- />,
- { messages },
- );
-
- expect(screen.queryByRole('table')).not.toBeInTheDocument();
- });
-
- describe('selectors', () => {
- it('skal sortere manglende vedlegg', () => {
- const manglendeVedlegg = [
- {
- dokumentType: dokumentTypeId.DOKUMENTASJON_AV_TERMIN_ELLER_FØDSEL,
- arbeidsgiver: null,
- brukerHarSagtAtIkkeKommer: null,
- },
- {
- dokumentType: dokumentTypeId.INNTEKTSMELDING,
- arbeidsgiver: {
- organisasjonsnummer: '973861778',
- },
- brukerHarSagtAtIkkeKommer: false,
- },
- ] as ManglendeVedleggSoknad[];
-
- const smv = getSortedManglendeVedlegg.resultFunc({
- manglendeVedlegg,
- } as Soknad);
-
- expect(smv).toEqual([manglendeVedlegg[1], manglendeVedlegg[0]]);
- });
-
- it('skal sette opp formens initielle verdier', () => {
- const manglendeVedlegg = [
- {
- dokumentType: dokumentTypeId.INNTEKTSMELDING,
- arbeidsgiver: {
- organisasjonsnummer: '973861778',
- },
- brukerHarSagtAtIkkeKommer: false,
- },
- ] as ManglendeVedleggSoknad[];
- const aksjonspunkter = [];
-
- const intitialValues = buildInitialValues.resultFunc(
- manglendeVedlegg,
- true,
- vilkarUtfallType.OPPFYLT,
- aksjonspunkter,
- );
-
- expect(intitialValues).toEqual({
- aksjonspunktKode: aksjonspunktCodes.SOKERS_OPPLYSNINGSPLIKT_OVST,
- begrunnelse: '',
- erVilkarOk: true,
- hasAksjonspunkt: false,
- inntektsmeldingerSomIkkeKommer: {
- org_973861778: false,
- },
- });
- });
- });
-});
diff --git a/packages/prosess-vilkar-sokers-opplysningsplikt/src/components/SokersOpplysningspliktForm.tsx b/packages/prosess-vilkar-sokers-opplysningsplikt/src/components/SokersOpplysningspliktForm.tsx
deleted file mode 100644
index 3cd7187e33..0000000000
--- a/packages/prosess-vilkar-sokers-opplysningsplikt/src/components/SokersOpplysningspliktForm.tsx
+++ /dev/null
@@ -1,313 +0,0 @@
-import { RadioGroupField, behandlingForm, behandlingFormValueSelector } from '@fpsak-frontend/form';
-import aksjonspunktCodes from '@fpsak-frontend/kodeverk/src/aksjonspunktCodes';
-import { isAksjonspunktOpen } from '@fpsak-frontend/kodeverk/src/aksjonspunktStatus';
-import dokumentTypeId from '@fpsak-frontend/kodeverk/src/dokumentTypeId';
-import vilkarType from '@fpsak-frontend/kodeverk/src/vilkarType';
-import vilkarUtfallType from '@fpsak-frontend/kodeverk/src/vilkarUtfallType';
-import { VerticalSpacer } from '@fpsak-frontend/shared-components';
-import { DDMMYYYY_DATE_FORMAT, isObject, required } from '@fpsak-frontend/utils';
-import { ProsessPanelTemplate, ProsessStegBegrunnelseTextField } from '@k9-sak-web/prosess-felles';
-import { Aksjonspunkt, Behandling, KodeverkMedNavn, ManglendeVedleggSoknad, Soknad } from '@k9-sak-web/types';
-import { BodyShort, HGrid, Table } from '@navikt/ds-react';
-import moment from 'moment';
-import React from 'react';
-import { FormattedMessage, WrappedComponentProps, injectIntl } from 'react-intl';
-import { connect } from 'react-redux';
-import { InjectedFormProps } from 'redux-form';
-import { createSelector } from 'reselect';
-import { KodeverkType } from '@k9-sak-web/lib/kodeverk/types/KodeverkType.js';
-import { useKodeverkContext } from '@k9-sak-web/gui/kodeverk/index.js';
-
-const formName = 'SokersOpplysningspliktForm';
-
-const orgPrefix = 'org_';
-const aktørPrefix = 'aktør_';
-
-const findRadioButtonTextCode = (erVilkarOk: boolean): string =>
- erVilkarOk ? 'SokersOpplysningspliktForm.VilkarOppfylt' : 'SokersOpplysningspliktForm.VilkarIkkeOppfylt';
-const getLabel = intl => (
-
-
- {chunks} ,
- }}
- />
-
-
{intl.formatMessage({ id: 'SokersOpplysningspliktForm.VilkarIkkeOppfyltMerInfo' })}
-
-);
-const capitalizeFirstLetters = (navn: string): string =>
- navn
- .toLowerCase()
- .split(' ')
- .map(w => w.charAt(0).toUpperCase() + w.substr(1))
- .join(' ');
-
-const lagArbeidsgiverNavnOgFødselsdatoTekst = arbeidsgiver =>
- `${capitalizeFirstLetters(arbeidsgiver.navn)} (${moment(arbeidsgiver.fødselsdato).format(DDMMYYYY_DATE_FORMAT)})`;
-
-const lagArbeidsgiverNavnOgOrgnrTekst = arbeidsgiver =>
- `${capitalizeFirstLetters(arbeidsgiver.navn)} (${arbeidsgiver.organisasjonsnummer || ''})`;
-
-const formatArbeidsgiver = arbeidsgiver => {
- if (!arbeidsgiver) {
- return '';
- }
- if (arbeidsgiver.fødselsdato) {
- return lagArbeidsgiverNavnOgFødselsdatoTekst(arbeidsgiver);
- }
- return lagArbeidsgiverNavnOgOrgnrTekst(arbeidsgiver);
-};
-
-const isVilkarOppfyltDisabled = (hasSoknad, inntektsmeldingerSomIkkeKommer) =>
- !hasSoknad || Object.values(inntektsmeldingerSomIkkeKommer || {}).some(vd => !vd);
-
-type FormValues = {
- erVilkarOk?: boolean;
- begrunnelse?: string;
- aksjonspunktKode?: string;
- inntektsmeldingerSomIkkeKommer?: { [key: string]: boolean };
- hasAksjonspunkt?: boolean;
-};
-
-interface PureOwnProps {
- behandlingId: number;
- behandlingVersjon: number;
- behandlingsresultat?: Behandling['behandlingsresultat'];
- soknad: Soknad;
- aksjonspunkter: Aksjonspunkt[];
- status: string;
- submitCallback: (aksjonspunktData: { kode: string }[]) => Promise;
- readOnly: boolean;
- readOnlySubmitButton: boolean;
- dokumentTypeIds: KodeverkMedNavn[];
-}
-
-interface MappedOwnProps {
- hasSoknad: boolean;
- originalErVilkarOk: boolean;
- dokumentTypeIds: KodeverkMedNavn[];
- manglendeVedlegg: ManglendeVedleggSoknad[];
- erVilkarOk?: boolean;
- hasAksjonspunkt: boolean;
- initialValues: FormValues;
- inntektsmeldingerSomIkkeKommer: Record;
-}
-
-/**
- * SokersOpplysningspliktForm
- *
- * Presentasjonskomponent. Informasjon om søkers informasjonsplikt er godkjent eller avvist.
- */
-export const SokersOpplysningspliktFormImpl = ({
- intl,
- readOnly,
- readOnlySubmitButton,
- behandlingsresultat,
- hasSoknad,
- erVilkarOk,
- originalErVilkarOk,
- hasAksjonspunkt,
- manglendeVedlegg,
- dokumentTypeIds,
- inntektsmeldingerSomIkkeKommer,
- behandlingId,
- behandlingVersjon,
- ...formProps
-}: PureOwnProps & MappedOwnProps & WrappedComponentProps & InjectedFormProps) => {
- const { kodeverkNavnFraUndertypeKode } = useKodeverkContext();
- return (
-
- {manglendeVedlegg.length > 0 && (
- <>
-
-
-
-
-
-
-
-
-
- {manglendeVedlegg.map(vedlegg => (
-
-
- {dokumentTypeIds.find(dti => dti.kode === vedlegg.dokumentType).navn}
-
-
- {vedlegg.dokumentType === dokumentTypeId.INNTEKTSMELDING &&
- formatArbeidsgiver(vedlegg.arbeidsgiver)}
-
-
- ))}
-
-
-
-
- >
- )}
-
- {!readOnly && (
- <>
-
-
- ,
- },
- {
- value: false,
- label: getLabel(intl),
- },
- ]}
- />
-
- >
- )}
- {readOnly && (
-
- {originalErVilkarOk === false && behandlingsresultat?.avslagsarsak && (
- <>
-
-
- {kodeverkNavnFraUndertypeKode(
- behandlingsresultat.avslagsarsak,
- vilkarType.SOKERSOPPLYSNINGSPLIKT,
- KodeverkType.AVSLAGSARSAK,
- )}
-
- >
- )}
-
- )}
-
- );
-};
-
-export const getSortedManglendeVedlegg = createSelector([(ownProps: PureOwnProps) => ownProps.soknad], soknad =>
- soknad && soknad.manglendeVedlegg
- ? soknad.manglendeVedlegg
- .slice()
- .sort(mv1 => (mv1.dokumentType === dokumentTypeId.DOKUMENTASJON_AV_TERMIN_ELLER_FØDSEL ? 1 : -1))
- : [],
-);
-
-const harSoknad = createSelector(
- [(ownProps: PureOwnProps) => ownProps.soknad],
- soknad => soknad !== null && isObject(soknad),
-);
-
-const lagArbeidsgiverKey = arbeidsgiver => {
- if (arbeidsgiver.aktørId) {
- return `${aktørPrefix}${arbeidsgiver.aktørId}`;
- }
- return `${orgPrefix}${arbeidsgiver.organisasjonsnummer}`;
-};
-
-export const buildInitialValues = createSelector(
- [
- getSortedManglendeVedlegg,
- harSoknad,
- (ownProps: PureOwnProps) => ownProps.status,
- (ownProps: PureOwnProps) => ownProps.aksjonspunkter,
- ],
- (manglendeVedlegg, soknadExists, status, aksjonspunkter): FormValues => {
- const aksjonspunkt = aksjonspunkter.length > 0 ? aksjonspunkter[0] : undefined;
- const isOpenAksjonspunkt = aksjonspunkt && isAksjonspunktOpen(aksjonspunkt.status);
- const isVilkarGodkjent = soknadExists && vilkarUtfallType.OPPFYLT === status;
-
- const inntektsmeldingerSomIkkeKommer = manglendeVedlegg
- .filter(mv => mv.dokumentType === dokumentTypeId.INNTEKTSMELDING)
- .reduce(
- (acc, mv) => ({
- ...acc,
- [lagArbeidsgiverKey(mv.arbeidsgiver)]: mv.brukerHarSagtAtIkkeKommer,
- }),
- {},
- );
-
- return {
- inntektsmeldingerSomIkkeKommer,
- erVilkarOk: isOpenAksjonspunkt && soknadExists ? undefined : isVilkarGodkjent,
- aksjonspunktKode: aksjonspunkt ? aksjonspunkt.definisjon : aksjonspunktCodes.SOKERS_OPPLYSNINGSPLIKT_OVST,
- hasAksjonspunkt: aksjonspunkt !== undefined,
- ...ProsessStegBegrunnelseTextField.buildInitialValues(aksjonspunkter),
- };
- },
-);
-
-const transformValues = (values: FormValues, manglendeVedlegg: ManglendeVedleggSoknad[]) => {
- const arbeidsgivere = manglendeVedlegg
- .filter(mv => mv.dokumentType === dokumentTypeId.INNTEKTSMELDING)
- .map(mv => mv.arbeidsgiver);
- return {
- kode: values.aksjonspunktKode,
- erVilkarOk: values.erVilkarOk,
- inntektsmeldingerSomIkkeKommer: arbeidsgivere.map(
- ag => ({
- organisasjonsnummer: ag.aktørId ? null : ag.organisasjonsnummer, // backend sender fødselsdato i orgnummer feltet for privatpersoner... fiks dette
- aktørId: ag.aktørId,
- brukerHarSagtAtIkkeKommer: values.inntektsmeldingerSomIkkeKommer[lagArbeidsgiverKey(ag)],
- }),
- {},
- ),
- ...ProsessStegBegrunnelseTextField.transformValues(values),
- };
-};
-
-const submitSelector = createSelector(
- [getSortedManglendeVedlegg, (props: PureOwnProps) => props.submitCallback],
- (manglendeVedlegg, submitCallback) => values => submitCallback([transformValues(values, manglendeVedlegg)]),
-);
-
-const mapStateToPropsFactory = (_initialState, initialOwnProps: PureOwnProps) => {
- const isOpenAksjonspunkt = initialOwnProps.aksjonspunkter.some(ap => isAksjonspunktOpen(ap.status));
- const erVilkarOk = isOpenAksjonspunkt ? undefined : vilkarUtfallType.OPPFYLT === initialOwnProps.status;
-
- return (state, ownProps: PureOwnProps): MappedOwnProps => {
- const { behandlingId, behandlingVersjon, dokumentTypeIds } = ownProps;
- return {
- onSubmit: submitSelector(ownProps),
- hasSoknad: harSoknad(ownProps),
- originalErVilkarOk: erVilkarOk,
- dokumentTypeIds,
- manglendeVedlegg: getSortedManglendeVedlegg(ownProps),
- initialValues: buildInitialValues(ownProps),
- ...behandlingFormValueSelector(formName, behandlingId, behandlingVersjon)(
- state,
- 'hasAksjonspunkt',
- 'erVilkarOk',
- 'inntektsmeldingerSomIkkeKommer',
- ),
- };
- };
-};
-
-export default connect(mapStateToPropsFactory)(
- behandlingForm({
- form: formName,
- })(injectIntl(SokersOpplysningspliktFormImpl)),
-);
diff --git a/packages/prosess-vilkar-soknadsfrist/package.json b/packages/prosess-vilkar-soknadsfrist/package.json
index 6f17e2ceb3..fb33a667d5 100644
--- a/packages/prosess-vilkar-soknadsfrist/package.json
+++ b/packages/prosess-vilkar-soknadsfrist/package.json
@@ -12,7 +12,7 @@
"@fpsak-frontend/utils": "1.0.0",
"@k9-sak-web/sak-app": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"classnames": "2.5.1",
"moment": "2.30.1",
"object-hash": "3.0.0",
diff --git a/packages/prosess-vilkar-sykdom/package.json b/packages/prosess-vilkar-sykdom/package.json
index ce2b8fcb8f..4063ef3f72 100644
--- a/packages/prosess-vilkar-sykdom/package.json
+++ b/packages/prosess-vilkar-sykdom/package.json
@@ -9,7 +9,7 @@
"@fpsak-frontend/kodeverk": "1.0.0",
"@fpsak-frontend/shared-components": "1.0.0",
"@fpsak-frontend/utils": "1.0.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"classnames": "2.5.1",
"lodash": "4.17.21",
"react": "18.3.1",
diff --git a/packages/rest-api/package.json b/packages/rest-api/package.json
index 99778cd07c..6e8310b650 100644
--- a/packages/rest-api/package.json
+++ b/packages/rest-api/package.json
@@ -5,8 +5,9 @@
"license": "MIT",
"private": true,
"dependencies": {
+ "@k9-sak-web/backend": "workspace:^",
"@k9-sak-web/lib": "1.0.0",
- "axios": "1.7.5",
+ "axios": "1.7.7",
"node-cache": "5.1.2"
}
}
diff --git a/packages/rest-api/src/axios/getAxiosHttpClientApi.ts b/packages/rest-api/src/axios/getAxiosHttpClientApi.ts
index 808f41f0ee..38af8e333e 100644
--- a/packages/rest-api/src/axios/getAxiosHttpClientApi.ts
+++ b/packages/rest-api/src/axios/getAxiosHttpClientApi.ts
@@ -2,6 +2,7 @@ import { AxiosResponse } from 'axios';
import { konverterKodeverkTilKode } from '@k9-sak-web/lib/kodeverk/konverterKodeverkTilKode.js';
import axiosEtag from './axiosEtag';
import initRestMethods from './initRestMethods';
+import { generateNavCallidHeader } from '@k9-sak-web/backend/shared/instrumentation/navCallid.js';
/**
* getAxiosHttpClientApi
@@ -10,11 +11,10 @@ import initRestMethods from './initRestMethods';
const getAxiosHttpClientApi = () => {
const axiosInstance = axiosEtag();
- // TODO (TOR) sentry bør ikkje vera ein avhengighet til pakka "rest-api". Konfigurer dette utanfor
axiosInstance.interceptors.request.use((c): any => {
- const navCallId = `CallId_${new Date().getTime()}_${Math.floor(Math.random() * 1000000000)}`;
+ const { headerName, headerValue } = generateNavCallidHeader();
const config = { ...c };
- config.headers['Nav-Callid'] = navCallId;
+ config.headers[headerName] = headerValue;
return config;
});
diff --git a/packages/sak-app/package.json b/packages/sak-app/package.json
index 5a9223f309..09b88fe6f5 100644
--- a/packages/sak-app/package.json
+++ b/packages/sak-app/package.json
@@ -44,16 +44,16 @@
"@k9-sak-web/sak-notat": "1.0.0",
"@k9-sak-web/sak-soknadsperiodestripe": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ds-react": "6.13.0",
- "@navikt/ft-fakta-beregning-redesign": "1.2.21",
- "@navikt/ft-form-hooks": "5.0.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
- "@navikt/ft-prosess-beregningsgrunnlag": "6.5.26",
- "@navikt/ft-ui-komponenter": "2.3.19",
- "@sentry/browser": "8.27.0",
- "@sentry/react": "^8.27.0",
- "@tanstack/react-query": "^5.52.3",
- "axios": "1.7.5",
+ "@navikt/ds-react": "6.16.3",
+ "@navikt/ft-fakta-beregning-redesign": "1.2.27",
+ "@navikt/ft-form-hooks": "5.0.5",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
+ "@navikt/ft-prosess-beregningsgrunnlag": "6.5.32",
+ "@navikt/ft-ui-komponenter": "2.4.4",
+ "@sentry/browser": "8.28.0",
+ "@sentry/react": "^8.28.0",
+ "@tanstack/react-query": "^5.55.0",
+ "axios": "1.7.7",
"classnames": "2.5.1",
"history": "5.3.0",
"moment": "2.30.1",
@@ -62,7 +62,7 @@
"react-dom": "18.3.1",
"react-intl": "6.6.8",
"react-redux": "9.1.2",
- "react-router-dom": "6.26.0",
+ "react-router-dom": "6.26.1",
"redux": "5.0.1",
"redux-form": "8.3.10",
"redux-thunk": "3.1.0"
diff --git a/packages/sak-app/src/app/components/Home.tsx b/packages/sak-app/src/app/components/Home.tsx
index 559b402d3d..e7e139bc87 100644
--- a/packages/sak-app/src/app/components/Home.tsx
+++ b/packages/sak-app/src/app/components/Home.tsx
@@ -11,6 +11,7 @@ import { aktoerRoutePath, fagsakRoutePath } from '../paths';
import DashboardResolver from './DashboardResolver';
import { BehandlingProvider } from '@k9-sak-web/gui/behandling/index.js';
import styles from './home.module.css';
+import { UnhandledRejectionCatcher } from '@k9-sak-web/gui/app/UnhandledRejectionCatcher.js';
interface OwnProps {
headerHeight: number;
@@ -32,6 +33,7 @@ const queryClient = new QueryClient();
*/
const Home = ({ headerHeight }: OwnProps) => (
+
} />
diff --git a/packages/sak-app/src/bootstrap.tsx b/packages/sak-app/src/bootstrap.tsx
index 8bbc7f94d9..4dfb1b4c09 100644
--- a/packages/sak-app/src/bootstrap.tsx
+++ b/packages/sak-app/src/bootstrap.tsx
@@ -10,6 +10,10 @@ import { BrowserRouter, createRoutesFromChildren, matchRoutes, useLocation, useN
import AppIndex from './app/AppIndex';
import configureStore from './configureStore';
import { IS_DEV, VITE_SENTRY_RELEASE } from './constants';
+import { ExtendedApiError } from '@k9-sak-web/backend/shared/instrumentation/ExtendedApiError.js';
+
+import { isAlertInfo } from '@k9-sak-web/gui/app/alerts/AlertInfo.js';
+import { AxiosError } from 'axios';
/* eslint no-undef: "error" */
const isDevelopment = IS_DEV;
@@ -32,25 +36,37 @@ init({
}),
],
beforeSend: (event, hint) => {
- const exception = hint.originalException;
- // @ts-expect-error Migrert frå ts-ignore, uvisst kvifor denne trengs
- if (exception?.isAxiosError) {
- // @ts-expect-error Migrert frå ts-ignore, uvisst kvifor denne trengs
- const requestUrl = new URL(exception.request.responseURL);
- // eslint-disable-next-line no-param-reassign
- event.fingerprint = [
- '{{ default }}',
- // @ts-expect-error Migrert frå ts-ignore, uvisst kvifor denne trengs
- String(exception.name),
- // @ts-expect-error Migrert frå ts-ignore, uvisst kvifor denne trengs
- String(exception.message),
- String(requestUrl.pathname),
- ];
- // eslint-disable-next-line no-param-reassign
- event.extra = event.extra ? event.extra : {};
- // @ts-expect-error Migrert frå ts-ignore, uvisst kvifor denne trengs
- // eslint-disable-next-line no-param-reassign
- event.extra.callId = exception.response.config.headers['Nav-Callid'];
+ try {
+ event.extra = event.extra || {};
+ const exception = hint.originalException;
+ if (exception instanceof AxiosError) {
+ const requestUrl = new URL(exception.request.responseURL);
+ event.fingerprint = [
+ '{{ default }}',
+ String(exception.name),
+ String(exception.message),
+ String(requestUrl.pathname),
+ ];
+ event.extra.callId = exception.response.config.headers['Nav-Callid'];
+ } else if (exception instanceof ExtendedApiError) {
+ event.fingerprint = ['{{ default }}', exception.name, exception.statusText, exception.url];
+ event.extra.callId = exception.navCallid;
+ }
+ // For alle Error typer som implementerer AlertInfo tek vi med errorId i sentry rapport.
+ if (isAlertInfo(exception)) {
+ event.extra.errorId = `${exception.errorId}`;
+ }
+ } catch (e) {
+ try {
+ event.exception.values.push(e);
+ console.error('Sentry beforeSend failure. Will send the original event with extra error attached', e);
+ } catch (e2) {
+ console.error(
+ 'Sentry beforeSend failure. Will send the original event. Attaching of extra error also failed',
+ e,
+ e2,
+ );
+ }
}
return event;
},
diff --git a/packages/sak-behandling-velger/package.json b/packages/sak-behandling-velger/package.json
index 2700795a09..5bfb2217fa 100644
--- a/packages/sak-behandling-velger/package.json
+++ b/packages/sak-behandling-velger/package.json
@@ -12,13 +12,13 @@
"@k9-sak-web/konstanter": "1.0.0",
"@k9-sak-web/lib": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@tanstack/react-query": "^5.52.3",
+ "@tanstack/react-query": "^5.55.0",
"classnames": "2.5.1",
"history": "5.3.0",
"moment": "2.30.1",
"react": "18.3.1",
"react-intl": "6.6.8",
- "react-router-dom": "6.26.0"
+ "react-router-dom": "6.26.1"
},
"devDependencies": {
"@fpsak-frontend/utils-test": "1.0.0"
diff --git a/packages/sak-behandling-velger/src/components/BehandlingPicker.tsx b/packages/sak-behandling-velger/src/components/BehandlingPicker.tsx
index 7e670f703d..41487e0c5a 100644
--- a/packages/sak-behandling-velger/src/components/BehandlingPicker.tsx
+++ b/packages/sak-behandling-velger/src/components/BehandlingPicker.tsx
@@ -1,4 +1,3 @@
-import { ReactElement, useEffect, useMemo, useRef, useState } from 'react';
import behandlingStatus from '@fpsak-frontend/kodeverk/src/behandlingStatus';
import behandlingType from '@fpsak-frontend/kodeverk/src/behandlingType';
import { VerticalSpacer } from '@fpsak-frontend/shared-components';
@@ -9,6 +8,7 @@ import { BodyShort, Button, Heading } from '@navikt/ds-react';
import { UseQueryResult, useQueries } from '@tanstack/react-query';
import axios from 'axios';
import { Location } from 'history';
+import { ReactElement, useEffect, useMemo, useRef, useState } from 'react';
import { FormattedMessage, IntlShape, useIntl } from 'react-intl';
import { NavLink, useNavigate } from 'react-router-dom';
import { KodeverkType } from '@k9-sak-web/lib/kodeverk/types/KodeverkType.js';
diff --git a/packages/sak-dekorator/package.json b/packages/sak-dekorator/package.json
index ca1f524d0b..560cb27fca 100644
--- a/packages/sak-dekorator/package.json
+++ b/packages/sak-dekorator/package.json
@@ -12,7 +12,7 @@
"@fpsak-frontend/shared-components": "1.0.0",
"@fpsak-frontend/utils": "1.0.0",
"@k9-sak-web/konstanter": "1.0.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"react": "18.3.1",
"react-intl": "6.6.8",
"uuid": "10.0.0"
diff --git a/packages/sak-dokumenter/package.json b/packages/sak-dokumenter/package.json
index f70e30e0e9..634234ea69 100644
--- a/packages/sak-dokumenter/package.json
+++ b/packages/sak-dokumenter/package.json
@@ -9,7 +9,7 @@
"@fpsak-frontend/kodeverk": "1.0.0",
"@fpsak-frontend/shared-components": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@tanstack/react-query": "^5.52.3",
+ "@tanstack/react-query": "^5.55.0",
"react": "18.3.1",
"react-intl": "6.6.8"
},
diff --git a/packages/sak-historikk/package.json b/packages/sak-historikk/package.json
index c992dc75d1..511318394e 100644
--- a/packages/sak-historikk/package.json
+++ b/packages/sak-historikk/package.json
@@ -12,7 +12,7 @@
"history": "5.3.0",
"react": "18.3.1",
"react-intl": "6.6.8",
- "react-router-dom": "6.26.0"
+ "react-router-dom": "6.26.1"
},
"devDependencies": {
"@fpsak-frontend/utils-test": "1.0.0"
diff --git a/packages/sak-meny-marker-behandling/package.json b/packages/sak-meny-marker-behandling/package.json
index 1da5dfd98a..b275b8f458 100644
--- a/packages/sak-meny-marker-behandling/package.json
+++ b/packages/sak-meny-marker-behandling/package.json
@@ -8,7 +8,7 @@
"@fpsak-frontend/form": "1.0.0",
"@fpsak-frontend/shared-components": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ds-react": "6.13.0",
+ "@navikt/ds-react": "6.16.3",
"formik": "2.4.6",
"react": "18.3.1",
"react-intl": "6.6.8",
diff --git a/packages/sak-meny-sett-pa-vent/package.json b/packages/sak-meny-sett-pa-vent/package.json
index 850b0ac8a2..62a31abb9a 100644
--- a/packages/sak-meny-sett-pa-vent/package.json
+++ b/packages/sak-meny-sett-pa-vent/package.json
@@ -10,7 +10,7 @@
"react": "18.3.1",
"react-intl": "6.6.8",
"react-redux": "9.1.2",
- "react-router-dom": "6.26.0",
+ "react-router-dom": "6.26.1",
"redux": "5.0.1",
"redux-form": "8.3.10"
}
diff --git a/packages/sak-meny/package.json b/packages/sak-meny/package.json
index 8e6c27a662..3ca360043a 100644
--- a/packages/sak-meny/package.json
+++ b/packages/sak-meny/package.json
@@ -7,7 +7,7 @@
"dependencies": {
"@fpsak-frontend/assets": "1.0.0",
"@fpsak-frontend/shared-components": "1.0.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"react": "18.3.1",
"react-intl": "6.6.8"
},
diff --git a/packages/sak-notat/package.json b/packages/sak-notat/package.json
index 0da44a1b33..db1dd47e45 100644
--- a/packages/sak-notat/package.json
+++ b/packages/sak-notat/package.json
@@ -7,14 +7,14 @@
"dependencies": {
"@k9-sak-web/rest-api": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/aksel-icons": "6.13.0",
- "@navikt/ds-react": "6.13.0",
- "@navikt/ft-form-hooks": "5.0.0",
- "@navikt/ft-form-validators": "2.3.18",
- "@tanstack/react-query": "^5.52.3",
+ "@navikt/aksel-icons": "6.16.3",
+ "@navikt/ds-react": "6.16.3",
+ "@navikt/ft-form-hooks": "5.0.5",
+ "@navikt/ft-form-validators": "2.3.22",
+ "@tanstack/react-query": "^5.55.0",
"date-fns": "3.6.0",
"react": "18.3.1",
- "react-hook-form": "7.52.2",
+ "react-hook-form": "7.53.0",
"react-intl": "6.6.8"
}
}
diff --git a/packages/sak-totrinnskontroll/package.json b/packages/sak-totrinnskontroll/package.json
index fe3193a6b7..327b35b87b 100644
--- a/packages/sak-totrinnskontroll/package.json
+++ b/packages/sak-totrinnskontroll/package.json
@@ -17,7 +17,7 @@
"react": "18.3.1",
"react-intl": "6.6.8",
"react-redux": "9.1.2",
- "react-router-dom": "6.26.0",
+ "react-router-dom": "6.26.1",
"redux": "5.0.1",
"redux-form": "8.3.10",
"reselect": "5.1.1"
diff --git a/packages/sak-visittkort/package.json b/packages/sak-visittkort/package.json
index b40c452b5d..33d24decc2 100644
--- a/packages/sak-visittkort/package.json
+++ b/packages/sak-visittkort/package.json
@@ -10,7 +10,7 @@
"@fpsak-frontend/utils": "1.0.0",
"@k9-sak-web/sak-app": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
"dayjs": "1.11.13",
"moment": "2.30.1",
"react": "18.3.1",
diff --git a/packages/shared-components/package.json b/packages/shared-components/package.json
index be2d9115d9..856929ff16 100644
--- a/packages/shared-components/package.json
+++ b/packages/shared-components/package.json
@@ -12,11 +12,11 @@
"@fpsak-frontend/kodeverk": "1.0.0",
"@fpsak-frontend/utils": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/aksel-icons": "6.13.0",
- "@navikt/ds-react": "6.13.0",
- "@navikt/fnrvalidator": "2.1.0",
- "@navikt/ft-plattform-komponenter": "3.0.4",
- "axios": "1.7.5",
+ "@navikt/aksel-icons": "6.16.3",
+ "@navikt/ds-react": "6.16.3",
+ "@navikt/fnrvalidator": "2.1.2",
+ "@navikt/ft-plattform-komponenter": "3.0.8",
+ "axios": "1.7.7",
"classnames": "2.5.1",
"date-fns": "3.6.0",
"date-fns-tz": "3.1.3",
diff --git a/packages/types/src/beregningsresultatUtbetaltTsType.ts b/packages/types/src/beregningsresultatUtbetaltTsType.ts
index 810c2140b1..b859e34dee 100644
--- a/packages/types/src/beregningsresultatUtbetaltTsType.ts
+++ b/packages/types/src/beregningsresultatUtbetaltTsType.ts
@@ -1,6 +1,7 @@
export type BeregningsresultatPeriodeAndel = Readonly<{
arbeidsgiverNavn: string;
arbeidsgiverOrgnr: string;
+ arbeidsgiverPersonIdent: string;
refusjon: number;
tilSoker: number;
uttak: any[];
diff --git a/packages/utils-test/package.json b/packages/utils-test/package.json
index dfc04dd326..44019d88d9 100644
--- a/packages/utils-test/package.json
+++ b/packages/utils-test/package.json
@@ -8,7 +8,7 @@
"license": "MIT",
"private": true,
"dependencies": {
- "@tanstack/react-query": "^5.52.3",
+ "@tanstack/react-query": "^5.55.0",
"react": "18.3.1",
"react-intl": "6.6.8"
}
diff --git a/packages/utils/package.json b/packages/utils/package.json
index 5c469e86cc..37b39a9550 100644
--- a/packages/utils/package.json
+++ b/packages/utils/package.json
@@ -9,7 +9,7 @@
"@fpsak-frontend/kodeverk": "1.0.0",
"@k9-sak-web/konstanter": "1.0.0",
"@k9-sak-web/types": "1.0.0",
- "@navikt/ft-types": "2.4.15",
+ "@navikt/ft-types": "2.4.17",
"moment": "2.30.1",
"react": "18.3.1",
"react-intl": "6.6.8"
diff --git a/packages/utils/src/validation/validators.ts b/packages/utils/src/validation/validators.ts
index 6f637fa77d..b14e278250 100644
--- a/packages/utils/src/validation/validators.ts
+++ b/packages/utils/src/validation/validators.ts
@@ -54,6 +54,7 @@ import {
export const maxLengthOrFodselsnr = length => text =>
isEmpty(text) || text.toString().trim().length <= length ? null : maxLengthOrFodselsnrMessage(length);
export const required = value => (isEmpty(value) ? isRequiredMessage() : undefined);
+export const atLeastOneRequired = ((value, otherValue) => (isEmpty(value) && isEmpty(otherValue) ? isRequiredMessage() : undefined));
export const notDash = value => (value === '-' ? isRequiredMessage() : undefined);
export const requiredIfNotPristine = (value, allValues, props) =>
props.pristine || !isEmpty(value) ? undefined : isRequiredMessage();
diff --git a/packages/v2/README.md b/packages/v2/README.md
new file mode 100644
index 0000000000..40e7bac744
--- /dev/null
+++ b/packages/v2/README.md
@@ -0,0 +1,79 @@
+k9-sak-web v2/
+==============
+
+All kode under her blir kontrollert med strengare tsconfig.json oppsett enn resten av kodebasen.
+
+## Oversikt kataloger
+
+- _v2/backend:_ Typescript kode for kommunikasjon med backend servere, og datatyper for dette. [Sjå backend/README for meir info](backend/README.md)
+- _v2/gui:_ React kode for brukergrensesnittet plasserast her. [Sjå gui/README for meir info](gui/README.md)
+
+Etter at du har lest info under bør du sjå gjennom readme filene referert over.
+
+## Teknisk retning
+
+For kode under v2/ ønsker vi å følge disse prinsipp:
+
+### imports
+Bruk moderne **exports clause i package.json**. Med dette kan vi ha færre toppnivå pakker som eksporterer eit hierarki av moduler.
+Så istadenfor å importere frå det som er eksportert frå index.ts i ein pakke importerer vi direkte frå fil:
+```typescript
+import type { FagsakYtelsesType } from '@k9-sak-web/backend/k9sak/kodeverk/FagsakYtelsesType.js';
+```
+Sjå korleis dette er gjort allereie i _v2/gui_ for eksempel.
+
+Vi unngår med dette namnekonflikter, får raskare bygg og sannsynlegvis betre tree-shaking av resultatet.
+
+Viss ein ønsker det kan ein og lage tydeleg definerte "barrel files" som re-eksporterer innafor dette oppsettet. Eit tenkt eksempel kan sjå slik ut:
+```typescript
+import type { FagsakYtelsesType, Språkode } from '@k9-sak-web/backend/k9sak/kodeverk/types.js';
+```
+
+_v2/backend/src/k9sak/kodeverk/types.ts_ ser då slik ut:
+
+```typescript
+export type { FagsakYtelsesType } from './FagsakYtelsesType.js'
+export type { Språkkode } from './Språkkode.js'
+```
+
+Vi skal og bruke **.js som suffiks i imports**, ikkje .ts. Dette er det anbefalte for moderne typescript oppsett, for best
+mulig framtidig kompatiblitet.
+
+### Backend kommunikasjon
+For kode i v2 skal vi bruke api kode frå v2/backend, som igjen er generert frå openapi spesifikasjon til k9-sak backend og k9-tilbake.
+
+Dette betyr at vi ikkje bruker den gamle rest-api koden, og ikkje ser på (HATEOAS) link info returnert i api responser slik den gamle rest-api koden gjere.
+Dette vil gjere det lettare å ut frå frontend koden sjå kvar i backend data blir henta frå/sendt til.
+
+Vi får med dette automatisk genererte korrekte typescript datatyper for input og resultat frå backend. Url og http metode for kall blir og
+automatisk propagert frå serverdefinisjon til typescript. Vi kan og bruke metadata om validering på server-endepunktet som automatisk blir
+propagert til typescript.
+
+Dette forutsetter at backend kode har korrekte annotasjoner/typeinfo eksponert slik at openapi spesifikasjonen blir generert
+med korrekte spesifikke typer. Viss dette ikkje er tilfelle må ein fikse backend definisjonen slik at ein får ein korrekt
+typescript klientkode generert ut frå denne.
+
+Sjå eksisterande kode i v2/gui og v2/backend for eksempel på korleis dette kan gjerast.
+
+### Storybook/testing
+
+For testing av react kode ønsker vi å skrive testane som ein del av stories i storybook. Dette gjev enklare utvikling
+av testane, ein kan enklare sjå evt feil direkte i storybook i nettlesaren istadenfor å måtte sjå gjennom DOM output i konsollen.
+Det blir og enklare å vise brukergrensesnittets design oppførsel til andre når ein har gode storybook scenario.
+
+Vurder og å lage "fake backend" for å få testa komponenter sin oppførsel meir interaktivt istadenfor berre statiske mocks.
+Ved å lage ein fake backend basert på klient og datatyper generert frå openapi får ein også lettare holdt disse oppdatert
+når backend blir endra. Sjå eksempel på korleis dette kan gjerast i _v2/gui/src/sak/meldinger/Messages.stories.tsx_
+
+### Unngå unødvendig kompleksitet
+
+Vi har bestemt at ny kode for saksbehandlingsløysinga skal ikkje ha støtte for ulike språk. Så gammal intl kode fjernast ved omskriving.
+
+### Forbetre kodekvaliteten og vedlikeholdbarhet
+
+Unngå å ukritisk kopiere inn gammal kode. Prøv å forenkle og forbetre lesbarhet. Gå over til standardisert aksel kode istadenfor
+gamle ft-frontend komponenter.
+
+Bruk autogenererte typer og konstanter frå _v2/backend_ istadenfor å kopiere inn gammal kode for serverdatatyper, som kan
+vere utdaterte og dupliserte. Viss det som er autogenerert frå openapi spesifikasjonen til serveren ikkje stemmer, forbetre
+openapi definisjonen i backend koden istadenfor å lage eigen typescript kode som manuelt dupliserer backend kode.
diff --git a/packages/v2/backend/package.json b/packages/v2/backend/package.json
index 28d73180c1..c56c9c7ee5 100644
--- a/packages/v2/backend/package.json
+++ b/packages/v2/backend/package.json
@@ -9,12 +9,13 @@
"./combined/*": "./src/combined/*",
"./k9sak/generated": "./src/k9sak/generated/index.js",
"./k9sak/kodeverk/*": "./src/k9sak/kodeverk/*",
+ "./k9sak/errorhandling/*": "./src/k9sak/errorhandling/*",
"./k9formidling/*": "./src/k9formidling/*",
"./k9klage/generated": "./src/k9klage/generated/index.js",
"./k9klage/kodeverk/*": "./src/k9klage/kodeverk/*"
},
"dependencies": {
"@navikt/k9-klage-typescript-client": "1.0.20240513162434-997f3da",
- "@navikt/k9-sak-typescript-client": "1.0.20240814091215"
+ "@navikt/k9-sak-typescript-client": "1.0.20240905134852"
}
}
diff --git a/packages/v2/backend/src/k9sak/errorhandling/K9SakApiError.ts b/packages/v2/backend/src/k9sak/errorhandling/K9SakApiError.ts
new file mode 100644
index 0000000000..a3eb15b82d
--- /dev/null
+++ b/packages/v2/backend/src/k9sak/errorhandling/K9SakApiError.ts
@@ -0,0 +1,34 @@
+import { ExtendedApiError } from '../../shared/instrumentation/ExtendedApiError.js';
+import type { ApiError } from '@navikt/k9-sak-typescript-client';
+import { isK9SakErrorData, type K9SakErrorData } from './errorData.js';
+
+export class K9SakApiError extends ExtendedApiError {
+ constructor(apiError: ApiError, navCallid: string | null) {
+ super(apiError, navCallid);
+ this.name = K9SakApiError.name;
+ }
+
+ public get errorData(): K9SakErrorData | null {
+ return isK9SakErrorData(this.body) ? this.body : null;
+ }
+
+ public get erValideringsfeil(): boolean {
+ return this.errorData?.type === 'VALIDERINGS_FEIL';
+ }
+
+ public get erManglerTilgangFeil(): boolean {
+ return this.errorData?.type === 'MANGLER_TILGANG_FEIL';
+ }
+
+ public get erTomtResultatFeil(): boolean {
+ return this.errorData?.type === 'TOMT_RESULTAT_FEIL';
+ }
+
+ public get erBehandlingEndretFeil(): boolean {
+ return this.errorData?.type === 'MANGLER_TILGANG_FEIL';
+ }
+
+ public get erGenerellFeil(): boolean {
+ return this.errorData?.type === 'GENERELL_FEIL';
+ }
+}
diff --git a/packages/v2/backend/src/k9sak/errorhandling/K9SakHttpRequest.ts b/packages/v2/backend/src/k9sak/errorhandling/K9SakHttpRequest.ts
new file mode 100644
index 0000000000..4b35373e14
--- /dev/null
+++ b/packages/v2/backend/src/k9sak/errorhandling/K9SakHttpRequest.ts
@@ -0,0 +1,20 @@
+import { FetchHttpRequest } from '@navikt/k9-sak-typescript-client/core/FetchHttpRequest.js';
+import type { ApiRequestOptions } from '@navikt/k9-sak-typescript-client/core/ApiRequestOptions.js';
+import { CancelablePromise, type OpenAPIConfig } from '@navikt/k9-sak-typescript-client';
+import { requestWithExtendedErrorHandler } from './requestWithExtendedErrorHandler.js';
+
+export class K9SakHttpRequest extends FetchHttpRequest {
+ constructor(config: OpenAPIConfig) {
+ super(config);
+ }
+ /**
+ * Request method
+ * @param options The request options from the service
+ * @returns CancelablePromise
+ * @throws ApiError
+ */
+
+ public override request(options: ApiRequestOptions): CancelablePromise {
+ return requestWithExtendedErrorHandler(this.config, options);
+ }
+}
diff --git a/packages/v2/backend/src/k9sak/errorhandling/errorData.spec.ts b/packages/v2/backend/src/k9sak/errorhandling/errorData.spec.ts
new file mode 100644
index 0000000000..8a0076fe8d
--- /dev/null
+++ b/packages/v2/backend/src/k9sak/errorhandling/errorData.spec.ts
@@ -0,0 +1,27 @@
+import { describe } from 'vitest';
+import { isK9SakErrorData, type K9SakErrorData } from './errorData.js';
+
+describe('isK9SakErrorData', () => {
+ it('should identify instance of K9SakErrorData type', () => {
+ const inp1: K9SakErrorData = {
+ type: 'VALIDERINGS_FEIL',
+ feilmelding: 'feil melding',
+ };
+ expect(isK9SakErrorData(inp1)).toBe(true);
+ const inp2: K9SakErrorData = {
+ feilmelding:
+ 'Det oppstod en valideringsfeil på felt [fritekst]. Vennligst kontroller at alle feltverdier er korrekte.',
+ feltFeil: [
+ {
+ melding:
+ '[asdsa🥲dfvd] matcher ikke tillatt pattern [^[\\p{Pd}\\p{Graph}\\p{Space}\\p{Sc}\\p{L}\\p{M}\\p{N}§]*$]',
+ metainformasjon: null,
+ navn: 'fritekst',
+ },
+ ],
+ feilkode: null,
+ type: 'VALIDERINGS_FEIL',
+ };
+ expect(isK9SakErrorData(inp2)).toBe(true);
+ });
+});
diff --git a/packages/v2/backend/src/k9sak/errorhandling/errorData.ts b/packages/v2/backend/src/k9sak/errorhandling/errorData.ts
new file mode 100644
index 0000000000..205d9f1a9e
--- /dev/null
+++ b/packages/v2/backend/src/k9sak/errorhandling/errorData.ts
@@ -0,0 +1,41 @@
+import { type FeilDto, type FeltFeilDto } from '@navikt/k9-sak-typescript-client';
+import { isObject } from '../../typecheck/isObject.js';
+import { isString } from '../../typecheck/isString.js';
+import { isArray } from '../../typecheck/isArray.js';
+
+export type K9SakErrorData = FeilDto;
+
+const bodyPropnames: Record = {
+ feilmelding: 'feilmelding',
+ type: 'type',
+ feilkode: 'feilkode',
+ feltFeil: 'feltFeil',
+};
+
+const feltFeilPropnames: Record = {
+ navn: 'navn',
+ melding: 'melding',
+ metainformasjon: 'metainformasjon',
+};
+
+// Sjekker at body har required props frå K9SakErrorBody
+const isK9SakErrorDataKeys = (body: unknown): body is Record =>
+ isObject(body) &&
+ Object.keys(body).includes(bodyPropnames.feilmelding) &&
+ Object.keys(body).includes(bodyPropnames.type);
+
+// Sjekker at v har required props frå FeltFeilDto
+const isFeltFeilDtoKeys = (v: unknown): v is Record =>
+ isObject(v) && Object.keys(v).includes(feltFeilPropnames.melding) && Object.keys(v).includes(feltFeilPropnames.navn);
+
+// Sjekker at v ser ut til å vere instans av FeltFeilDto
+const isFeltFeil = (v: unknown): v is FeltFeilDto => isFeltFeilDtoKeys(v) && isString(v.navn) && isString(v.melding);
+
+export const isK9SakErrorData = (body: unknown): body is K9SakErrorData =>
+ isK9SakErrorDataKeys(body) &&
+ isString(body.feilmelding) &&
+ isString(body.type) &&
+ (body.feilkode === undefined || body.feilkode === null || isString(body.feilkode)) &&
+ (body.feltFeil === undefined ||
+ body.feltFeil === null ||
+ (isArray(body.feltFeil) && body.feltFeil.every(isFeltFeil)));
diff --git a/packages/v2/backend/src/k9sak/errorhandling/requestWithExtendedErrorHandler.ts b/packages/v2/backend/src/k9sak/errorhandling/requestWithExtendedErrorHandler.ts
new file mode 100644
index 0000000000..c4d4e19f80
--- /dev/null
+++ b/packages/v2/backend/src/k9sak/errorhandling/requestWithExtendedErrorHandler.ts
@@ -0,0 +1,99 @@
+import { ApiError, CancelablePromise, type OpenAPIConfig } from '@navikt/k9-sak-typescript-client';
+import type { ApiRequestOptions } from '@navikt/k9-sak-typescript-client/core/ApiRequestOptions.js';
+import type { ApiResult } from '@navikt/k9-sak-typescript-client/core/ApiResult.js';
+import {
+ getFormData,
+ getRequestBody,
+ getHeaders,
+ sendRequest,
+ getResponseHeader,
+ getResponseBody,
+ catchErrorCodes,
+ getQueryString,
+} from '@navikt/k9-sak-typescript-client/core/request.js';
+import { navCallidHeaderName } from '../../shared/instrumentation/navCallid.js';
+import { K9SakApiError } from './K9SakApiError.js';
+
+// Kopiert inn frå @navikt/k9-sak-typescript-client/core/request.js, sidan den ikkje blir eksportert der
+const getUrl = (config: OpenAPIConfig, options: ApiRequestOptions): string => {
+ const encoder = config.ENCODE_PATH || encodeURI;
+
+ const path = options.url
+ .replace('{api-version}', config.VERSION)
+ .replace(/{(.*?)}/g, (substring: string, group: string) => {
+ // eslint-disable-next-line no-prototype-builtins
+ if (options.path?.hasOwnProperty(group)) {
+ return encoder(String(options.path[group]));
+ }
+ return substring;
+ });
+
+ const url = config.BASE + path;
+ return options.query ? url + getQueryString(options.query) : url;
+};
+
+/**
+ * Kopiert inn og tilpassa frå @navikt/k9-sak-typescript-client/core/request.js, for å få med sporingsinfo i feil som
+ * blir kasta når request blir utført.
+ *
+ * Ein ny klient pakke er på gang i @hey-api/openapi-ts. Når den er klar kan ein sannsynlegvis fjerne denne
+ * spesialtilpassing og oppnå det samme med å bruke ny klient derifrå.
+ *
+ * @param config The OpenAPI configuration object
+ * @param options The request options from the service
+ * @returns CancelablePromise
+ * @throws ApiError
+ */
+export const requestWithExtendedErrorHandler = (
+ config: OpenAPIConfig,
+ options: ApiRequestOptions,
+): CancelablePromise => {
+ return new CancelablePromise(async (resolve, reject, onCancel) => {
+ try {
+ const url = getUrl(config, options);
+ const formData = getFormData(options);
+ const body = getRequestBody(options);
+ const headers = await getHeaders(config, options);
+
+ if (!onCancel.isCancelled) {
+ try {
+ let response = await sendRequest(config, options, url, body, formData, headers, onCancel);
+
+ for (const fn of config.interceptors.response._fns) {
+ response = await fn(response);
+ }
+
+ const responseBody = await getResponseBody(response);
+ const responseHeader = getResponseHeader(response, options.responseHeader);
+
+ let transformedBody = responseBody;
+ if (options.responseTransformer && response.ok) {
+ transformedBody = await options.responseTransformer(responseBody);
+ }
+
+ const result: ApiResult = {
+ url,
+ ok: response.ok,
+ status: response.status,
+ statusText: response.statusText,
+ body: responseHeader ?? transformedBody,
+ };
+
+ catchErrorCodes(options, result);
+
+ resolve(result.body);
+ } catch (e) {
+ // Spesialtilpassing for å få med NavCallid i rapportert feil.
+ if (e instanceof ApiError) {
+ const navCallid = headers.get(navCallidHeaderName);
+ throw new K9SakApiError(e, navCallid);
+ } else {
+ throw e;
+ }
+ }
+ }
+ } catch (error) {
+ reject(error);
+ }
+ });
+};
diff --git a/packages/v2/backend/src/k9sak/generated/index.ts b/packages/v2/backend/src/k9sak/generated/index.ts
index 82bfa60ba1..a669b08785 100644
--- a/packages/v2/backend/src/k9sak/generated/index.ts
+++ b/packages/v2/backend/src/k9sak/generated/index.ts
@@ -1 +1,2 @@
export * from '@navikt/k9-sak-typescript-client';
+export type { ApiRequestOptions } from '@navikt/k9-sak-typescript-client/core/ApiRequestOptions.js';
diff --git a/packages/v2/backend/src/k9sak/kodeverk/OpptjeningAktivitetType.ts b/packages/v2/backend/src/k9sak/kodeverk/OpptjeningAktivitetType.ts
index ecdaf140e5..02dd92a866 100644
--- a/packages/v2/backend/src/k9sak/kodeverk/OpptjeningAktivitetType.ts
+++ b/packages/v2/backend/src/k9sak/kodeverk/OpptjeningAktivitetType.ts
@@ -1,7 +1,7 @@
import type { OpptjeningAktivitetDto } from '../generated';
import type { Kodeverk } from '../../shared/Kodeverk.ts';
-export type OpptjeningAktivitetType = Exclude;
+export type OpptjeningAktivitetType = Exclude;
export type OpptjeningAktivitetTypeKodeverk = Kodeverk;
diff --git a/packages/v2/backend/src/k9sak/kodeverk/behandling/FagsakStatus.ts b/packages/v2/backend/src/k9sak/kodeverk/behandling/FagsakStatus.ts
index c49d21e89f..e2566cd8f8 100644
--- a/packages/v2/backend/src/k9sak/kodeverk/behandling/FagsakStatus.ts
+++ b/packages/v2/backend/src/k9sak/kodeverk/behandling/FagsakStatus.ts
@@ -1,6 +1,6 @@
import type { FagsakDto } from '../../generated';
-export type FagsakStatus = Exclude;
+export type FagsakStatus = Exclude;
// enum navn i java kode skiller seg tydleg frå kode verdi, reimplementerer navna her for å gjere koding enklare.
type FagsakStatusName = 'OPPRETTET' | 'UNDER_BEHANDLING' | 'LØPENDE' | 'AVSLUTTET';
diff --git a/packages/v2/backend/src/shared/instrumentation/ExtendedApiError.ts b/packages/v2/backend/src/shared/instrumentation/ExtendedApiError.ts
new file mode 100644
index 0000000000..a64bc989a1
--- /dev/null
+++ b/packages/v2/backend/src/shared/instrumentation/ExtendedApiError.ts
@@ -0,0 +1,51 @@
+import { ApiError } from '@navikt/k9-sak-typescript-client';
+import type { ApiResult } from '@navikt/k9-sak-typescript-client/core/ApiResult.js';
+import { isObject } from '../../typecheck/isObject.js';
+import { isString } from '../../typecheck/isString.js';
+
+export type NavCallid = `CallId_${string}`;
+
+export const isNavCallid = (maybe: string): maybe is NavCallid => maybe.startsWith('CallId_');
+
+export class ExtendedApiError extends ApiError {
+ public navCallid: NavCallid | null;
+ public readonly errorId: number = Math.floor(Math.random() * 1000000000);
+
+ constructor(apiError: ApiError, navCallid: string | null) {
+ // Rekonstruer type som opprinneleg vart sendt til ApiError
+ const response: ApiResult = {
+ url: apiError.url,
+ ok: false,
+ status: apiError.status,
+ statusText: apiError.statusText,
+ body: apiError.body,
+ };
+ super(apiError.request, response, apiError.message);
+ this.name = ExtendedApiError.name;
+ if (navCallid !== null && isNavCallid(navCallid)) {
+ this.navCallid = navCallid;
+ } else {
+ this.navCallid = null;
+ }
+ }
+
+ public get isBadRequest(): boolean {
+ return this.status === 400;
+ }
+
+ public get bodyFeilmelding(): string | null {
+ const { body } = this;
+ if (isObject(body) && 'feilmelding' in body && isString(body.feilmelding)) {
+ return body.feilmelding;
+ }
+ return null;
+ }
+
+ public override toString(): string {
+ let feilmelding = this.bodyFeilmelding;
+ if (feilmelding !== null) {
+ feilmelding = ' - ' + feilmelding;
+ }
+ return `${super.name} (${this.url}): ${super.message} ${feilmelding}`;
+ }
+}
diff --git a/packages/v2/backend/src/shared/instrumentation/navCallid.ts b/packages/v2/backend/src/shared/instrumentation/navCallid.ts
new file mode 100644
index 0000000000..c05cd31b8d
--- /dev/null
+++ b/packages/v2/backend/src/shared/instrumentation/navCallid.ts
@@ -0,0 +1,13 @@
+export const navCallidHeaderName = 'Nav-Callid';
+
+export interface NavCallidHeader {
+ readonly headerName: typeof navCallidHeaderName;
+ readonly headerValue: string;
+}
+
+const generateNewNavCallId = () => `CallId_${new Date().getTime()}_${Math.floor(Math.random() * 1000000000)}`;
+
+export const generateNavCallidHeader = (): NavCallidHeader => ({
+ headerName: navCallidHeaderName,
+ headerValue: generateNewNavCallId(),
+});
diff --git a/packages/v2/gui/src/app/K9SakClientContext.tsx b/packages/v2/gui/src/app/K9SakClientContext.tsx
index 5bcb36ca8e..ef929ea6fb 100644
--- a/packages/v2/gui/src/app/K9SakClientContext.tsx
+++ b/packages/v2/gui/src/app/K9SakClientContext.tsx
@@ -1,11 +1,26 @@
import { createContext } from 'react';
import { K9SakClient } from '@k9-sak-web/backend/k9sak/generated';
+import { generateNavCallidHeader } from '@k9-sak-web/backend/shared/instrumentation/navCallid.js';
+import type { ApiRequestOptions } from '@k9-sak-web/backend/k9sak/generated';
+import { K9SakHttpRequest } from '@k9-sak-web/backend/k9sak/errorhandling/K9SakHttpRequest.js';
+
+const headerResolver = async (options: ApiRequestOptions>): Promise> => {
+ const { headerName, headerValue } = generateNavCallidHeader();
+ return {
+ ...options.headers,
+ [headerName]: headerValue,
+ };
+};
/**
* This shall be a top level context providing the K9SakClient instance that will be used for communicating with the backend server.
*/
export const K9SakClientContext = createContext(
- new K9SakClient({
- BASE: '/k9/sak/api',
- }),
+ new K9SakClient(
+ {
+ BASE: '/k9/sak/api',
+ HEADERS: headerResolver,
+ },
+ K9SakHttpRequest,
+ ),
);
diff --git a/packages/v2/gui/src/app/UnhandledRejectionCatcher.tsx b/packages/v2/gui/src/app/UnhandledRejectionCatcher.tsx
new file mode 100644
index 0000000000..7670ff8c53
--- /dev/null
+++ b/packages/v2/gui/src/app/UnhandledRejectionCatcher.tsx
@@ -0,0 +1,45 @@
+import { useEffect, useState } from 'react';
+import { ApiError } from '@k9-sak-web/backend/k9sak/generated';
+import { TopplinjeAlerts } from './alerts/TopplinjeAlerts.js';
+import { K9SakApiError } from '@k9-sak-web/backend/k9sak/errorhandling/K9SakApiError.js';
+import { type ErrorWithAlertInfo, isErrorWithAlertInfo } from './alerts/AlertInfo.js';
+import { ExtendedApiError } from '@k9-sak-web/backend/shared/instrumentation/ExtendedApiError.js';
+
+/**
+ * Fanger opp uhandterte promise rejections. Kan deretter avgjere om feil skal analyserast og vise feilmelding, eller
+ * om den skal propagerast vidare og bli rapportert som uhandtert i nettlesaren.
+ */
+export const UnhandledRejectionCatcher = () => {
+ const [errors, setErrors] = useState([]);
+ const removeError = (errorId: number) => setErrors(errors.filter(err => err.errorId !== errorId));
+ useEffect(() => {
+ const addError = (err: ErrorWithAlertInfo) => setErrors([...errors, err]);
+ const listener = (event: PromiseRejectionEvent) => {
+ let error = event.reason;
+ if (error instanceof ApiError && !(error instanceof ExtendedApiError)) {
+ error = new ExtendedApiError(error, null);
+ }
+ if (isErrorWithAlertInfo(error)) {
+ addError(error);
+ // Avgjer om feil ikkje skal propagerast vidare oppover.
+ // Valideringsfeil blir rekna som brukarfeil i utgangspunktet, så rapporterer det ikkje vidare automatisk
+ if (error instanceof K9SakApiError && error.erValideringsfeil) {
+ event.preventDefault();
+ }
+ }
+ // XXX Legg til visning/handtering av andre feiltyper her.
+
+ // Feil som ikkje blir handtert her propagerer vidare og blir logga i konsoll og sentry, men blir ikkje vist til brukaren på noko anna måte.
+ // Vurder å legge til generell visning av alle Error som blir fanga opp
+ // else if(error instanceof Error) {
+ // addError(new GeneralAsyncError(error.message, error))
+ // }
+ };
+ addEventListener('unhandledrejection', listener);
+ return () => {
+ removeEventListener('unhandledrejection', listener);
+ };
+ }, []);
+
+ return removeError(err.errorId)} />;
+};
diff --git a/packages/v2/gui/src/app/alerts/AlertInfo.spec.ts b/packages/v2/gui/src/app/alerts/AlertInfo.spec.ts
new file mode 100644
index 0000000000..15dc5f3ca5
--- /dev/null
+++ b/packages/v2/gui/src/app/alerts/AlertInfo.spec.ts
@@ -0,0 +1,8 @@
+import GeneralAsyncError from './GeneralAsyncError.js';
+import { isErrorWithAlertInfo } from './AlertInfo.js';
+
+describe('isErrorWithAlertInfo', () => {
+ it('should return true when given a instance of GeneralAsyncError', () => {
+ expect(isErrorWithAlertInfo(new GeneralAsyncError('test'))).toBe(true);
+ });
+});
diff --git a/packages/v2/gui/src/app/alerts/AlertInfo.ts b/packages/v2/gui/src/app/alerts/AlertInfo.ts
new file mode 100644
index 0000000000..69305d6ea3
--- /dev/null
+++ b/packages/v2/gui/src/app/alerts/AlertInfo.ts
@@ -0,0 +1,20 @@
+export interface AlertInfo {
+ /**
+ * A somewhat randomly generated number to quite uniquely identify an error instance.
+ *
+ * This is presented to the user when displaying error the message.
+ *
+ * This should be included as metadata in further reporting of the error (in sentry, etc) so that we can correlate with
+ * error reports from users.
+ */
+ readonly errorId: number;
+}
+
+export const isAlertInfo = (v: unknown): v is AlertInfo =>
+ v !== null && typeof v === 'object' && 'errorId' in v && typeof v.errorId === 'number' && v.errorId > 0;
+
+export type ErrorWithAlertInfo = Error & AlertInfo;
+
+export const isErrorWithAlertInfo = (v: unknown): v is ErrorWithAlertInfo => v instanceof Error && isAlertInfo(v);
+
+export const makeErrorId = (): number => Math.floor(Math.random() * 1000000000);
diff --git a/packages/v2/gui/src/app/alerts/ErrorAlert.tsx b/packages/v2/gui/src/app/alerts/ErrorAlert.tsx
new file mode 100644
index 0000000000..dbc3b19164
--- /dev/null
+++ b/packages/v2/gui/src/app/alerts/ErrorAlert.tsx
@@ -0,0 +1,91 @@
+import { ExtendedApiError } from '@k9-sak-web/backend/shared/instrumentation/ExtendedApiError.js';
+import { Alert, BodyLong, Heading } from '@navikt/ds-react';
+import { NavCallIdEncouragementMsg } from './NavCallIdEncouragementMsg.js';
+import { K9SakApiError } from '@k9-sak-web/backend/k9sak/errorhandling/K9SakApiError.js';
+import type { ErrorWithAlertInfo } from './AlertInfo.js';
+import { ErrorIdEncouragementMsg } from './ErrorIdEncouragementMsg.js';
+import GeneralAsyncError from './GeneralAsyncError.js';
+import type { PropsWithChildren } from 'react';
+
+export interface ErrorAlertProps {
+ readonly error: ErrorWithAlertInfo;
+ readonly onClose: () => void;
+}
+
+const MsgHeading = ({ children }: PropsWithChildren>) => (
+
+ {children}
+
+);
+
+const GeneralErrorMsg = ({ error }: { readonly error: ErrorWithAlertInfo }) => (
+ <>
+ Uventet feil: {error.name}
+ {error.message}
+
+ >
+);
+
+const GeneralAsyncErrorMsg = ({ error }: { readonly error: GeneralAsyncError }) => (
+ <>
+ Bakgrunnsprosess feilet
+ {error.message}
+
+ Det hjelper kanskje å{' '}
+ window.location.reload()}>
+ laste siden på nytt{' '}
+
+ og prøve igjen.
+
+
+ >
+);
+
+const ApiErrorMsg = ({ error }: { readonly error: ExtendedApiError }) => (
+ <>
+ Server rapporterte feil:
+
+ {error.name} ({error.url})
+
+ {error.bodyFeilmelding}
+
+ >
+);
+
+const K9SakErrorMsg = ({ error }: { readonly error: K9SakApiError }) => {
+ if (error.erValideringsfeil) {
+ return (
+ <>
+ Valideringsfeil på server:
+ {error.errorData?.feilmelding}
+
+ Korriger inndata og prøv igjen. Meld inn i porten hvis det ikke løser problemet.
+
+
+ >
+ );
+ }
+ // XXX Legg til handtering av error.erGenerellFeil etc her etter kvart
+ return ;
+};
+
+const ErrorMsg = ({ error }: Pick) => {
+ if (error instanceof K9SakApiError) {
+ return ;
+ }
+ // XXX Legg til handtering av evt andre spesifikke ExtendedApiError subklasser her
+ if (error instanceof ExtendedApiError) {
+ return ;
+ }
+ if (error instanceof GeneralAsyncError) {
+ return ;
+ }
+ // XXX Legg til handtering av evt andre spesifikke Error subklasser her
+ return ;
+};
+
+export const ErrorAlert = ({ error, onClose }: ErrorAlertProps) => (
+
+
+
+);
diff --git a/packages/v2/gui/src/app/alerts/ErrorIdEncouragementMsg.tsx b/packages/v2/gui/src/app/alerts/ErrorIdEncouragementMsg.tsx
new file mode 100644
index 0000000000..3f37e0f9ed
--- /dev/null
+++ b/packages/v2/gui/src/app/alerts/ErrorIdEncouragementMsg.tsx
@@ -0,0 +1,21 @@
+import { CopyButton } from '@navikt/ds-react';
+
+export const ErrorIdEncouragementMsg = ({
+ errorId,
+ errorName,
+}: {
+ readonly errorId: number;
+ readonly errorName?: string;
+}) => {
+ const maybeErrorName = errorName !== undefined ? `(${errorName})` : '';
+ return (
+ <>
+ Inkluder referanse{' '}
+
+ {errorId} {maybeErrorName}
+
+ {' '}
+ hvis du melder feilen inn.
+ >
+ );
+};
diff --git a/packages/v2/gui/src/app/alerts/GeneralAsyncError.ts b/packages/v2/gui/src/app/alerts/GeneralAsyncError.ts
new file mode 100644
index 0000000000..d3bde5a9da
--- /dev/null
+++ b/packages/v2/gui/src/app/alerts/GeneralAsyncError.ts
@@ -0,0 +1,11 @@
+import { type AlertInfo, makeErrorId } from './AlertInfo.js';
+
+export default class GeneralAsyncError extends Error implements AlertInfo {
+ public readonly errorId = makeErrorId();
+
+ constructor(message: string, cause?: Error) {
+ const options = cause !== undefined ? { cause } : undefined;
+ super(message, options);
+ this.name = this.constructor.name;
+ }
+}
diff --git a/packages/v2/gui/src/app/alerts/NavCallIdEncouragementMsg.tsx b/packages/v2/gui/src/app/alerts/NavCallIdEncouragementMsg.tsx
new file mode 100644
index 0000000000..ee7d4c504f
--- /dev/null
+++ b/packages/v2/gui/src/app/alerts/NavCallIdEncouragementMsg.tsx
@@ -0,0 +1,18 @@
+import { CopyButton } from '@navikt/ds-react';
+
+export interface NavCallIdEncouragementMsgProps {
+ readonly navCallId?: string | null;
+ readonly statusCode?: number;
+}
+
+export const NavCallIdEncouragementMsg = ({ navCallId, statusCode = 0 }: NavCallIdEncouragementMsgProps) =>
+ navCallId !== undefined && navCallId !== null ? (
+ <>
+ Inkluder referanse{' '}
+
+ {navCallId} ({statusCode})
+
+ hvis du
+ melder feilen inn.
+ >
+ ) : null;
diff --git a/packages/v2/gui/src/app/alerts/TopplinjeAlerts.stories.tsx b/packages/v2/gui/src/app/alerts/TopplinjeAlerts.stories.tsx
new file mode 100644
index 0000000000..c1e1dec6c2
--- /dev/null
+++ b/packages/v2/gui/src/app/alerts/TopplinjeAlerts.stories.tsx
@@ -0,0 +1,65 @@
+import { TopplinjeAlerts } from './TopplinjeAlerts.js';
+import type { Meta, StoryObj } from '@storybook/react';
+import { makeFakeExtendedApiError, makeFakeK9SakValidationError } from '../../storybook/mocks/fakeExtendedApiError.js';
+import { useState } from 'react';
+import { action } from '@storybook/addon-actions';
+import type { ErrorWithAlertInfo } from './AlertInfo.js';
+import GeneralAsyncError from './GeneralAsyncError.js';
+
+const meta = {
+ title: 'gui/app/alerts/TopplinjeAlerts.tsx',
+ component: TopplinjeAlerts,
+ args: {
+ onErrorDismiss: action('onErrorDismiss'),
+ },
+ parameters: {
+ layout: 'fullscreen',
+ },
+} satisfies Meta;
+
+export default meta;
+
+type Story = StoryObj;
+type StoryDecorator = Story['decorators'];
+
+// Simulerer at parent komponent held på error state for denne komponent
+const withParentErrorStateMaintainer: StoryDecorator = (story, { args }) => {
+ const [errors, setErrors] = useState(args.errors);
+ const dismiss = (err: ErrorWithAlertInfo) => {
+ setErrors(errors.filter(e => e.errorId !== err.errorId));
+ args.onErrorDismiss(err);
+ };
+ return story({ args: { errors: errors, onErrorDismiss: dismiss } });
+};
+
+export const ValideringsFeil: Story = {
+ args: {
+ errors: [
+ makeFakeK9SakValidationError({
+ body: {
+ feilmelding:
+ 'Det oppstod en valideringsfeil på felt [fritekst]. Vennligst kontroller at alle feltverdier er korrekte.',
+ type: 'VALIDERINGS_FEIL',
+ },
+ }),
+ ],
+ },
+ decorators: [withParentErrorStateMaintainer],
+};
+
+export const FleireApiFeil: Story = {
+ args: {
+ errors: [
+ makeFakeK9SakValidationError({ body: { feilmelding: 'Her feila det i felt [test1]', type: 'VALIDERINGS_FEIL' } }),
+ makeFakeExtendedApiError({ status: 500, body: { feilmelding: 'Noko feila på server' } }),
+ ],
+ },
+ decorators: [withParentErrorStateMaintainer],
+};
+
+export const GenerellBakgrunnsfeil: Story = {
+ args: {
+ errors: [new GeneralAsyncError('Boom')],
+ },
+ decorators: [withParentErrorStateMaintainer],
+};
diff --git a/packages/v2/gui/src/app/alerts/TopplinjeAlerts.tsx b/packages/v2/gui/src/app/alerts/TopplinjeAlerts.tsx
new file mode 100644
index 0000000000..e0089a7c0c
--- /dev/null
+++ b/packages/v2/gui/src/app/alerts/TopplinjeAlerts.tsx
@@ -0,0 +1,41 @@
+import { VStack } from '@navikt/ds-react';
+import { useEffect, useRef } from 'react';
+import type { ErrorWithAlertInfo } from './AlertInfo.ts';
+import { ErrorAlert } from './ErrorAlert.js';
+
+export interface TopplinjeAlertsProps {
+ readonly errors: ErrorWithAlertInfo[];
+ readonly onErrorDismiss: (error: ErrorWithAlertInfo) => void;
+}
+
+/**
+ * Viser ellers uhandterte feil eller andre viktige notifikasjoner under Dekorator panelet på toppen av skjermbildet.
+ *
+ * I første omgang kun for visning av ExtendedApiError type, tenkt å kunne utvidast med andre feiltyper etterkvart.
+ *
+ * Det er forventa at komponent lenger oppe i hierarkiet handterer state oppdatering slik at feilmelding forsvinner når
+ * bruker krysser den ut.
+ */
+export const TopplinjeAlerts = ({ errors, onErrorDismiss }: TopplinjeAlertsProps) => {
+ const prevErrors = useRef(errors);
+ useEffect(() => {
+ if (errors.length > prevErrors.current.length) {
+ // Feil har blitt lagt til. Scroll til toppen av sida så brukar ser feilmeldinga.
+ // Kunne brukt scrollIntoView på elementet her, men pga at dekorator ligg utanpå DOM layout øverst vart det
+ // delvis skjult då. Vurder å fikse det seinare.
+ window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });
+ }
+ prevErrors.current = errors;
+ }, [errors]);
+ if (errors.length > 0) {
+ const errorAlerts = errors.map(err => (
+ onErrorDismiss(err)} key={`err-${err.errorId}`} />
+ ));
+ return (
+
+ {errorAlerts}
+
+ );
+ }
+ return null;
+};
diff --git a/packages/v2/gui/src/sak/feilmeldinger/NetworkErrorPage.tsx b/packages/v2/gui/src/sak/feilmeldinger/NetworkErrorPage.tsx
index ccf635656e..828b742f2a 100644
--- a/packages/v2/gui/src/sak/feilmeldinger/NetworkErrorPage.tsx
+++ b/packages/v2/gui/src/sak/feilmeldinger/NetworkErrorPage.tsx
@@ -1,5 +1,5 @@
import { BigError, DefaultErrorMsg } from '@k9-sak-web/gui/sak/feilmeldinger/BigError.js';
-import { CopyButton } from '@navikt/ds-react';
+import { NavCallIdEncouragementMsg } from '../../app/alerts/NavCallIdEncouragementMsg.js';
export interface NetworkErrorPageProps {
readonly navCallId?: string;
@@ -7,21 +7,12 @@ export interface NetworkErrorPageProps {
}
const NetworkErrorPage = ({ navCallId, statusCode = 0 }: NetworkErrorPageProps) => {
- const NavCallId = () =>
- navCallId !== undefined || statusCode !== undefined ? (
-
- Inkluder referanse{' '}
-
- {navCallId} ({statusCode})
-
- hvis
- du melder feilen inn.
-
- ) : null;
return (
-
+
+
+
);
};
diff --git a/packages/v2/gui/src/sak/meldinger/FritekstInput.stories.tsx b/packages/v2/gui/src/sak/meldinger/FritekstInput.stories.tsx
index 709871c1f3..780dd17f3e 100644
--- a/packages/v2/gui/src/sak/meldinger/FritekstInput.stories.tsx
+++ b/packages/v2/gui/src/sak/meldinger/FritekstInput.stories.tsx
@@ -1,8 +1,9 @@
import FritekstInput from '@k9-sak-web/gui/sak/meldinger/FritekstInput.js';
import type { Meta, StoryObj } from '@storybook/react';
import withMaxWidth from '@k9-sak-web/gui/storybook/decorators/withMaxWidth.js';
+import { expect, fn } from '@storybook/test';
-const meta: Meta = {
+const meta = {
title: 'gui/sak/meldinger/FritekstInput.tsx',
component: FritekstInput,
decorators: [withMaxWidth(420)],
@@ -11,11 +12,13 @@ const meta: Meta = {
action: 'onChange',
},
},
-};
+} satisfies Meta;
export default meta;
-export const Default: StoryObj = {
+type Story = StoryObj;
+
+export const Default: Story = {
args: {
språk: 'NB', // SPRAAK_KODE
show: true,
@@ -23,3 +26,17 @@ export const Default: StoryObj = {
showValidation: true,
},
};
+
+export const UgyldigeTegn: Story = {
+ args: {
+ ...Default.args,
+ defaultValue: {
+ tittel: '',
+ tekst: 'abcd[^]feil',
+ },
+ onChange: fn(),
+ },
+ play: async ({ args }) => {
+ expect(args.onChange).toHaveBeenCalledWith({ invalid: true });
+ },
+};
diff --git a/packages/v2/gui/src/sak/meldinger/MeldingerBackendClient.ts b/packages/v2/gui/src/sak/meldinger/MeldingerBackendClient.ts
index a089ee3411..a54fd84210 100644
--- a/packages/v2/gui/src/sak/meldinger/MeldingerBackendClient.ts
+++ b/packages/v2/gui/src/sak/meldinger/MeldingerBackendClient.ts
@@ -33,10 +33,10 @@ export default class MeldingerBackendClient {
const promise = this.#k9sak.brev.getBrevMottakerinfoEreg({ organisasjonsnr: organisasjonsnr.trim() });
abort?.addEventListener('abort', () => promise.cancel(), { signal: abortListenerRemover.signal });
const resp = await promise;
- if (resp !== null && resp.navn !== undefined) {
+ if (resp !== null && resp.navn !== undefined && resp.navn !== null) {
return {
name: resp.navn,
- utilgjengelig: resp.utilgjengeligÅrsak,
+ utilgjengelig: resp.utilgjengeligÅrsak || undefined,
};
}
if (promise.isCancelled) {
diff --git a/packages/v2/gui/src/sak/meldinger/Messages.stories.tsx b/packages/v2/gui/src/sak/meldinger/Messages.stories.tsx
index 51bf0e8923..d3d8dd4910 100644
--- a/packages/v2/gui/src/sak/meldinger/Messages.stories.tsx
+++ b/packages/v2/gui/src/sak/meldinger/Messages.stories.tsx
@@ -3,7 +3,7 @@ import type { Meta, StoryObj } from '@storybook/react';
import { fagsakYtelsesType } from '@k9-sak-web/backend/k9sak/kodeverk/FagsakYtelsesType.js';
import { behandlingType } from '@k9-sak-web/backend/k9sak/kodeverk/behandling/BehandlingType.js';
import { fagsakStatus } from '@k9-sak-web/backend/k9sak/kodeverk/behandling/FagsakStatus.js';
-import { expect, userEvent, within } from '@storybook/test';
+import { expect, fn, userEvent, within } from '@storybook/test';
import withMaxWidth from '@k9-sak-web/gui/storybook/decorators/withMaxWidth.js';
import { FakeMessagesBackendApi } from '@k9-sak-web/gui/storybook/mocks/FakeMessagesBackendApi.js';
import arbeidsgivere from '@k9-sak-web/gui/storybook/mocks/arbeidsgivere.json';
@@ -15,17 +15,18 @@ import {
type UtilgjengeligÅrsak,
utilgjengeligÅrsaker,
} from '@k9-sak-web/backend/k9formidling/models/Mottaker.ts';
+import { makeFakeExtendedApiError } from '../../storybook/mocks/fakeExtendedApiError.js';
import { action } from '@storybook/addon-actions';
const api = new FakeMessagesBackendApi();
-const meta: Meta = {
+const meta = {
title: 'gui/sak/meldinger/Messages.tsx',
component: Messages,
decorators: [withMaxWidth(420)],
beforeEach: () => {
api.reset();
},
-};
+} satisfies Meta;
export default meta;
const elemsfinder = (canvasElement: HTMLElement) => {
@@ -47,7 +48,7 @@ const elemsfinder = (canvasElement: HTMLElement) => {
};
};
-type Story = StoryObj;
+type Story = StoryObj;
export const DefaultStory: Story = {
args: {
fagsak: {
@@ -68,7 +69,7 @@ export const DefaultStory: Story = {
personopplysninger,
arbeidsgiverOpplysningerPerId: arbeidsgivere,
api,
- onMessageSent: action('onMessagesent'),
+ onMessageSent: fn(() => action('onMessageSent')),
},
play: async ({ canvasElement, step }) => {
const {
@@ -216,3 +217,20 @@ export const UtilgjengeligeMottakere: Story = {
api.fakeDelayMillis = 800; // Reaktiver delay
},
};
+
+class FakeFailingApi extends FakeMessagesBackendApi {
+ public override async bestillDokument() {
+ throw makeFakeExtendedApiError({ status: 400 });
+ }
+}
+
+const fakeFailingApi = new FakeFailingApi();
+/**
+ * Eksempel på feil ved serverkall
+ */
+export const TekstValideringsfeilServer: Story = {
+ args: {
+ ...DefaultStory.args,
+ api: fakeFailingApi,
+ },
+};
diff --git a/packages/v2/gui/src/sak/meldinger/Messages.tsx b/packages/v2/gui/src/sak/meldinger/Messages.tsx
index 25ba28830f..9daf0379b4 100644
--- a/packages/v2/gui/src/sak/meldinger/Messages.tsx
+++ b/packages/v2/gui/src/sak/meldinger/Messages.tsx
@@ -1,5 +1,5 @@
import { useEffect, useRef, useState, useReducer } from 'react';
-import { Button, Checkbox, HStack, Spacer, VStack } from '@navikt/ds-react';
+import { Button, HStack, Spacer, VStack } from '@navikt/ds-react';
import type { Template } from '@k9-sak-web/backend/k9formidling/models/Template.js';
import type { FritekstbrevDokumentdata } from '@k9-sak-web/backend/k9formidling/models/FritekstbrevDokumentdata.js';
import type { FagsakYtelsesType } from '@k9-sak-web/backend/k9sak/kodeverk/FagsakYtelsesType.js';
@@ -25,10 +25,11 @@ import FritekstInput, {
type FritekstInputValue,
type FritekstModus,
} from './FritekstInput.js';
-import MalSelect from './MalSelect.jsx';
+import MalSelect from './MalSelect.js';
import type { BehandlingInfo } from '../BehandlingInfo.js';
-import type { Fagsak } from '../Fagsak.ts';
-import type { Mottaker } from '@k9-sak-web/backend/k9formidling/models/Mottaker.ts';
+import type { Fagsak } from '../Fagsak.js';
+import type { Mottaker } from '@k9-sak-web/backend/k9formidling/models/Mottaker.js';
+import { TredjepartsmottakerCheckbox } from './TredjepartsmottakerCheckbox.js';
export interface BackendApi extends TredjepartsmottakerBackendApi {
hentInnholdBrevmal(
@@ -383,14 +384,11 @@ const Messages = ({
disabled={tredjepartsmottakerAktivert}
showValidation={showValidation}
/>
- setTredjepartsmottakerAktivert(!tredjepartsmottakerAktivert)}
- size="small"
+ onChange={v => setTredjepartsmottakerAktivert(v)}
disabled={!valgtMal?.støtterTredjepartsmottaker}
- >
- Send til tredjepart
-
+ />
(
+
+ onChange(!checked)} size="small" disabled={disabled}>
+ Send til tredjepart
+
+
+ {checked ? (
+
+
+ Søk på brreg.no
+
+
+ ) : null}
+
+);
diff --git a/packages/v2/gui/src/storybook/mocks/fakeExtendedApiError.ts b/packages/v2/gui/src/storybook/mocks/fakeExtendedApiError.ts
new file mode 100644
index 0000000000..95056daecf
--- /dev/null
+++ b/packages/v2/gui/src/storybook/mocks/fakeExtendedApiError.ts
@@ -0,0 +1,66 @@
+import { ExtendedApiError } from '@k9-sak-web/backend/shared/instrumentation/ExtendedApiError.js';
+import { ApiError } from '@k9-sak-web/backend/k9sak/generated';
+import type { K9SakErrorData } from '@k9-sak-web/backend/k9sak/errorhandling/errorData.js';
+import { K9SakApiError } from '@k9-sak-web/backend/k9sak/errorhandling/K9SakApiError.js';
+
+type ApiRequestOptions = ApiError['request'];
+type ApiResult = ConstructorParameters[1];
+
+type MakeFakeApiErrorArgs = Readonly<{
+ status: number;
+ url?: string;
+ method?: ApiRequestOptions['method'];
+ body?: any;
+}>;
+
+type MakeFakeExtendedApiErrorArgs = MakeFakeApiErrorArgs &
+ Readonly<{
+ navCallid?: string;
+ }>;
+
+const makeFakeApiError = ({
+ status,
+ url = '/fake/url',
+ method = 'GET',
+ body = undefined,
+}: MakeFakeApiErrorArgs): ApiError => {
+ const fakeRequest: ApiRequestOptions = {
+ method,
+ url,
+ body,
+ };
+ const fakeResponse: ApiResult = {
+ url,
+ ok: false,
+ status,
+ statusText: `Http error (${status})`,
+ body,
+ };
+ return new ApiError(fakeRequest, fakeResponse, 'Fake ApiError');
+};
+
+export const makeFakeExtendedApiError = ({
+ status,
+ url = '/fake/url',
+ method = 'GET',
+ body = undefined,
+ navCallid = 'CallId_00000000_11111111',
+}: MakeFakeExtendedApiErrorArgs): ExtendedApiError => {
+ const fakeApiError = makeFakeApiError({ status, url, method, body });
+ return new ExtendedApiError(fakeApiError, navCallid);
+};
+
+type MakeFakeK9SakValidationErrorArgs = Pick &
+ Readonly<{
+ body: K9SakErrorData;
+ }>;
+
+export const makeFakeK9SakValidationError = ({
+ url,
+ method,
+ body,
+ navCallid = 'CallId_00000000_2222222',
+}: MakeFakeK9SakValidationErrorArgs): K9SakApiError => {
+ const fakeApiError = makeFakeApiError({ status: 400, url, method, body });
+ return new K9SakApiError(fakeApiError, navCallid);
+};
diff --git a/packages/v2/tsconfig.json b/packages/v2/tsconfig.json
index f5ad169f01..7457764ca7 100644
--- a/packages/v2/tsconfig.json
+++ b/packages/v2/tsconfig.json
@@ -4,7 +4,7 @@
"compilerOptions": {
"target": "es2020",
"module": "es2020",
- "lib": ["ES2020", "DOM", "DOM.Iterable"],
+ "lib": ["ES2022", "DOM", "DOM.Iterable"],
"moduleResolution": "bundler",
"allowJs": true,
"noEmit": true,
diff --git a/public/mockServiceWorker.js b/public/mockServiceWorker.js
index e781514b52..38afdaae23 100644
--- a/public/mockServiceWorker.js
+++ b/public/mockServiceWorker.js
@@ -8,7 +8,7 @@
* - Please do NOT serve this file on production.
*/
-const PACKAGE_VERSION = '2.4.1'
+const PACKAGE_VERSION = '2.4.2'
const INTEGRITY_CHECKSUM = '26357c79639bfa20d64c0efca2a87423'
const IS_MOCKED_RESPONSE = Symbol('isMockedResponse')
const activeClientIds = new Set()
diff --git a/yarn.lock b/yarn.lock
index afafc0a04c..40bb6a796a 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2269,8 +2269,8 @@ __metadata:
"@fpsak-frontend/utils": 1.0.0
"@fpsak-frontend/utils-test": 1.0.0
"@k9-sak-web/fakta-felles": 1.0.0
- "@navikt/ft-form-hooks": 5.0.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ft-form-hooks": 5.0.5
+ "@navikt/ft-plattform-komponenter": 3.0.8
i18n-iso-countries: 7.11.3
moment: 2.30.1
prop-types: 15.8.1
@@ -2333,7 +2333,7 @@ __metadata:
"@fpsak-frontend/shared-components": 1.0.0
"@fpsak-frontend/utils": "workspace:^"
"@k9-sak-web/types": "workspace:^"
- "@navikt/ds-react": 6.13.0
+ "@navikt/ds-react": 6.16.3
date-fns: 3.6.0
formik: 2.4.6
react: 18.3.1
@@ -2369,12 +2369,12 @@ __metadata:
"@fpsak-frontend/shared-components": 1.0.0
"@fpsak-frontend/utils": 1.0.0
"@fpsak-frontend/utils-test": 1.0.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ft-plattform-komponenter": 3.0.8
classnames: 2.5.1
formik: 2.4.6
moment: 2.30.1
react: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-intl: 6.6.8
react-redux: 9.1.2
redux: 5.0.1
@@ -2734,7 +2734,7 @@ __metadata:
"@fpsak-frontend/utils-test": 1.0.0
"@k9-sak-web/prosess-felles": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ft-plattform-komponenter": 3.0.8
classnames: 2.5.1
dayjs: 1.11.13
lodash: 4.17.21
@@ -2762,7 +2762,7 @@ __metadata:
"@k9-sak-web/prosess-felles": 1.0.0
"@k9-sak-web/sak-app": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ft-plattform-komponenter": 3.0.8
classnames: 2.5.1
moment: 2.30.1
react: 18.3.1
@@ -2774,26 +2774,6 @@ __metadata:
languageName: unknown
linkType: soft
-"@fpsak-frontend/prosess-vilkar-sokers-opplysningsplikt@1.0.0, @fpsak-frontend/prosess-vilkar-sokers-opplysningsplikt@workspace:packages/prosess-vilkar-sokers-opplysningsplikt":
- version: 0.0.0-use.local
- resolution: "@fpsak-frontend/prosess-vilkar-sokers-opplysningsplikt@workspace:packages/prosess-vilkar-sokers-opplysningsplikt"
- dependencies:
- "@fpsak-frontend/kodeverk": 1.0.0
- "@fpsak-frontend/shared-components": 1.0.0
- "@fpsak-frontend/utils": 1.0.0
- "@fpsak-frontend/utils-test": 1.0.0
- "@k9-sak-web/gui": 1.0.0
- "@k9-sak-web/types": 1.0.0
- moment: 2.30.1
- react: 18.3.1
- react-intl: 6.6.8
- react-redux: 9.1.2
- redux: 5.0.1
- redux-form: 8.3.10
- reselect: 5.1.1
- languageName: unknown
- linkType: soft
-
"@fpsak-frontend/sak-dekorator@1.0.0, @fpsak-frontend/sak-dekorator@workspace:packages/sak-dekorator":
version: 0.0.0-use.local
resolution: "@fpsak-frontend/sak-dekorator@workspace:packages/sak-dekorator"
@@ -2803,7 +2783,7 @@ __metadata:
"@fpsak-frontend/utils": 1.0.0
"@fpsak-frontend/utils-test": 1.0.0
"@k9-sak-web/konstanter": 1.0.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ft-plattform-komponenter": 3.0.8
react: 18.3.1
react-intl: 6.6.8
uuid: 10.0.0
@@ -2819,7 +2799,7 @@ __metadata:
"@fpsak-frontend/shared-components": 1.0.0
"@fpsak-frontend/utils-test": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@tanstack/react-query": ^5.52.3
+ "@tanstack/react-query": ^5.55.0
react: 18.3.1
react-intl: 6.6.8
languageName: unknown
@@ -2852,7 +2832,7 @@ __metadata:
history: 5.3.0
react: 18.3.1
react-intl: 6.6.8
- react-router-dom: 6.26.0
+ react-router-dom: 6.26.1
languageName: unknown
linkType: soft
@@ -2923,7 +2903,7 @@ __metadata:
react: 18.3.1
react-intl: 6.6.8
react-redux: 9.1.2
- react-router-dom: 6.26.0
+ react-router-dom: 6.26.1
redux: 5.0.1
redux-form: 8.3.10
languageName: unknown
@@ -2958,7 +2938,7 @@ __metadata:
"@fpsak-frontend/assets": 1.0.0
"@fpsak-frontend/shared-components": 1.0.0
"@fpsak-frontend/utils-test": 1.0.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ft-plattform-komponenter": 3.0.8
react: 18.3.1
react-intl: 6.6.8
languageName: unknown
@@ -3017,7 +2997,7 @@ __metadata:
react: 18.3.1
react-intl: 6.6.8
react-redux: 9.1.2
- react-router-dom: 6.26.0
+ react-router-dom: 6.26.1
redux: 5.0.1
redux-form: 8.3.10
reselect: 5.1.1
@@ -3033,7 +3013,7 @@ __metadata:
"@fpsak-frontend/utils": 1.0.0
"@k9-sak-web/sak-app": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ft-plattform-komponenter": 3.0.8
dayjs: 1.11.13
moment: 2.30.1
react: 18.3.1
@@ -3052,11 +3032,11 @@ __metadata:
"@fpsak-frontend/utils": 1.0.0
"@fpsak-frontend/utils-test": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/aksel-icons": 6.13.0
- "@navikt/ds-react": 6.13.0
- "@navikt/fnrvalidator": 2.1.0
- "@navikt/ft-plattform-komponenter": 3.0.4
- axios: 1.7.5
+ "@navikt/aksel-icons": 6.16.3
+ "@navikt/ds-react": 6.16.3
+ "@navikt/fnrvalidator": 2.1.2
+ "@navikt/ft-plattform-komponenter": 3.0.8
+ axios: 1.7.7
classnames: 2.5.1
date-fns: 3.6.0
date-fns-tz: 3.1.3
@@ -3088,7 +3068,7 @@ __metadata:
version: 0.0.0-use.local
resolution: "@fpsak-frontend/utils-test@workspace:packages/utils-test"
dependencies:
- "@tanstack/react-query": ^5.52.3
+ "@tanstack/react-query": ^5.55.0
react: 18.3.1
react-intl: 6.6.8
languageName: unknown
@@ -3101,7 +3081,7 @@ __metadata:
"@fpsak-frontend/kodeverk": 1.0.0
"@k9-sak-web/konstanter": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ft-types": 2.4.15
+ "@navikt/ft-types": 2.4.17
moment: 2.30.1
react: 18.3.1
react-intl: 6.6.8
@@ -3551,7 +3531,7 @@ __metadata:
resolution: "@k9-sak-web/backend@workspace:packages/v2/backend"
dependencies:
"@navikt/k9-klage-typescript-client": 1.0.20240513162434-997f3da
- "@navikt/k9-sak-typescript-client": 1.0.20240814091215
+ "@navikt/k9-sak-typescript-client": 1.0.20240905134852
languageName: unknown
linkType: soft
@@ -3591,7 +3571,7 @@ __metadata:
"@k9-sak-web/modal-sett-pa-vent": 1.0.0
"@k9-sak-web/rest-api-hooks": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ft-plattform-komponenter": 3.0.8
classnames: 2.5.1
react: 18.3.1
react-intl: 6.6.8
@@ -3617,8 +3597,8 @@ __metadata:
"@k9-sak-web/rest-api": 1.0.0
"@k9-sak-web/rest-api-hooks": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ft-fakta-beregning-redesign": 1.2.21
- "@navikt/ft-prosess-beregningsgrunnlag": 6.5.26
+ "@navikt/ft-fakta-beregning-redesign": 1.2.27
+ "@navikt/ft-prosess-beregningsgrunnlag": 6.5.32
react: 18.3.1
react-intl: 6.6.8
languageName: unknown
@@ -3675,9 +3655,9 @@ __metadata:
"@k9-sak-web/rest-api": 1.0.0
"@k9-sak-web/rest-api-hooks": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ft-fakta-beregning-redesign": 1.2.21
- "@navikt/ft-fakta-fordel-beregningsgrunnlag": 7.5.22
- "@navikt/ft-prosess-beregningsgrunnlag": 6.5.26
+ "@navikt/ft-fakta-beregning-redesign": 1.2.27
+ "@navikt/ft-fakta-fordel-beregningsgrunnlag": 7.5.29
+ "@navikt/ft-prosess-beregningsgrunnlag": 6.5.32
react: 18.3.1
react-intl: 6.6.8
languageName: unknown
@@ -3717,10 +3697,10 @@ __metadata:
"@k9-sak-web/rest-api-hooks": 1.0.0
"@k9-sak-web/sak-app": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ft-fakta-beregning-redesign": 1.2.21
- "@navikt/ft-fakta-fordel-beregningsgrunnlag": 7.5.22
- "@navikt/ft-prosess-beregningsgrunnlag": 6.5.26
- axios: 1.7.5
+ "@navikt/ft-fakta-beregning-redesign": 1.2.27
+ "@navikt/ft-fakta-fordel-beregningsgrunnlag": 7.5.29
+ "@navikt/ft-prosess-beregningsgrunnlag": 6.5.32
+ axios: 1.7.7
react: 18.3.1
react-intl: 6.6.8
languageName: unknown
@@ -3741,7 +3721,6 @@ __metadata:
"@fpsak-frontend/prosess-varsel-om-revurdering": 1.0.0
"@fpsak-frontend/prosess-vedtak": 1.0.0
"@fpsak-frontend/prosess-vilkar-opptjening-oms": 1.0.0
- "@fpsak-frontend/prosess-vilkar-sokers-opplysningsplikt": 1.0.0
"@fpsak-frontend/shared-components": 1.0.0
"@fpsak-frontend/utils": 1.0.0
"@k9-sak-web/behandling-felles": 1.0.0
@@ -3756,10 +3735,10 @@ __metadata:
"@k9-sak-web/rest-api-hooks": 1.0.0
"@k9-sak-web/sak-app": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ft-fakta-beregning-redesign": 1.2.21
- "@navikt/ft-fakta-fordel-beregningsgrunnlag": 7.5.22
- "@navikt/ft-prosess-beregningsgrunnlag": 6.5.26
- axios: 1.7.5
+ "@navikt/ft-fakta-beregning-redesign": 1.2.27
+ "@navikt/ft-fakta-fordel-beregningsgrunnlag": 7.5.29
+ "@navikt/ft-prosess-beregningsgrunnlag": 6.5.32
+ axios: 1.7.7
react: 18.3.1
react-intl: 6.6.8
languageName: unknown
@@ -3781,7 +3760,6 @@ __metadata:
"@fpsak-frontend/prosess-varsel-om-revurdering": 1.0.0
"@fpsak-frontend/prosess-vedtak": 1.0.0
"@fpsak-frontend/prosess-vilkar-opptjening-oms": 1.0.0
- "@fpsak-frontend/prosess-vilkar-sokers-opplysningsplikt": 1.0.0
"@fpsak-frontend/shared-components": 1.0.0
"@fpsak-frontend/utils": 1.0.0
"@k9-sak-web/behandling-felles": 1.0.0
@@ -3800,10 +3778,10 @@ __metadata:
"@k9-sak-web/sak-app": 1.0.0
"@k9-sak-web/types": 1.0.0
"@navikt/diagnosekoder": ^1.2024.0
- "@navikt/ft-fakta-beregning-redesign": 1.2.21
- "@navikt/ft-fakta-fordel-beregningsgrunnlag": 7.5.22
- "@navikt/ft-prosess-beregningsgrunnlag": 6.5.26
- axios: 1.7.5
+ "@navikt/ft-fakta-beregning-redesign": 1.2.27
+ "@navikt/ft-fakta-fordel-beregningsgrunnlag": 7.5.29
+ "@navikt/ft-prosess-beregningsgrunnlag": 6.5.32
+ axios: 1.7.7
react: 18.3.1
react-intl: 6.6.8
languageName: unknown
@@ -3824,8 +3802,8 @@ __metadata:
"@k9-sak-web/rest-api": 1.0.0
"@k9-sak-web/rest-api-hooks": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ft-kodeverk": ^2.4.15
- "@navikt/ft-prosess-tilbakekreving-foreldelse": 3.3.21
+ "@navikt/ft-kodeverk": ^2.4.17
+ "@navikt/ft-prosess-tilbakekreving-foreldelse": 3.3.27
react: 18.3.1
react-intl: 6.6.8
languageName: unknown
@@ -3931,10 +3909,10 @@ __metadata:
version: 0.0.0-use.local
resolution: "@k9-sak-web/fakta-etablert-tilsyn@workspace:packages/fakta-etablert-tilsyn"
dependencies:
- "@navikt/ds-css": 6.13.0
+ "@navikt/ds-css": 6.16.3
"@navikt/ds-icons": 3.4.3
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-plattform-komponenter": 3.0.8
"@popperjs/core": 2.11.8
classnames: 2.5.1
dayjs: 1.11.13
@@ -3942,9 +3920,9 @@ __metadata:
react: 18.3.1
react-collapse: 5.1.1
react-dom: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-popper: 2.3.0
- vite: ^5.4.2
+ vite: ^5.4.3
vite-plugin-node-polyfills: ^0.22.0
languageName: unknown
linkType: soft
@@ -3968,21 +3946,21 @@ __metadata:
version: 0.0.0-use.local
resolution: "@k9-sak-web/fakta-inntektsmelding@workspace:packages/fakta-inntektsmelding"
dependencies:
- "@navikt/ds-css": 6.13.0
+ "@navikt/ds-css": 6.16.3
"@navikt/ds-icons": 3.4.3
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-form-hooks": 5.0.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-form-hooks": 5.0.5
+ "@navikt/ft-plattform-komponenter": 3.0.8
"@popperjs/core": 2.11.8
classnames: 2.5.1
dayjs: 1.11.13
- msw: 2.4.1
+ msw: 2.4.2
react: 18.3.1
react-collapse: 5.1.1
react-dom: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-popper: 2.3.0
- vite: ^5.4.2
+ vite: ^5.4.3
vite-plugin-node-polyfills: ^0.22.0
languageName: unknown
linkType: soft
@@ -3993,7 +3971,7 @@ __metadata:
dependencies:
"@fpsak-frontend/form": "*"
"@k9-sak-web/types": "*"
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ft-plattform-komponenter": 3.0.8
formik: 2.4.6
languageName: unknown
linkType: soft
@@ -4004,24 +3982,24 @@ __metadata:
dependencies:
"@fpsak-frontend/form": 1.0.0
"@navikt/diagnosekoder": ^1.2024.0
- "@navikt/ds-css": 6.13.0
+ "@navikt/ds-css": 6.16.3
"@navikt/ds-icons": 3.4.3
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-plattform-komponenter": 3.0.8
"@popperjs/core": 2.11.8
- "@tanstack/react-query": ^5.52.3
- axios: 1.7.5
+ "@tanstack/react-query": ^5.55.0
+ axios: 1.7.7
classnames: 2.5.1
cors: ^2.8.5
dayjs: 1.11.13
- msw: 2.4.1
+ msw: 2.4.2
react: 18.3.1
react-collapse: 5.1.1
react-dom: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-outside-click-handler: 1.3.0
react-popper: 2.3.0
- vite: ^5.4.2
+ vite: ^5.4.3
vite-plugin-node-polyfills: ^0.22.0
languageName: unknown
linkType: soft
@@ -4030,19 +4008,19 @@ __metadata:
version: 0.0.0-use.local
resolution: "@k9-sak-web/fakta-om-barnet@workspace:packages/fakta-om-barnet"
dependencies:
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-plattform-komponenter": 3.0.8
"@popperjs/core": 2.11.8
classnames: 2.5.1
dayjs: 1.11.13
- msw: 2.4.1
+ msw: 2.4.2
react: 18.3.1
react-collapse: 5.1.1
react-dom: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-popper: 2.3.0
tailwindcss: ^3.4.10
- vite: ^5.4.2
+ vite: ^5.4.3
vite-plugin-node-polyfills: ^0.22.0
languageName: unknown
linkType: soft
@@ -4051,23 +4029,23 @@ __metadata:
version: 0.0.0-use.local
resolution: "@k9-sak-web/fakta-omsorgen-for@workspace:packages/fakta-omsorgen-for"
dependencies:
- "@navikt/ds-css": 6.13.0
+ "@navikt/ds-css": 6.16.3
"@navikt/ds-icons": 3.4.3
- "@navikt/ds-react": 6.13.0
- "@navikt/fnrvalidator": 2.1.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ds-react": 6.16.3
+ "@navikt/fnrvalidator": 2.1.2
+ "@navikt/ft-plattform-komponenter": 3.0.8
"@popperjs/core": 2.11.8
classnames: 2.5.1
dayjs: 1.11.13
- msw: 2.4.1
+ msw: 2.4.2
object-hash: 3.0.0
react: 18.3.1
react-collapse: 5.1.1
react-dom: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-intl: 6.6.8
react-popper: 2.3.0
- vite: ^5.4.2
+ vite: ^5.4.3
vite-plugin-node-polyfills: ^0.22.0
languageName: unknown
linkType: soft
@@ -4080,8 +4058,8 @@ __metadata:
"@fpsak-frontend/utils": "*"
"@k9-sak-web/types": "*"
"@navikt/ds-icons": 3.4.3
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-plattform-komponenter": 3.0.8
classnames: 2.5.1
dayjs: 1.11.13
formik: 2.4.6
@@ -4184,7 +4162,7 @@ __metadata:
react-dom: 18.3.1
react-intl: 6.6.8
react-redux: 9.1.2
- react-router-dom: 6.26.0
+ react-router-dom: 6.26.1
redux-form: 8.3.10
languageName: unknown
linkType: soft
@@ -4211,15 +4189,15 @@ __metadata:
version: 0.0.0-use.local
resolution: "@k9-sak-web/prosess-omsorgsdager@workspace:packages/prosess-omsorgsdager"
dependencies:
- "@navikt/ds-css": 6.13.0
- "@navikt/ds-react": 6.13.0
+ "@navikt/ds-css": 6.16.3
+ "@navikt/ds-react": 6.16.3
classnames: 2.5.1
dayjs: 1.11.13
lodash: 4.17.21
react: 18.3.1
react-dom: 18.3.1
- react-hook-form: 7.52.2
- vite: ^5.4.2
+ react-hook-form: 7.53.0
+ vite: ^5.4.3
vite-plugin-node-polyfills: ^0.22.0
vitest-axe: ^0.1.0
languageName: unknown
@@ -4264,20 +4242,20 @@ __metadata:
resolution: "@k9-sak-web/prosess-uttak@workspace:packages/prosess-uttak"
dependencies:
"@hookform/resolvers": ^3.9.0
- "@navikt/ds-css": 6.13.0
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-form-hooks": 5.0.0
- "@navikt/ft-form-validators": 2.3.18
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ds-css": 6.16.3
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-form-hooks": 5.0.5
+ "@navikt/ft-form-validators": 2.3.22
+ "@navikt/ft-plattform-komponenter": 3.0.8
"@popperjs/core": 2.11.8
classnames: 2.5.1
dayjs: 1.11.13
react: 18.3.1
react-collapse: 5.1.1
react-dom: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-popper: 2.3.0
- vite: ^5.4.2
+ vite: ^5.4.3
vite-plugin-node-polyfills: ^0.22.0
yup: 1.4.0
languageName: unknown
@@ -4291,10 +4269,10 @@ __metadata:
"@fpsak-frontend/shared-components": 1.0.0
"@fpsak-frontend/utils": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ft-form-hooks": 5.0.0
- "@navikt/ft-form-validators": 2.3.18
+ "@navikt/ft-form-hooks": 5.0.5
+ "@navikt/ft-form-validators": 2.3.22
react: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-intl: 6.6.8
languageName: unknown
linkType: soft
@@ -4311,7 +4289,7 @@ __metadata:
"@fpsak-frontend/utils-test": 1.0.0
"@k9-sak-web/sak-app": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ft-plattform-komponenter": 3.0.8
classnames: 2.5.1
moment: 2.30.1
object-hash: 3.0.0
@@ -4332,7 +4310,7 @@ __metadata:
"@fpsak-frontend/kodeverk": 1.0.0
"@fpsak-frontend/shared-components": 1.0.0
"@fpsak-frontend/utils": 1.0.0
- "@navikt/ft-plattform-komponenter": 3.0.4
+ "@navikt/ft-plattform-komponenter": 3.0.8
classnames: 2.5.1
lodash: 4.17.21
react: 18.3.1
@@ -4353,8 +4331,9 @@ __metadata:
version: 0.0.0-use.local
resolution: "@k9-sak-web/rest-api@workspace:packages/rest-api"
dependencies:
+ "@k9-sak-web/backend": "workspace:^"
"@k9-sak-web/lib": 1.0.0
- axios: 1.7.5
+ axios: 1.7.7
node-cache: 5.1.2
languageName: unknown
linkType: soft
@@ -4416,16 +4395,16 @@ __metadata:
"@k9-sak-web/sak-notat": 1.0.0
"@k9-sak-web/sak-soknadsperiodestripe": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-fakta-beregning-redesign": 1.2.21
- "@navikt/ft-form-hooks": 5.0.0
- "@navikt/ft-plattform-komponenter": 3.0.4
- "@navikt/ft-prosess-beregningsgrunnlag": 6.5.26
- "@navikt/ft-ui-komponenter": 2.3.19
- "@sentry/browser": 8.27.0
- "@sentry/react": ^8.27.0
- "@tanstack/react-query": ^5.52.3
- axios: 1.7.5
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-fakta-beregning-redesign": 1.2.27
+ "@navikt/ft-form-hooks": 5.0.5
+ "@navikt/ft-plattform-komponenter": 3.0.8
+ "@navikt/ft-prosess-beregningsgrunnlag": 6.5.32
+ "@navikt/ft-ui-komponenter": 2.4.4
+ "@sentry/browser": 8.28.0
+ "@sentry/react": ^8.28.0
+ "@tanstack/react-query": ^5.55.0
+ axios: 1.7.7
classnames: 2.5.1
history: 5.3.0
moment: 2.30.1
@@ -4434,7 +4413,7 @@ __metadata:
react-dom: 18.3.1
react-intl: 6.6.8
react-redux: 9.1.2
- react-router-dom: 6.26.0
+ react-router-dom: 6.26.1
redux: 5.0.1
redux-form: 8.3.10
redux-thunk: 3.1.0
@@ -4453,13 +4432,13 @@ __metadata:
"@k9-sak-web/konstanter": 1.0.0
"@k9-sak-web/lib": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@tanstack/react-query": ^5.52.3
+ "@tanstack/react-query": ^5.55.0
classnames: 2.5.1
history: 5.3.0
moment: 2.30.1
react: 18.3.1
react-intl: 6.6.8
- react-router-dom: 6.26.0
+ react-router-dom: 6.26.1
languageName: unknown
linkType: soft
@@ -4491,7 +4470,7 @@ __metadata:
"@fpsak-frontend/form": 1.0.0
"@fpsak-frontend/shared-components": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/ds-react": 6.13.0
+ "@navikt/ds-react": 6.16.3
formik: 2.4.6
react: 18.3.1
react-intl: 6.6.8
@@ -4505,14 +4484,14 @@ __metadata:
dependencies:
"@k9-sak-web/rest-api": 1.0.0
"@k9-sak-web/types": 1.0.0
- "@navikt/aksel-icons": 6.13.0
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-form-hooks": 5.0.0
- "@navikt/ft-form-validators": 2.3.18
- "@tanstack/react-query": ^5.52.3
+ "@navikt/aksel-icons": 6.16.3
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-form-hooks": 5.0.5
+ "@navikt/ft-form-validators": 2.3.22
+ "@tanstack/react-query": ^5.55.0
date-fns: 3.6.0
react: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-intl: 6.6.8
languageName: unknown
linkType: soft
@@ -4562,10 +4541,10 @@ __metadata:
languageName: node
linkType: hard
-"@navikt/aksel-icons@npm:6.13.0, @navikt/aksel-icons@npm:^6.13.0":
- version: 6.13.0
- resolution: "@navikt/aksel-icons@npm:6.13.0::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Faksel-icons%2F6.13.0%2F7378bad8c8230187b30a9e0b15675f7740dc96cf"
- checksum: d3617d1c1166ebc4896f020ff163d4faf3cdd868306acc0d0dce69db920c358af80703abf6a38b6a71daf5c95f98d78b753a00d6aba3ae8f2bd7e55c95c222c8
+"@navikt/aksel-icons@npm:6.16.3, @navikt/aksel-icons@npm:^6.16.3":
+ version: 6.16.3
+ resolution: "@navikt/aksel-icons@npm:6.16.3::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Faksel-icons%2F6.16.3%2Fe0a4e5abf2a0b9ae9b7be68d0f72080832fd8457"
+ checksum: 69d481a3ed0ed063348cda328e0ddf1e700b819eb47fa59878dd81eaa38c6889b6e20b4e6b633bfb21b30e2465760fefd5baf4cf87e6e71ecb772620fb6df94c
languageName: node
linkType: hard
@@ -4576,10 +4555,10 @@ __metadata:
languageName: node
linkType: hard
-"@navikt/ds-css@npm:6.13.0":
- version: 6.13.0
- resolution: "@navikt/ds-css@npm:6.13.0::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fds-css%2F6.13.0%2F9882c3009d59c19da414477877ab27aad65f7b13"
- checksum: b96a73bf8cbb8c24fbf059914c097bdf28100c0393e6345c325ea2a82ef454877b041021227d53b68c7e2431aeda20919e95e301b7765b01616ce365d87268e7
+"@navikt/ds-css@npm:6.16.3":
+ version: 6.16.3
+ resolution: "@navikt/ds-css@npm:6.16.3::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fds-css%2F6.16.3%2Feabc958ee4d9ae6c3510608b5bf21b53ad479e4f"
+ checksum: 20e97d40b0b51307c553a523a9c25215a2f307aa45e7c6621cc4804f25cf0302f12798e07261f762859af255ffd19f90479f1b1692385b1f595f5499a502febc
languageName: node
linkType: hard
@@ -4593,41 +4572,41 @@ __metadata:
languageName: node
linkType: hard
-"@navikt/ds-react@npm:6.13.0":
- version: 6.13.0
- resolution: "@navikt/ds-react@npm:6.13.0::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fds-react%2F6.13.0%2F2e522bc611fbaf96128c08e6d678d622a67d39e2"
+"@navikt/ds-react@npm:6.16.3":
+ version: 6.16.3
+ resolution: "@navikt/ds-react@npm:6.16.3::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fds-react%2F6.16.3%2F55d1ee7cebf5c9db3e7300cfb81bd60f60347e81"
dependencies:
"@floating-ui/react": 0.25.4
"@floating-ui/react-dom": ^2.0.9
- "@navikt/aksel-icons": ^6.13.0
- "@navikt/ds-tokens": ^6.13.0
+ "@navikt/aksel-icons": ^6.16.3
+ "@navikt/ds-tokens": ^6.16.3
clsx: ^2.1.0
date-fns: ^3.0.0
react-day-picker: 8.10.0
peerDependencies:
"@types/react": ^17.0.30 || ^18.0.0
react: ^17.0.0 || ^18.0.0
- checksum: 905a897db042f3a9ffadbd6b0cadae996889ee6b496bee836d70cae3d4ab058cd75c3c28576ab0b351ee5fea3cf9902fd1fbb7ab55b1a11a7e0172786dcf8809
+ checksum: 5a2292ecca93075deaa7134ca78ad23d3b95d84f0a3fbc699d13e86c580d74b10f43bd83fb9a46d1ac19c83810f1a96cf6fcce67a631d3705a441bb3a786c639
languageName: node
linkType: hard
-"@navikt/ds-tailwind@npm:^6.13.0":
- version: 6.13.0
- resolution: "@navikt/ds-tailwind@npm:6.13.0::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fds-tailwind%2F6.13.0%2F26007f66871356b67e6d9b4f7fbe3a1f9771b8a2"
- checksum: 171f3d53bcbff87eb74e320725beb2b872b4ac6536bf95d1917e2a1a87fb4bbae946f6e1b25bf7d74c865a8bd6c0035dce81dcf61acaa5d7ffe04241e6e99546
+"@navikt/ds-tailwind@npm:^6.16.3":
+ version: 6.16.3
+ resolution: "@navikt/ds-tailwind@npm:6.16.3::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fds-tailwind%2F6.16.3%2Fbf8a7fd5f919c31491b2516ff29726d36d836082"
+ checksum: 5537d1f0d7fbc1c95d73e325cb898d1c5c211b449fef6cf2f12d3f218bd4082abc02c2b2a77514b2b08e210ab58067599056c739180e2cbb537e5434a90a095d
languageName: node
linkType: hard
-"@navikt/ds-tokens@npm:^6.13.0":
- version: 6.13.0
- resolution: "@navikt/ds-tokens@npm:6.13.0::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fds-tokens%2F6.13.0%2F6704caca2fffee89abdce0207e5dfe00b875482f"
- checksum: a5bb9b0d8b4867912ecac8f04d21119a649c7fe6d3d74ca18782c5b5bf749d0dab6a3de6fb261d63d00620fcbd40c2f26e8aedab27c50d6fa7acc4fb1d45200c
+"@navikt/ds-tokens@npm:^6.16.3":
+ version: 6.16.3
+ resolution: "@navikt/ds-tokens@npm:6.16.3::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fds-tokens%2F6.16.3%2F1ce1e16ad2c2386a756e6e6d8a05dcd9564cae9b"
+ checksum: 3ae833b4dfc2448f1e5bb100c9010a61f5ce3f7113b1517a43ef3c62660589b2c2e74a7357a492974629b8b1e0ab1ba94c1d7d78f3d1052c900d384bcca7da61
languageName: node
linkType: hard
-"@navikt/familie-endringslogg@npm:13.1.1":
- version: 13.1.1
- resolution: "@navikt/familie-endringslogg@npm:13.1.1::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Ffamilie-endringslogg%2F13.1.1%2F05f13e2ff432a839f298270c14bbcab0d901a947"
+"@navikt/familie-endringslogg@npm:13.1.2":
+ version: 13.1.2
+ resolution: "@navikt/familie-endringslogg@npm:13.1.2::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Ffamilie-endringslogg%2F13.1.2%2Fe6ee3efc1c310cf9c51dd2e22d17fe58d31ebcad"
dependencies:
"@portabletext/react": ^3.1.0
classnames: ^2.5.1
@@ -4637,37 +4616,37 @@ __metadata:
"@navikt/ds-react": 6.x
"@types/react": 18.x
react: 18.x
- checksum: b3bb81fe500dfaf348904b7423590b40d2ad8163fe9f4ee2178c3d8046e1db4ce2c1201505902a609cd33deb965f15141ebf69d84bda81eaf20cc230656ffb6e
+ checksum: b81ddc48405c012fee09cab51236b56fa30a737449c0c79e9055f004b6fe2b31fa68af07d3f16b2cfacfbf845b6cfba1ca8d6253c6b9567847554f80de0e47d3
languageName: node
linkType: hard
-"@navikt/fnrvalidator@npm:2.1.0":
- version: 2.1.0
- resolution: "@navikt/fnrvalidator@npm:2.1.0::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Ffnrvalidator%2F2.1.0%2F22070c4d38d3c928b1b5f75d5f0d786a5587e7d7"
- checksum: c404d59993bff9761a78d1c87f164a8638559a6e18786282bd4b85ed5405564fa9ab2e0302f836c5624f9f27e350b0157af42ae2fbdcd29e6f0897218dc30bec
- languageName: node
- linkType: hard
-
-"@navikt/ft-fakta-beregning-redesign@npm:1.2.21":
- version: 1.2.21
- resolution: "@navikt/ft-fakta-beregning-redesign@npm:1.2.21::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-fakta-beregning-redesign%2F1.2.21%2F19e62103c8856ae57032778052f31bfad44cf63e"
- dependencies:
- "@navikt/aksel-icons": 6.13.0
- "@navikt/ds-css": 6.13.0
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-form-hooks": ^4.4.20
- "@navikt/ft-form-validators": ^2.3.18
- "@navikt/ft-kodeverk": ^2.4.15
- "@navikt/ft-konstanter": ^2.3.15
- "@navikt/ft-types": ^2.4.15
- "@navikt/ft-ui-komponenter": ^2.3.19
- "@navikt/ft-utils": ^2.3.18
- core-js: 3.38.0
- dayjs: 1.11.12
+"@navikt/fnrvalidator@npm:2.1.2":
+ version: 2.1.2
+ resolution: "@navikt/fnrvalidator@npm:2.1.2::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Ffnrvalidator%2F2.1.2%2Fa13f1f064fdb91ffaf9bf8bc28c82a1816fe095f"
+ checksum: 29f7a418c2bc849e48526bbcf6a654749759de929b3564acc4e7eb463a0da1021c930c0917896cab805096a4a7bfc742c92534a7ed1c1ef7a2e6c23bade57a22
+ languageName: node
+ linkType: hard
+
+"@navikt/ft-fakta-beregning-redesign@npm:1.2.27":
+ version: 1.2.27
+ resolution: "@navikt/ft-fakta-beregning-redesign@npm:1.2.27::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-fakta-beregning-redesign%2F1.2.27%2Fa411a5d5d5849b4a1ace688c7258ee185ba545b8"
+ dependencies:
+ "@navikt/aksel-icons": 6.16.3
+ "@navikt/ds-css": 6.16.3
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-form-hooks": ^5.0.5
+ "@navikt/ft-form-validators": ^2.3.22
+ "@navikt/ft-kodeverk": ^2.4.17
+ "@navikt/ft-konstanter": ^2.3.17
+ "@navikt/ft-types": ^2.4.17
+ "@navikt/ft-ui-komponenter": ^2.4.4
+ "@navikt/ft-utils": ^2.3.22
+ core-js: 3.38.1
+ dayjs: 1.11.13
dayjs-plugin-utc: 0.1.2
react: 18.3.1
react-dom: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-intl: 6.6.8
peerDependencies:
"@navikt/aksel-icons": 6.12.0
@@ -4687,28 +4666,28 @@ __metadata:
react-dom: 18.3.1
react-hook-form: 7.52.0
react-intl: 6.6.8
- checksum: 94ced16656fd71e3a4bd0526536653cfa7ce970504388abea1dfa850bd0db8167ea5e005a406c20baf08d44384b7ddc3b6e97d98db27a135c733071d57a3b16d
+ checksum: 5ff4048f9f6ca8465a8858719ffda22e5bbcf04a48b9829bc687a96a5ecb575e0ad436d5f59b832f16acbf58f6c9100bc14c9ea30740fcb44a4567b992465f93
languageName: node
linkType: hard
-"@navikt/ft-fakta-fordel-beregningsgrunnlag@npm:7.5.22":
- version: 7.5.22
- resolution: "@navikt/ft-fakta-fordel-beregningsgrunnlag@npm:7.5.22::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-fakta-fordel-beregningsgrunnlag%2F7.5.22%2F87abce2eb8d55b2aa666dd24fad0155ba9342212"
+"@navikt/ft-fakta-fordel-beregningsgrunnlag@npm:7.5.29":
+ version: 7.5.29
+ resolution: "@navikt/ft-fakta-fordel-beregningsgrunnlag@npm:7.5.29::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-fakta-fordel-beregningsgrunnlag%2F7.5.29%2Ff256f83d774f3b76b37283b64eede2e040f5570f"
dependencies:
- "@navikt/aksel-icons": 6.13.0
- "@navikt/ds-css": 6.13.0
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-form-hooks": ^4.4.20
- "@navikt/ft-form-validators": ^2.3.18
- "@navikt/ft-kodeverk": ^2.4.15
- "@navikt/ft-types": ^2.4.15
- "@navikt/ft-ui-komponenter": ^2.3.19
- "@navikt/ft-utils": ^2.3.18
+ "@navikt/aksel-icons": 6.16.3
+ "@navikt/ds-css": 6.16.3
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-form-hooks": ^5.0.5
+ "@navikt/ft-form-validators": ^2.3.22
+ "@navikt/ft-kodeverk": ^2.4.17
+ "@navikt/ft-types": ^2.4.17
+ "@navikt/ft-ui-komponenter": ^2.4.4
+ "@navikt/ft-utils": ^2.3.22
classnames: 2.5.1
- core-js: 3.38.0
- dayjs: 1.11.12
+ core-js: 3.38.1
+ dayjs: 1.11.13
react: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-intl: 6.6.8
uuid: 10.0.0
peerDependencies:
@@ -4728,59 +4707,26 @@ __metadata:
react-hook-form: 7.52.0
react-intl: 6.6.8
uuid: 9.0.1
- checksum: 485725f48c2377d8426554a3ad1dde2690337acce604d7e69e6a2794fbca01445008fe2a1a63149844629423bb2cfd32460d2863b83ba755f66ee9f0ac63a43e
- languageName: node
- linkType: hard
-
-"@navikt/ft-form-hooks@npm:5.0.0":
- version: 5.0.0
- resolution: "@navikt/ft-form-hooks@npm:5.0.0::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-form-hooks%2F5.0.0%2F428d791811c515fc80f6513ae47b82fc0937b148"
- dependencies:
- "@navikt/aksel-icons": 6.13.0
- "@navikt/ds-css": 6.13.0
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-form-validators": ^2.3.18
- "@navikt/ft-types": ^2.4.15
- "@navikt/ft-ui-komponenter": ^2.3.19
- "@navikt/ft-utils": ^2.3.18
- classnames: 2.5.1
- dayjs: 1.11.12
- lodash.throttle: 4.1.1
- react: 18.3.1
- react-hook-form: 7.52.2
- peerDependencies:
- "@navikt/aksel-icons": 6.12.0
- "@navikt/ds-css": 6.12.0
- "@navikt/ds-react": 6.12.0
- "@navikt/ft-form-validators": 2.x
- "@navikt/ft-types": 2.x
- "@navikt/ft-ui-komponenter": 2.x
- "@navikt/ft-utils": 2.x
- classnames: 2.5.1
- dayjs: 1.11.11
- lodash.throttle: 4.1.1
- react: 18.3.1
- react-hook-form: 7.52.0
- checksum: 89babbe3817091180e181049b24995189fffeb45b85e4994d7922b47401b7152d95573639ed08a2c58ea5b27c16e0e73227f0df20a086a94394cea4c401cbea1
+ checksum: 3ad9a1315a02a5b6ef403b39afb189c8ab629a6e019436c64087ca31a168fb52ae6854065be50c19096d1a580805f36ece2a732da694113f4fecf02a57ae3604
languageName: node
linkType: hard
-"@navikt/ft-form-hooks@npm:^4.4.20":
- version: 4.4.20
- resolution: "@navikt/ft-form-hooks@npm:4.4.20::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-form-hooks%2F4.4.20%2F09aa9dfe224903f4ee9463bace47bfb36b80c5ac"
- dependencies:
- "@navikt/aksel-icons": 6.13.0
- "@navikt/ds-css": 6.13.0
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-form-validators": ^2.3.18
- "@navikt/ft-types": ^2.4.15
- "@navikt/ft-ui-komponenter": ^2.3.19
- "@navikt/ft-utils": ^2.3.18
+"@navikt/ft-form-hooks@npm:5.0.5, @navikt/ft-form-hooks@npm:^5.0.5":
+ version: 5.0.5
+ resolution: "@navikt/ft-form-hooks@npm:5.0.5::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-form-hooks%2F5.0.5%2Fcd87a962300ccfda87479880a8b824f2c9683804"
+ dependencies:
+ "@navikt/aksel-icons": 6.16.3
+ "@navikt/ds-css": 6.16.3
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-form-validators": ^2.3.22
+ "@navikt/ft-types": ^2.4.17
+ "@navikt/ft-ui-komponenter": ^2.4.4
+ "@navikt/ft-utils": ^2.3.22
classnames: 2.5.1
- dayjs: 1.11.12
+ dayjs: 1.11.13
lodash.throttle: 4.1.1
react: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
peerDependencies:
"@navikt/aksel-icons": 6.12.0
"@navikt/ds-css": 6.12.0
@@ -4794,45 +4740,45 @@ __metadata:
lodash.throttle: 4.1.1
react: 18.3.1
react-hook-form: 7.52.0
- checksum: f3d766fee4548570bb87353893b82fd49cd34f19a84f51e51df908022c83eb2824c3331d4ae96ad0eda8c1f61d1ecf373d3f3a64df8fb2586ea5e3c16702ef7d
+ checksum: ef2e19970576be9dc776b243ed5e9c03295f6d62a01867bf038c593e9684eadaba29ced6a05e3877b56eda9598e7cf1aaf1e3995f02f46ff24425532455af8c6
languageName: node
linkType: hard
-"@navikt/ft-form-validators@npm:2.3.18, @navikt/ft-form-validators@npm:^2.3.18":
- version: 2.3.18
- resolution: "@navikt/ft-form-validators@npm:2.3.18::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-form-validators%2F2.3.18%2F70e95788d7698d2320bd6bfa01eb0f94b3d21047"
+"@navikt/ft-form-validators@npm:2.3.22, @navikt/ft-form-validators@npm:^2.3.22":
+ version: 2.3.22
+ resolution: "@navikt/ft-form-validators@npm:2.3.22::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-form-validators%2F2.3.22%2Fc5ecdcc131cc886d52cdcb9d1099424332e3527b"
dependencies:
- "@navikt/ft-utils": ^2.3.18
+ "@navikt/ft-utils": ^2.3.22
moment: 2.30.1
peerDependencies:
"@navikt/ft-utils": 2.x
moment: 2.30.1
- checksum: e60e97d9f8be7d6d7cd0013452ea8bbbe87798432213d743b28ed223587d7aa68f21f1fa066a62c67108abc98cbda4e3e26b496eac0d66c5c8958a35477a0b28
+ checksum: 875d2840337669b1d29afb39d3cbbed9fb19cd96bb646eb30c0979e7b06d6cbfead9c5e87cbced7204e87a32eec48c64bfd350c5da5af6c4622d3a13e9294f53
languageName: node
linkType: hard
-"@navikt/ft-kodeverk@npm:^2.4.15":
- version: 2.4.15
- resolution: "@navikt/ft-kodeverk@npm:2.4.15::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-kodeverk%2F2.4.15%2F6f7b742b9808255cce8d65e29d98d9d998a8d6cd"
- checksum: 02ef3f6c5eb7ecbc3c21869b56f701f20a60d6a29a68222cfa59f52bcb20cdb9c54f8851e37131be259e8b680914acf5f64fa346ac692c8e100206f12508bb2e
+"@navikt/ft-kodeverk@npm:^2.4.17":
+ version: 2.4.17
+ resolution: "@navikt/ft-kodeverk@npm:2.4.17::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-kodeverk%2F2.4.17%2F78dfbcabb5c7e935df42d059feb62ab9830c6e47"
+ checksum: ab1f1ef9fd489b2e213a54d3baf4444a56036971d88f778140b8774b844a4e37cbe3419ca17c87c35c8c83ba304854737676ecbb68a86c7bc60d92397f01e8fa
languageName: node
linkType: hard
-"@navikt/ft-konstanter@npm:^2.3.15":
- version: 2.3.15
- resolution: "@navikt/ft-konstanter@npm:2.3.15::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-konstanter%2F2.3.15%2F83c7d2dfd55bfd8d736da3d2c31fc7e331f395fb"
- checksum: 4edf7f08baa66c019443a3e1020c7f50778879085c0827948e8553bb8b8651b01737254285eaa9bc927bea5796d40e0b39445ee30d2d9eefe34bb58f03e2bccc
+"@navikt/ft-konstanter@npm:^2.3.17":
+ version: 2.3.17
+ resolution: "@navikt/ft-konstanter@npm:2.3.17::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-konstanter%2F2.3.17%2Ffd1ff6164970884aa4d40fe914c1328262d5daca"
+ checksum: 1e80ad8432bfd175784c35779df53109e1f995d273e857ab316b8978892a632b27c0e9d4ffba211a05affa1919202f3c8a22a75b2b58f2b3d3e6be8833b15f52
languageName: node
linkType: hard
-"@navikt/ft-plattform-komponenter@npm:3.0.4, @navikt/ft-plattform-komponenter@npm:^3.0.4":
- version: 3.0.4
- resolution: "@navikt/ft-plattform-komponenter@npm:3.0.4::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-plattform-komponenter%2F3.0.4%2F3324e7ff321680c485a207ea6ddc432b3ccc734f"
+"@navikt/ft-plattform-komponenter@npm:3.0.8, @navikt/ft-plattform-komponenter@npm:^3.0.8":
+ version: 3.0.8
+ resolution: "@navikt/ft-plattform-komponenter@npm:3.0.8::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-plattform-komponenter%2F3.0.8%2Fa3a284c974a8639d7bb2df150e3c9de256810284"
dependencies:
- "@navikt/aksel-icons": 6.13.0
- "@navikt/ds-css": 6.13.0
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-utils": ^2.3.18
+ "@navikt/aksel-icons": 6.16.3
+ "@navikt/ds-css": 6.16.3
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-utils": ^2.3.22
classnames: 2.5.1
peerDependencies:
"@popperjs/core": 2.11.8
@@ -4843,29 +4789,29 @@ __metadata:
react: 18.3.1
react-dom: 18.3.1
react-popper: 2.3.0
- checksum: 792a77172d068142329d9614089e0ccebfefe7b9f8f173c004c16d7a8212cde76c15f9d1daca5b5681e367233bf677c62642c58771ae43af65fe366f7c1c11ac
+ checksum: 7fdbb57f5f7beee848b75fee23aae9aee7f1067fab900af946a1c6f2f5b2931f79b4e636d0dc7b6923a628c7c0c5776fcd39d9c80a6cfc429c997fde1e97be89
languageName: node
linkType: hard
-"@navikt/ft-prosess-beregningsgrunnlag@npm:6.5.26":
- version: 6.5.26
- resolution: "@navikt/ft-prosess-beregningsgrunnlag@npm:6.5.26::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-prosess-beregningsgrunnlag%2F6.5.26%2Fc4f8767d5fa8da9993ea7f3fd71547c07704338d"
+"@navikt/ft-prosess-beregningsgrunnlag@npm:6.5.32":
+ version: 6.5.32
+ resolution: "@navikt/ft-prosess-beregningsgrunnlag@npm:6.5.32::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-prosess-beregningsgrunnlag%2F6.5.32%2F3e5a64c88317705ff7c23218aee55ae767f66577"
dependencies:
- "@navikt/aksel-icons": 6.13.0
- "@navikt/ds-css": 6.13.0
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-form-hooks": ^4.4.20
- "@navikt/ft-form-validators": ^2.3.18
- "@navikt/ft-kodeverk": ^2.4.15
- "@navikt/ft-plattform-komponenter": ^3.0.4
- "@navikt/ft-types": ^2.4.15
- "@navikt/ft-ui-komponenter": ^2.3.19
- "@navikt/ft-utils": ^2.3.18
+ "@navikt/aksel-icons": 6.16.3
+ "@navikt/ds-css": 6.16.3
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-form-hooks": ^5.0.5
+ "@navikt/ft-form-validators": ^2.3.22
+ "@navikt/ft-kodeverk": ^2.4.17
+ "@navikt/ft-plattform-komponenter": ^3.0.8
+ "@navikt/ft-types": ^2.4.17
+ "@navikt/ft-ui-komponenter": ^2.4.4
+ "@navikt/ft-utils": ^2.3.22
classnames: 2.5.1
- dayjs: 1.11.12
+ dayjs: 1.11.13
echarts: 5.5.1
react: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-intl: 6.6.8
peerDependencies:
"@navikt/aksel-icons": 6.12.0
@@ -4884,27 +4830,27 @@ __metadata:
react: 18.3.1
react-hook-form: 7.52.0
react-intl: 6.6.8
- checksum: 86abb569b8841d3f731de6cd3122721ac29ff334879e26bdd28bdc88d748f991159032639adaf00042c844a1e7e6b5403b9c8bf502a6d719afa310f9bd53b6ba
+ checksum: bd30cd35c5b0d844a4f2d3dcaa3277b6188d8512655c86698dea1f4d2824314a497b7e6f9091784c740ed050a338fd8900b32a6f6b2a4277abc18b383fc9070f
languageName: node
linkType: hard
-"@navikt/ft-prosess-tilbakekreving-foreldelse@npm:3.3.21":
- version: 3.3.21
- resolution: "@navikt/ft-prosess-tilbakekreving-foreldelse@npm:3.3.21::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-prosess-tilbakekreving-foreldelse%2F3.3.21%2Fd5cf0bc59442e1839f5a542d5d1b084639d9f8a4"
+"@navikt/ft-prosess-tilbakekreving-foreldelse@npm:3.3.27":
+ version: 3.3.27
+ resolution: "@navikt/ft-prosess-tilbakekreving-foreldelse@npm:3.3.27::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-prosess-tilbakekreving-foreldelse%2F3.3.27%2F35c4667cc7896bbc7289881df5dc5e21013d1a80"
dependencies:
- "@navikt/aksel-icons": 6.13.0
- "@navikt/ds-css": 6.13.0
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-form-hooks": ^4.4.20
- "@navikt/ft-form-validators": ^2.3.18
- "@navikt/ft-kodeverk": ^2.4.15
- "@navikt/ft-types": ^2.4.15
- "@navikt/ft-ui-komponenter": ^2.3.19
- "@navikt/ft-utils": ^2.3.18
- dayjs: 1.11.12
+ "@navikt/aksel-icons": 6.16.3
+ "@navikt/ds-css": 6.16.3
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-form-hooks": ^5.0.5
+ "@navikt/ft-form-validators": ^2.3.22
+ "@navikt/ft-kodeverk": ^2.4.17
+ "@navikt/ft-types": ^2.4.17
+ "@navikt/ft-ui-komponenter": ^2.4.4
+ "@navikt/ft-utils": ^2.3.22
+ dayjs: 1.11.13
moment: 2.30.1
react: 18.3.1
- react-hook-form: 7.52.2
+ react-hook-form: 7.53.0
react-intl: 6.6.8
peerDependencies:
"@navikt/aksel-icons": 6.12.0
@@ -4921,29 +4867,29 @@ __metadata:
react: 18.3.1
react-hook-form: 7.52.0
react-intl: 6.6.8
- checksum: 78c78679c5405520281292e223e50372e63c46dc1ae83663642b1037f928378f2f42a1e50365bc5d31d81d14f11bb78d44603e19615a31de6e70ba21d7657523
+ checksum: 8b56b5619520f8ff794cb9bd54dfa120e543a3e88c91dcc676f5b0d989557ebfd7a78377dd48e33ed0707423a1eaf772945601a2a16cb20fe46f31934274270d
languageName: node
linkType: hard
-"@navikt/ft-types@npm:2.4.15, @navikt/ft-types@npm:^2.4.15":
- version: 2.4.15
- resolution: "@navikt/ft-types@npm:2.4.15::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-types%2F2.4.15%2F6e5a1bef076825f8764d9a0e6f727178b92f6a62"
+"@navikt/ft-types@npm:2.4.17, @navikt/ft-types@npm:^2.4.17":
+ version: 2.4.17
+ resolution: "@navikt/ft-types@npm:2.4.17::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-types%2F2.4.17%2Fee29d0a1ee72e488f167bdb079576d4d8cd15b26"
dependencies:
- "@navikt/ft-kodeverk": ^2.4.15
+ "@navikt/ft-kodeverk": ^2.4.17
peerDependencies:
"@navikt/ft-kodeverk": 2.x
- checksum: fa6ec5ffe6430d8672a2aa41d102d5766e289838c3a9e64c9f006f1c0608322c4f86c8df56132a5a6d49807a39233f38a44346da3aafb14a55e7efa466f7ad04
+ checksum: 12e81c4b28bed63577411e97eb0e059e88a64ddb49eb2c3f80b2303c9d9de3240aeb219f82789dcd7b3ecbb7a33831798fc0d8abb801d2b98b61d2b40b5b0e53
languageName: node
linkType: hard
-"@navikt/ft-ui-komponenter@npm:2.3.19, @navikt/ft-ui-komponenter@npm:^2.3.19":
- version: 2.3.19
- resolution: "@navikt/ft-ui-komponenter@npm:2.3.19::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-ui-komponenter%2F2.3.19%2F55c8382de9237b3f6be6e8be1880c0c8de699c38"
+"@navikt/ft-ui-komponenter@npm:2.4.4, @navikt/ft-ui-komponenter@npm:^2.4.4":
+ version: 2.4.4
+ resolution: "@navikt/ft-ui-komponenter@npm:2.4.4::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-ui-komponenter%2F2.4.4%2F9f9a2d9fedc065346d2de3c1f2de49b5dc99b8bc"
dependencies:
- "@navikt/aksel-icons": 6.13.0
- "@navikt/ds-css": 6.13.0
- "@navikt/ds-react": 6.13.0
- "@navikt/ft-utils": ^2.3.18
+ "@navikt/aksel-icons": 6.16.3
+ "@navikt/ds-css": 6.16.3
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ft-utils": ^2.3.22
classnames: 2.5.1
react: 18.3.1
react-intl: 6.6.8
@@ -4957,24 +4903,24 @@ __metadata:
react: 18.3.1
react-intl: 6.6.8
react-modal: 3.16.1
- checksum: 015f2aba43b7f9a015e175b9bd05511fb4d6a4c85f742b761d265606e7842055fb44275e9a4e7b38fe0f941a13a4fb0717247eaa19dc72db46313c105afea753
+ checksum: ad749dbfcf4a0413365f5c755739cb73101ea5fd29d8c6636a5b55715bcad7f98713c546c77ddeb735e42cd2d0a3422adae95618523d2d4f00904db6ac294845
languageName: node
linkType: hard
-"@navikt/ft-utils@npm:^2.3.18":
- version: 2.3.18
- resolution: "@navikt/ft-utils@npm:2.3.18::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-utils%2F2.3.18%2F90582984444a13ab7bfc2b9e066fdddf61df7c32"
+"@navikt/ft-utils@npm:^2.3.22":
+ version: 2.3.22
+ resolution: "@navikt/ft-utils@npm:2.3.22::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fft-utils%2F2.3.22%2Fc9e3a02a31006eeed70ce2fc4afec2a474cda0d7"
dependencies:
- "@navikt/ft-kodeverk": ^2.4.15
- "@navikt/ft-types": ^2.4.15
- dayjs: 1.11.12
+ "@navikt/ft-kodeverk": ^2.4.17
+ "@navikt/ft-types": ^2.4.17
+ dayjs: 1.11.13
react-intl: 6.6.8
peerDependencies:
"@navikt/ft-kodeverk": 2.x
"@navikt/ft-types": 2.x
dayjs: 1.11.11
react-intl: 6.6.8
- checksum: 4d96ea30b7578d68a63c11e5e0dc9a70c39b4afc64a5090413ba05f8eddbd5c3a0de06dc5269523714a994da9bd5b126edb6cec7cfebfa2f1d88cd27f1dee09d
+ checksum: aa4c668f8b8cfc4ded89f22090f79ec5f231d809605a0cad356f3a937ec1bf469e2c9a11052df496908c0ee62730d1492de7d8bc319a0cce879b949056487f41
languageName: node
linkType: hard
@@ -4985,10 +4931,10 @@ __metadata:
languageName: node
linkType: hard
-"@navikt/k9-sak-typescript-client@npm:1.0.20240814091215":
- version: 1.0.20240814091215
- resolution: "@navikt/k9-sak-typescript-client@npm:1.0.20240814091215::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fk9-sak-typescript-client%2F1.0.20240814091215%2F4d3dea6895a704bf70c4a9a35c7dbef786a3996b"
- checksum: 67953f2a3392f657dc1c699803b93182069793fff6a0ffc0f619860560be9bcb3beda3a3522881c038a8b7b6387b271e3a5e9f65abc0ad160a6e6ab1a5095241
+"@navikt/k9-sak-typescript-client@npm:1.0.20240905134852":
+ version: 1.0.20240905134852
+ resolution: "@navikt/k9-sak-typescript-client@npm:1.0.20240905134852::__archiveUrl=https%3A%2F%2Fnpm.pkg.github.com%2Fdownload%2F%40navikt%2Fk9-sak-typescript-client%2F1.0.20240905134852%2F4842a494ddb7dd05e8d51f81d3c439070cdcdbf6"
+ checksum: c8f559fb3725525b7cb74ba82f6651e51a55e4f3e0f0090faa358487ee6d328c9845e4ea279dca5b9ad26cb36d3a123c9defe6ca0e6aa0f80aa08f4d225d2007
languageName: node
linkType: hard
@@ -5072,14 +5018,14 @@ __metadata:
languageName: node
linkType: hard
-"@playwright/test@npm:^1.46.1":
- version: 1.46.1
- resolution: "@playwright/test@npm:1.46.1"
+"@playwright/test@npm:^1.47.0":
+ version: 1.47.0
+ resolution: "@playwright/test@npm:1.47.0"
dependencies:
- playwright: 1.46.1
+ playwright: 1.47.0
bin:
playwright: cli.js
- checksum: 180d90c6421ee6a8c00a1ae65d91d5f69767e2de95c3f5582ac2bdf3a388e621fdd3ee00ecb7836db427bb0d4cee58111c14f133cb62150357d8e4f43e3e2295
+ checksum: 4f5a921c57d2577c64b0bc03d4b97937a6f853eee6afb58f2fc8fb140147b7f33800afe490c9ba3af515d5feb104f65319663931ec1ee75e10f001c1d69b138c
languageName: node
linkType: hard
@@ -5118,10 +5064,10 @@ __metadata:
languageName: node
linkType: hard
-"@remix-run/router@npm:1.19.0":
- version: 1.19.0
- resolution: "@remix-run/router@npm:1.19.0"
- checksum: 467495864dd99fed3ba7861482cee56fd8c3a1a5cb17fe7bbf22774b0d90315c75d155f7eced0616bdeaceef1d79846b7c44f99873619e3204cfb9e4665e0a3c
+"@remix-run/router@npm:1.19.1":
+ version: 1.19.1
+ resolution: "@remix-run/router@npm:1.19.1"
+ checksum: ebe4474ba0c1046093976b48a4eb4e39bd2f47368aacea21400126d72e133d2cfbfb50254cf1bde0b66dacdf0344452f743049d1595a22e86130668f60112376
languageName: node
linkType: hard
@@ -5391,127 +5337,127 @@ __metadata:
languageName: node
linkType: hard
-"@sentry-internal/browser-utils@npm:8.27.0":
- version: 8.27.0
- resolution: "@sentry-internal/browser-utils@npm:8.27.0"
+"@sentry-internal/browser-utils@npm:8.28.0":
+ version: 8.28.0
+ resolution: "@sentry-internal/browser-utils@npm:8.28.0"
dependencies:
- "@sentry/core": 8.27.0
- "@sentry/types": 8.27.0
- "@sentry/utils": 8.27.0
- checksum: 9ab3bdc61838cb1ae3d784356e9115dba03ec53c80830f07eeb6ecf0e2f3659198ea53cefc1ab215ea30a290558cd8c3d31751dc4445ce8eee9c8f79a292934e
+ "@sentry/core": 8.28.0
+ "@sentry/types": 8.28.0
+ "@sentry/utils": 8.28.0
+ checksum: 33cb061158204781cfea9a5d2ea1af3c38ebc06bbd6c8ffbacfea564de4ba8adc2d47d70bc51f0cba7b1135ce5e6846ff63b2a601ce314ae4e49a5c8c5b7fb8a
languageName: node
linkType: hard
-"@sentry-internal/feedback@npm:8.27.0":
- version: 8.27.0
- resolution: "@sentry-internal/feedback@npm:8.27.0"
+"@sentry-internal/feedback@npm:8.28.0":
+ version: 8.28.0
+ resolution: "@sentry-internal/feedback@npm:8.28.0"
dependencies:
- "@sentry/core": 8.27.0
- "@sentry/types": 8.27.0
- "@sentry/utils": 8.27.0
- checksum: b2b535c768e372b9af4f278a11f9add58304fa369685615ada71ee4b1a127f781f6a7d3673414df7c6a15c8b714c700276abe55b5bd6396a44f08aec73fb2c52
+ "@sentry/core": 8.28.0
+ "@sentry/types": 8.28.0
+ "@sentry/utils": 8.28.0
+ checksum: e767624ef5b94037ec6457fabf23f105eb6fc945665edcd7dc1fd0a139ad93ccc3aafc0406fdb5a6d37ef6b6209423dfbab4ba288da362a69fc60aa7fbd62cb8
languageName: node
linkType: hard
-"@sentry-internal/replay-canvas@npm:8.27.0":
- version: 8.27.0
- resolution: "@sentry-internal/replay-canvas@npm:8.27.0"
+"@sentry-internal/replay-canvas@npm:8.28.0":
+ version: 8.28.0
+ resolution: "@sentry-internal/replay-canvas@npm:8.28.0"
dependencies:
- "@sentry-internal/replay": 8.27.0
- "@sentry/core": 8.27.0
- "@sentry/types": 8.27.0
- "@sentry/utils": 8.27.0
- checksum: cff07078dbdaec53bd4ffffa65f466b5f0e26759be64955c222907060222b1e559e58ccfc13d92d76c9a782d9c1f6c8b5f331e65d39948d61c8856db4840fe13
+ "@sentry-internal/replay": 8.28.0
+ "@sentry/core": 8.28.0
+ "@sentry/types": 8.28.0
+ "@sentry/utils": 8.28.0
+ checksum: a652a9427c0de7d6b406bdc0af299e92d556feb60f867707f49e46083c82afa6938e900c598c5dcdf5153d5382f3a05ca6537fd8448f10ca8a084b54bdafa614
languageName: node
linkType: hard
-"@sentry-internal/replay@npm:8.27.0":
- version: 8.27.0
- resolution: "@sentry-internal/replay@npm:8.27.0"
+"@sentry-internal/replay@npm:8.28.0":
+ version: 8.28.0
+ resolution: "@sentry-internal/replay@npm:8.28.0"
dependencies:
- "@sentry-internal/browser-utils": 8.27.0
- "@sentry/core": 8.27.0
- "@sentry/types": 8.27.0
- "@sentry/utils": 8.27.0
- checksum: 3f82d6797d73c43115b211274b16af6727b2be6d0cb7fa110c76fb6cd2ce590f4024f90414f4ded3e83f780aff3c92ddec31743b9a03d4780d9cbc511f641b39
+ "@sentry-internal/browser-utils": 8.28.0
+ "@sentry/core": 8.28.0
+ "@sentry/types": 8.28.0
+ "@sentry/utils": 8.28.0
+ checksum: 02833baf0ef4e6c1970cfb22679f2604b6f98f2ff58cd0e98620156ada41446ffd16a5b81208ddce4f941180161bc9826364038227bd2b010d565a7af3fbf535
languageName: node
linkType: hard
-"@sentry/browser@npm:8.27.0":
- version: 8.27.0
- resolution: "@sentry/browser@npm:8.27.0"
+"@sentry/browser@npm:8.28.0":
+ version: 8.28.0
+ resolution: "@sentry/browser@npm:8.28.0"
dependencies:
- "@sentry-internal/browser-utils": 8.27.0
- "@sentry-internal/feedback": 8.27.0
- "@sentry-internal/replay": 8.27.0
- "@sentry-internal/replay-canvas": 8.27.0
- "@sentry/core": 8.27.0
- "@sentry/types": 8.27.0
- "@sentry/utils": 8.27.0
- checksum: fc230fccb1427674afd6b0b5290b31fe7755b9946c98a92fbfbd569de960a1b6688e5d7e7318c5efdb1a8e52fbd1254eee3f0f9a0c53446537d0c358a84ab4e4
+ "@sentry-internal/browser-utils": 8.28.0
+ "@sentry-internal/feedback": 8.28.0
+ "@sentry-internal/replay": 8.28.0
+ "@sentry-internal/replay-canvas": 8.28.0
+ "@sentry/core": 8.28.0
+ "@sentry/types": 8.28.0
+ "@sentry/utils": 8.28.0
+ checksum: 712e05b178624dec7f0c6d981a7065ee0f0034b293ac22a4f0b9e1ea63656463f9505473e9953eba1e64409db7aa7105a64b5726e14560b7e0f1197a2fd4e46b
languageName: node
linkType: hard
-"@sentry/cli-darwin@npm:2.34.1":
- version: 2.34.1
- resolution: "@sentry/cli-darwin@npm:2.34.1"
+"@sentry/cli-darwin@npm:2.35.0":
+ version: 2.35.0
+ resolution: "@sentry/cli-darwin@npm:2.35.0"
conditions: os=darwin
languageName: node
linkType: hard
-"@sentry/cli-linux-arm64@npm:2.34.1":
- version: 2.34.1
- resolution: "@sentry/cli-linux-arm64@npm:2.34.1"
+"@sentry/cli-linux-arm64@npm:2.35.0":
+ version: 2.35.0
+ resolution: "@sentry/cli-linux-arm64@npm:2.35.0"
conditions: (os=linux | os=freebsd) & cpu=arm64
languageName: node
linkType: hard
-"@sentry/cli-linux-arm@npm:2.34.1":
- version: 2.34.1
- resolution: "@sentry/cli-linux-arm@npm:2.34.1"
+"@sentry/cli-linux-arm@npm:2.35.0":
+ version: 2.35.0
+ resolution: "@sentry/cli-linux-arm@npm:2.35.0"
conditions: (os=linux | os=freebsd) & cpu=arm
languageName: node
linkType: hard
-"@sentry/cli-linux-i686@npm:2.34.1":
- version: 2.34.1
- resolution: "@sentry/cli-linux-i686@npm:2.34.1"
+"@sentry/cli-linux-i686@npm:2.35.0":
+ version: 2.35.0
+ resolution: "@sentry/cli-linux-i686@npm:2.35.0"
conditions: (os=linux | os=freebsd) & (cpu=x86 | cpu=ia32)
languageName: node
linkType: hard
-"@sentry/cli-linux-x64@npm:2.34.1":
- version: 2.34.1
- resolution: "@sentry/cli-linux-x64@npm:2.34.1"
+"@sentry/cli-linux-x64@npm:2.35.0":
+ version: 2.35.0
+ resolution: "@sentry/cli-linux-x64@npm:2.35.0"
conditions: (os=linux | os=freebsd) & cpu=x64
languageName: node
linkType: hard
-"@sentry/cli-win32-i686@npm:2.34.1":
- version: 2.34.1
- resolution: "@sentry/cli-win32-i686@npm:2.34.1"
+"@sentry/cli-win32-i686@npm:2.35.0":
+ version: 2.35.0
+ resolution: "@sentry/cli-win32-i686@npm:2.35.0"
conditions: os=win32 & (cpu=x86 | cpu=ia32)
languageName: node
linkType: hard
-"@sentry/cli-win32-x64@npm:2.34.1":
- version: 2.34.1
- resolution: "@sentry/cli-win32-x64@npm:2.34.1"
+"@sentry/cli-win32-x64@npm:2.35.0":
+ version: 2.35.0
+ resolution: "@sentry/cli-win32-x64@npm:2.35.0"
conditions: os=win32 & cpu=x64
languageName: node
linkType: hard
-"@sentry/cli@npm:2.34.1":
- version: 2.34.1
- resolution: "@sentry/cli@npm:2.34.1"
+"@sentry/cli@npm:2.35.0":
+ version: 2.35.0
+ resolution: "@sentry/cli@npm:2.35.0"
dependencies:
- "@sentry/cli-darwin": 2.34.1
- "@sentry/cli-linux-arm": 2.34.1
- "@sentry/cli-linux-arm64": 2.34.1
- "@sentry/cli-linux-i686": 2.34.1
- "@sentry/cli-linux-x64": 2.34.1
- "@sentry/cli-win32-i686": 2.34.1
- "@sentry/cli-win32-x64": 2.34.1
+ "@sentry/cli-darwin": 2.35.0
+ "@sentry/cli-linux-arm": 2.35.0
+ "@sentry/cli-linux-arm64": 2.35.0
+ "@sentry/cli-linux-i686": 2.35.0
+ "@sentry/cli-linux-x64": 2.35.0
+ "@sentry/cli-win32-i686": 2.35.0
+ "@sentry/cli-win32-x64": 2.35.0
https-proxy-agent: ^5.0.0
node-fetch: ^2.6.7
progress: ^2.0.3
@@ -5534,48 +5480,48 @@ __metadata:
optional: true
bin:
sentry-cli: bin/sentry-cli
- checksum: ce4f0787d47ce504a0613f61ea4eb8fea59aefe217b679c91b0c92014b729026bc63c5109330041caa5b2f23d1327abffc993e0e7c519981dfe28fc7b567d8d4
+ checksum: 15e76ad1cb53cc46823aa48ea99844cd9a944d33c2667cbecf1260b564428a7ef47c1ca38e9a9e222e4d697ed7e5892b107a0b00eddc9e740add290cbe0ad1eb
languageName: node
linkType: hard
-"@sentry/core@npm:8.27.0":
- version: 8.27.0
- resolution: "@sentry/core@npm:8.27.0"
+"@sentry/core@npm:8.28.0":
+ version: 8.28.0
+ resolution: "@sentry/core@npm:8.28.0"
dependencies:
- "@sentry/types": 8.27.0
- "@sentry/utils": 8.27.0
- checksum: 8647e8e0966dc82dbeb9e8d3c5cd9e7f4bcb1c59592460f5d1a63bed3d2fa16e39bfa9ceb77cd892994910ffd7351c638017f5107aa80eba2fd00441ef14d594
+ "@sentry/types": 8.28.0
+ "@sentry/utils": 8.28.0
+ checksum: 2a37f14b36a68c496050054f952d56e639863257f59ffcccb7aed4b1a35fb063c1ced38a08e89f2bb789124b18b7f955fd78ef8b38408ad91853aa1a5aa51cbb
languageName: node
linkType: hard
-"@sentry/react@npm:^8.27.0":
- version: 8.27.0
- resolution: "@sentry/react@npm:8.27.0"
+"@sentry/react@npm:^8.28.0":
+ version: 8.28.0
+ resolution: "@sentry/react@npm:8.28.0"
dependencies:
- "@sentry/browser": 8.27.0
- "@sentry/core": 8.27.0
- "@sentry/types": 8.27.0
- "@sentry/utils": 8.27.0
+ "@sentry/browser": 8.28.0
+ "@sentry/core": 8.28.0
+ "@sentry/types": 8.28.0
+ "@sentry/utils": 8.28.0
hoist-non-react-statics: ^3.3.2
peerDependencies:
react: ^16.14.0 || 17.x || 18.x || 19.x
- checksum: b0b17454e024530663c11229c9c796feb902361709dff7baedf770024d65c2400ed33497d3bd3a4521df4d56ef85401ab891a2a817f655704752303b479cfe17
+ checksum: f3c16345aeaa6699fb2ef0dbe9ef2c46cec651740743d69a297093da1ebe6239a65e8a406f60c6841a43e74c21932c5bb055fda0443d469fc1ae2a57a9f5c607
languageName: node
linkType: hard
-"@sentry/types@npm:8.27.0":
- version: 8.27.0
- resolution: "@sentry/types@npm:8.27.0"
- checksum: ad233c33ab1cd64bdc704d27d54f98f1122c3f1bc360d667a7d24cbbbd86ad76de9160570f362da531961183b754028816b868cc2d965656366c65bca56c4ef9
+"@sentry/types@npm:8.28.0":
+ version: 8.28.0
+ resolution: "@sentry/types@npm:8.28.0"
+ checksum: 2f2ffc31042e17492c4869202bb67e5bd4c7dd136dad7e0e49d1c5c6cc5ad41eee3b9bc6e156db24136ea90fc8827a4a1bd185324b586a6488ebc94d9d7a4988
languageName: node
linkType: hard
-"@sentry/utils@npm:8.27.0":
- version: 8.27.0
- resolution: "@sentry/utils@npm:8.27.0"
+"@sentry/utils@npm:8.28.0":
+ version: 8.28.0
+ resolution: "@sentry/utils@npm:8.28.0"
dependencies:
- "@sentry/types": 8.27.0
- checksum: a84e86e0aff1859feab369057a3a591655f9a7e5244b42087de86734eecd99ae479c1091dc520b11d44879ade9ed651f1b25cd5cb6d9bcd376d42216bce4034a
+ "@sentry/types": 8.28.0
+ checksum: e0e70a2076e5ca0110865ec89a84f683531da222cf3fd85020d392da2e8b160fc103066576e21f75039751db9178aacf83be44e6930a9e38c927e279e147ea18
languageName: node
linkType: hard
@@ -6531,21 +6477,21 @@ __metadata:
languageName: node
linkType: hard
-"@tanstack/query-core@npm:5.52.3":
- version: 5.52.3
- resolution: "@tanstack/query-core@npm:5.52.3"
- checksum: cc5b6cefa40e600ca53f8d75f2aa34b8cf91e9c586f4d359963f60381c79ad7724c4f7cca6446d1272284c427c2be278e10afae021fab1317658d477d01c299c
+"@tanstack/query-core@npm:5.54.1":
+ version: 5.54.1
+ resolution: "@tanstack/query-core@npm:5.54.1"
+ checksum: 2d097ae20a2e499f1966689e6084cc26da194a56eaa59345af41d3b68e70bff1edd73e8205b7d7cf1da58f74d8f23a1867d67593aae3408f28d9253328d3217e
languageName: node
linkType: hard
-"@tanstack/react-query@npm:^5.52.3":
- version: 5.52.3
- resolution: "@tanstack/react-query@npm:5.52.3"
+"@tanstack/react-query@npm:^5.55.0":
+ version: 5.55.0
+ resolution: "@tanstack/react-query@npm:5.55.0"
dependencies:
- "@tanstack/query-core": 5.52.3
+ "@tanstack/query-core": 5.54.1
peerDependencies:
react: ^18 || ^19
- checksum: f3ef9cf18bf5e97cf723e47b66882d69dd000873a7ea03235d2f9a936c0402caaa7035eb8ed5c6e1ecd38fd9e603b7e8de960c1e8b11d826f16fe992356b85b1
+ checksum: 91179d1cc81a1d1802bac52e756b6ca964a27f788dfdf2c35625549496b90c0f21d16954a1e9eb1c7138f4cdfbc0ff99336bba9db6a207ebf8c18b2f730263e8
languageName: node
linkType: hard
@@ -7894,7 +7840,14 @@ __metadata:
languageName: node
linkType: hard
-"axe-core@npm:^4.2.0, axe-core@npm:^4.4.2, axe-core@npm:^4.9.1":
+"axe-core@npm:^4.10.0":
+ version: 4.10.0
+ resolution: "axe-core@npm:4.10.0"
+ checksum: 7eca827fd8d98d7e4b561df65437be608155c613d8f262ae9e4a6ade02c156c7362dcbc3f71b4b526edce686f7c686280236bcff1d6725e2ef8327def72a8c41
+ languageName: node
+ linkType: hard
+
+"axe-core@npm:^4.2.0, axe-core@npm:^4.4.2":
version: 4.9.1
resolution: "axe-core@npm:4.9.1"
checksum: 41d9227871781f96c2952e2a777fca73624959dd0e98864f6d82806a77602f82b4fc490852082a7e524d8cd864e50d8b4d9931819b4a150112981d8c932110c5
@@ -7913,14 +7866,14 @@ __metadata:
languageName: node
linkType: hard
-"axios@npm:1.7.5":
- version: 1.7.5
- resolution: "axios@npm:1.7.5"
+"axios@npm:1.7.7":
+ version: 1.7.7
+ resolution: "axios@npm:1.7.7"
dependencies:
follow-redirects: ^1.15.6
form-data: ^4.0.0
proxy-from-env: ^1.1.0
- checksum: 2859fe01437cf133eee35571abc1d4b5224bb13e530e66cb3581ca226e170541dd5eef9f46abb41592cee0a2f54930c9e4978354e0cf1064748fc20d9a05e9d5
+ checksum: 882d4fe0ec694a07c7f5c1f68205eb6dc5a62aecdb632cc7a4a3d0985188ce3030e0b277e1a8260ac3f194d314ae342117660a151fabffdc5081ca0b5a8b47fe
languageName: node
linkType: hard
@@ -7935,12 +7888,10 @@ __metadata:
languageName: node
linkType: hard
-"axobject-query@npm:~3.1.1":
- version: 3.1.1
- resolution: "axobject-query@npm:3.1.1"
- dependencies:
- deep-equal: ^2.0.5
- checksum: c12a5da10dc7bab75e1cda9b6a3b5fcf10eba426ddf1a17b71ef65a434ed707ede7d1c4f013ba1609e970bc8c0cddac01365080d376204314e9b294719acd8a5
+"axobject-query@npm:^4.1.0":
+ version: 4.1.0
+ resolution: "axobject-query@npm:4.1.0"
+ checksum: 7d1e87bf0aa7ae7a76cd39ab627b7c48fda3dc40181303d9adce4ba1d5b5ce73b5e5403ee6626ec8e91090448c887294d6144e24b6741a976f5be9347e3ae1df
languageName: node
linkType: hard
@@ -8957,10 +8908,10 @@ __metadata:
languageName: node
linkType: hard
-"core-js@npm:3.38.0":
- version: 3.38.0
- resolution: "core-js@npm:3.38.0"
- checksum: 71ef0598da69daee2b46fa1f82f074019981656f7cae26fed2b7f076c611e330a99ba5c70156ae37682f59a8d6ec6486119c70cb283c9fff25bd4f20db7fdc27
+"core-js@npm:3.38.1":
+ version: 3.38.1
+ resolution: "core-js@npm:3.38.1"
+ checksum: 55703c2f6fcd537e47a5cc83e9dc9884efef61861bbefb4a96a8c95e87956db980ce314628465dd49f14e626c5e633b9e3433f3e4a1f628404a14da420eb2556
languageName: node
linkType: hard
@@ -9279,13 +9230,6 @@ __metadata:
languageName: node
linkType: hard
-"dayjs@npm:1.11.12":
- version: 1.11.12
- resolution: "dayjs@npm:1.11.12"
- checksum: 40a4f67c2df3af125ae0ddec68d3a6d806d3009a7414bf45479aaf82f1dd82f3e139e6642e72391abccc37488897830c56afcabb4c819014130d283644df8128
- languageName: node
- linkType: hard
-
"dayjs@npm:1.11.13":
version: 1.11.13
resolution: "dayjs@npm:1.11.13"
@@ -10319,16 +10263,16 @@ __metadata:
languageName: node
linkType: hard
-"eslint-plugin-jsx-a11y@npm:6.9.0":
- version: 6.9.0
- resolution: "eslint-plugin-jsx-a11y@npm:6.9.0"
+"eslint-plugin-jsx-a11y@npm:6.10.0":
+ version: 6.10.0
+ resolution: "eslint-plugin-jsx-a11y@npm:6.10.0"
dependencies:
aria-query: ~5.1.3
array-includes: ^3.1.8
array.prototype.flatmap: ^1.3.2
ast-types-flow: ^0.0.8
- axe-core: ^4.9.1
- axobject-query: ~3.1.1
+ axe-core: ^4.10.0
+ axobject-query: ^4.1.0
damerau-levenshtein: ^1.0.8
emoji-regex: ^9.2.2
es-iterator-helpers: ^1.0.19
@@ -10340,14 +10284,14 @@ __metadata:
safe-regex-test: ^1.0.3
string.prototype.includes: ^2.0.0
peerDependencies:
- eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
- checksum: 122cbd22bbd8c3e4a37f386ec183ada63a4ecfa7af7d40cd8a110777ac5ad5ff542f60644596a9e2582ed138a1cc6d96c5d5ca934105e29d5245d6c951ebc3ef
+ eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9
+ checksum: 1009deca12ddbe3624586bc5fc3534ca98d00a5841a2563cb6abd9339b984f0a99075dc2a703a517f4087eb84d659c87e60beda17645883de2ba1d86f2b20c96
languageName: node
linkType: hard
-"eslint-plugin-react@npm:7.35.0":
- version: 7.35.0
- resolution: "eslint-plugin-react@npm:7.35.0"
+"eslint-plugin-react@npm:7.35.2":
+ version: 7.35.2
+ resolution: "eslint-plugin-react@npm:7.35.2"
dependencies:
array-includes: ^3.1.8
array.prototype.findlast: ^1.2.5
@@ -10369,7 +10313,7 @@ __metadata:
string.prototype.repeat: ^1.0.0
peerDependencies:
eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7
- checksum: cd4d3c0567e947964643dda5fc80147e058d75f06bac47c3f086ff0cd6156286c669d98e685e3834997c4043f3922b90e6374b6c3658f22abd025dbd41acc23f
+ checksum: 88dfb91d52a10fa0333199fa4abaa8d1112066d8fdc5df88c136d1cc24145b8d92bb7292f82a3781aef9c3ec91990b4461dbd1fa5eee471df5517014c6e843f9
languageName: node
linkType: hard
@@ -13156,9 +13100,9 @@ __metadata:
languageName: node
linkType: hard
-"jsdom@npm:24.1.1":
- version: 24.1.1
- resolution: "jsdom@npm:24.1.1"
+"jsdom@npm:24.1.3":
+ version: 24.1.3
+ resolution: "jsdom@npm:24.1.3"
dependencies:
cssstyle: ^4.0.1
data-urls: ^5.0.0
@@ -13186,7 +13130,7 @@ __metadata:
peerDependenciesMeta:
canvas:
optional: true
- checksum: c3f3c9c8f6ac4ce308de6f005980d0f3da4d504686a0fc20c59760f1e3be714d48adf3d31f8d3a352d8adb4961e6cfebfc6b6c3c9841408cf6e7f8c0cd4dcdc4
+ checksum: c71e2e6b5304c95a230feaef0c21fb7c353b7e785ba49ed9544d309f8faab1fc167146e0f1d00e2fb5346a11a27c60ae021a9688382f6b2d78e2c169769b4bfc
languageName: node
linkType: hard
@@ -13296,17 +13240,17 @@ __metadata:
resolution: "k9-sak-web@workspace:."
dependencies:
"@hookform/error-message": ^2.0.1
- "@navikt/aksel-icons": 6.13.0
- "@navikt/ds-css": 6.13.0
- "@navikt/ds-react": 6.13.0
- "@navikt/ds-tailwind": ^6.13.0
- "@navikt/familie-endringslogg": 13.1.1
- "@navikt/ft-plattform-komponenter": 3.0.4
- "@playwright/test": ^1.46.1
+ "@navikt/aksel-icons": 6.16.3
+ "@navikt/ds-css": 6.16.3
+ "@navikt/ds-react": 6.16.3
+ "@navikt/ds-tailwind": ^6.16.3
+ "@navikt/familie-endringslogg": 13.1.2
+ "@navikt/ft-plattform-komponenter": 3.0.8
+ "@playwright/test": ^1.47.0
"@popperjs/core": 2.11.8
- "@sentry/browser": 8.27.0
- "@sentry/cli": 2.34.1
- "@sentry/react": ^8.27.0
+ "@sentry/browser": 8.28.0
+ "@sentry/cli": 2.35.0
+ "@sentry/react": ^8.28.0
"@storybook/addon-a11y": ^8.2.9
"@storybook/addon-actions": ^8.2.9
"@storybook/addon-docs": ^8.2.9
@@ -13324,39 +13268,39 @@ __metadata:
"@testing-library/user-event": 14.5.2
"@types/history": 5.0.0
"@types/prop-types": 15.7.12
- "@types/react": 18.3.3
+ "@types/react": 18.3.5
"@types/react-collapse": 5.0.4
"@types/react-router-dom": 5.3.3
"@types/redux-form": 8.3.11
"@vitejs/plugin-react": ^4.3.1
autoprefixer: ^10.4.20
- axios: 1.7.5
+ axios: 1.7.7
axios-mock-adapter: 2.0.0
cross-env: 7.0.3
date-fns: 3.6.0
date-fns-tz: 3.1.3
eslint: 9.9.1
eslint-config-prettier: 9.1.0
- eslint-plugin-jsx-a11y: 6.9.0
- eslint-plugin-react: 7.35.0
+ eslint-plugin-jsx-a11y: 6.10.0
+ eslint-plugin-react: 7.35.2
eslint-plugin-vitest: ~0.5.4
globals: ^15.9.0
history: 5.3.0
husky: 9.1.5
i18n-iso-countries: 7.11.3
- jsdom: 24.1.1
- lint-staged: 15.2.9
- msw: 2.4.1
+ jsdom: 24.1.3
+ lint-staged: 15.2.10
+ msw: 2.4.2
msw-storybook-addon: ^2.0.3
node-cache: 5.1.2
- postcss: ^8.4.41
+ postcss: ^8.4.45
postcss-import: ^16.1.0
prettier: 3.3.3
react: 18.3.1
react-dom: 18.3.1
react-popper: 2.3.0
- react-router: 6.26.0
- react-router-dom: 6.26.0
+ react-router: 6.26.1
+ react-router-dom: 6.26.1
storybook: ^8.2.9
stylelint: 16.9.0
stylelint-config-standard: ^36.0.1
@@ -13365,7 +13309,7 @@ __metadata:
typed-css-modules: ^0.9.1
typescript: 5.5.4
typescript-eslint: ^7.18.0
- vite: ^5.4.2
+ vite: ^5.4.3
vite-plugin-html: ^3.2.2
vite-plugin-svgr: 4.2.0
vitest: 2.0.5
@@ -13475,9 +13419,9 @@ __metadata:
languageName: node
linkType: hard
-"lint-staged@npm:15.2.9":
- version: 15.2.9
- resolution: "lint-staged@npm:15.2.9"
+"lint-staged@npm:15.2.10":
+ version: 15.2.10
+ resolution: "lint-staged@npm:15.2.10"
dependencies:
chalk: ~5.3.0
commander: ~12.1.0
@@ -13485,13 +13429,13 @@ __metadata:
execa: ~8.0.1
lilconfig: ~3.1.2
listr2: ~8.2.4
- micromatch: ~4.0.7
+ micromatch: ~4.0.8
pidtree: ~0.6.0
string-argv: ~0.3.2
yaml: ~2.5.0
bin:
lint-staged: bin/lint-staged.js
- checksum: 7f804c24d0374b48d26f11a051342141b84c9954f77225bab5ae221b1e4d47a72f722f39b13169267592c28b2614ad39f9722fd86bc4cdfdf93e8601ff66b0e1
+ checksum: 7ab255b848478ca47c6b94aad0e7a3cfe5ba48ae1fb353cfa86635741333b83b1fd793d7cac6d44bf0388ad087d7e0250c7ec0a8ebece63fbcf7a8d175279809
languageName: node
linkType: hard
@@ -13839,7 +13783,7 @@ __metadata:
languageName: node
linkType: hard
-"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5, micromatch@npm:^4.0.8, micromatch@npm:~4.0.7":
+"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5, micromatch@npm:^4.0.8, micromatch@npm:~4.0.8":
version: 4.0.8
resolution: "micromatch@npm:4.0.8"
dependencies:
@@ -14103,9 +14047,9 @@ __metadata:
languageName: node
linkType: hard
-"msw@npm:2.4.1":
- version: 2.4.1
- resolution: "msw@npm:2.4.1"
+"msw@npm:2.4.2":
+ version: 2.4.2
+ resolution: "msw@npm:2.4.2"
dependencies:
"@bundled-es-modules/cookie": ^2.0.0
"@bundled-es-modules/statuses": ^1.0.1
@@ -14125,7 +14069,7 @@ __metadata:
yargs: ^17.7.2
peerDependencies:
graphql: ">= 16.8.x"
- typescript: ">= 4.7.x"
+ typescript: ">= 4.8.x"
peerDependenciesMeta:
graphql:
optional: true
@@ -14133,7 +14077,7 @@ __metadata:
optional: true
bin:
msw: cli/index.js
- checksum: dc4d20bf856dfaed88c5ac438d4ee003ad8b56af2ca6e16ccd5e22b4f7fecb60a8df47d575bfd5d34c9bfc676263caa0426e1a9b7a539664b1a3427624ee1ffe
+ checksum: 13ea882de674ba4a4eafe261b1fa4ed0e885bc021286730a9d6454bff3688e79265d752c826b4b4536ece728eda3cae19a5ea30495bf51bdfa1caff43893bedf
languageName: node
linkType: hard
@@ -15003,27 +14947,27 @@ __metadata:
languageName: node
linkType: hard
-"playwright-core@npm:1.46.1":
- version: 1.46.1
- resolution: "playwright-core@npm:1.46.1"
+"playwright-core@npm:1.47.0":
+ version: 1.47.0
+ resolution: "playwright-core@npm:1.47.0"
bin:
playwright-core: cli.js
- checksum: 99a03f97d76af02b0565aa09758eb03427e13497ef7e9e9044fd1184a5f050e7545a517dd7ad8988a68b3ea76e2ba0d411f81e410b1cb29f5ac9161c49689822
+ checksum: 64c6adae3ba76cd9f05e6569b1350a6e6990fd8236bb17d1f241b49bea68592a4f4390adb38863d2ee8ef5124e9cb77ff50b9076f8ef3a0890b2a37f87fb842a
languageName: node
linkType: hard
-"playwright@npm:1.46.1":
- version: 1.46.1
- resolution: "playwright@npm:1.46.1"
+"playwright@npm:1.47.0":
+ version: 1.47.0
+ resolution: "playwright@npm:1.47.0"
dependencies:
fsevents: 2.3.2
- playwright-core: 1.46.1
+ playwright-core: 1.47.0
dependenciesMeta:
fsevents:
optional: true
bin:
playwright: cli.js
- checksum: 9e721cb27f919cd92ea8c7461f4a8e97e32eade9da036baa4747f483549e33a8d77585f51e228d6639a1e28a76b0c1d59ca0a05dbd07aa3cfe427be7aaeb9ec8
+ checksum: e055fee751035f306a636267d0e080f08d4a523a6c1e3ebb01c91c18838c29bb9165ec3e63eb706798886fa2715f272dec908a7e2e1abcd7a55984688dbac2db
languageName: node
linkType: hard
@@ -15220,14 +15164,14 @@ __metadata:
languageName: node
linkType: hard
-"postcss@npm:8.4.41":
- version: 8.4.41
- resolution: "postcss@npm:8.4.41"
+"postcss@npm:8.4.45":
+ version: 8.4.45
+ resolution: "postcss@npm:8.4.45"
dependencies:
nanoid: ^3.3.7
picocolors: ^1.0.1
source-map-js: ^1.2.0
- checksum: f865894929eb0f7fc2263811cc853c13b1c75103028b3f4f26df777e27b201f1abe21cb4aa4c2e901c80a04f6fb325ee22979688fe55a70e2ea82b0a517d3b6f
+ checksum: 3223cdad4a9392c0b334ee3ee7e4e8041c631cb6160609cef83c18d2b2580e931dd8068ab13cc6000c1a254d57492ac6c38717efc397c5dcc9756d06bc9c44f3
languageName: node
linkType: hard
@@ -15619,12 +15563,12 @@ __metadata:
languageName: node
linkType: hard
-"react-hook-form@npm:7.52.2":
- version: 7.52.2
- resolution: "react-hook-form@npm:7.52.2"
+"react-hook-form@npm:7.53.0":
+ version: 7.53.0
+ resolution: "react-hook-form@npm:7.53.0"
peerDependencies:
react: ^16.8.0 || ^17 || ^18 || ^19
- checksum: 8621a21cf674f46507776741b2507d5357564af62bfc9dae8d1d7fb9076538352a48f16485885d3379d685d2d50537b28285322ad5a8c33d0ea5ddff21080543
+ checksum: 84d67fb79bad03d0aa809b5e411d97fb081fc13cd2b6d063a988f81f6fbef8545463e05360afa9d8d58fff19f08fa919930dcdc98a9e68bf74048c9f63e10ad5
languageName: node
linkType: hard
@@ -15758,27 +15702,27 @@ __metadata:
languageName: node
linkType: hard
-"react-router-dom@npm:6.26.0":
- version: 6.26.0
- resolution: "react-router-dom@npm:6.26.0"
+"react-router-dom@npm:6.26.1":
+ version: 6.26.1
+ resolution: "react-router-dom@npm:6.26.1"
dependencies:
- "@remix-run/router": 1.19.0
- react-router: 6.26.0
+ "@remix-run/router": 1.19.1
+ react-router: 6.26.1
peerDependencies:
react: ">=16.8"
react-dom: ">=16.8"
- checksum: 1579aa122884c286ffb2821c90403ac58b3c39f0d1cc8440b2bdd5de406c2dec0826c3a2bc473528b28728f0c35904045fdd7b7bfc17ad788c69816411ef5074
+ checksum: e393ab62e3239585d44d598e6bc8cc138ac8353f3dc46262680c6ad83dea35773662ada2f1c353921a05c37d1f369c0a2cb097848a6210689e9b6076550c7de0
languageName: node
linkType: hard
-"react-router@npm:6.26.0":
- version: 6.26.0
- resolution: "react-router@npm:6.26.0"
+"react-router@npm:6.26.1":
+ version: 6.26.1
+ resolution: "react-router@npm:6.26.1"
dependencies:
- "@remix-run/router": 1.19.0
+ "@remix-run/router": 1.19.1
peerDependencies:
react: ">=16.8"
- checksum: 60ed0f33584f43ff64ffc66e8d58fd1605749e249684e15637f6af427d35b01d91addcaf857300e955bb09a33ea644322b28da98adf0764cd07ceb7399118561
+ checksum: 810949febc1bf2a6f8dd65f4c0532a2413d0532df462b3e78891aec81dca5a088d387b32c9922cde52bd9770f32263590993cab2383c94ddc1cdb50a20fd7adc
languageName: node
linkType: hard
@@ -18300,13 +18244,13 @@ __metadata:
languageName: node
linkType: hard
-"vite@npm:^5.4.2":
- version: 5.4.2
- resolution: "vite@npm:5.4.2"
+"vite@npm:^5.4.3":
+ version: 5.4.3
+ resolution: "vite@npm:5.4.3"
dependencies:
esbuild: ^0.21.3
fsevents: ~2.3.3
- postcss: ^8.4.41
+ postcss: ^8.4.43
rollup: ^4.20.0
peerDependencies:
"@types/node": ^18.0.0 || >=20.0.0
@@ -18339,7 +18283,7 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
- checksum: 7d25c1b2366ae4d9eb515ba9efc2619c544ec6d806d636977fac93f59cdf63e22ea9b4592c69c496a313cf95c88e374c81870d4bb4b11f401ec003793dfd2830
+ checksum: 3a28bcb09345030d2dba41b93b6b8a3aac8f19a9336c50e7e5f5e30931fbb16193cdd97814c5c0d1b5ade3b3e763b329eb881ea5cfe6e422c669d21a304f3295
languageName: node
linkType: hard