Share-ready card with a file header, a joined copy-URL row in mono, and an expiry caption beneath.
Requires shadcn/ui initialized. Run npx shadcn@latest init if you haven't.
import { Upload28 } from "@/components/beste/piece/upload28";
<Upload28
filename="board-deck.pdf"
url="beste.co/share/Kq91-2Xa"
expiry="Expires in 7 days"
viewers="Anyone with the link · Viewer"
/>Link-prefixed text field with a joined import button for pasting shareable URLs.
Single-line upload affordance with a paperclip icon, prompt copy, and a trailing browse button.
File tile with icon, name, size, and an inline progress bar.
Aggregate upload card with a total-files header, a single sky bar, and a done, uploading, queued tally.
Uploaded-image card with a dashed crop overlay on a gradient placeholder and rotate, crop, delete tools below.
Interrupted-upload card with an amber state, half-filled bar, resume byte offset, and a Resume button.