diff --git a/apps/frontend/src/components/Cluster.tsx b/apps/frontend/src/components/Cluster.tsx index e5930253..834bdb0d 100644 --- a/apps/frontend/src/components/Cluster.tsx +++ b/apps/frontend/src/components/Cluster.tsx @@ -1,66 +1,45 @@ import { useSelector } from "react-redux" import { Server } from "lucide-react" import { useParams } from "react-router" -import { Card } from "./ui/card" import { AppHeader } from "./ui/app-header" -import { selectClusterData } from "@/state/valkey-features/cluster/clusterSelectors" +import ClusterNode from "./ui/cluster-node" +import { selectCluster } from "@/state/valkey-features/cluster/clusterSelectors" export function Cluster() { const { clusterId } = useParams() - const clusterData = useSelector(selectClusterData(clusterId!)) + const clusterData = useSelector(selectCluster(clusterId!)) - const formatRole = (role: string | null) => { - if (!role) return "UNKNOWN" - const normalized = role.toLowerCase() - if (normalized === "master") return "PRIMARY" - if (normalized === "slave") return "REPLICA" - return role.toUpperCase() + if (!clusterData.clusterNodes || !clusterData.data) { + return ( +