'use client' import Link from 'next/link' import { useState } from 'react' import { Edit2 } from 'lucide-react' import Modal from './Modal' import ListForm from './ListForm' import DeleteListButton from './DeleteListButton' interface List { id: string title: string color: string items: Array<{ id: string completed: boolean }> } export default function ListCard({ list }: { list: List }) { const [isEditModalOpen, setIsEditModalOpen] = useState(false) const completedCount = list.items.filter(item => item.completed).length const totalCount = list.items.length const progress = totalCount > 0 ? (completedCount / totalCount) * 100 : 0 const handleEditClick = (e: React.MouseEvent) => { e.preventDefault() e.stopPropagation() setIsEditModalOpen(true) } const handleDeleteClick = (e: React.MouseEvent) => { e.preventDefault() e.stopPropagation() } return ( <>

{list.title}

{completedCount} of {totalCount} completed {Math.round(progress)}%
setIsEditModalOpen(false)} title="Edit List" > setIsEditModalOpen(false)} onSuccess={() => setIsEditModalOpen(false)} /> ) }