Skip to content
This repository was archived by the owner on Jan 30, 2025. It is now read-only.

Commit 77c60ec

Browse files
authored
Merge pull request #49 from navikt/dev-language-update
Lytte på språk og oversette tekst til spesifisert språk
2 parents f05e4e3 + b494908 commit 77c60ec

File tree

14 files changed

+193
-489
lines changed

14 files changed

+193
-489
lines changed

package-lock.json

Lines changed: 22 additions & 402 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
"dayjs": "1.11.0",
2020
"react": "18.2.0",
2121
"react-dom": "18.2.0",
22-
"react-intl": "6.0.5",
2322
"react-query": "3.39.2",
2423
"rollup-plugin-terser": "7.0.2",
2524
"vite-plugin-css-injected-by-js": "1.4.0",

src/Mikrofrontend.jsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { QueryClientProvider } from "react-query";
22
import { initializeAmplitude } from "./utils/amplitude";
3-
import LanguageProvider from "./utils/LanguageProvider";
3+
import LanguageProvider from "./provider/LanguageProvider";
44
import queryClient from "./utils/query";
55
import App from "./App";
66
import "./App.module.css";
@@ -9,7 +9,7 @@ const Mikrofrontend = () => {
99
initializeAmplitude();
1010

1111
return (
12-
<LanguageProvider defaultSprak="nb">
12+
<LanguageProvider>
1313
<QueryClientProvider client={queryClient}>
1414
<App />
1515
</QueryClientProvider>

src/components/emptyVarselList/EmptyVarselList.jsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,25 @@
11
import { BodyLong, Heading, Link } from "@navikt/ds-react";
2-
import { useIntl } from "react-intl";
32
import IngenVarslerKatt from "../../assets/IngenVarslerKatt";
43
import style from "./EmptyVarselList.module.css";
54
import globalStyle from "../../App.module.css";
65
import { minSideUrl } from "../../api/urls";
6+
import text from "../../language/text";
7+
import { useContext } from "react";
8+
import { LanguageContext } from "../../provider/LanguageProvider";
79

810
const EmptyVarselList = () => {
9-
const translate = useIntl();
11+
const language = useContext(LanguageContext);
1012
return (
1113
<div className={style.wrapper}>
1214
<div className={`${style.innerWrapper} ${globalStyle.tekstInnhold}`}>
1315
<IngenVarslerKatt />
1416
<div className={style.ingenVarslerTekstWrapper}>
1517
<Heading level="2" className={style.header} size={"small"}>
16-
{translate.formatMessage({ id: "ingen-tidligere-varsler-header" })}
18+
{text["ingenTidligereVarslerHeader"][language]}
1719
</Heading>
18-
<BodyLong className={style.body}>{translate.formatMessage({ id: "ingen-tidligere-varsler-body" })}</BodyLong>
20+
<BodyLong className={style.body}>{text["ingenTidligereVarslerbody"][language]} </BodyLong>
1921
<Link href={minSideUrl} className={style.link}>
20-
{translate.formatMessage({ id: "gaa-til-min-side" })}
22+
{text["gaaTilMinSide"][language]}
2123
</Link>
2224
</div>
2325
</div>

src/components/filter/searchField/SearchField.jsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,19 @@
1-
import SearchIkon from "../../../assets/SearchIkon";
2-
import { TextField, Search } from "@navikt/ds-react";
1+
import { Search } from "@navikt/ds-react";
32
import style from "./SearchField.module.css";
43
import useStore from "../../../store/store";
54
import { updateSearch } from "../../../store/selectors";
6-
import { useIntl } from "react-intl";
5+
import text from "../../../language/text";
6+
import { useContext } from "react";
7+
import { LanguageContext } from "../../../provider/LanguageProvider";
78

89
const SearchField = () => {
910
const sok = useStore(updateSearch);
10-
const translate = useIntl();
11+
const language = useContext(LanguageContext);
1112

1213
return (
1314
<Search
1415
className={style.searchField}
15-
label={translate.formatMessage({ id: "sokefelt.label" })}
16+
label={text["sokefeltLabel"][language]}
1617
variant="simple"
1718
hideLabel={false}
1819
onChange={(obj) => {

src/components/filter/toggleNotifikasjon/ToggleNotifikasjon.jsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,27 @@
11
import { ToggleGroup } from "@navikt/ds-react";
22
import style from "./ToggleNotifikasjon.module.css";
33
import useStore from "../../../store/store";
4-
import { useIntl } from "react-intl";
54
import { selectAlle, selectBeskjed, selectOppgave } from "../../../store/selectors";
5+
import { useContext } from "react";
6+
import { LanguageContext } from "../../../provider/LanguageProvider";
7+
import text from "../../../language/text";
68

79
const ToggleNotifikasjon = () => {
810
const alle = useStore(selectAlle);
911
const oppgave = useStore(selectOppgave);
1012
const beskjed = useStore(selectBeskjed);
11-
const translate = useIntl();
13+
const language = useContext(LanguageContext);
1214

1315
return (
1416
<ToggleGroup className={style.toggleNotifikasjon} size="medium" defaultValue="alle">
1517
<ToggleGroup.Item value="alle" onClick={alle}>
16-
{translate.formatMessage({ id: "filter.toggle-item.alle" })}
18+
{text["filterToggleItemAlle"][language]}
1719
</ToggleGroup.Item>
1820
<ToggleGroup.Item value="oppgave" onClick={oppgave}>
19-
{translate.formatMessage({ id: "filter.toggle-item.oppgave" })}
21+
{text["filterToggleItemOppgave"][language]}
2022
</ToggleGroup.Item>
2123
<ToggleGroup.Item value="beskjed" onClick={beskjed}>
22-
{translate.formatMessage({ id: "filter.toggle-item.beskjed" })}
24+
{text["filterToggleItemBeskjed"][language]}
2325
</ToggleGroup.Item>
2426
</ToggleGroup>
2527
);

src/components/tidligereVarsler/TidligereVarsler.jsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
import { useIntl } from "react-intl";
21
import { useQuery } from "react-query";
3-
import { useMemo } from "react";
2+
import { useMemo, useContext } from "react";
43
import { Heading, Alert } from "@navikt/ds-react";
54
import EmptyVarselList from "../emptyVarselList/EmptyVarselList";
65
import Filter from "../filter/Filter";
@@ -12,9 +11,11 @@ import { selectSearch, selectType } from "../../store/selectors";
1211
import useStore from "../../store/store";
1312
import style from "./TidligereVarsler.module.css";
1413
import globalStyle from "../../App.module.css";
14+
import text from "../../language/text";
15+
import { LanguageContext } from "../../provider/LanguageProvider";
1516

1617
const VarslingerPage = () => {
17-
const translate = useIntl();
18+
const language = useContext(LanguageContext);
1819
const { data: varsler, isSuccess } = useQuery(inaktiveVarslerApiUrl, fetcher);
1920

2021
const filterType = useStore(selectType);
@@ -32,10 +33,10 @@ const VarslingerPage = () => {
3233
return (
3334
<div className={style.mainWrapper}>
3435
<div className={`${style.tidligereVarslerHeading} ${globalStyle.tekstInnhold}`}>
35-
<Heading size={"large"}>{translate.formatMessage({ id: "tidligere-varsler.overskrift" })}</Heading>
36+
<Heading size={"large"}>{text["tidligereVarslerOverskrift"][language]}</Heading>
3637
{hasMaskedVarsel && (
3738
<Alert className={style.hoyereSikkerhetsnivaaAlert} variant="info">
38-
{translate.formatMessage({ id: "hoyere-sikkerhetnivaa" })}
39+
{text["hoyereSikkerhetsnivaa"][language]}
3940
</Alert>
4041
)}
4142
</div>

src/components/varsel/Varsel.jsx

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,29 @@
11
import React from "react";
2-
import { Heading, Ingress, BodyShort, Tag, BodyLong } from "@navikt/ds-react";
2+
import { Heading, BodyLong } from "@navikt/ds-react";
33
import style from "./Varsel.module.css";
4-
import VarselTag from "../varselTag/VarselTag";
54
import { formatToReadableDate } from "../../utils/date";
6-
import { useIntl } from "react-intl";
5+
import { useContext } from "react";
6+
import { LanguageContext } from "../../provider/LanguageProvider";
7+
import text from "../../language/text";
78

8-
const getVarsletPaa = (kanaler) => {
9-
const translate = useIntl();
9+
const getVarsletPaa = (kanaler, language) => {
1010
if (kanaler.includes("SMS") && kanaler.includes("EPOST")) {
11-
return translate.formatMessage({ id: "varsel.varslet-paa-epost-sms" });
11+
return text["varselEksterntVarsletEpostOgSMS"][language];
1212
} else if (kanaler.includes("SMS")) {
13-
return translate.formatMessage({ id: "varsel.varslet-paa-sms" });
13+
return text["varselEksterntVarsletSMS"][language];
1414
} else if (kanaler.includes("EPOST")) {
15-
return translate.formatMessage({ id: "varsel.varslet-paa-epost" });
15+
return text["varselEksterntVarsletEpost"][language];
1616
}
1717
};
1818

1919
function Varsel({ varselData }) {
2020
const isOppgave = varselData.type === "OPPGAVE";
21-
const varselMottatt = isOppgave ? "varsel.oppgave-mottatt" : "varsel.beskjed-mottatt";
22-
const translate = useIntl();
21+
const varselMottatt = isOppgave ? "varselOppgaveMottatt" : "varselBeskjedMottatt";
22+
const language = useContext(LanguageContext);
2323
const maskedText = "** ******* ******* *** * ***** ******** ******** *** ** ***********************";
2424
const maskedAriaLabel = "Tekst ikke synlig";
2525

26-
const eksternVarslingStatus = getVarsletPaa(varselData.eksternVarslingKanaler);
26+
const eksternVarslingStatus = getVarsletPaa(varselData.eksternVarslingKanaler, language);
2727

2828
return (
2929
<div className={style.varselWrapper}>
@@ -39,7 +39,7 @@ function Varsel({ varselData }) {
3939
</Heading>
4040

4141
<BodyLong size="small" className={style.varselDate}>
42-
{`${translate.formatMessage({ id: varselMottatt })} ${formatToReadableDate(varselData.forstBehandlet)}`}
42+
{`${text[varselMottatt][language]} ${formatToReadableDate(varselData.forstBehandlet)}`}
4343

4444
{eksternVarslingStatus && <span className={style.eksternVarslingStatus}>{eksternVarslingStatus}</span>}
4545
</BodyLong>

src/components/varselTag/VarselTag.jsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import style from "./VarselTag.module.css";
22
import { Tag } from "@navikt/ds-react";
33
import "@navikt/ds-css";
4-
import { useIntl } from "react-intl";
54

65
const VarselTag = ({ dato, varselType, arkivertAvNAV }) => {
76
let tagClassName;

src/language/en.json

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)