2 files changed
+11
-17
No files matched your search
+11
-2
@@ -1,6 +1,6 @@
|
||||
import type { Metadata, Viewport } from "next";
|
||||
import { Inter } from "next/font/google";
|
||||
import { DeploymentProviders } from "@/components/deployment-providers";
|
||||
import { ManagerProviders } from "@/components/manager-providers";
|
||||
import "./globals.css";
|
||||
|
||||
const inter = Inter({
|
||||
@@ -86,8 +86,17 @@ export default function RootLayout({
|
||||
>
|
||||
Skip to main content
|
||||
</a>
|
||||
<DeploymentProviders managerMode={process.env.MANAGER_MODE === "true"}>{children}</DeploymentProviders>
|
||||
{process.env.MANAGER_MODE === "true" ? (
|
||||
<ManagerProviders>{children}</ManagerProviders>
|
||||
) : (
|
||||
<BusinessProviders>{children}</BusinessProviders>
|
||||
)}
|
||||
</body>
|
||||
</html>
|
||||
);
|
||||
}
|
||||
|
||||
async function BusinessProviders({ children }: { children: React.ReactNode }) {
|
||||
const { Providers } = await import("@/components/providers");
|
||||
return <Providers>{children}</Providers>;
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
"use client";
|
||||
|
||||
import type { ReactNode } from "react";
|
||||
import { ManagerProviders } from "@/components/manager-providers";
|
||||
import { Providers } from "@/components/providers";
|
||||
|
||||
/**
|
||||
* Keep the business provider graph behind a client boundary. This prevents
|
||||
* the Manager server bundle from evaluating SessionProvider or its business
|
||||
* client-side dependencies while still preserving the business provider
|
||||
* behavior when the deployment mode is false.
|
||||
*/
|
||||
export function DeploymentProviders({ managerMode, children }: { managerMode: boolean; children: ReactNode }) {
|
||||
return managerMode ? <ManagerProviders>{children}</ManagerProviders> : <Providers>{children}</Providers>;
|
||||
}
|
||||
Reference in new issue
Block a user