import { Download, ExternalLink, RefreshCw, X } from 'lucide-react' import type { UpdateStatus, UpdateActions } from '../hooks/useUpdater' import { restartApp } from '../hooks/useUpdater' interface UpdateBannerProps { status: UpdateStatus actions: UpdateActions } export function UpdateBanner({ status, actions }: UpdateBannerProps) { if (status.state === 'idle' || status.state === 'error') return null return (
{status.state === 'available' && ( <> Laputa {status.version} is available )} {status.state === 'downloading' && ( <> Downloading Laputa {status.version}...
{Math.round(status.progress * 100)}% )} {status.state === 'ready' && ( <> Laputa {status.version} is ready — restart to apply )}
) }