Files
cannamanage/cannamanage-frontend/src/app/(marketing)/layout.tsx
T
Patrick Plate dad798a904
Deploy to TrueNAS / deploy (push) Failing after 33s
feat: Sprint 14 — Marketing & Monetization
- Landing page with hero, feature grid, trust signals
- Split-layout login redesign (admin + portal)
- Pricing page with storage tiers (5GB/50GB/unlimited)
- StorageQuotaService backend (V36 migration, 402 on exceeded)
- Frontend storage integration + 402 error handling
- StorageController uses TenantContext for tenant isolation
- onTierChange() hook for subscription tier updates
2026-06-18 20:28:35 +02:00

25 lines
672 B
TypeScript

import { NextIntlClientProvider } from "next-intl"
import { getMessages } from "next-intl/server"
import type { ReactNode } from "react"
import MarketingLayoutClient from "./marketing-layout-client"
// Force dynamic rendering — prevents NextAuth from being called at build time
// (AUTH_URL is not available during Docker image build)
export const dynamic = "force-dynamic"
export default async function MarketingLayout({
children,
}: {
children: ReactNode
}) {
const messages = await getMessages()
return (
<NextIntlClientProvider messages={messages}>
<MarketingLayoutClient>{children}</MarketingLayoutClient>
</NextIntlClientProvider>
)
}