From 76a93db67e39f99e3b46f75b5dd1800dddd1a762 Mon Sep 17 00:00:00 2001 From: Pontus Dreij Date: Wed, 13 Nov 2024 20:59:16 +0100 Subject: [PATCH] fix(SW-449): Moved normalizeDate outside middleware --- middlewares/dateFormat.ts | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/middlewares/dateFormat.ts b/middlewares/dateFormat.ts index e2e5c0a9e..b1ee329f1 100644 --- a/middlewares/dateFormat.ts +++ b/middlewares/dateFormat.ts @@ -3,23 +3,24 @@ import { NextMiddleware, NextResponse } from "next/server" import { MiddlewareMatcher } from "@/types/middleware" /* -Middleware function to normalize date formats to support -YYYY-MM-D and YYYY-MM-DD since the current web uses YYYY-MM-D -in the URL as parameters (toDate and fromDate) + Middleware function to normalize date formats to support + YYYY-MM-D and YYYY-MM-DD since the current web uses YYYY-MM-D + in the URL as parameters (toDate and fromDate) */ + +function normalizeDate(date: string): string { + const datePattern = /^\d{4}-\d{1,2}-\d{1,2}$/ + if (datePattern.test(date)) { + const [year, month, day] = date.split("-").map(Number) + return `${year}-${String(month).padStart(2, "0")}-${String(day).padStart(2, "0")}` + } + return date +} + export const middleware: NextMiddleware = (request) => { const url = request.nextUrl.clone() const { searchParams } = url - function normalizeDate(date: string): string { - const datePattern = /^\d{4}-\d{1,2}-\d{1,2}$/ - if (datePattern.test(date)) { - const [year, month, day] = date.split("-").map(Number) - return `${year}-${String(month).padStart(2, "0")}-${String(day).padStart(2, "0")}` - } - return date - } - if (searchParams.has("fromDate")) { const fromDate = searchParams.get("fromDate")! searchParams.set("fromDate", normalizeDate(fromDate))