import { auth } from "@/lib/auth"; import { prisma } from "@/lib/prisma"; export async function GET() { const session = await auth(); if (!session) return new Response("Unauthorized", { status: 401 }); const oneWeekAgo = new Date(Date.now() - 7 * 24 * 60 * 60 * 1000); const [ activeCampaigns, pendingReview, publishedThisWeek, recentCampaigns, trendReports, ] = await Promise.all([ prisma.campaign.count({ where: { status: { in: ["running", "review"] } }, }), prisma.asset.count({ where: { status: "draft", campaign: { status: { in: ["review", "running"] } }, }, }), prisma.asset.count({ where: { status: "published", createdAt: { gte: oneWeekAgo }, }, }), prisma.campaign.findMany({ take: 5, orderBy: { createdAt: "desc" }, select: { id: true, name: true, status: true, createdAt: true }, }), prisma.trendReport.findMany({ orderBy: { createdAt: "desc" }, take: 10, }), ]); return Response.json({ activeCampaigns, pendingReview, publishedThisWeek, recentCampaigns, trendReports, }); }