import type { Metadata } from 'next'; import { getPortalSession } from '@/lib/portal/auth'; import { getPortalDashboard } from '@/lib/services/portal.service'; import { isPortalDisabledGlobally } from '@/lib/services/portal-auth.service'; import { PortalHeader } from '@/components/portal/portal-header'; import { PortalNav } from '@/components/portal/portal-nav'; export const metadata: Metadata = { title: { default: 'Client Portal', template: '%s | Client Portal', }, }; export default async function PortalLayout({ children }: { children: React.ReactNode }) { // Route-level kill switch. When every port has client_portal_enabled=false, // surface a clean "Portal not available" notice instead of letting the // login form render (it would just reject every submit with a confusing // ConflictError). Single-port deployments effectively get a global toggle // out of the admin System Settings UI. if (await isPortalDisabledGlobally()) { return (
The client portal isn't currently enabled for this site. If you were expecting to sign in here, please contact your account manager.