2026-02-26 15:29:00 +01:00
|
|
|
import { ReactNode } from "react";
|
2026-02-25 13:00:52 +01:00
|
|
|
import { redirect } from "next/navigation";
|
2024-11-10 23:12:38 +01:00
|
|
|
|
2026-02-25 13:00:52 +01:00
|
|
|
import { SidebarInset, SidebarProvider } from "@/components/ui/sidebar";
|
|
|
|
|
import { AppSidebar } from "@/components/wrappers/dashboard/common/sidebar/app-sidebar";
|
|
|
|
|
import { Header } from "@/features/layout/Header";
|
|
|
|
|
import { currentUser } from "@/lib/auth/current-user";
|
|
|
|
|
import { ThemeMetaUpdater } from "@/features/browser/theme-meta-updater";
|
2024-11-09 21:38:18 +01:00
|
|
|
|
2026-02-25 13:00:52 +01:00
|
|
|
export default async function Layout({ children }: { children: ReactNode }) {
|
|
|
|
|
const user = await currentUser();
|
|
|
|
|
if (!user) redirect("/login");
|
2024-11-10 23:12:38 +01:00
|
|
|
|
2026-02-25 13:00:52 +01:00
|
|
|
return (
|
|
|
|
|
<SidebarProvider>
|
|
|
|
|
<div className="flex flex-col lg:flex-row w-full">
|
|
|
|
|
<ThemeMetaUpdater />
|
|
|
|
|
<AppSidebar />
|
|
|
|
|
<SidebarInset>
|
|
|
|
|
<Header />
|
2026-02-26 15:29:00 +01:00
|
|
|
<main className="h-full">{children}</main>
|
2026-02-25 13:00:52 +01:00
|
|
|
</SidebarInset>
|
|
|
|
|
</div>
|
|
|
|
|
</SidebarProvider>
|
|
|
|
|
);
|
2025-05-16 15:54:17 +02:00
|
|
|
}
|