feat(content): add explicit demo mode
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
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();
|
||||
}
|
||||
Reference in New Issue
Block a user