52 lines
1.1 KiB
TypeScript
52 lines
1.1 KiB
TypeScript
import { langEnum, type Lang } from "@/types/lang"
|
|
|
|
export const localeToLang = {
|
|
en: langEnum.en,
|
|
"en-US": langEnum.en,
|
|
"en-GB": langEnum.en,
|
|
"en-DE": langEnum.en,
|
|
"en-DK": langEnum.en,
|
|
"en-SE": langEnum.en,
|
|
"en-FI": langEnum.en,
|
|
|
|
sv: langEnum.sv,
|
|
"se-SE": langEnum.sv,
|
|
"sv-SE": langEnum.sv,
|
|
"sv-FI": langEnum.sv,
|
|
|
|
fi: langEnum.fi,
|
|
"fi-FI": langEnum.fi,
|
|
"se-FI": langEnum.fi,
|
|
"smn-FI": langEnum.fi,
|
|
|
|
dk: langEnum.da,
|
|
da: langEnum.da,
|
|
"da-DK": langEnum.da,
|
|
"fo-DK": langEnum.da,
|
|
|
|
de: langEnum.de,
|
|
"de-DE": langEnum.de,
|
|
"dsb-DE": langEnum.de,
|
|
"ksh-DE": langEnum.de,
|
|
"nds-DE": langEnum.de,
|
|
"hsb-DE": langEnum.de,
|
|
"de-CH": langEnum.de,
|
|
"de-AU": langEnum.de,
|
|
|
|
no: langEnum.no,
|
|
nb: langEnum.no,
|
|
"nb-NO": langEnum.no,
|
|
"nn-NO": langEnum.no,
|
|
"se-NO": langEnum.no,
|
|
}
|
|
|
|
export const DEFAULT_LOCALE = "en"
|
|
export const locales: Lang[] = ["da", "de", DEFAULT_LOCALE, "fi", "no", "sv"]
|
|
|
|
export function findLocale(pathname: string) {
|
|
let locale = locales.find(
|
|
(loc) => pathname.startsWith(`/${loc}/`) || pathname === `/${loc}`
|
|
)
|
|
return locale
|
|
}
|