mirror of
https://github.com/lukevella/rallly.git
synced 2025-05-23 22:06:22 +02:00
26 lines
632 B
TypeScript
26 lines
632 B
TypeScript
import { NextRequest, NextResponse } from "next/server";
|
|
|
|
const supportedLocales = ["en", "de"];
|
|
|
|
export function middleware({ headers, cookies, nextUrl }: NextRequest) {
|
|
const locale =
|
|
cookies.get("NEXT_LOCALE") ??
|
|
(headers
|
|
.get("accept-language")
|
|
?.split(",")?.[0]
|
|
.split("-")?.[0]
|
|
.toLowerCase() ||
|
|
"en");
|
|
|
|
const newUrl = nextUrl.clone();
|
|
|
|
if (supportedLocales.includes(locale)) {
|
|
newUrl.pathname = `/${locale}${newUrl.pathname}`;
|
|
}
|
|
|
|
return NextResponse.rewrite(newUrl);
|
|
}
|
|
|
|
export const config = {
|
|
matcher: ["/admin/:id", "/demo", "/p/:id", "/profile", "/new", "/login"],
|
|
};
|