spb/note-spboucher-ai
Public
1import { getSession, revokeSession, clearSessionCookie, revokeAllSessions } from "@/lib/auth/session";2import { assertSameOrigin, jsonError } from "@/lib/auth/guard";3import { audit } from "@/lib/audit";4export async function POST(req: Request) {5 try {6 await assertSameOrigin();7 const s = await getSession();8 const all = new URL(req.url).searchParams.get("all") === "1";9 if (s) { if (all) await revokeAllSessions(s.id); else await revokeSession(s.sessionId); await audit(s.id, all ? "auth.logout_all" : "auth.logout"); }10 await clearSessionCookie();11 return Response.json({ ok: true });12 } catch (e) { return jsonError(e); }13}14