diff --git a/package-lock.json b/package-lock.json index 8b1dd0cfe..3d67ead75 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4574,15 +4574,6 @@ "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "optional": true }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "optional": true, - "requires": { - "file-uri-to-path": "1.0.0" - } - }, "bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", @@ -8050,12 +8041,6 @@ } } }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "optional": true - }, "filesize": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/filesize/-/filesize-6.1.0.tgz", @@ -12680,12 +12665,6 @@ "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=" }, - "nan": { - "version": "2.14.2", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz", - "integrity": "sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==", - "optional": true - }, "nanoid": { "version": "3.1.20", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", @@ -18784,11 +18763,7 @@ "version": "1.2.13", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - } + "optional": true }, "glob-parent": { "version": "3.1.0", @@ -19335,11 +19310,7 @@ "version": "1.2.13", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - } + "optional": true }, "glob-parent": { "version": "3.1.0", diff --git a/src/digisos/informasjon/BehandlingAvPersonopplysningerModal.test.ts b/src/digisos/informasjon/BehandlingAvPersonopplysningerModal.test.ts new file mode 100644 index 000000000..f238111dd --- /dev/null +++ b/src/digisos/informasjon/BehandlingAvPersonopplysningerModal.test.ts @@ -0,0 +1,13 @@ +import {replaceNavkontor} from "./BehandlingAvPersonopplysningerModal"; + +describe("regex for modal", () => { + it("skal rendre 'NAV-kontoret ditt'", () => { + const tekst = "{navkontor:NAV-kontoret ditt}"; + expect(replaceNavkontor(tekst)).toEqual("NAV-kontoret ditt"); + }); + + it("skal rendre valgt enhetsnavn", () => { + const tekst = "{navkontor:NAV-kontoret ditt}"; + expect(replaceNavkontor(tekst, "NAV Oslo")).toEqual("NAV Oslo"); + }); +}); diff --git a/src/digisos/informasjon/BehandlingAvPersonopplysningerModal.tsx b/src/digisos/informasjon/BehandlingAvPersonopplysningerModal.tsx index e61028977..86dc64ebe 100644 --- a/src/digisos/informasjon/BehandlingAvPersonopplysningerModal.tsx +++ b/src/digisos/informasjon/BehandlingAvPersonopplysningerModal.tsx @@ -8,9 +8,14 @@ import {Soknadsdata} from "../redux/soknadsdata/soknadsdataReducer"; import {State} from "../redux/reducers"; import {visSamtykkeInfo} from "../redux/soknad/soknadActions"; +export const replaceNavkontor = (text: string, valgtEnhetsNavn?: string) => { + // Hvis ikke valgtEnhetsNavn finnes, erstattes søkestrengen med capture-gruppa ([\w\s-]*) + // som er 1 eller fler bokstaver, whitespace eller '-', feks "NAV-kontoret ditt" fra søknads-api-tekstene + return text.replace(/{navkontor:([\w\s-]*)}/g, valgtEnhetsNavn ? valgtEnhetsNavn : "$1"); +}; const getText = (soknadsdata: Soknadsdata, text: string) => { const valgtEnhetsNavn = finnValgtEnhetsNavn(soknadsdata); - return text.replace(/{navkontor:(.*)}/g, valgtEnhetsNavn ? valgtEnhetsNavn : "$1"); + return replaceNavkontor(text, valgtEnhetsNavn); }; const BehandlingAvPersonopplysningerModal = () => {