"use client"; import { IPInfo } from "@/app/api/server-ip/route"; import { Loader } from "@/components/loading/Loader"; import { Card, CardContent } from "@/components/ui/card"; import { nezhaFetcher } from "@/lib/utils"; import { useTranslations } from "next-intl"; import useSWRImmutable from "swr/immutable"; export default function ServerIPInfo({ server_id }: { server_id: number }) { const t = useTranslations("IPInfo"); const { data } = useSWRImmutable( `/api/server-ip?server_id=${server_id}`, nezhaFetcher, ); if (!data) { return (
); } return ( <>

{"ASN"}

{data.asn.autonomous_system_organization}

{t("asn_number")}

AS{data.asn.autonomous_system_number}

{t("registered_country")}

{data.city.registered_country?.names.en}

{"ISO"}

{data.city.country?.iso_code}

{t("city")}

{data.city.city?.names.en}

{t("longitude")}

{data.city.location?.longitude}

{t("latitude")}

{data.city.location?.latitude}

{t("time_zone")}

{data.city.location?.time_zone}
{data.city.postal && (

{t("postal_code")}

{data.city.postal?.code}
)}
); }