From 0bbee9f6abd6791a9f8d6837c8abc68250c7bb66 Mon Sep 17 00:00:00 2001 From: frodehansen2 Date: Wed, 24 Apr 2024 14:40:53 +0200 Subject: [PATCH] Ny prop: useLanguageSelector (#1785) --- .changeset/lemon-goats-cry.md | 5 +++++ .../src/setup/SoknadApplication.tsx | 16 +++++++++++++--- 2 files changed, 18 insertions(+), 3 deletions(-) create mode 100644 .changeset/lemon-goats-cry.md diff --git a/.changeset/lemon-goats-cry.md b/.changeset/lemon-goats-cry.md new file mode 100644 index 0000000000..6764e7d39a --- /dev/null +++ b/.changeset/lemon-goats-cry.md @@ -0,0 +1,5 @@ +--- +"@navikt/sif-common-soknad-ds": patch +--- + +Utvide med prop for om språkvelger skal brukes eller ikke. diff --git a/packages/sif-common-soknad-ds/src/setup/SoknadApplication.tsx b/packages/sif-common-soknad-ds/src/setup/SoknadApplication.tsx index e8226fd52a..235f7389af 100644 --- a/packages/sif-common-soknad-ds/src/setup/SoknadApplication.tsx +++ b/packages/sif-common-soknad-ds/src/setup/SoknadApplication.tsx @@ -34,6 +34,8 @@ interface Props { publicPath: string; /** Locale messages */ intlMessages: MessageFileFormat; + /** Toggle on/off languageselector in decorator */ + useLanguageSelector?: boolean; /** If amplitude logging is active or not - default true*/ useAmplitude?: boolean; /** Config for connecting to the appStatus sanity project */ @@ -47,12 +49,20 @@ interface Props { const localeFromSessionStorage = getLocaleFromSessionStorage(); dayjs.locale(localeFromSessionStorage); -const SoknadApplication = ({ intlMessages, appStatus, publicPath, appKey, useAmplitude = true, children }: Props) => { +const SoknadApplication = ({ + intlMessages, + appStatus, + publicPath, + appKey, + useAmplitude = true, + useLanguageSelector, + children, +}: Props) => { const [locale, setLocale] = React.useState(localeFromSessionStorage); const localeMessages = intlMessages[locale] || intlMessages['nb']; - const locales = Object.keys(intlMessages) as any; + const locales = useLanguageSelector ? (Object.keys(intlMessages) as any) : []; - useDecoratorLanguageSelector([locales], (locale: any) => { + useDecoratorLanguageSelector(locales, (locale: any) => { setLocaleInSessionStorage(locale); setLocale(locale); });