diff --git a/src/components/AdminSidebar.js b/src/components/AdminSidebar.js index fc70405..ffc10bf 100644 --- a/src/components/AdminSidebar.js +++ b/src/components/AdminSidebar.js @@ -1,5 +1,6 @@ import React, { useState, useEffect } from 'react'; import { Link, useLocation, useNavigate } from 'react-router-dom'; +import { useTheme } from 'next-themes'; import { useAuth } from '../context/AuthContext'; import api from '../utils/api'; import { Badge } from './ui/badge'; @@ -23,16 +24,20 @@ import { HardDrive, Repeat, Heart, + Sun, + Moon, } from 'lucide-react'; const AdminSidebar = ({ isOpen, onToggle, isMobile }) => { const location = useLocation(); const navigate = useNavigate(); const { user, logout } = useAuth(); + const { theme, setTheme } = useTheme(); const [pendingCount, setPendingCount] = useState(0); const [storageUsed, setStorageUsed] = useState(0); const [storageLimit, setStorageLimit] = useState(0); const [storagePercentage, setStoragePercentage] = useState(0); + const isDark = theme === 'dark'; // Fetch pending approvals count useEffect(() => { @@ -86,6 +91,10 @@ const AdminSidebar = ({ isOpen, onToggle, isMobile }) => { navigate('/login'); }; + const handleThemeToggle = () => { + setTheme(isDark ? 'light' : 'dark'); + }; + const navItems = [ { name: 'Dashboard', @@ -211,7 +220,7 @@ const AdminSidebar = ({ isOpen, onToggle, isMobile }) => { > {/* Active border */} {active && !item.disabled && ( -
+ )}+
View Public Site
+
{user.first_name} {user.last_name}
-+
{user.role}
+
{formatBytes(storageUsed)} / {formatBytes(storageLimit)}