feat: support basic file presenting

This commit is contained in:
Henry Li
2026-01-16 22:35:20 +08:00
parent 4b69aed47b
commit f9853f037c
4 changed files with 102 additions and 4 deletions

View File

@@ -0,0 +1,32 @@
import { DownloadIcon } from "lucide-react";
import { Button } from "@/components/ui/button";
import {
Card,
CardAction,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { getFileExtension, getFileName } from "@/core/utils/files";
export function PresentFileList({ files }: { files: string[] }) {
return (
<ul className="w-full">
{files.map((file) => (
<Card key={file}>
<CardHeader>
<CardTitle>{getFileName(file)}</CardTitle>
<CardDescription>{getFileExtension(file)} file</CardDescription>
<CardAction>
<Button variant="ghost">
<DownloadIcon className="size-4" />
Download
</Button>
</CardAction>
</CardHeader>
</Card>
))}
</ul>
);
}