/** * @file dashboard/KanbanColumn.tsx * @description Client component rendering an individual kanban column container with its header, task count, action button, and list of task cards. */ "use client"; import { Plus } from "lucide-react"; import KanbanCard from "./KanbanCard"; import { KanbanColumnProps } from "@/types/tasks"; /** * Renders a kanban column containing a header with category indicator and counter, * an add button, and a sorted list of associated task cards or an empty placeholder. * * @param {KanbanColumnProps} props - The component props including column details, task list, and styling options. * @returns {JSX.Element} The rendered kanban column component. */ export default function KanbanColumn(props: KanbanColumnProps) { const indicatorColor = props.color ?? "bg-primary"; return (
{/* Column Header */}

{props.title}

{props.count}
{/* Card List */}
{props.tasks.length === 0 ? (
No tasks
) : ( props.tasks.map((task) => (
)) )}
); }