web: bump to node 22, next 15, react 19, etc.

This commit is contained in:
2025-04-30 19:21:33 +02:00
parent 7030950850
commit cc2a11cd64
21 changed files with 2384 additions and 2580 deletions
+13 -16
View File
@@ -34,15 +34,7 @@ type ResponseData = {
total: number;
};
const whitelistFilter = (obj: Record<string, any>, whitelist: string[]) =>
Object.entries(obj)
.filter(([key, value]) => whitelist.includes(key))
.reduce(
(obj: Record<string, any>, [key, value]) => ((obj[key] = value), obj),
{}
);
export async function GET(req: NextRequest, res: NextResponse<ResponseData>) {
export async function GET(req: NextRequest) {
const searchParams = req.nextUrl.searchParams;
const view = searchParams.get("view");
@@ -80,15 +72,20 @@ export async function GET(req: NextRequest, res: NextResponse<ResponseData>) {
: null;
return {
url: `${process.env.URL}/arrangementer/${event.slug}`,
id: event.id,
slug: event.slug,
title: event.title,
subtitle: event.subtitle,
nextOccurrence: nextOccurrence,
url: `${process.env.URL}/arrangementer/${event.slug}`,
futureOccurrencesCount: futureOccurrences.length,
...whitelistFilter(event, keepKeys),
};
} as CompactEvent;
});
return NextResponse.json(
{ events: compactEvents, total: compactEvents.length },
{ status: 200 }
);
const responseData: ResponseData = {
events: compactEvents,
total: compactEvents.length,
};
return NextResponse.json(responseData, { status: 200 });
}