LibraryRow
A library in a list: its name and version, how many use it, what it is, where it runs and what it reaches, its licence, what people say of it and its stars.
import type { Trusted } from "#codebase/tcmts/cli/attest"; import { libraryHref, said } from "#codebase/tcmts/hub"; import type { Library } from "#codebase/tcmts/hub"; import { PlaceBar, Reaches } from "#codebase/tcmts/hub/pages"; export function LibraryRow({ l, who, notes, stars, }: { l: Library; who: Trusted; notes?: string; stars?: number; }) { const r = l.latest; return ( <div className="lib"> <div> <a className="name mono" href={libraryHref(who, l.package)}> {said(who)}/{l.package} </a>{" "} <span className="mono muted">{r.version}</span> </div> <div className="stat"> <b>{l.dependents}</b> dependent{l.dependents === 1 ? "" : "s"} </div> {r.facts?.description && <div className="desc">{r.facts.description}</div>} <div className="meta"> {r.facts && <PlaceBar places={r.facts.places} thin />} {r.facts && ( <span> <Reaches facts={r.facts} /> </span> )} {notes && <span>{notes}</span>} {r.facts?.license && <span>{r.facts.license}</span>} {stars ? <span>★ {stars}</span> : null} </div> </div> ); }
uses
- tcmts.cli.attest.Trusted
- tcmts.hub.Library
- tcmts.hub.libraryHref
- tcmts.hub.pages.PlaceBar
- tcmts.hub.pages.Reaches
- tcmts.hub.said