import { useEffect, useState } from "react"; import { cx } from "cva"; import { redirect } from "react-router-dom"; import GridBackground from "@components/GridBackground"; import Container from "@components/Container"; import { LinkButton } from "@components/Button"; import LogoBlueIcon from "@/assets/logo-blue.png"; import LogoWhiteIcon from "@/assets/logo-white.svg"; import DeviceImage from "@/assets/jetkvm-device-still.png"; import LogoMark from "@/assets/logo-mark.png"; import { DEVICE_API } from "@/ui.config"; import api from "../api"; export interface DeviceStatus { isSetup: boolean; } const loader = async () => { const res = await api .GET(`${DEVICE_API}/device/status`) .then(res => res.json() as Promise); if (res.isSetup) return redirect("/login-local"); return null; }; export default function WelcomeRoute() { const [imageLoaded, setImageLoaded] = useState(false); useEffect(() => { const img = new Image(); img.src = DeviceImage; img.onload = () => setImageLoaded(true); }, []); return ( <>
{imageLoaded && (
JetKVM Logo JetKVM Logo

Welcome to JetKVM

Control any computer remotely

JetKVM Device

JetKVM combines powerful hardware with intuitive software to provide a seamless remote control experience.

( )} textAlign="center" to="/welcome/mode" />
)}
); } WelcomeRoute.loader = loader;