Merge branch 'dev'
CI/CD / deploy (push) Successful in 2m8s
Details
CI/CD / deploy (push) Successful in 2m8s
Details
This commit is contained in:
commit
89234000a8
|
|
@ -0,0 +1,10 @@
|
|||
services:
|
||||
encryptid:
|
||||
labels:
|
||||
- "sablier.enable=true"
|
||||
- "sablier.group=encryptid"
|
||||
- "traefik.enable=false"
|
||||
encryptid-db:
|
||||
labels:
|
||||
- "sablier.enable=true"
|
||||
- "sablier.group=encryptid"
|
||||
|
|
@ -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