UNPKG

@mskcc/carbon-react

Version:

Carbon react components for the MSKCC DSM

33 lines (29 loc) 799 B
/** * MSKCC 2021, 2024 */ import React__default, { createContext, useContext, useState } from 'react'; const SidebarContext = /*#__PURE__*/createContext(undefined); const useSidebar = () => { const context = useContext(SidebarContext); if (!context) { throw new Error('useSidebar must be used within a SidebarProvider'); } return context; }; const SidebarProvider = _ref => { let { children, initialCollapsed = false } = _ref; const [collapsed, setCollapsed] = useState(initialCollapsed); const toggleSidebar = () => { setCollapsed(prev => !prev); }; return /*#__PURE__*/React__default.createElement(SidebarContext.Provider, { value: { collapsed, toggleSidebar } }, children); }; export { SidebarContext, SidebarProvider, useSidebar };