34 lines
963 B
TypeScript
34 lines
963 B
TypeScript
'use client';
|
|
|
|
import { useSession } from 'next-auth/react';
|
|
import { useRouter } from 'next/navigation';
|
|
import { useEffect } from 'react';
|
|
|
|
export default function ProfilePage() {
|
|
const { data: session, status } = useSession();
|
|
const router = useRouter();
|
|
|
|
useEffect(() => {
|
|
if (status === 'unauthenticated') {
|
|
router.replace('/account/login');
|
|
}
|
|
}, [status, router]);
|
|
|
|
if (status === 'loading') {
|
|
return <div className="flex justify-center items-center h-64">Loading...</div>;
|
|
}
|
|
|
|
if (!session?.user) {
|
|
return null;
|
|
}
|
|
|
|
return (
|
|
<div className="max-w-xl mx-auto mt-12 p-6 bg-white dark:bg-zinc-900 rounded shadow">
|
|
<h1 className="text-2xl font-bold mb-4">Profile</h1>
|
|
<div className="space-y-2">
|
|
<div><span className="font-semibold">Name:</span> {session.user.name || 'N/A'}</div>
|
|
<div><span className="font-semibold">Email:</span> {session.user.email}</div>
|
|
</div>
|
|
</div>
|
|
);
|
|
}
|