Skip to content

Commit

Permalink
feat(overview): filter by group
Browse files Browse the repository at this point in the history
  • Loading branch information
hamster1963 committed Dec 6, 2024
1 parent d746411 commit d103612
Showing 1 changed file with 19 additions and 19 deletions.
38 changes: 19 additions & 19 deletions src/pages/Server.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -83,25 +83,37 @@ export default function Servers() {
);
}

const totalServers = nezhaWsData?.servers?.length || 0;
const filteredServers =
nezhaWsData?.servers?.filter((server) => {
if (currentGroup === "All") return true;
const group = groupData?.data?.find(
(g: ServerGroup) =>
g.group.name === currentGroup &&
Array.isArray(g.servers) &&
g.servers.includes(server.id),
);
return !!group;
}) || [];

const totalServers = filteredServers.length || 0;
const onlineServers =
nezhaWsData?.servers?.filter(
filteredServers.filter(
(server) => formatNezhaInfo(nezhaWsData.now, server).online,
)?.length || 0;
const offlineServers =
nezhaWsData?.servers?.filter(
filteredServers.filter(
(server) => !formatNezhaInfo(nezhaWsData.now, server).online,
)?.length || 0;
const up =
nezhaWsData?.servers?.reduce(
filteredServers.reduce(
(total, server) =>
formatNezhaInfo(nezhaWsData.now, server).online
? total + (server.state?.net_out_transfer ?? 0)
: total,
0,
) || 0;
const down =
nezhaWsData?.servers?.reduce(
filteredServers.reduce(
(total, server) =>
formatNezhaInfo(nezhaWsData.now, server).online
? total + (server.state?.net_in_transfer ?? 0)
Expand All @@ -110,34 +122,22 @@ export default function Servers() {
) || 0;

const upSpeed =
nezhaWsData?.servers?.reduce(
filteredServers.reduce(
(total, server) =>
formatNezhaInfo(nezhaWsData.now, server).online
? total + (server.state?.net_out_speed ?? 0)
: total,
0,
) || 0;
const downSpeed =
nezhaWsData?.servers?.reduce(
filteredServers.reduce(
(total, server) =>
formatNezhaInfo(nezhaWsData.now, server).online
? total + (server.state?.net_in_speed ?? 0)
: total,
0,
) || 0;

const filteredServers =
nezhaWsData?.servers?.filter((server) => {
if (currentGroup === "All") return true;
const group = groupData?.data?.find(
(g: ServerGroup) =>
g.group.name === currentGroup &&
Array.isArray(g.servers) &&
g.servers.includes(server.id),
);
return !!group;
}) || [];

return (
<div className="mx-auto w-full max-w-5xl px-0">
<ServerOverview
Expand Down

0 comments on commit d103612

Please sign in to comment.