import { ChevronDown, LanguagesIcon } from "lucide-react"; import { useState, useEffect } from "react"; import Cookies from "js-cookie"; import { useNavStore } from "../store"; const getPath = (lang: string, path: string) => lang === "en" ? path : "/" + path; export function LanguageDropdown({ isMobile, path, }: { isMobile: boolean; path: string; }) { const [langOpen, setLangOpen] = useState(false); const { selectedLang, setLanguage } = useNavStore(); const languages = [ { code: "en", name: "English" }, { code: "ar", name: "العربية" }, { code: "de", name: "Deutsch" }, { code: "fr", name: "Français" }, { code: "id", name: "Indonesia" }, { code: "ru", name: "Русский" }, { code: "zh", name: "中文" }, { code: "bn", name: "বাংলা" }, { code: "es", name: "Español" }, { code: "hi", name: "हिन्दी" }, { code: "pt", name: "Português" }, ]; return (
{langOpen && (
setLangOpen(false)} /> )}
{languages.map((lang) => ( { setLanguage(lang); Cookies.set("languageToken", lang.code === "en" ? "" : lang.code); setLangOpen(false); }} className={`w-full flex items-center gap-3 px-4 py-2 hover:bg-gray-50 transition-colors ${ selectedLang?.code === lang.code ? "bg-gray-50" : "" }`} > {lang.name} ))}
); }