UNPKG

valaxy-theme-sakura

Version:

<h1 align="center">valaxy-theme-sakura</h1> <pre align="center"> 一个简单、个性化、可爱的动漫风格博客主题 ❥(ゝω・✿ฺ) </pre>

37 lines (28 loc) 1.09 kB
import { useFrontmatter } from 'valaxy' import { computed, ref, watch } from 'vue' import { useThemeConfig } from '../composables' import { StorageKeys } from '../enum' // import { useFrontmatter, useMobile } from 'valaxy' import { setLocalStorageItem, setSessionStorageItem } from '../utils/storage' export function useSidebar() { const isOpen = ref(false) const fm = useFrontmatter() // const isMobile = useMobile() const hasSidebar = computed(() => fm.value.sidebar !== false) function open() { isOpen.value = true } function close() { isOpen.value = false } function toggle() { isOpen.value ? close() : open() } const sidebarOptions = useThemeConfig().value.sidebarOptions // status monitoring if (sidebarOptions?.persistence === 'permanent') watch(isOpen, () => setLocalStorageItem(StorageKeys.IS_SIDEBAR_OPEN, isOpen.value)) else if (sidebarOptions?.persistence === 'session') watch(isOpen, () => setSessionStorageItem(StorageKeys.IS_SIDEBAR_OPEN, isOpen.value)) return { sidebar: { isOpen, hasSidebar, open, close, toggle } } }