* move setLang() to a root layout

* fix: findLang only returns acceptable languages
* fix: fallback to use header x-lang if we haven't setLang yet
* fix: languageSchema, allow uppercase

Approved-by: Linus Flood
This commit is contained in:
Joakim Jäderberg
2025-02-19 09:06:37 +00:00
parent d27163a915
commit 873183ec2f
45 changed files with 159 additions and 117 deletions

16
app/[lang]/layout.tsx Normal file
View File

@@ -0,0 +1,16 @@
import { getLang, setLang } from "@/i18n/serverContext"
import type { Lang } from "@/constants/languages"
export default function Layout({
children,
params,
}: {
children: React.ReactNode
params: { lang: Lang }
}) {
setLang(params.lang)
const lang = getLang()
return <html lang={lang}>{children}</html>
}