Files
2026-04-20 15:49:01 -05:00

30 lines
664 B
TypeScript

"use client";
import { useRouter } from "next/navigation";
import { useState } from "react";
export default function LogoutButton() {
const router = useRouter();
const [busy, setBusy] = useState(false);
async function onClick() {
setBusy(true);
try {
await fetch("/api/auth/logout", { method: "POST" });
} finally {
router.push("/login");
router.refresh();
}
}
return (
<button
onClick={onClick}
disabled={busy}
className="rounded-md border border-slate-200 px-3 py-1.5 text-sm text-slate-700 hover:bg-slate-100 disabled:opacity-60"
>
{busy ? "…" : "Sign out"}
</button>
);
}