Spaces:
Running
Running
File size: 1,152 Bytes
518343a | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | import { lazy, Suspense, type ReactNode } from 'react';
import { TopBar } from './TopBar';
import { Sidebar } from './Sidebar';
import { useFabricShell } from '../../lib/fabric-shell-context';
const EvidenceDrawer = lazy(() =>
import('@szl-holdings/design-system/cockpit/evidence-drawer').then((m) => ({
default: m.EvidenceDrawer,
})),
);
export function AppShell({ children }: { children: ReactNode }) {
const { drawerOpen, drawerTitle, drawerEvidence, closeEvidenceDrawer } = useFabricShell();
return (
<div className="min-h-screen bg-[var(--color-a11oy-navy)] text-[var(--color-a11oy-text)] flex flex-col">
<TopBar />
<div className="flex flex-1">
<Sidebar />
<main id="main-content" tabIndex={-1} className="flex-1 min-w-0 flex flex-col relative">
{children}
</main>
{drawerOpen && (
<Suspense fallback={null}>
<EvidenceDrawer
open={drawerOpen}
title={drawerTitle}
items={drawerEvidence}
onClose={closeEvidenceDrawer}
/>
</Suspense>
)}
</div>
</div>
);
}
|