26 lines
678 B
Vue
26 lines
678 B
Vue
<script setup lang="ts">
|
|
import AppContent from '@/components/AppContent.vue';
|
|
import AppShell from '@/components/AppShell.vue';
|
|
import AppSidebar from '@/components/AppSidebar.vue';
|
|
import AppSidebarHeader from '@/components/AppSidebarHeader.vue';
|
|
import type { BreadcrumbItemType } from '@/types';
|
|
|
|
interface Props {
|
|
breadcrumbs?: BreadcrumbItemType[];
|
|
}
|
|
|
|
withDefaults(defineProps<Props>(), {
|
|
breadcrumbs: () => [],
|
|
});
|
|
</script>
|
|
|
|
<template>
|
|
<AppShell variant="sidebar">
|
|
<AppSidebar />
|
|
<AppContent variant="sidebar">
|
|
<AppSidebarHeader :breadcrumbs="breadcrumbs" />
|
|
<slot />
|
|
</AppContent>
|
|
</AppShell>
|
|
</template>
|