import { redirect } from "next/navigation"; import { getActiveContext } from "@/lib/appwrite/active-context"; import { getLogoUrl } from "@/lib/appwrite/storage"; import { createSessionClient } from "@/lib/appwrite/server"; import type { ThemePrefs } from "@/lib/appwrite/theme-prefs-actions"; import { DashboardShell } from "./dashboard-shell"; export default async function DashboardLayout({ children, }: { children: React.ReactNode; }) { const ctx = await getActiveContext(); if (!ctx) redirect("/onboarding"); let themePrefs: ThemePrefs = {}; try { const { account } = await createSessionClient(); themePrefs = await account.getPrefs(); } catch { // use defaults if prefs unavailable } const company = { id: ctx.tenantId, name: ctx.settings?.officeName ?? "Çalışma alanı", logoUrl: getLogoUrl(ctx.settings?.logo) ?? null, }; const user = { id: ctx.user.id, name: ctx.user.name || ctx.user.email, email: ctx.user.email, }; return ( {children} ); }