IntelliClass_FE/layouts/default.vue
2025-04-19 01:32:50 +08:00

64 lines
1.3 KiB
Vue

<script lang="ts" setup>
import type { SidebarNavGroup } from '~/components/app/Sidebar.vue'
const route = useRoute()
const { breadcrumbs } = toRefs(useBreadcrumbs())
const sidebarNav: SidebarNavGroup[] = [
{
label: '备课制课',
items: [
{
title: '课程管理',
url: `/course`,
icon: 'tabler:books',
},
{
title: '课程资源',
url: `/course/resources`,
icon: 'tabler:users-group',
},
],
},
{
label: 'AI 资源',
items: [
{
title: 'AI 备课',
url: `/course/prep`,
icon: 'tabler:books',
isExternal: true,
},
{
title: 'AI 教科研',
url: `/course/research`,
icon: 'tabler:users-group',
isExternal: true,
},
],
},
]
</script>
<template>
<div class="w-full min-h-screen flex font-sans">
<SidebarProvider style="--sidebar-width: 200px">
<AppSidebar
v-if="!route.meta.hideSidebar"
:nav="sidebarNav"
/>
<SidebarInset>
<AppTopbar
:hide-trigger="route.meta.hideSidebar"
:breadcrumbs
/>
<div class="flex flex-1 flex-col gap-4">
<slot />
</div>
</SidebarInset>
</SidebarProvider>
</div>
</template>
<style scoped></style>