import { AppShell } from "@/components/AppShell"; import { BackendDownNotice } from "@/components/BackendDownNotice"; import { ProvidersSettings } from "@/components/settings/ProvidersSettings"; import { PageHeader } from "@/components/ui/PageHeader"; import { fetchKimiOauthStatus, fetchProviders } from "@/lib/api/server"; import type { ProvidersResponse } from "@/lib/api/types"; // 模型与提供商设置(UX §6.10)。Server Component 取初始数据(含 Kimi Code OAuth 状态)。 export default async function ProvidersSettingsPage() { let initial: ProvidersResponse = { providers: [], tier_routing: [] }; let kimiOauth = { connected: false, expiresAt: null as string | null }; let loadError = false; try { const [providers, oauthStatus] = await Promise.all([ fetchProviders(), fetchKimiOauthStatus(), ]); initial = providers; kimiOauth = { connected: oauthStatus.connected === true, expiresAt: typeof oauthStatus.expires_at === "string" ? oauthStatus.expires_at : null, }; } catch { loadError = true; } return (
{loadError ? ( ) : ( )}
); }