import { withApi } from "@/lib/api"; import { getUpcomingEpisodes } from "@/lib/stats"; /** * GET /api/v1/kalender?von=2026-09-01&bis=2026-09-30 * * Kommende Episoden der getrackten Serien. Ohne Angabe: die nächsten 30 Tage. */ export const GET = withApi(async (request, user) => { const url = new URL(request.url); const parse = (value: string | null, fallback: Date) => { if (!value) return fallback; const date = new Date(value); return Number.isNaN(date.getTime()) ? fallback : date; }; const from = parse(url.searchParams.get("von"), new Date()); const to = parse(url.searchParams.get("bis"), new Date(Date.now() + 30 * 86_400_000)); const episodes = await getUpcomingEpisodes(user.id, from, to); return { from: from.toISOString(), to: to.toISOString(), total: episodes.length, items: episodes, }; });