@@ -35,6 +35,9 @@ const GOLD = "#f7c948";
3535// Morpheus green — MOR stakes get their own colored stream, distinct from the
3636// rider-tinted Morpho vault flows, so a wallet that backs both shows two lines.
3737const MOR_GREEN = "#2be58b" ;
38+ // Real protocol logos, marking each backer node by where they staked.
39+ const MORPHO_LOGO = "/logos/morpho.webp" ;
40+ const MORPHEUS_LOGO = "/logos/morpheus.webp" ;
3841
3942const W = 760 ;
4043const C = W / 2 ;
@@ -138,16 +141,13 @@ export function StakeOrbit() {
138141
139142 < div className = "mb-3 flex flex-wrap items-center gap-4 text-[11px] text-white/50" >
140143 < span className = "flex items-center gap-1.5" >
141- < span className = "h-2 w-2 rounded-full bg-white/60" />
144+ { /* eslint-disable-next-line @next/next/no-img-element */ }
145+ < img src = { MORPHO_LOGO } alt = "" className = "h-4 w-4 rounded-full" />
142146 { t ( "orbit.legendVault" ) }
143147 </ span >
144148 < span className = "flex items-center gap-1.5" >
145- < span
146- className = "flex h-3.5 w-3.5 items-center justify-center rounded-full text-[8px] font-black text-[#04140d]"
147- style = { { background : MOR_GREEN } }
148- >
149- M
150- </ span >
149+ { /* eslint-disable-next-line @next/next/no-img-element */ }
150+ < img src = { MORPHEUS_LOGO } alt = "" className = "h-4 w-4 rounded-full" />
151151 { t ( "orbit.legendMor" ) }
152152 </ span >
153153 </ div >
@@ -204,18 +204,25 @@ export function StakeOrbit() {
204204 < text x = { mid . x } y = { mid . y - 4 } textAnchor = "middle" fontSize = "11" fontWeight = "700" fill = "#fff" style = { { paintOrder : "stroke" , stroke : "#0c0a08" , strokeWidth : 3 } } >
205205 { usd ( b . amount ) }
206206 </ text >
207- { /* backer node — MOR stakes carry the green Morpheus "M" mark */ }
208- < circle
209- cx = { bp . x } cy = { bp . y } r = { isYou ? 9 : 7 }
210- fill = { isMor ? col : isYou ? GOLD : "#0c0a08" }
211- stroke = { isYou ? GOLD : col }
212- strokeWidth = { 2 }
213- />
214- { isMor && (
215- < text x = { bp . x } y = { bp . y + 3 } textAnchor = "middle" fontSize = "9" fontWeight = "900" fill = "#04140d" >
216- M
217- </ text >
218- ) }
207+ { /* backer node — the real protocol logo (Morpho or Morpheus) */ }
208+ { ( ( ) => {
209+ const r = isYou ? 12 : 10 ;
210+ return (
211+ < >
212+ < foreignObject x = { bp . x - r } y = { bp . y - r } width = { r * 2 } height = { r * 2 } >
213+ < div
214+ style = { {
215+ width : "100%" , height : "100%" , borderRadius : "50%" ,
216+ backgroundColor : "#0c0a08" ,
217+ backgroundImage : `url(${ isMor ? MORPHEUS_LOGO : MORPHO_LOGO } )` ,
218+ backgroundSize : "cover" , backgroundPosition : "center" ,
219+ } }
220+ />
221+ </ foreignObject >
222+ < circle cx = { bp . x } cy = { bp . y } r = { r } fill = "none" stroke = { isYou ? GOLD : col } strokeWidth = { 2 } />
223+ </ >
224+ ) ;
225+ } ) ( ) }
219226 < text x = { bp . x } y = { bp . y + ( bp . y < C ? - 14 : 20 ) } textAnchor = "middle" fontSize = "9.5" fill = { isYou ? GOLD : "rgba(255,255,255,.55)" } fontFamily = "monospace" fontWeight = { isYou ? 700 : 400 } >
220227 { isYou ? t ( "orbit.you" ) : nameOrShort ( b . address , ensNames ) }
221228 </ text >
0 commit comments