diff --git a/app/auth/page.tsx b/app/auth/page.tsx index 53ddbe7..6e40119 100644 --- a/app/auth/page.tsx +++ b/app/auth/page.tsx @@ -2,6 +2,7 @@ import dynamic from "next/dynamic"; import { useEffect, useState } from "react"; +import { useRouter } from "next/navigation"; // Dynamically import SuperTokens component (client-side only) const SuperTokensAuthComponent = dynamic( @@ -10,11 +11,26 @@ const SuperTokensAuthComponent = dynamic( ); export default function AuthPage() { + const router = useRouter(); const [mounted, setMounted] = useState(false); useEffect(() => { setMounted(true); - }, []); + + // Check if already logged in after a short delay + setTimeout(async () => { + try { + const { doesSessionExist } = await import("supertokens-web-js/recipe/session"); + const exists = await doesSessionExist(); + if (exists) { + router.push("/marks-account/projects"); + } + } catch (error) { + // SuperTokens not initialized yet, continue to show auth page + console.log("Session check skipped"); + } + }, 500); + }, [router]); if (!mounted) { return ( diff --git a/app/page.tsx b/app/page.tsx index ff8da30..4be1156 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -1,43 +1,10 @@ "use client"; import Link from "next/link"; -import { useEffect, useState } from "react"; -import { useRouter } from "next/navigation"; import { Button } from "@/components/ui/button"; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"; -import { doesSessionExist } from "supertokens-web-js/recipe/session"; export default function HomePage() { - const router = useRouter(); - const [isLoading, setIsLoading] = useState(true); - const [isLoggedIn, setIsLoggedIn] = useState(false); - - useEffect(() => { - // Check if user is already logged in - doesSessionExist().then((exists) => { - setIsLoggedIn(exists); - setIsLoading(false); - - // If logged in, redirect to projects - if (exists) { - router.push("/marks-account/projects"); - } - }).catch(() => { - setIsLoading(false); - }); - }, [router]); - - if (isLoading) { - return ( -
Loading...
-