30 lines
831 B
TypeScript
30 lines
831 B
TypeScript
import SettingsClient from "./SettingsClient";
|
|
import { getCloudflareSettings, getGeneralSettings, getAuthentikSettings, getMetricsSettings, getLoggingSettings } from "@/src/lib/settings";
|
|
import { requireAdmin } from "@/src/lib/auth";
|
|
|
|
export default async function SettingsPage() {
|
|
await requireAdmin();
|
|
|
|
const [general, cloudflare, authentik, metrics, logging] = await Promise.all([
|
|
getGeneralSettings(),
|
|
getCloudflareSettings(),
|
|
getAuthentikSettings(),
|
|
getMetricsSettings(),
|
|
getLoggingSettings()
|
|
]);
|
|
|
|
return (
|
|
<SettingsClient
|
|
general={general}
|
|
cloudflare={{
|
|
hasToken: Boolean(cloudflare?.apiToken),
|
|
zoneId: cloudflare?.zoneId,
|
|
accountId: cloudflare?.accountId
|
|
}}
|
|
authentik={authentik}
|
|
metrics={metrics}
|
|
logging={logging}
|
|
/>
|
|
);
|
|
}
|