27 lines
586 B
TypeScript
27 lines
586 B
TypeScript
import { auth } from "@/auth";
|
|
|
|
import { prisma } from "@/lib/db";
|
|
|
|
export const DELETE = auth(async (req) => {
|
|
if (!req.auth) {
|
|
return new Response("Not authenticated", { status: 401 });
|
|
}
|
|
|
|
const currentUser = req.auth.user;
|
|
if (!currentUser) {
|
|
return new Response("Invalid user", { status: 401 });
|
|
}
|
|
|
|
try {
|
|
await prisma.user.delete({
|
|
where: {
|
|
id: currentUser.id,
|
|
},
|
|
});
|
|
} catch (error) {
|
|
return new Response("Internal server error", { status: 500 });
|
|
}
|
|
|
|
return new Response("User deleted successfully!", { status: 200 });
|
|
});
|