"use client"; import { useLocale } from "next-intl"; import { useParams } from "next/navigation"; import { locales } from "@/config"; import { usePathname, useRouter } from "@/i18n/routing"; import { useEffect, useTransition } from "react"; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from "@/components/ui/select"; import Image from "next/image"; import Cookies from "js-cookie"; export default function LocalSwitcher() { const [isPending, startTransition] = useTransition(); const router = useRouter(); const pathname = usePathname(); const params = useParams(); const localActive = useLocale() || "in"; const defaultLocale = Cookies.get("locale"); useEffect(() => { console.log("locale", defaultLocale); if (!defaultLocale) { Cookies.set("locale", "in"); startTransition(() => { router.replace(pathname, { locale: "in" }); }); } }, []); const onSelectChange = (nextLocale: string) => { startTransition(() => { router.replace(pathname, { locale: nextLocale }); }); Cookies.set("locale", nextLocale); }; return ( ); }