import { useState, useEffect } from "react"; import { ProfileService } from "../services/profile.service"; import { useAuth } from "../context/AuthContext"; import { AuthService } from "../services/auth.service"; export default function PerfilPage() { const { user, refreshSession } = useAuth(); const [loading, setLoading] = useState(true); const [saving, setSaving] = useState(false); const [showEmailModal, setShowEmailModal] = useState(false); const [newEmail, setNewEmail] = useState(""); const [authCode, setAuthCode] = useState(""); // Código Google Authenticator const [loadingEmail, setLoadingEmail] = useState(false); const [formData, setFormData] = useState({ firstName: "", lastName: "", phoneNumber: "", }); useEffect(() => { loadProfile(); }, []); const loadProfile = async () => { try { const data = await ProfileService.getProfile(); setFormData({ firstName: data.firstName || "", lastName: data.lastName || "", phoneNumber: data.phoneNumber || "", }); } catch (err) { console.error("Error loading profile", err); } finally { setLoading(false); } }; const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); setSaving(true); try { await ProfileService.updateProfile(formData); alert("Perfil actualizado con éxito"); if (refreshSession) refreshSession(); } catch (err) { alert("Error al actualizar el perfil"); } finally { setSaving(false); } }; if (loading) { return (
Gestiona tu información personal
{user?.email}
Ingresa tu nueva dirección y valida con tu autenticador.