37 lines
669 B
TypeScript
37 lines
669 B
TypeScript
import { notFound } from "next/navigation";
|
|
import SettingsPage from "../SettingsPage";
|
|
|
|
const ALLOWED_SECTIONS = new Set([
|
|
"seerr",
|
|
"jellyseerr",
|
|
"jellyfin",
|
|
"jellystat",
|
|
"artwork",
|
|
"sonarr",
|
|
"radarr",
|
|
"bazarr",
|
|
"prowlarr",
|
|
"qbittorrent",
|
|
"requests",
|
|
"issue-workflow",
|
|
"cache",
|
|
"logs",
|
|
"maintenance",
|
|
"magent",
|
|
"general",
|
|
"notifications",
|
|
"site",
|
|
]);
|
|
|
|
type PageProps = {
|
|
params: Promise<{ section: string }>;
|
|
};
|
|
|
|
export default async function AdminSectionPage({ params }: PageProps) {
|
|
const { section } = await params;
|
|
if (!ALLOWED_SECTIONS.has(section)) {
|
|
notFound();
|
|
}
|
|
return <SettingsPage section={section} />;
|
|
}
|