import { NextResponse } from "next/server"; import { cookies } from "next/headers"; import { getSessionCookieName } from "@/lib/server/auth"; import { logoutUser } from "@/lib/server/auth-service"; import { getRequestMeta } from "@/lib/server/request"; import { toErrorResponse } from "@/lib/server/errors"; export async function POST() { const { requestId } = await getRequestMeta(); try { const cookieStore = await cookies(); const token = cookieStore.get(getSessionCookieName())?.value; if (token) await logoutUser(token); cookieStore.set(getSessionCookieName(), "", { httpOnly: true, sameSite: "lax", secure: process.env.NODE_ENV === "production", maxAge: 0, path: "/" }); return NextResponse.json({ requestId, request_id: requestId, ok: true }); } catch (e) { const { status, body } = toErrorResponse(e, "POST /api/auth/logout", requestId); return NextResponse.json(body, { status }); } }