SPB Git forge

spb/immbot-ai

Public
1commits 1branches 0releases
1.5 MBsize
maindefault branch
20 days agolast push
TypeScript 98.3% CSS 0.9% Shell 0.7%
713 B · 23 lines typescript
Raw Blame History
1import { NextResponse } from "next/server";2import { cookies } from "next/headers";3import { apiError } from "@/lib/api.ts";4import { SESSION_COOKIE, assertSameOrigin, destroySession, logAuthEvent, userForToken } from "@/lib/auth/session.ts";56export async function POST() {7  try {8    await assertSameOrigin();9    const jar = await cookies();10    const token = jar.get(SESSION_COOKIE)?.value;11    if (token) {12      const u = userForToken(token);13      destroySession(token);14      if (u) logAuthEvent("logout", { userId: u.id, username: u.username });15    }16    const res = NextResponse.json({ ok: true });17    res.cookies.delete(SESSION_COOKIE);18    return res;19  } catch (e) {20    return apiError(e);21  }22}23