Files
sistema_base/apps/web/feactures/auth/actions/logout-action.ts

28 lines
653 B
TypeScript

'use server';
import { safeFetchApi } from '@/lib';
import { cookies } from 'next/headers';
import { logoutResponseSchema } from '../schemas/logout';
export const logoutAction = async (user_id: string) => {
const payload = { user_id };
const [error, data] = await safeFetchApi(
logoutResponseSchema,
'/auth/sign-out',
'POST',
payload,
);
if (error) {
console.error('Error:', error);
// Devuelve un objeto con la propiedad 'type' para que el callback de NextAuth lo reconozca como un error
return {
type: 'API_ERROR',
message: error.message,
};
}
(await cookies()).delete('refresh_token');
};