dark-mode-toggle.tsx 641 B

12345678910111213141516171819202122232425
  1. "use client";
  2. import { Moon, Sun } from "lucide-react";
  3. import { useTheme } from "@/app/providers";
  4. import { Switch } from "@/components/ui/switch";
  5. export function DarkModeToggle() {
  6. const { theme, setTheme } = useTheme();
  7. const toggleTheme = () => {
  8. setTheme(theme === "dark" ? "light" : "dark");
  9. };
  10. return (
  11. <div className="flex items-center space-x-2">
  12. <Sun className="h-4 w-4 text-muted-foreground" />
  13. <Switch
  14. checked={theme === "dark"}
  15. onCheckedChange={toggleTheme}
  16. aria-label="Toggle dark mode"
  17. />
  18. <Moon className="h-4 w-4 text-muted-foreground" />
  19. </div>
  20. );
  21. }