'use client'; import { useState } from 'react'; import { useLanguage } from '@/context/LanguageContext'; import { Locale, localeNames, localeFlags } from '@/i18n'; import { ChevronDownIcon, GlobeAltIcon } from '@heroicons/react/24/outline'; import clsx from 'clsx'; interface LanguageToggleProps { variant?: 'dropdown' | 'buttons'; showFlags?: boolean; } export default function LanguageToggle({ variant = 'dropdown', showFlags = true }: LanguageToggleProps) { const { locale, setLocale } = useLanguage(); const [isOpen, setIsOpen] = useState(false); const availableLocales = Object.keys(localeNames) as Locale[]; if (variant === 'buttons') { return (
{availableLocales.map((loc) => ( ))}
); } return (
{isOpen && ( <>
setIsOpen(false)} />
{availableLocales.map((loc) => ( ))}
)}
); }