import type { Metadata } from "next"; import { AntdRegistry } from "@ant-design/nextjs-registry"; import { Providers } from "@/components/ebook/Providers"; import { buildBookMetadata } from "@/lib/ebook/metadata"; import { getSiteConfig } from "@/lib/ebook/site-config.server"; import { getServerFeatures } from "@/lib/ebook/features.server"; import { getLocale } from "@/lib/ebook/i18n/server"; import "./ebook-globals.css"; export async function generateMetadata(): Promise { const locale = await getLocale(); return buildBookMetadata(locale); } /** * Book section is a self-contained surface inside nomadweb: * - Own visual system (ebook-globals), isolated under .ebook-section * - Locale bridged with main-site cookie/localStorage via getLocale + LocaleProvider * - Theme driven by ThemeProvider on (not a forced .dark wrapper) * - No main Navbar / SiteShell — immersive like book.nomadro.com * - Entry from main nav `/book`; escape via cover "← nomadro" */ export default async function BookLayout({ children, }: { children: React.ReactNode; }) { const locale = await getLocale(); const site = getSiteConfig(); const f = getServerFeatures(); return (