Files
buzz-sheet/app/api/admin/comments/route.ts
T

14 lines
796 B
TypeScript

import { listComments, requireCommentAdmin, requireCommentViewer } from "@/lib/comments/repository";
import { errorResponse } from "@/lib/security/http";
export async function GET(request: Request) {
try {
const viewer = await requireCommentViewer();
requireCommentAdmin(viewer);
const query = new URL(request.url).searchParams;
return Response.json(await listComments({ viewer, inbox: true, grouped: query.get("grouped") === "true", target: query.get("target") || undefined,
status: query.get("status") || undefined, sort: query.get("sort") === "oldest" ? "oldest" : "newest", unanswered: query.get("unanswered") === "true", cursor: query.get("cursor") }),
{ headers: { "Cache-Control": "private, no-store" } });
} catch (cause) { return errorResponse(cause); }
}