import { Suspense } from "react"; import { Sidebar } from "@/components/sidebar"; import { ProvidersWrapper } from "@/components/providers-wrapper"; import { auth } from "@/auth"; import { headers } from "next/headers"; import { detectUserLanguage, parseAcceptLanguage } from "@/lib/i18n/detect-user-language"; import { loadTranslations } from "@/lib/i18n/load-translations"; import { getAISettings } from "@/app/actions/ai-settings"; import { AIChatLayoutBridge } from "@/components/ai-chat-layout-bridge"; export default async function MainLayout({ children, }: Readonly<{ children: React.ReactNode; }>) { const headersList = await headers(); const browserLang = parseAcceptLanguage(headersList.get("accept-language")); const [session, initialLanguage] = await Promise.all([ auth(), detectUserLanguage(browserLang), ]); const initialTranslations = await loadTranslations(initialLanguage); const aiSettings = session?.user?.id ? await getAISettings(session.user.id) : null; const showAIAssistant = aiSettings?.paragraphRefactor !== false; return ( {/* No top-bar header — sidebar-only navigation (architectural-grid design) */}
}>
{children}
{showAIAssistant && }
); }