import { RefreshCw, ServerOff } from "lucide-react"; import { isRouteErrorResponse, useRevalidator } from "react-router"; import { isConnectionError } from "~/server/headscale/api/error-client"; import cn from "~/utils/cn"; import Button from "./button"; import { ErrorBanner } from "./error-banner"; interface PageErrorProps { error: unknown; page: string; } export default function PageError({ error, page }: PageErrorProps) { const { revalidate, state } = useRevalidator(); if (isRouteErrorResponse(error) && isConnectionError(error.data)) { return (
This page could not be loaded because the Headscale server is unreachable. It will be available once the connection is restored.