import { Card, CardContent, CardHeader, CardTitle, } from "@/src/components/ui/card"; import { cn } from "@/src/utils/tailwind"; import { useDraggable } from "@dnd-kit/core"; import { GripVertical } from "lucide-react"; import type { CsvColumnPreview } from "@/src/features/datasets/lib/csv/types"; function DraggableColumn({ column }: { column: CsvColumnPreview }) { const { attributes, listeners, setNodeRef, isDragging } = useDraggable({ id: column.name, data: { column, fromCardId: "csv-columns", }, }); return (
{column.name} {column.inferredType}
); } export function CsvColumnsCard({ columns, columnCount, }: { columns: CsvColumnPreview[]; columnCount: number; }) { return (
CSV Columns {columnCount} {columnCount === 1 ? "column" : "columns"}
{columns.map((column) => ( ))}
Tip: Drag columns from this list to the mapping fields on the right.
); }