A centered card UI component that displays metadata for a downloadable file and renders a download button when a URL is available.
## Key Components
### `FileDownloadCard`
The primary exported component. Renders a styled card showing:
- **File icon** — `lucide-react` `FileText` icon as a visual indicator
- **File name** — displays `fileName` or falls back to `"File"`
- **MIME type** — shown only when `mimeType` is provided
- **File size** — formatted via `formatFileSize` utility, shown only when `fileSize` is a number
- **Download button** — rendered only when `fileUrl` is present; opens in a new tab
### `FileDownloadCardProps`
All props are optional, allowing safe render with partial data:
| Prop | Type | Description |
|------|------|-------------|
| `fileName` | `string` | Display name of the file |
| `mimeType` | `string` | MIME type string (e.g. `application/pdf`) |
| `fileSize` | `number` | File size in bytes; formatted via `formatFileSize` |
| `fileUrl` | `string` | Download URL; omitting hides the Download button |
## Usage Example
```typescript
import { FileDownloadCard } from './file-download-card'
// Full card with download button
// Read-only card — no download button (fileUrl omitted)
```
> This component is the default renderer for `file`-type documents in ``. Override it by passing a custom `file` renderer to `documentTypeRenderers`.
**Source:** [`file-download-card.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/file-download-card.tsx)