"use server";
import { redirect } from "next/navigation";
export async function deleteProfile() {
const session = await getServerAuthSession();
if (!session) return { message: "Unauthorized" };
try {
await db
.delete(users)
.where(eq(users.id, session.user.id))
.catch((e) => {
console.log(e);
});
revalidatePath("/dashboard/settings/profile");
redirect("/");
} catch (error) {
return { message: "Error deleting profile" };
}
}
//client code
'use client'
<Button variant="destructive" onClick={() => deleteProfile()} type="submit">
delete profile
</Button>
"use server";
import { redirect } from "next/navigation";
export async function deleteProfile() {
const session = await getServerAuthSession();
if (!session) return { message: "Unauthorized" };
try {
await db
.delete(users)
.where(eq(users.id, session.user.id))
.catch((e) => {
console.log(e);
});
revalidatePath("/dashboard/settings/profile");
redirect("/");
} catch (error) {
return { message: "Error deleting profile" };
}
}
//client code
'use client'
<Button variant="destructive" onClick={() => deleteProfile()} type="submit">
delete profile
</Button>