Files
yaak-mountain-loop/src-web/hooks/useSidebarHidden.ts
2023-04-01 20:58:53 -07:00

21 lines
498 B
TypeScript

import { useMemo } from 'react';
import { NAMESPACE_NO_SYNC } from '../lib/keyValueStore';
import { useKeyValue } from './useKeyValue';
export function useSidebarHidden() {
const { set, value } = useKeyValue<boolean>({
namespace: NAMESPACE_NO_SYNC,
key: 'sidebar_hidden',
defaultValue: false,
});
return useMemo(() => {
return {
show: () => set(false),
hide: () => set(true),
toggle: () => set((h) => !h),
hidden: value,
};
}, [set, value]);
}