dev vouch dev on at. thats about it atvouch.dev
8
fork

Configure Feed

Select the types of activity you want to include in your feed.

link to bsky.app/profile/<handle>

Luna ce65f198 efa59600

+16 -7
+16 -7
frontend/src/App.tsx
··· 207 207 <li key={v.rkey}> 208 208 {v.valid ? ( 209 209 <> 210 - <span className="vouch-handle">{v.handle ?? v.did}</span> 210 + <a className="vouch-handle" href={`https://bsky.app/profile/${v.handle ?? v.did}`} target="_blank" rel="noopener noreferrer">{v.handle ?? v.did}</a> 211 211 <span className="vouch-date"> 212 212 {new Date(v.createdAt).toISOString().slice(0, 10)} 213 213 </span> ··· 352 352 handle: string; 353 353 }) { 354 354 if (result.directVouch) { 355 - return <pre className="success">you -&gt; {handle}</pre>; 355 + return <pre className="success">you -&gt; <a href={`https://bsky.app/profile/${handle}`} target="_blank" rel="noopener noreferrer">{handle}</a></pre>; 356 356 } 357 357 358 358 if (result.paths.length === 0) { ··· 363 363 <div> 364 364 <p>Found {result.paths.length} vouch route(s):</p> 365 365 <pre> 366 - {result.paths 367 - .map((path) => 368 - path.map((did) => result.handleMap[did] ?? did).join(" -> "), 369 - ) 370 - .join("\n")} 366 + {result.paths.map((path, i) => ( 367 + <span key={i}> 368 + {i > 0 && "\n"} 369 + {path.map((did, j) => { 370 + const label = result.handleMap[did] ?? did; 371 + return ( 372 + <span key={did}> 373 + {j > 0 && " -> "} 374 + <a href={`https://bsky.app/profile/${label}`} target="_blank" rel="noopener noreferrer">{label}</a> 375 + </span> 376 + ); 377 + })} 378 + </span> 379 + ))} 371 380 </pre> 372 381 </div> 373 382 );