/* ============================================================================ VIEW 3 — WATCHLIST (filterable tracked tickers) ============================================================================ */ const { useState:useStateWL } = React; const STATUS_STYLE = { "New": { c:"#7aa7ff", bg:"rgba(122,167,255,0.12)", b:"rgba(122,167,255,0.35)" }, "Tracking": { c:"var(--text-2)", bg:"var(--fill-strong)", b:"var(--line)" }, "Triggered": { c:"#15bd80", bg:"rgba(31,224,160,0.12)", b:"rgba(31,224,160,0.4)" }, "Dropped": { c:"#8a929e", bg:"var(--fill-soft)", b:"var(--line)" }, }; function StatusTag({ status }){ const s = STATUS_STYLE[status] || STATUS_STYLE["Tracking"]; const dropped = status==="Dropped"; return ( {status==="Triggered" && } {status} ); } function FilterPills({ label, options, value, onChange }){ return (
{filtered.length} of {rows.length} tracked tickers
| =4&&i<=6?"text-right":"text-left")} style={{color:"var(--muted)"}}>{c} | ))}|||||||
|---|---|---|---|---|---|---|---|
|
{r.ticker}
|
{r.conviction}
|
{fmtPrice(r.price)}
|
{r.sector} | {r.days_tracked} |