"use client"; import { useSortable } from "@dnd-kit/sortable"; import { SortableContext, verticalListSortingStrategy } from "@dnd-kit/sortable"; import { useDroppable } from "@dnd-kit/core"; import { CSS } from "@dnd-kit/utilities"; import { GripVertical, MoreVertical, Trash2 } from "lucide-react"; import { cn } from "@/lib/utils"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { GroupCard } from "@/components/board/group-card"; import { AddGroupPopover } from "@/components/board/add-group-popover"; import { useBoard } from "@/components/board/board-context"; import type { CategoryDTO } from "@/types/board"; export function CategoryLane({ category }: { category: CategoryDTO }) { const { removeCategory } = useBoard(); const { setNodeRef, setActivatorNodeRef, attributes, listeners, transform, transition, isDragging, } = useSortable({ id: category.id, data: { type: "category" }, }); const { setNodeRef: setDropzoneRef } = useDroppable({ id: `category-dropzone-${category.id}`, data: { type: "category-dropzone", categoryId: category.id }, }); const groupIds = category.groups.map((g) => g.id); return (

{category.name}

} /> removeCategory(category.id)} > Delete category
{category.groups.map((group) => ( ))}
); }