web-production-saas-starter/next_b2b_starter/app/dashboard/layout.tsx
2025-12-16 18:54:41 +04:00

30 lines
781 B
TypeScript

import type { ReactNode } from "react";
import { redirect } from "next/navigation";
import { DashboardLayout } from "@/components/layout/dashboard-layout";
import { resolveCurrentSubscription } from "@/lib/polar/current-subscription";
export default async function Layout({
children,
}: {
children: ReactNode;
}) {
const subscription = await resolveCurrentSubscription();
console.info("[Polar] Rendering dashboard layout", {
isActive: subscription.isActive,
reason: subscription.reason,
status: subscription.status,
backendAvailable: subscription.backendAvailable,
});
if (!subscription.isAuthenticated) {
redirect("/auth");
}
return (
<DashboardLayout initialSubscription={subscription}>
{children}
</DashboardLayout>
);
}