Files
frontend/packages/common/components/src/ui/layout/nolnb.tsx
T

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>
);
}