/* 95 Forward — Prospects. Two views under one tab: · Master Prospect List (the one ranked list — sacred ranking) · Candidates (connector-discovery batches, firmly OFF the ranked list) */ const PR = window.Ds95ForwardDesignSystem_31a0c4 || {}; /* ============================ MASTER PROSPECT LIST ============================ */ function MasterList({ go }) { const D = window.POC_DATA; const { Icon, Eyebrow } = window.POC; const { ProspectRow, Tag, Button, Badge } = PR; const [horizon, setHorizon] = React.useState("all"); const [rm, setRm] = React.useState("all"); const [entity, setEntity] = React.useState("all"); const [band, setBand] = React.useState("all"); const [top33, setTop33] = React.useState(false); const top = D.prospects[0]; let rows = D.prospects.filter(p => { if (horizon !== "all" && p.horizon !== horizon) return false; if (rm === "mine" && p.manager !== D.user.name) return false; if (entity !== "all" && p.kind !== entity) return false; if (band === "90" && p.qpi < 90) return false; if (band === "70" && (p.qpi < 70 || p.qpi >= 90)) return false; if (band === "50" && (p.qpi < 50 || p.qpi >= 70)) return false; if (band === "u50" && p.qpi >= 50) return false; if (top33 && p.rank > 6) return false; return true; }); const HPILL = [["all", "All", null], ["today", "Today", "var(--horizon-today)"], ["tomorrow", "Tomorrow", "var(--horizon-tomorrow)"], ["forever", "Forever", "var(--horizon-forever)"]]; const Select = ({ value, onChange, options, label }) => ( ); return (
{/* The next right move banner */}
{top.qpi} /100
Your next right move
{top.name}
QPI 90+ — go see them today. Follow up in 18h.
{/* Horizon pills + meta */}
{HPILL.map(([id, l, c]) => setHorizon(id)}>{l})} {rows.length} on the list · ranked by QPI
{/* Secondary filters */}