import { useState } from "react"; import { Dialog, DialogTrigger, DialogContent, DialogTitle, DialogDescription, DialogFooter, } from "@/components/ui/dialog"; import { Button } from "@/components/ui/button"; import { useMutation, useQueryClient } from "@tanstack/react-query"; import { deleteInventoryItem } from "@/api/inventory"; export function DeleteInventoryItem({ id }: { id: string }) { const [open, setOpen] = useState(false); const queryClient = useQueryClient(); const { mutate: deleteItem, status } = useMutation({ mutationFn: deleteInventoryItem, onSuccess: () => { queryClient.invalidateQueries({ queryKey: ["inventoryItems"] }); setOpen(false); // Close dialog on success }, onError: (error) => { console.error("Failed to delete item:", error); }, }); const handleDelete = () => { deleteItem(id.toString()); }; return (
{/* trigger button for the confirmation dialog */} Confirm Deletion Are you sure you want to delete this item? This action cannot be undone. {/* footer with confirm and cancel buttons */}
); }