diff --git a/server/landing.ts b/server/landing.ts index 4cb7908..0046f41 100644 --- a/server/landing.ts +++ b/server/landing.ts @@ -7,7 +7,7 @@ */ import type { ModuleInfo } from "../shared/module"; -import { escapeHtml, escapeAttr, MODULE_LANDING_CSS, RICH_LANDING_CSS, versionAssetUrls } from "./shell"; +import { escapeHtml, escapeAttr, MODULE_LANDING_CSS, RICH_LANDING_CSS, versionAssetUrls, getSpaceShellMeta } from "./shell"; export function renderMainLanding(modules: ModuleInfo[]): string { const moduleListJSON = JSON.stringify(modules); @@ -266,13 +266,18 @@ export function renderMainLanding(modules: ModuleInfo[]): string { // ── Space Dashboard ── export function renderSpaceDashboard(space: string, modules: ModuleInfo[]): string { - const moduleListJSON = JSON.stringify(modules); + // Filter modules by space's enabledModules + const enabledModules = getSpaceShellMeta(space).enabledModules; + const visibleModules = enabledModules + ? modules.filter(m => m.id === "rspace" || enabledModules.includes(m.id)) + : modules; + const moduleListJSON = JSON.stringify(visibleModules); const displayName = space === "demo" ? "Demo Space" : space; const subtitle = space === "demo" ? "Explore the rSpace ecosystem — click any rApp to try it live with sample data." - : `${modules.length} rApps available in this space.`; + : `${visibleModules.length} rApps available in this space.`; - const appCards = modules + const appCards = visibleModules .map((m) => { return `