Files
supabase/apps/docs/hooks/useMenuState.ts
Jonathan Summers-Muir 44065bcfea fix mobile menu
2022-12-13 20:08:51 +08:00

31 lines
709 B
TypeScript

import { proxy, useSnapshot } from 'valtio'
export const menuState = proxy({
// values
menuActiveRefId: 'home',
// set states
setMenuActiveRefId: (value) => {
menuState.menuActiveRefId = value
},
menuLevelId: '',
setMenuLevelId: (value) => {
menuState.menuMobileOpen = false
menuState.menuLevelId = value
},
menuMobileOpen: false,
setMenuMobileOpen: (value) => {
menuState.menuMobileOpen = value
},
})
export const useMenuActiveRefId = () => {
return useSnapshot(menuState).menuActiveRefId
}
export const useMenuLevelId = () => {
return useSnapshot(menuState).menuLevelId
}
export const useMenuMobileOpen = () => {
return useSnapshot(menuState).menuMobileOpen
}