utils.ts 666 B

12345678910111213141516171819
  1. import type { ComputedRef, Ref } from "vue"
  2. import { createContext } from "reka-ui"
  3. export const SIDEBAR_COOKIE_NAME = "sidebar_state"
  4. export const SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7
  5. export const SIDEBAR_WIDTH = "16rem"
  6. export const SIDEBAR_WIDTH_MOBILE = "18rem"
  7. export const SIDEBAR_WIDTH_ICON = "3rem"
  8. export const SIDEBAR_KEYBOARD_SHORTCUT = "b"
  9. export const [useSidebar, provideSidebarContext] = createContext<{
  10. state: ComputedRef<"expanded" | "collapsed">
  11. open: Ref<boolean>
  12. setOpen: (value: boolean) => void
  13. isMobile: Ref<boolean>
  14. openMobile: Ref<boolean>
  15. setOpenMobile: (value: boolean) => void
  16. toggleSidebar: () => void
  17. }>("Sidebar")