import { getBlockedMailsByDay } from "../../../db/mail"; /** * GET /api/mail/stats/blocked-by-day?days=30 * * Blockierte Mails pro Tag (UTC) — Bar-Chart-Datenquelle. * * Query params: * days? number — Anzahl Tage zurück (default 30, max 90) * * Response: { date: 'YYYY-MM-DD', count: number }[] * — Alle N Tage sind enthalten, auch wenn count=0 (Frontend zeichnet flatline statt Lücken). * — Timestamps sind UTC. */ export default defineEventHandler(async (event) => { const user = await requireUser(event); const query = getQuery(event); const rawDays = parseInt((query.days as string) || "30"); const days = Math.min(Math.max(1, isNaN(rawDays) ? 30 : rawDays), 90); const data = await getBlockedMailsByDay(user.id, days); return { success: true, data }; });