EmployeesManagementPortalRe.../src/app/context/SidebarContext.js

32 lines
858 B
JavaScript

// src/app/context/SidebarContext.js
'use client';
import { createContext, useContext, useState } from "react";
const SidebarContext = createContext();
export function SidebarProvider({ children }) {
const [isCollapsed, setIsCollapsed] = useState(false); // Changed from isOpen to isCollapsed
const toggleSidebar = () => setIsCollapsed(!isCollapsed);
const collapseSidebar = () => setIsCollapsed(true);
const expandSidebar = () => setIsCollapsed(false);
return (
<SidebarContext.Provider value={{
isCollapsed,
toggleSidebar,
collapseSidebar,
expandSidebar
}}>
{children}
</SidebarContext.Provider>
);
}
export function useSidebar() {
const context = useContext(SidebarContext);
if (!context) {
throw new Error('useSidebar must be used within a SidebarProvider');
}
return context;
}