"use client"; import { Globe } from "lucide-react"; import { Button } from "@/components/ui/button"; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from "@/components/ui/select"; import { useI18n, type Locale } from "@/lib/i18n"; const languages: { value: Locale; label: string; flag: string }[] = [ { value: "en", label: "English", flag: "🇬🇧" }, { value: "fr", label: "Français", flag: "🇫🇷" }, { value: "es", label: "Español", flag: "🇪🇸" }, { value: "de", label: "Deutsch", flag: "🇩🇪" }, { value: "pt", label: "Português", flag: "🇧🇷" }, { value: "it", label: "Italiano", flag: "🇮🇹" }, { value: "nl", label: "Nederlands", flag: "🇳🇱" }, { value: "ru", label: "Русский", flag: "🇷🇺" }, { value: "ja", label: "日本語", flag: "🇯🇵" }, { value: "ko", label: "한국어", flag: "🇰🇷" }, { value: "zh", label: "中文", flag: "🇨🇳" }, { value: "ar", label: "العربية", flag: "🇸🇦" }, { value: "fa", label: "فارسی", flag: "🇮🇷" }, ]; interface LanguageSwitcherProps { variant?: "select" | "button"; } export function LanguageSwitcher({ variant = "select" }: LanguageSwitcherProps) { const { locale, setLocale } = useI18n(); if (variant === "button") { const currentIndex = languages.findIndex((l) => l.value === locale); const nextIndex = (currentIndex + 1) % languages.length; const nextLang = languages[nextIndex]; const currentLang = languages[currentIndex]; return ( ); } return ( ); }