"use client"; import { useState, useTransition } from "react"; import { useRouter } from "next/navigation"; import { FileDown, Loader2, Pencil, Trash2 } from "lucide-react"; import { toast } from "sonner"; import { Button } from "@/components/ui/button"; import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, } from "@/components/ui/dialog"; import { deleteInvoiceAction } from "@/lib/appwrite/invoice-actions"; import { InvoiceFormSheet } from "../../components/invoice-form-sheet"; import type { Customer, InvoiceRow } from "../../components/types"; type Props = { invoice: InvoiceRow; customers: Customer[] }; export function InvoiceHeaderActions({ invoice, customers }: Props) { const router = useRouter(); const [editOpen, setEditOpen] = useState(false); const [deleting, setDeleting] = useState(false); const [busy, startTransition] = useTransition(); const handleDelete = () => { startTransition(async () => { const fd = new FormData(); fd.set("id", invoice.id); const result = await deleteInvoiceAction(fd); if (result.ok) { toast.success("Fatura silindi."); router.push("/invoices"); } else { toast.error(result.error ?? "Silme başarısız."); setDeleting(false); } }); }; return ( <>