import React, { useState } from "react"; import { User, Mail, Phone, MapPin, Lock, Bell, Palette, Globe, Save, Camera, GraduationCap, } from "lucide-react"; import { Button } from "../components/Button"; import { useAuth } from "../contexts/AuthContext"; import { UserRole } from "../types"; export const SettingsPage: React.FC = () => { const { user } = useAuth(); const isAdmin = user?.role === UserRole.SUPERADMIN || user?.role === UserRole.BUSINESS_OWNER; const [activeTab, setActiveTab] = useState< "profile" | "account" | "notifications" | "appearance" | "courses" >("profile"); const [profileData, setProfileData] = useState({ name: "João Silva", email: "joao.silva@photum.com", phone: "(41) 99999-0000", location: "Curitiba, PR", bio: "Fotógrafo profissional especializado em eventos e formaturas há mais de 10 anos.", avatar: "https://i.pravatar.cc/150?img=68", }); const [notificationSettings, setNotificationSettings] = useState({ emailNotifications: true, pushNotifications: true, smsNotifications: false, eventReminders: true, paymentAlerts: true, teamUpdates: false, }); const [appearanceSettings, setAppearanceSettings] = useState({ theme: "light", language: "pt-BR", dateFormat: "DD/MM/YYYY", currency: "BRL", }); const handleSaveProfile = () => { alert("Perfil atualizado com sucesso!"); }; const handleSaveNotifications = () => { alert("Configurações de notificações salvas!"); }; const handleSaveAppearance = () => { alert("Configurações de aparência salvas!"); }; return (
{/* Header */}

Configurações

Gerencie suas preferências e informações da conta

{/* Mobile Tabs - Horizontal */}
{/* Desktop Sidebar - Vertical */}
{/* Content */}
{/* Profile Tab */} {activeTab === "profile" && (

Informações do Perfil

Avatar

{profileData.name}

{profileData.email}

setProfileData({ ...profileData, name: e.target.value, }) } className="w-full pl-10 pr-4 py-3 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-brand-gold" />
setProfileData({ ...profileData, email: e.target.value, }) } className="w-full pl-10 pr-4 py-3 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-brand-gold" />
setProfileData({ ...profileData, phone: e.target.value, }) } className="w-full pl-10 pr-4 py-3 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-brand-gold" />
setProfileData({ ...profileData, location: e.target.value, }) } className="w-full pl-10 pr-4 py-3 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-brand-gold" />