import { useEffect } from "react"; import { observer } from "mobx-react"; import { useRouter } from "next/navigation"; import { Outlet } from "react-router"; // components import { LogoSpinner } from "@/components/common/logo-spinner"; import { NewUserPopup } from "@/components/new-user-popup"; // hooks import { useUser } from "@/hooks/store"; // local components import type { Route } from "./+types/layout"; import { AdminHeader } from "./header"; import { AdminSidebar } from "./sidebar"; function AdminLayout(_props: Route.ComponentProps) { // router const { replace } = useRouter(); // store hooks const { isUserLoggedIn } = useUser(); useEffect(() => { if (isUserLoggedIn === false) replace("/"); }, [replace, isUserLoggedIn]); if (isUserLoggedIn === undefined) { return (
); } if (isUserLoggedIn) { return (
); } return <>; } export default observer(AdminLayout);