import { SortableContext, useSortable } from "@dnd-kit/sortable"; import { AiOutlinePlusCircle } from "react-icons/ai"; import { useMemo } from "react"; import { TaskCard } from "./taskCard"; export function ColumnContainer({ column, createTask, tasks, deleteTask, updateTask }) { // Memoize task IDs to prevent unnecessary recalculations const tasksIds = useMemo(() => { return tasks.map((task) => task.id); }, [tasks]); const { setNodeRef, attributes, listeners } = useSortable({ id: column.id, data: { type: "Column", column, }, }); return (
{/* Column title */}
{column.title}
{/* Column task container */}
{/* Provide a SortableContext for the tasks within the column */} {/* Render TaskCard for each task in the column */} {tasks.map((task) => ( useSortable({ ...props, disabled: false })} /> ))}
{/* Column footer */}
); }