IKHSAN
EN Read in EnglishID

homeio

Publik

Fork dari doctor-io/homeio

Branch
main
Commit terakhir
958d74616 Oktober 2026

route.ts

Buka raw
import { type NextRequest, NextResponse } from "next/server";
import {
  createRequestId,
  withServerTiming,
} from "@/lib/server/logging/logger";
import {
  getAuthCookieName,
  getExpiredSessionCookieOptions,
} from "@/lib/server/modules/auth/cookies";
import { logoutSession } from "@/lib/server/modules/auth/service";

export const runtime = "nodejs";

export async function POST(request: NextRequest) {
  const requestId = createRequestId();
  const sessionToken = request.cookies.get(getAuthCookieName())?.value;

  await withServerTiming(
    {
      layer: "api",
      action: "auth.logout",
      requestId,
    },
    async () => {
      await logoutSession(sessionToken);
      return Promise.resolve();
    },
  );

  const response = NextResponse.json({
    ok: true,
  });

  response.cookies.set(
    getAuthCookieName(),
    "",
    getExpiredSessionCookieOptions(request),
  );

  return response;
}
byte
919
baris
42
Jenis
ts
Commit terakhir
16 Oktober 2026