import { useState } from "react"; import { Dialog, DialogContent, DialogHeader, DialogTitle, } from "@/src/components/ui/dialog"; import { PreviewCsvImport } from "@/src/features/datasets/components/PreviewCsvImport"; import { UploadDatasetCsv } from "@/src/features/datasets/components/UploadDatasetCsv"; import type { CsvPreviewResult } from "@/src/features/datasets/lib/csv/types"; import { Tooltip, TooltipContent, TooltipTrigger, } from "@/src/components/ui/tooltip"; import { File } from "lucide-react"; type CsvUploadDialogProps = { open: boolean; onOpenChange: (open: boolean) => void; projectId: string; datasetId: string; children?: React.ReactNode; }; export function CsvUploadDialog({ open, onOpenChange, projectId, datasetId, children, }: CsvUploadDialogProps) { const [preview, setPreview] = useState(null); const [csvFile, setCsvFile] = useState(null); const handleOpenChange = (newOpen: boolean) => { onOpenChange(newOpen); if (!newOpen) { // Reset state when dialog closes setPreview(null); setCsvFile(null); } }; return ( {children} Upload CSV {csvFile && ( {csvFile.name} )} {preview ? ( ) : ( )} ); }