diff --git a/src/pages/AdminRemnawave.tsx b/src/pages/AdminRemnawave.tsx index 17d3ad2..d7fee72 100644 --- a/src/pages/AdminRemnawave.tsx +++ b/src/pages/AdminRemnawave.tsx @@ -37,6 +37,10 @@ import { DevicesIcon, StatUptimeIcon, UsersIcon, + CheckCircleIcon, + BanIcon, + TrafficIcon, + ClockIcon, SyncIcon, RefreshIcon, PlayIcon, @@ -75,6 +79,22 @@ const providerFaviconUrl = (link: string | null | undefined): string | null => { } }; +// Meaningful icon per Remnawave user status (instead of the same people glyph). +const userStatusIcon = (status: string): React.ReactNode => { + switch (status.toUpperCase()) { + case 'ACTIVE': + return ; + case 'DISABLED': + return ; + case 'LIMITED': + return ; + case 'EXPIRED': + return ; + default: + return ; + } +}; + // Realtime interface throughput (bytes/s) → network-style speed, matching the // panel exactly: the unit step is by 1024 bytes, but the value is shown in bits // (×8 / 1000), e.g. 341 KB/s → "2728 Kb/s", 1.34 MB/s → "10.72 Mb/s". @@ -637,7 +657,7 @@ function OverviewTab({ key={status} label={status} value={count} - icon={} + icon={userStatusIcon(status)} color={status === 'ACTIVE' ? 'green' : status === 'DISABLED' ? 'red' : 'accent'} /> ))}