'use client' import { useState } from 'react' import { useRouter } from 'next/navigation' import { deleteItem } from '@/lib/actions' import { Trash2 } from 'lucide-react' interface DeleteItemButtonProps { itemId: string listId?: string variant?: 'full' | 'icon' } export default function DeleteItemButton({ itemId, listId, variant = 'full' }: DeleteItemButtonProps) { const router = useRouter() const [isDeleting, setIsDeleting] = useState(false) const [showConfirm, setShowConfirm] = useState(false) const handleDelete = async (e: React.MouseEvent) => { e.preventDefault() e.stopPropagation() setIsDeleting(true) try { await deleteItem(itemId) if (listId) { router.push(`/list/${listId}`) } else { router.refresh() } } catch (error) { console.error('Error deleting item:', error) setIsDeleting(false) setShowConfirm(false) } } const handleShowConfirm = (e: React.MouseEvent) => { e.preventDefault() e.stopPropagation() setShowConfirm(true) } const handleCancel = (e: React.MouseEvent) => { e.preventDefault() e.stopPropagation() setShowConfirm(false) } if (showConfirm) { return (