Merged in fix/date-query-params (pull request #2213)

fix: date query params lowercase redirect middleware

* fix: date query params lowercase redirect middleware


Approved-by: Joakim Jäderberg
This commit is contained in:
Linus Flood
2025-05-26 08:11:10 +00:00
parent ea90e8c920
commit 573d9a6c0f
2 changed files with 38 additions and 0 deletions

View File

@@ -9,6 +9,7 @@ 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 dateQueryParams from "@/middlewares/dateQueryParams"
import * as familyAndFriends from "@/middlewares/familyAndFriends"
import * as handleAuth from "@/middlewares/handleAuth"
import * as invalidUrl from "@/middlewares/invalidUrl"
@@ -60,6 +61,7 @@ export const middleware: NextMiddleware = async (request, event) => {
handleAuth,
myPages,
webView,
dateQueryParams,
legacySearchParams,
bookingFlow,
familyAndFriends,

View File

@@ -0,0 +1,36 @@
import { type NextMiddleware, NextResponse } from "next/server"
import type { MiddlewareMatcher } from "@/types/middleware"
export const middleware: NextMiddleware = (request) => {
const url = request.nextUrl.clone()
const { searchParams } = url
let modified = false
if (searchParams.has("fromDate")) {
const value = searchParams.get("fromDate")
searchParams.delete("fromDate")
searchParams.set("fromdate", value!)
modified = true
}
if (searchParams.has("toDate")) {
const value = searchParams.get("toDate")
searchParams.delete("toDate")
searchParams.set("todate", value!)
modified = true
}
if (modified) {
url.search = searchParams.toString()
return NextResponse.redirect(url)
}
return NextResponse.next()
}
export const matcher: MiddlewareMatcher = (request) => {
const { searchParams } = request.nextUrl
return searchParams.has("fromDate") || searchParams.has("toDate")
}