"use client"; import ProfileManager from "@/components/ProfileManager"; import { Avatar, AvatarFallback } from "@/components/ui/avatar"; import { getToken, API_URL } from "@/lib/auth"; import { ChevronLeft, Edit2, Lock, Save } from "lucide-react"; import { useRouter } from "next/navigation"; import React, { useEffect, useState } from "react"; import { UserData } from "@/types/auth"; const ProfilePage = () => { const router = useRouter(); const [userData, setUserData] = useState(); const [editStatus, setEditStatus] = useState(false); useEffect(() => { async function fetchUser() { try { const token = await getToken(); if (!token) return; const response = await fetch(`${API_URL}/me`, { method: "GET", headers: { Authorization: `Bearer ${token}`, }, }); if (response.ok) { const fetchedUserData = await response.json(); setUserData(fetchedUserData); } } catch (error) { console.error("Error fetching user data: ", error); } } fetchUser(); }, []); const handleSave = async () => { // try { // const token = await getToken(); // if (!token || !userData) return; // const response = await fetch(`${API_URL}/profile/edit`, { // method: "POST", // headers: { // "Content-Type": "application/json", // Authorization: `Bearer ${token}`, // }, // body: JSON.stringify(userData), // }); // if (response.ok) { // setEditStatus(false); // } else { // console.error("Failed to save profile"); // } // } catch (error) { // console.error("Error saving profile:", error); // } console.log("Updated user data:", userData); setEditStatus(false); }; return (
{userData?.name ? userData.name.charAt(0).toUpperCase() : ""}
); }; export default ProfilePage;