39 lines
952 B
TypeScript
39 lines
952 B
TypeScript
import "server-only";
|
|
|
|
import {
|
|
demoAdminNavigation,
|
|
demoDirectory,
|
|
getDemoAdminPage,
|
|
getDemoPage,
|
|
} from "@/lib/content/demo";
|
|
import {
|
|
getAdminNavigation,
|
|
getAdminPage,
|
|
getPublicPage,
|
|
listPublicCharacters,
|
|
} from "@/lib/content/queries";
|
|
|
|
function demoMode(): boolean {
|
|
return process.env.BUZZ_DEMO_MODE === "true";
|
|
}
|
|
|
|
export async function loadPublicDirectory() {
|
|
return demoMode() ? demoDirectory : listPublicCharacters();
|
|
}
|
|
|
|
export async function loadPublicPage(characterSlug: string, pageSlug?: string) {
|
|
return demoMode()
|
|
? getDemoPage(characterSlug, pageSlug)
|
|
: getPublicPage(characterSlug, pageSlug);
|
|
}
|
|
|
|
export async function loadAdminPage(characterSlug: string, pageSlug: string) {
|
|
return demoMode()
|
|
? getDemoAdminPage(characterSlug, pageSlug)
|
|
: getAdminPage(characterSlug, pageSlug);
|
|
}
|
|
|
|
export async function loadAdminNavigation() {
|
|
return demoMode() ? demoAdminNavigation : getAdminNavigation();
|
|
}
|