"use client"; import { observer } from "mobx-react"; // components import { LogoSpinner } from "@/components/common/logo-spinner"; import { InstanceFailureView } from "@/components/instance/failure"; import { InstanceSetupForm } from "@/components/instance/setup-form"; // hooks import { useInstance } from "@/hooks/store"; // components import type { Route } from "./+types/page"; import { InstanceSignInForm } from "./sign-in-form"; const HomePage = () => { // store hooks const { instance, error } = useInstance(); // if instance is not fetched, show loading if (!instance && !error) { return (
); } // if instance fetch fails, show failure view if (error) { return ; } // if instance is fetched and setup is not done, show setup form if (instance && !instance?.is_setup_done) { return ; } // if instance is fetched and setup is done, show sign in form return ; }; export default observer(HomePage); export const meta: Route.MetaFunction = () => [ { title: "Admin – Instance Setup & Sign-In" }, { name: "description", content: "Configure your Plane instance or sign in to the admin portal." }, ];