Files
web/constants/languages.ts
2024-04-08 15:17:07 +02:00

64 lines
1.0 KiB
TypeScript

export enum Lang {
en = "en",
sv = "sv",
no = "no",
fi = "fi",
da = "da",
de = "de",
}
export const languages = {
[Lang.da]: "Dansk",
[Lang.de]: "Deutsch",
[Lang.en]: "English",
[Lang.fi]: "Suomi",
[Lang.no]: "Norsk",
[Lang.sv]: "Svenska",
}
export const localeToLang = {
en: Lang.en,
"en-US": Lang.en,
"en-GB": Lang.en,
"en-DE": Lang.en,
"en-DK": Lang.en,
"en-SE": Lang.en,
"en-FI": Lang.en,
sv: Lang.sv,
"se-SE": Lang.sv,
"sv-SE": Lang.sv,
"sv-FI": Lang.sv,
fi: Lang.fi,
"fi-FI": Lang.fi,
"se-FI": Lang.fi,
"smn-FI": Lang.fi,
dk: Lang.da,
da: Lang.da,
"da-DK": Lang.da,
"fo-DK": Lang.da,
de: Lang.de,
"de-DE": Lang.de,
"dsb-DE": Lang.de,
"ksh-DE": Lang.de,
"nds-DE": Lang.de,
"hsb-DE": Lang.de,
"de-CH": Lang.de,
"de-AU": Lang.de,
no: Lang.no,
nb: Lang.no,
"nb-NO": Lang.no,
"nn-NO": Lang.no,
"se-NO": Lang.no,
} as const
export function findLang(pathname: string) {
return Object.values(Lang).find(
(l) => pathname.startsWith(`/${l}/`) || pathname === `/${l}`
)
}