27 lines
809 B
Svelte
27 lines
809 B
Svelte
<script lang="ts">
|
|
import type { Snippet } from 'svelte';
|
|
import AppContent from '@/components/AppContent.svelte';
|
|
import AppShell from '@/components/AppShell.svelte';
|
|
import AppSidebar from '@/components/AppSidebar.svelte';
|
|
import AppSidebarHeader from '@/components/AppSidebarHeader.svelte';
|
|
import { Toaster } from '@/components/ui/sonner';
|
|
import type { BreadcrumbItem } from '@/types';
|
|
|
|
let {
|
|
breadcrumbs = [],
|
|
children,
|
|
}: {
|
|
breadcrumbs?: BreadcrumbItem[];
|
|
children?: Snippet;
|
|
} = $props();
|
|
</script>
|
|
|
|
<AppShell variant="sidebar">
|
|
<AppSidebar />
|
|
<AppContent variant="sidebar" class="overflow-x-hidden">
|
|
<AppSidebarHeader {breadcrumbs} />
|
|
{@render children?.()}
|
|
</AppContent>
|
|
<Toaster />
|
|
</AppShell>
|