mirror of
https://wget.la/https://github.com/leookun/cursor-byok
synced 2026-10-06 21:52:51 +08:00
- Updated the demo API to support locale-based content rendering. - Refactored the main layout to accommodate language-specific metadata and routing. - Introduced new components for blog and documentation pages, ensuring proper language handling. - Added styles for improved UI consistency across different sections. - Removed deprecated layout files and streamlined the structure for better maintainability.
51 lines
1.5 KiB
TypeScript
51 lines
1.5 KiB
TypeScript
import { RootProvider } from 'fumadocs-ui/provider/next';
|
|
import { i18nProvider } from 'fumadocs-ui/i18n';
|
|
import { notFound } from 'next/navigation';
|
|
import type { Metadata } from 'next';
|
|
import { htmlLang, i18n, isLanguage } from '@/lib/i18n';
|
|
import { translations } from '@/lib/layout.shared';
|
|
import '../global.css';
|
|
|
|
const siteUrl = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://docs.leokun.cn';
|
|
|
|
export async function generateMetadata(props: LayoutProps<'/[lang]'>): Promise<Metadata> {
|
|
const { lang } = await props.params;
|
|
|
|
if (lang === 'en') {
|
|
return {
|
|
metadataBase: new URL(siteUrl),
|
|
title: {
|
|
default: 'cursor-byok Docs',
|
|
template: '%s | cursor-byok',
|
|
},
|
|
description: 'Installation, model configuration, and troubleshooting guide for cursor-byok.',
|
|
};
|
|
}
|
|
|
|
return {
|
|
metadataBase: new URL(siteUrl),
|
|
title: {
|
|
default: 'cursor-byok 文档',
|
|
template: '%s | cursor-byok',
|
|
},
|
|
description: 'cursor-byok 的安装、模型配置与故障排查指南。',
|
|
};
|
|
}
|
|
|
|
export function generateStaticParams() {
|
|
return i18n.languages.map((lang) => ({ lang }));
|
|
}
|
|
|
|
export default async function Layout({ params, children }: LayoutProps<'/[lang]'>) {
|
|
const { lang } = await params;
|
|
if (!isLanguage(lang)) notFound();
|
|
|
|
return (
|
|
<html lang={htmlLang[lang]} suppressHydrationWarning>
|
|
<body className="flex min-h-screen flex-col">
|
|
<RootProvider i18n={i18nProvider(translations, lang)}>{children}</RootProvider>
|
|
</body>
|
|
</html>
|
|
);
|
|
}
|