36 lines
861 B
Vue
36 lines
861 B
Vue
<script setup lang="ts">
|
|
import Dialog from '~/components/Dialog/index.vue';
|
|
|
|
const { colorScheme } = useUserSettings();
|
|
const { toggle: toggleSidebar } = useSidebar();
|
|
const { addShortcut } = useKeyboardShortcuts();
|
|
|
|
addShortcut(['ctrl', '['], (event) => {
|
|
event.preventDefault();
|
|
event.stopPropagation();
|
|
toggleSidebar();
|
|
});
|
|
|
|
useHead({
|
|
htmlAttrs: {
|
|
class: colorScheme.class
|
|
}
|
|
});
|
|
</script>
|
|
|
|
<template>
|
|
<Sidenav />
|
|
<div class="p-2 w-full h-full">
|
|
<main
|
|
class="bg-[var(--bg-surface)] flex flex-col h-full w-full border border-solid border-[var(--color-border)] rounded-lg overflow-hidden">
|
|
<div class="flex-1 overflow-y-auto">
|
|
<slot />
|
|
</div>
|
|
</main>
|
|
</div>
|
|
<ClientOnly>
|
|
<Dialog />
|
|
<TooltipProvider />
|
|
</ClientOnly>
|
|
</template>
|