"use client";
import { Monitor, Moon, Sun } from "lucide-react";
import { useTranslations } from "next-intl";
import { useTheme } from "next-themes";
import { useEffect, useState } from "react";
import { Button } from "@/components/ui/button";
import {
DropdownMenu,
DropdownMenuContent,
DropdownMenuItem,
DropdownMenuTrigger,
} from "@/components/ui/dropdown-menu";
export function ThemeToggle() {
const { setTheme, theme } = useTheme();
const t = useTranslations("header.theme");
const [mounted, setMounted] = useState(false);
// Evitar hidratação mismatch
useEffect(() => {
setMounted(true);
}, []);
if (!mounted) {
// Renderizar um placeholder durante SSR para manter layout consistente
return (
);
}
return (
setTheme("light")}>
{t("light")}
setTheme("dark")}>
{t("dark")}
setTheme("system")}>
{t("system")}
);
}