"use server"; import { updateSummitRequestStatus } from "@/lib/summit-requests"; import type { SubmissionStatus } from "@/types/admin-submission"; import { revalidatePath } from "next/cache"; const ADMIN_PATHS = ["/admin", "/admin/pending", "/admin/approved", "/admin/rejected"] as const; const ALLOWED: SubmissionStatus[] = ["pending", "approved", "rejected"]; export async function setRequestStatusAction(publicId: string, status: SubmissionStatus) { if (!ALLOWED.includes(status)) { throw new Error("Invalid status"); } if (!publicId || typeof publicId !== "string") { throw new Error("Invalid id"); } await updateSummitRequestStatus(publicId.trim(), status); for (const p of ADMIN_PATHS) { revalidatePath(p); } }