'use client' import { useState } from 'react' import { Trash2 } from 'lucide-react' import { deleteList } from '@/lib/actions' import { useRouter } from 'next/navigation' import Modal from './Modal' interface DeleteListButtonProps { listId: string listTitle: string itemCount: number redirectAfterDelete?: boolean } export default function DeleteListButton({ listId, listTitle, itemCount, redirectAfterDelete = false }: DeleteListButtonProps) { const router = useRouter() const [isConfirmOpen, setIsConfirmOpen] = useState(false) const [isDeleting, setIsDeleting] = useState(false) const handleDelete = async () => { setIsDeleting(true) try { await deleteList(listId) setIsConfirmOpen(false) if (redirectAfterDelete) { router.push('/') } else { router.refresh() } } catch (err) { console.error('Failed to delete list:', err) alert('Failed to delete list. Please try again.') } finally { setIsDeleting(false) } } return ( <> setIsConfirmOpen(false)} title="Delete List" >

Are you sure you want to delete {listTitle}?

{itemCount > 0 && (

This will permanently delete {itemCount} {itemCount === 1 ? 'item' : 'items'}.

)}
) }