fix: sidebar component mobile #840
This commit is contained in:
parent
384c87a91c
commit
73c70842ad
|
|
@ -36,6 +36,7 @@ const { isMobile, state, openMobile, setOpenMobile } = useSidebar()
|
||||||
<SheetContent
|
<SheetContent
|
||||||
data-sidebar="sidebar"
|
data-sidebar="sidebar"
|
||||||
data-mobile="true"
|
data-mobile="true"
|
||||||
|
:side="side"
|
||||||
class="w-[--sidebar-width] bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden"
|
class="w-[--sidebar-width] bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden"
|
||||||
:style="{
|
:style="{
|
||||||
'--sidebar-width': SIDEBAR_WIDTH_MOBILE,
|
'--sidebar-width': SIDEBAR_WIDTH_MOBILE,
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { cn } from '@/lib/utils'
|
import { cn } from '@/lib/utils'
|
||||||
import { useEventListener, useVModel } from '@vueuse/core'
|
import { useEventListener, useMediaQuery, useVModel } from '@vueuse/core'
|
||||||
import { TooltipProvider } from 'radix-vue'
|
import { TooltipProvider } from 'radix-vue'
|
||||||
import { computed, type HTMLAttributes, type Ref, ref } from 'vue'
|
import { computed, type HTMLAttributes, type Ref, ref } from 'vue'
|
||||||
import { provideSidebarContext, SIDEBAR_COOKIE_MAX_AGE, SIDEBAR_COOKIE_NAME, SIDEBAR_KEYBOARD_SHORTCUT, SIDEBAR_WIDTH, SIDEBAR_WIDTH_ICON } from './utils'
|
import { provideSidebarContext, SIDEBAR_COOKIE_MAX_AGE, SIDEBAR_COOKIE_NAME, SIDEBAR_KEYBOARD_SHORTCUT, SIDEBAR_WIDTH, SIDEBAR_WIDTH_ICON } from './utils'
|
||||||
|
|
@ -18,7 +18,7 @@ const emits = defineEmits<{
|
||||||
'update:open': [open: boolean]
|
'update:open': [open: boolean]
|
||||||
}>()
|
}>()
|
||||||
|
|
||||||
const isMobile = ref(false) // useIsMobile()
|
const isMobile = useMediaQuery('(max-width: 768px)') // useIsMobile()
|
||||||
const openMobile = ref(false)
|
const openMobile = ref(false)
|
||||||
|
|
||||||
const open = useVModel(props, 'open', emits, {
|
const open = useVModel(props, 'open', emits, {
|
||||||
|
|
@ -39,7 +39,7 @@ function setOpenMobile(value: boolean) {
|
||||||
|
|
||||||
// Helper to toggle the sidebar.
|
// Helper to toggle the sidebar.
|
||||||
function toggleSidebar() {
|
function toggleSidebar() {
|
||||||
return isMobile.value ? setOpenMobile(!open.value) : setOpen(!open.value)
|
return isMobile.value ? setOpenMobile(!openMobile.value) : setOpen(!open.value)
|
||||||
}
|
}
|
||||||
|
|
||||||
useEventListener('keydown', (event: KeyboardEvent) => {
|
useEventListener('keydown', (event: KeyboardEvent) => {
|
||||||
|
|
|
||||||
|
|
@ -115,6 +115,16 @@ module.exports = {
|
||||||
DEFAULT: "hsl(var(--card))",
|
DEFAULT: "hsl(var(--card))",
|
||||||
foreground: "hsl(var(--card-foreground))",
|
foreground: "hsl(var(--card-foreground))",
|
||||||
},
|
},
|
||||||
|
sidebar: {
|
||||||
|
"DEFAULT": "hsl(var(--sidebar-background))",
|
||||||
|
"foreground": "hsl(var(--sidebar-foreground))",
|
||||||
|
"primary": "hsl(var(--sidebar-primary))",
|
||||||
|
"primary-foreground": "hsl(var(--sidebar-primary-foreground))",
|
||||||
|
"accent": "hsl(var(--sidebar-accent))",
|
||||||
|
"accent-foreground": "hsl(var(--sidebar-accent-foreground))",
|
||||||
|
"border": "hsl(var(--sidebar-border))",
|
||||||
|
"ring": "hsl(var(--sidebar-ring))",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
borderRadius: {
|
borderRadius: {
|
||||||
xl: "calc(var(--radius) + 4px)",
|
xl: "calc(var(--radius) + 4px)",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user