import { DownloadIcon } from "lucide-react"; import { useCallback } from "react"; import { Button } from "@/components/ui/button"; import { Card, CardAction, CardDescription, CardHeader, CardTitle, } from "@/components/ui/card"; import { urlOfArtifact } from "@/core/artifacts/utils"; import { useI18n } from "@/core/i18n/hooks"; import { getFileExtensionDisplayName, getFileName } from "@/core/utils/files"; import { cn } from "@/lib/utils"; import { useArtifacts } from "./context"; export function ArtifactFileList({ className, files, threadId, }: { className?: string; files: string[]; threadId: string; }) { const { t } = useI18n(); const { select: selectArtifact, setOpen } = useArtifacts(); const handleClick = useCallback( (filepath: string) => { selectArtifact(filepath); setOpen(true); }, [selectArtifact, setOpen], ); return ( ); }