import React from "react"; import { Button } from "@/components/button.tsx"; import { Shield, ExternalLink, Loader2 } from "lucide-react"; import { useTranslation } from "react-i18next"; interface TailscaleCheckDialogProps { isOpen: boolean; authUrl: string; message?: string; stage: "prompt" | "waiting"; onCancel: () => void; onOpenUrl: () => void; backgroundColor?: string; } export function TailscaleCheckDialog({ isOpen, authUrl, message, stage, onCancel, onOpenUrl, backgroundColor, }: TailscaleCheckDialogProps) { const { t } = useTranslation(); if (!isOpen) return null; return (

{t("terminal.tailscaleCheckRequired")}

{t("terminal.tailscaleCheckDescription")}

{message && (

{message}

)} {stage === "prompt" && authUrl && ( )} {stage === "waiting" && (

{t("terminal.tailscaleCheckWaiting")}

)}
); }