import { useTranslation } from "react-i18next"; import { ActivityIndicator, View } from "react-native"; import type { ServerUrlResolverState } from "@/hooks/useServerUrlResolver"; import { Text } from "./Text"; /** * Compact status line for the server-URL resolver, for screens whose layout * (e.g. ListItem rows) doesn't fit the full `ServerUrlField`. Renders nothing * while idle. */ export function ServerUrlStatusText({ state, className = "", }: { state: ServerUrlResolverState; className?: string; }) { const { t } = useTranslation(); if (state.status === "idle") return null; if (state.status === "resolving") { return ( {t("server_url.resolving")} ); } if (state.status === "ok") { return ( {t("server_url.resolved", { url: state.resolvedUrl })} ); } const message = state.reason === "wrong-service" ? t("server_url.wrong_service") : state.reason === "invalid" ? t("server_url.invalid_url") : t("server_url.unreachable"); return {message}; }