import { useState, useEffect } from 'react'; import { Settings, User, Bell, Shield, Palette, Globe } from 'lucide-react'; import { Button } from '@/components/ui/button'; import { useAuthStore } from '@/features/auth/store/authStore'; import { useUIStore } from '@/stores/ui'; import { useToast } from '@/hooks/useToast'; import { ThemeSwitcher } from '@/components/theme/ThemeSwitcher'; export function SettingsPage() { const { user } = useAuthStore(); const { theme, setTheme, language, setLanguage } = useUIStore(); const { toast } = useToast(); const [activeTab, setActiveTab] = useState('profile'); const [colorTheme, setColorTheme] = useState('cyber'); // Apply color theme to document useEffect(() => { document.documentElement.setAttribute('data-color-theme', colorTheme); }, [colorTheme]); const handleThemeChange = (newTheme: string) => { setColorTheme(newTheme); toast({ title: 'Theme Changed', description: `Switched to ${newTheme} theme` }); }; const tabs = [ { id: 'profile', label: 'Profile', icon: User }, { id: 'notifications', label: 'Notifications', icon: Bell }, { id: 'privacy', label: 'Privacy', icon: Shield }, { id: 'appearance', label: 'Appearance', icon: Palette }, { id: 'language', label: 'Language', icon: Globe }, ]; return (
{/* Header */}

Settings

Manage your account preferences

{/* Sidebar */}
{/* Content */}
{activeTab === 'profile' && (

Profile Settings

)} {activeTab === 'appearance' && (

Appearance

{['light', 'dark', 'system'].map((t) => ( ))}
)} {activeTab === 'language' && (

Language

)} {(activeTab === 'notifications' || activeTab === 'privacy') && (

{activeTab === 'notifications' ? 'Notifications' : 'Privacy'}

Settings for {activeTab} will be available soon.

)}
); }