diff --git a/app/[lang]/(live)/not-found.tsx b/app/[lang]/(live)/not-found.tsx index b709a17c2..e316fd743 100644 --- a/app/[lang]/(live)/not-found.tsx +++ b/app/[lang]/(live)/not-found.tsx @@ -1,11 +1,5 @@ -import { getIntl } from "@/i18n" +import NotFound from "@/components/Current/NotFound" -export default async function NotFound() { - const { formatMessage } = await getIntl() - return ( -
-

{formatMessage({ id: "Not found" })}

-

{formatMessage({ id: "Could not find requested resource" })}

-
- ) +export default function NotFoundPage() { + return } diff --git a/middleware.ts b/middleware.ts index c5ddc12db..78b73b7ed 100644 --- a/middleware.ts +++ b/middleware.ts @@ -1,18 +1,21 @@ import { NextMiddleware, NextResponse } from "next/server" -import { Lang } from "./constants/languages" -import * as authRequired from "./middlewares/authRequired" -import * as bookingFlow from "./middlewares/bookingFlow" -import * as cmsContent from "./middlewares/cmsContent" -import * as currentWebLogin from "./middlewares/currentWebLogin" -import * as currentWebLoginEmail from "./middlewares/currentWebLoginEmail" -import * as currentWebLogout from "./middlewares/currentWebLogout" -import * as handleAuth from "./middlewares/handleAuth" -import * as myPages from "./middlewares/myPages" -import * as webView from "./middlewares/webView" -import { findLang } from "./utils/languages" +import { Lang } from "@/constants/languages" + +import * as authRequired from "@/middlewares/authRequired" +import * as bookingFlow from "@/middlewares/bookingFlow" +import * as cmsContent from "@/middlewares/cmsContent" +import * as currentWebLogin from "@/middlewares/currentWebLogin" +import * as currentWebLoginEmail from "@/middlewares/currentWebLoginEmail" +import * as currentWebLogout from "@/middlewares/currentWebLogout" +import * as handleAuth from "@/middlewares/handleAuth" +import * as myPages from "@/middlewares/myPages" +import { getDefaultRequestHeaders } from "@/middlewares/utils" +import * as webView from "@/middlewares/webView" +import { findLang } from "@/utils/languages" export const middleware: NextMiddleware = async (request, event) => { + const headers = getDefaultRequestHeaders(request) const lang = findLang(request.nextUrl.pathname) if (!lang) { // Lang is required for all our middleware. @@ -21,9 +24,13 @@ export const middleware: NextMiddleware = async (request, event) => { // which we do not want. We can move to that once all Current stuff is gone. // Default to English if no lang is found. + headers.set("x-lang", Lang.en) return NextResponse.rewrite( new URL(`/${Lang.en}/middleware-error/404`, request.nextUrl), { + request: { + headers, + }, status: 404, statusText: "Not found", } @@ -64,6 +71,9 @@ export const middleware: NextMiddleware = async (request, event) => { return NextResponse.rewrite( new URL(`/${lang}/middleware-error/${e.status}`, request.nextUrl), { + request: { + headers, + }, status: e.status, statusText: e.statusText, } @@ -75,6 +85,9 @@ export const middleware: NextMiddleware = async (request, event) => { return NextResponse.rewrite( new URL(`/${lang}/middleware-error/500`, request.nextUrl), { + request: { + headers, + }, status: 500, statusText: "Internal Server Error", } @@ -82,7 +95,11 @@ export const middleware: NextMiddleware = async (request, event) => { } // Follow through with normal App router rules. - return NextResponse.next() + return NextResponse.next({ + request: { + headers, + }, + }) } // See "Matching Paths" below to learn more diff --git a/middlewares/cmsContent.ts b/middlewares/cmsContent.ts index 1e9d74a96..8facd7607 100644 --- a/middlewares/cmsContent.ts +++ b/middlewares/cmsContent.ts @@ -38,7 +38,12 @@ export const middleware: NextMiddleware = async (request) => { if (isCurrent) { searchParams.set("uri", pathNameWithoutLang.replace("/preview", "")) return NextResponse.rewrite( - new URL(`/${lang}/preview-current?${searchParams.toString()}`, nextUrl) + new URL(`/${lang}/preview-current?${searchParams.toString()}`, nextUrl), + { + request: { + headers, + }, + } ) } diff --git a/middlewares/webView.ts b/middlewares/webView.ts index fa54e5892..d29001796 100644 --- a/middlewares/webView.ts +++ b/middlewares/webView.ts @@ -55,6 +55,9 @@ export const middleware: NextMiddleware = async (request) => { headers: { "Set-Cookie": `webviewToken=0; Max-Age=0; Secure; HttpOnly; Path=/; SameSite=Strict;`, }, + request: { + headers, + }, } ) } diff --git a/server/trpc.ts b/server/trpc.ts index c2f159dfe..d65fdb57e 100644 --- a/server/trpc.ts +++ b/server/trpc.ts @@ -23,17 +23,7 @@ export const { createCallerFactory, mergeRouters, router } = t export const publicProcedure = t.procedure export const contentstackBaseProcedure = t.procedure.use(async function (opts) { if (!opts.ctx.lang) { - const input = await opts.getRawInput() - - const parsedInput = langInput.safeParse(input) - if (!parsedInput.success) { - throw badRequestError("Missing Lang in tRPC context") - } - return opts.next({ - ctx: { - lang: parsedInput.data.lang, - }, - }) + throw badRequestError("Missing Lang in tRPC context") } return opts.next({