hermes-web/app/page.tsx

59 lines
1.5 KiB
TypeScript

"use client";
import { redirect } from "next/navigation";
import Link from "next/link";
import { signOut, useSession } from "next-auth/react";
import { useEffect, useState } from "react";
import axios from "axios";
export default function Home() {
const { data: session, status } = useSession();
const [previousUsername, setPreviousUsername] = useState<string>()
// if (status !== "authenticated") {
// redirect('/api/auth/signin?redirectUrl=/');
// }
useEffect(() => {
if (status !== "authenticated" || previousUsername == session.user?.name) {
console.log("CANCELED")
return
}
setPreviousUsername(session.user?.name as string)
async function saveAccount() {
const data = await axios.post("/api/account")
if (data == null || data == undefined) {
console.log("ERROR")
}
}
saveAccount().catch(console.error)
}, [session])
return (
<main
style={{
display: "flex",
justifyContent: "center",
alignItems: "center",
height: "70vh",
}}
>
<div className="header">
{session && (
<Link href="#" onClick={() => signOut()} className="btn-signin">
Sign out
</Link>
)}
{!session && (
<Link href="/auth/login" className="btn-signin">
Sign in
</Link>
)}
</div>
</main>
);
}