feat(gui-v2): add mobileOpen to useShellUiStore
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -45,4 +45,14 @@ describe('useShellUiStore', () => {
|
||||
s.closeDrawer()
|
||||
expect(s.drawer.isOpen).toBe(false)
|
||||
})
|
||||
|
||||
it('mobileOpen defaults to false and setMobileOpen toggles it', () => {
|
||||
const s = useShellUiStore()
|
||||
|
||||
expect(s.mobileOpen).toBe(false)
|
||||
s.setMobileOpen(true)
|
||||
expect(s.mobileOpen).toBe(true)
|
||||
s.setMobileOpen(false)
|
||||
expect(s.mobileOpen).toBe(false)
|
||||
})
|
||||
})
|
||||
|
||||
@@ -17,6 +17,7 @@ export interface ShellDrawerState {
|
||||
|
||||
export const useShellUiStore = defineStore('shellUi', () => {
|
||||
const sidebarCollapsed = ref(false)
|
||||
const mobileOpen = ref(false)
|
||||
const density = ref<ShellDensity>('comfortable')
|
||||
const theme = ref<ShellTheme>('light')
|
||||
const drawer = ref<ShellDrawerState>({ isOpen: false, component: null, props: {} })
|
||||
@@ -25,6 +26,10 @@ export const useShellUiStore = defineStore('shellUi', () => {
|
||||
sidebarCollapsed.value = !sidebarCollapsed.value
|
||||
}
|
||||
|
||||
function setMobileOpen(v: boolean): void {
|
||||
mobileOpen.value = v
|
||||
}
|
||||
|
||||
function setTheme(next: ShellTheme): void {
|
||||
theme.value = next
|
||||
}
|
||||
@@ -51,10 +56,12 @@ export const useShellUiStore = defineStore('shellUi', () => {
|
||||
|
||||
return {
|
||||
sidebarCollapsed,
|
||||
mobileOpen,
|
||||
density,
|
||||
theme,
|
||||
drawer,
|
||||
toggleSidebar,
|
||||
setMobileOpen,
|
||||
setTheme,
|
||||
setDensity,
|
||||
applyDomAttributes,
|
||||
|
||||
Reference in New Issue
Block a user