21 lines
893 B
TypeScript
21 lines
893 B
TypeScript
|
|
import { getRequestConfig } from "next-intl/server"
|
||
|
|
import { cookies } from "next/headers"
|
||
|
|
import { DEFAULT_LOCALE, isLocale, LOCALE_COOKIE } from "@/lib/locale"
|
||
|
|
|
||
|
|
// Ingen URL-prefiks-routing (ADR-094) -- dagens ruter har norske slugs
|
||
|
|
// (logg-inn/velkommen/kontosammenslaing) og mange delte/bokmerkede lenker
|
||
|
|
// (offentlige turneringssider, magic-link-e-poster). Språk styres i
|
||
|
|
// stedet av en enkel cookie, satt av language-switcher.tsx eller
|
||
|
|
// locale-bootstrap.tsx (som synker inn brukerens preferred_locale første
|
||
|
|
// gang, se de filene for detaljer) -- ALDRI av URL-en.
|
||
|
|
export default getRequestConfig(async () => {
|
||
|
|
const cookieStore = await cookies()
|
||
|
|
const cookieLocale = cookieStore.get(LOCALE_COOKIE)?.value
|
||
|
|
const locale = isLocale(cookieLocale) ? cookieLocale : DEFAULT_LOCALE
|
||
|
|
|
||
|
|
return {
|
||
|
|
locale,
|
||
|
|
messages: (await import(`../messages/${locale}.json`)).default,
|
||
|
|
}
|
||
|
|
})
|