import { useState } from 'react'; import { deletePost } from '../../lib/api'; interface Props { slug: string; title: string; variant?: 'icon' | 'full'; } export default function DeletePostButton({ slug, title, variant = 'full' }: Props) { const [busy, setBusy] = useState(false); async function handleClick() { if (busy) return; if (!window.confirm(`Delete "${title}"? This cannot be undone.`)) return; setBusy(true); try { await deletePost(slug); window.location.href = '/'; } catch (e) { window.alert(`Failed to delete: ${e instanceof Error ? e.message : 'unknown error'}`); setBusy(false); } } if (variant === 'icon') { return ( ); } return ( ); }