{rows.map((s) => {
const sum = ordersSummary(s.id);
const focus = focusId === s.id;
const tone = s.fill >= 95 ? "" : s.fill >= 90 ? "warn" : "bad";
return (
app.nav({ name: "supplier", id: s.id })}>
{s.name}{relLabel(s.reliability)}
{s.kind} · {s.id}
{sum.bad > 0 && {sum.bad} need attention}
{sum.open} open order{sum.open !== 1 ? "s" : ""}
= 92 ? "" : s.onTime >= 85 ? "warn" : "bad")}>
On-time{s.onTime}%
Short-supply incidents · 30d
{s.incidents30}
{s.trend === "down" ? : }{s.trend === "down" ? "worsening" : "steady"}
{s.signal &&
{s.signal}}