mirror of
https://github.com/pacnpal/thrilltrack-explorer.git
synced 2025-12-23 10:31:12 -05:00
feat: Implement admin panel redesign plan
This commit is contained in:
44
src/components/layout/AdminLayout.tsx
Normal file
44
src/components/layout/AdminLayout.tsx
Normal file
@@ -0,0 +1,44 @@
|
||||
import { ReactNode } from 'react';
|
||||
import { SidebarProvider } from '@/components/ui/sidebar';
|
||||
import { AdminSidebar } from './AdminSidebar';
|
||||
import { AdminTopBar } from './AdminTopBar';
|
||||
|
||||
interface AdminLayoutProps {
|
||||
children: ReactNode;
|
||||
onRefresh?: () => void;
|
||||
refreshMode?: 'auto' | 'manual';
|
||||
pollInterval?: number;
|
||||
lastUpdated?: Date;
|
||||
isRefreshing?: boolean;
|
||||
}
|
||||
|
||||
export function AdminLayout({
|
||||
children,
|
||||
onRefresh,
|
||||
refreshMode,
|
||||
pollInterval,
|
||||
lastUpdated,
|
||||
isRefreshing
|
||||
}: AdminLayoutProps) {
|
||||
return (
|
||||
<SidebarProvider defaultOpen={true}>
|
||||
<div className="flex min-h-screen w-full">
|
||||
<AdminSidebar />
|
||||
<main className="flex-1 flex flex-col overflow-hidden">
|
||||
<AdminTopBar
|
||||
onRefresh={onRefresh}
|
||||
refreshMode={refreshMode}
|
||||
pollInterval={pollInterval}
|
||||
lastUpdated={lastUpdated}
|
||||
isRefreshing={isRefreshing}
|
||||
/>
|
||||
<div className="flex-1 overflow-auto bg-muted/30">
|
||||
<div className="container mx-auto px-6 py-8 max-w-7xl">
|
||||
{children}
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</SidebarProvider>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user