{title}
{items.length} events
{showFilters && (
setShowFilterBar((v) => !v)} aria-expanded={showFilterBar} className={`inline-flex h-7 items-center gap-1 rounded-md border border-line px-2 text-[11.5px] ${activeFilterCount ? "border-signal/50 text-signal" : "text-fg-muted hover:text-fg"}`} title="Filters">
Filters
{activeFilterCount > 0 && {activeFilterCount} }
)}
setPaused(!paused)} aria-pressed={paused} className={`inline-flex h-7 items-center gap-1 rounded-md border border-line px-2 text-[11.5px] ${paused ? "border-warn/50 text-warn" : "text-fg-muted hover:text-fg"}`} title={paused ? "Resume live" : "Pause live (backend keeps ingesting)"}>
{paused ? : } {paused ? "Resume" : "Pause"}
{showTabs && !fixed && (
{CHANNELS.map((c) => (
setTab(c.key)} className={`whitespace-nowrap rounded-md px-2 py-1 text-[12px] ${tab === c.key ? "bg-panel-2 text-fg" : "text-fg-muted hover:text-fg"} ${c.key === "silent" ? "text-silent" : c.key === "breaking" ? "text-hot" : ""}`}>
{c.label}
))}
)}
{showFilters && showFilterBar && (
setF({ silent_change: !filters.silent_change || undefined })} tone="silent">Silent
setF({ first_party: !filters.first_party || undefined })} tone="signal">First-party
setF({ confirmed: !filters.confirmed || undefined })} tone="ok">Confirmed
setF({ signal_min: e.target.value ? Number(e.target.value) : undefined })} className="h-6 rounded-md border border-line bg-panel px-1.5 text-[11.5px]">
signal ≥ any
signal ≥ 50
signal ≥ 65
signal ≥ 80
signal ≥ 90
setF({ group: e.target.value || undefined })} className="h-6 max-w-[11rem] rounded-md border border-line bg-panel px-1.5 text-[11.5px]">
all groups
{Object.entries(GROUP_LABELS).map(([k, v]) => (
{v}
))}
setF({ order: e.target.value === "recent" ? undefined : (e.target.value as FeedFilters["order"]) })} className="h-6 rounded-md border border-line bg-panel px-1.5 text-[11.5px]">
newest first
highest signal
highest importance
setF({ country: e.target.value.toUpperCase().slice(0, 3) || undefined })} placeholder="CC" maxLength={3} className="h-6 w-12 rounded-md border border-line bg-panel px-1.5 font-mono text-[11.5px] uppercase placeholder:text-fg-subtle" title="Country (ISO code)" />
{filters.event_type && type: {filters.event_type.replace(/_/g, " ")} setF({ event_type: undefined })}> }
{filters.q && “{filters.q}” setF({ q: undefined })}> }
views:
{SAVED_VIEWS.slice(0, 4).map((v) => (
{v.label}
))}
{activeFilterCount > 0 && (
setFilters({})} className="rounded-sm px-1.5 py-px text-[10.5px] text-fg-subtle hover:text-fg">clear
)}
)}
{pending.length > 0 && (
{pending.length} new event{pending.length === 1 ? "" : "s"}{paused ? " · paused" : ""}
)}
{items.length === 0 && !loading && (
{activeFilterCount ? "No events match these filters. Live events that match will appear here." : "No events in this channel yet. Sensors are being checked continuously — meaningful changes will appear here the moment they are detected."}
)}
{items.map((ev) => (
))}
Showing {items.length}{items.length >= MAX_ROWS ? ` (capped at ${MAX_ROWS})` : ""}
⌘K search
{cursor ? (
load(false, cursor)} className="rounded-md border border-line bg-panel-2 px-2.5 py-1 text-[12px] text-fg hover:border-line-strong disabled:opacity-50">
{loading ? "Loading…" : "Load more"}
) : (
Explore →
)}
);
}
function Toggle({ on, onClick, children, tone }: { on: boolean; onClick: () => void; children: React.ReactNode; tone: "silent" | "signal" | "ok" }) {
const onCls = tone === "silent" ? "border-silent/50 bg-silent-soft text-silent" : tone === "ok" ? "border-ok/50 bg-ok/10 text-ok" : "border-signal/50 bg-signal-soft text-signal";
return (