Files
shahikitchen-prod/app/api/auth/customer/logout/route.ts
T

28 lines
1.0 KiB
TypeScript

import { NextResponse } from 'next/server';
import { cookies } from 'next/headers';
import {
CUSTOMER_SESSION_COOKIE,
getClearedCustomerSessionCookieOptions,
} from '@/infrastructure/auth/customer-session';
import {
ADMIN_SESSION_COOKIE,
getAdminSessionCookieOptions,
} from '@/infrastructure/auth/admin-session';
export async function POST() {
const cookieStore = await cookies();
const clearedCustomer = getClearedCustomerSessionCookieOptions();
const clearedAdmin = { ...getAdminSessionCookieOptions(), maxAge: 0, expires: new Date(0) };
cookieStore.set(CUSTOMER_SESSION_COOKIE, '', clearedCustomer);
cookieStore.delete({ name: CUSTOMER_SESSION_COOKIE, path: '/' });
cookieStore.set(ADMIN_SESSION_COOKIE, '', clearedAdmin);
cookieStore.delete({ name: ADMIN_SESSION_COOKIE, path: '/' });
const response = NextResponse.json({ ok: true });
response.cookies.set(CUSTOMER_SESSION_COOKIE, '', clearedCustomer);
response.cookies.set(ADMIN_SESSION_COOKIE, '', clearedAdmin);
response.headers.set('Cache-Control', 'no-store');
return response;
}