import { FormattedMessage } from "react-intl"; import ProfilePreview from "Element/ProfilePreview"; import useRelayState from "Feed/RelayState"; import { useNavigate, useParams } from "react-router-dom"; import { parseId, unwrap } from "Util"; import { System } from "System"; import { removeRelay } from "Login"; import useLogin from "Hooks/useLogin"; import messages from "./messages"; const RelayInfo = () => { const params = useParams(); const navigate = useNavigate(); const login = useLogin(); const conn = Array.from(System.Sockets.values()).find(a => a.Id === params.id); const stats = useRelayState(conn?.Address ?? ""); return ( <>

navigate("/settings/relays")}>

{stats?.info?.name}

{stats?.info?.description}

{stats?.info?.pubkey && ( <>

)} {stats?.info?.software && (

{stats.info.software.startsWith("http") ? ( {stats.info.software} ) : ( <>{stats.info.software} )} {!stats.info.version?.startsWith("v") && "v"} {stats.info.version}
)} {stats?.info?.contact && (

{stats.info.contact}
)} {stats?.info?.supported_nips && ( <>

{stats.info.supported_nips.map(a => ( NIP-{a.toString().padStart(2, "0")} ))}
)}

{stats?.activeRequests.map(a => ( {a} ))}

{stats?.pendingRequests.map(a => ( {a} ))}
{ removeRelay(login, unwrap(conn).Address); navigate("/settings/relays"); }}>
); }; export default RelayInfo;