fix(rtime): remove duplicate header tabs in sub-navigation
The shell's rapp-subnav rendered Canvas/Collaborate/Fulfillment pills (from outputPaths) while the folk-timebank-app component also rendered its own tab-bar with the same three views. Remove outputPaths and add explicit routes for /canvas and /collaborate so URLs still work but navigation only appears once via the component's internal tab-bar. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
f735f2beb2
commit
4c91ba4c6d
|
|
@ -1175,6 +1175,36 @@ routes.post("/api/tasks/:id/export-to-backlog", async (c) => {
|
|||
});
|
||||
});
|
||||
|
||||
routes.get("/canvas", (c) => {
|
||||
const space = c.req.param("space") || "demo";
|
||||
|
||||
return c.html(renderShell({
|
||||
title: `${space} — Canvas | rTime | rSpace`,
|
||||
moduleId: "rtime",
|
||||
spaceSlug: space,
|
||||
modules: getModuleInfoList(),
|
||||
theme: "dark",
|
||||
body: `<folk-timebank-app space="${space}" view="canvas"></folk-timebank-app>`,
|
||||
scripts: `<script type="module" src="/modules/rtime/folk-timebank-app.js?v=1"></script>`,
|
||||
styles: `<link rel="stylesheet" href="/modules/rtime/rtime.css">`,
|
||||
}));
|
||||
});
|
||||
|
||||
routes.get("/collaborate", (c) => {
|
||||
const space = c.req.param("space") || "demo";
|
||||
|
||||
return c.html(renderShell({
|
||||
title: `${space} — Collaborate | rTime | rSpace`,
|
||||
moduleId: "rtime",
|
||||
spaceSlug: space,
|
||||
modules: getModuleInfoList(),
|
||||
theme: "dark",
|
||||
body: `<folk-timebank-app space="${space}" view="collaborate"></folk-timebank-app>`,
|
||||
scripts: `<script type="module" src="/modules/rtime/folk-timebank-app.js?v=1"></script>`,
|
||||
styles: `<link rel="stylesheet" href="/modules/rtime/rtime.css">`,
|
||||
}));
|
||||
});
|
||||
|
||||
routes.get("/dashboard", (c) => {
|
||||
const space = c.req.param("space") || "demo";
|
||||
|
||||
|
|
@ -1226,11 +1256,8 @@ export const timeModule: RSpaceModule = {
|
|||
filterable: true,
|
||||
},
|
||||
],
|
||||
outputPaths: [
|
||||
{ path: "canvas", name: "Canvas", icon: "🧺", description: "Unified commitment pool & task weaving canvas" },
|
||||
{ path: "collaborate", name: "Collaborate", icon: "🤝", description: "Intent-routed collaboration matching" },
|
||||
{ path: "dashboard", name: "Fulfillment", icon: "📊", description: "Personal commitment fulfillment tracking" },
|
||||
],
|
||||
// Views (Canvas, Collaborate, Fulfillment) are handled by the component's
|
||||
// internal tab-bar — no outputPaths needed to avoid duplicate navigation.
|
||||
onboardingActions: [
|
||||
{ label: "Pledge Hours", icon: "⏳", description: "Add a commitment to the pool", type: 'create', href: '/rtime' },
|
||||
],
|
||||
|
|
|
|||
Loading…
Reference in New Issue