@@ -4,21 +4,21 @@ import { getMachineDisplayName } from '../../utils/daemon-utils'
44
55interface DashboardVersionBannerProps {
66 daemons : DaemonData [ ]
7+ targetVersion ?: string | null
78 upgradingDaemons : Record < string , 'upgrading' | 'done' | 'error' >
89 onUpgrade : ( daemonId : string ) => void
910 onDismiss : ( ) => void
1011}
1112
1213export default function DashboardVersionBanner ( {
1314 daemons,
15+ targetVersion,
1416 upgradingDaemons,
1517 onUpgrade,
1618 onDismiss,
1719} : DashboardVersionBannerProps ) {
1820 if ( daemons . length === 0 ) return null
1921
20- const latest = daemons [ 0 ] as any
21-
2222 return (
2323 < div
2424 className = "flex items-center gap-2.5 px-4 py-2 border-b text-xs text-text-secondary shrink-0 flex-wrap"
@@ -27,11 +27,12 @@ export default function DashboardVersionBanner({
2727 < span className = "text-sm shrink-0 mt-0.5" style = { { color : 'var(--status-warning)' } } > < IconRefresh size = { 14 } /> </ span >
2828 < span className = "flex-1 flex items-center gap-2 flex-wrap min-w-0" >
2929 < span >
30- Update available: < strong > v{ latest . version } </ strong > → < strong > v { latest . serverVersion } </ strong >
30+ Update available{ targetVersion ? < > : < strong > v{ targetVersion } </ strong > </ > : null }
3131 </ span >
3232 { daemons . map ( ( daemon : any ) => {
3333 const name = getMachineDisplayName ( daemon , { fallbackId : daemon . id } )
3434 const state = upgradingDaemons [ daemon . id ]
35+ const currentVersion = daemon . version || daemon . daemonVersion || 'unknown'
3536
3637 return (
3738 < span
@@ -40,7 +41,7 @@ export default function DashboardVersionBanner({
4041 style = { { background : 'color-mix(in srgb, var(--status-warning) 8%, transparent)' , border : '1px solid color-mix(in srgb, var(--status-warning) 15%, transparent)' } }
4142 >
4243 < span className = "font-medium text-text-primary" > { name } </ span >
43- < span className = "text-[10px] text-text-muted" > v{ daemon . version } </ span >
44+ < span className = "text-[10px] text-text-muted" > v{ currentVersion } </ span >
4445 { state === 'upgrading' ? (
4546 < span className = "text-[10px] animate-pulse" style = { { color : 'var(--status-warning)' } } > upgrading…</ span >
4647 ) : state === 'done' ? (
0 commit comments