'use client' import { useState } from 'react' import { SettingsSection, SettingToggle, SettingSelect } from '@/components/settings' import { useLanguage } from '@/lib/i18n' import { updateAISettings } from '@/app/actions/ai-settings' import { toast } from 'sonner' import { useRouter } from 'next/navigation' interface GeneralSettingsClientProps { initialSettings: { preferredLanguage: string emailNotifications: boolean desktopNotifications: boolean } } export function GeneralSettingsClient({ initialSettings }: GeneralSettingsClientProps) { const { t, setLanguage: setContextLanguage } = useLanguage() const router = useRouter() const [language, setLanguage] = useState(initialSettings.preferredLanguage || 'auto') const [emailNotifications, setEmailNotifications] = useState(initialSettings.emailNotifications ?? false) const [desktopNotifications, setDesktopNotifications] = useState(initialSettings.desktopNotifications ?? false) const handleLanguageChange = async (value: string) => { setLanguage(value) await updateAISettings({ preferredLanguage: value as any }) if (value === 'auto') { localStorage.removeItem('user-language') toast.success(t('settings.languageAuto') || 'Language set to Auto') } else { localStorage.setItem('user-language', value) setContextLanguage(value as any) toast.success(t('profile.languageUpdateSuccess') || 'Language updated') } setTimeout(() => router.refresh(), 300) } const handleEmailNotificationsChange = async (enabled: boolean) => { setEmailNotifications(enabled) await updateAISettings({ emailNotifications: enabled }) toast.success(t('settings.settingsSaved') || 'Saved') } const handleDesktopNotificationsChange = async (enabled: boolean) => { setDesktopNotifications(enabled) await updateAISettings({ desktopNotifications: enabled }) toast.success(t('settings.settingsSaved') || 'Saved') } return (

{t('generalSettings.title')}

{t('generalSettings.description')}

🌍} description={t('profile.languagePreferencesDescription')} > 🔔} description={t('settings.notificationsDesc')} >
) }