40 lines
1.2 KiB
TypeScript
40 lines
1.2 KiB
TypeScript
import type { AuthService } from "@common/auth";
|
|
import type { QueryClient } from "@tanstack/react-query";
|
|
import { QueryProvider } from "../../provider/query-provider";
|
|
import { PopupProvider } from "../../provider/popup-provider";
|
|
import type { MenuItem } from "../../api";
|
|
import { SidebarProvider } from "../sidebar";
|
|
import { Header } from "../header";
|
|
import { Footer } from "../footer";
|
|
import "./common.css";
|
|
|
|
export function NoLNBLayout({
|
|
children,
|
|
queryClient,
|
|
authService,
|
|
}: {
|
|
children: React.ReactNode;
|
|
queryClient?: QueryClient;
|
|
authService?: AuthService;
|
|
currentPath?: string;
|
|
handleMenuClick?: (item: MenuItem) => void;
|
|
}) {
|
|
return (
|
|
<QueryProvider queryClient={queryClient}>
|
|
<PopupProvider>
|
|
<SidebarProvider>
|
|
<div className="flex-1">
|
|
<Header authService={authService} />
|
|
<div className="flex">
|
|
<div className="flex min-h-[calc(100vh-50px)] flex-1 flex-col overflow-auto">
|
|
<div className="flex-1">{children}</div>
|
|
<Footer />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</SidebarProvider>
|
|
</PopupProvider>
|
|
</QueryProvider>
|
|
);
|
|
}
|