Files
clawsec/pages
davida-ps 382db82483 Add Severity Filter Tabs to Advisory Feed Page (#87)
* feat: add severity filter tabs to advisory feed page

Add horizontal severity filter tabs (All, Critical, High, Medium, Low)
to the advisory feed page. Advisories are filtered by CVSS score ranges
matching NVD conventions. Tab counts update dynamically.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor: extract severity filter tabs into data-driven map

Replace five duplicated button blocks with a SEVERITY_TABS metadata
array and a single .map() loop. Class strings are kept as full literals
for Tailwind purge compatibility.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor: replace filteredAdvisories state with useMemo

filteredAdvisories is derived from advisories + selectedSeverity and
should not be independent state. Replace useState + filtering useEffect
with a single useMemo. Keep a minimal useEffect that only resets
currentPage on dependency changes.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat: add platform filter tabs (OpenClaw / NanoClaw) to advisory feed

Add a second row of filter tabs for platform selection using the clawd
color palette. Add platforms field to Advisory type to match feed data.
Both severity and platform filters compose via useMemo.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: extract shared FilterTabs component and treat missing platforms as universal

Extract a reusable FilterTabs component so severity and platform tab
rows share identical markup. Fix platform filter to treat advisories
with missing or empty platforms as matching all platforms, preventing
legacy entries from being silently dropped.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 20:14:08 +02:00
..