diff --git a/packages/backend/src/routes/v1/vault.ts b/packages/backend/src/routes/v1/vault.ts index c17b87d..f7c2b4a 100644 --- a/packages/backend/src/routes/v1/vault.ts +++ b/packages/backend/src/routes/v1/vault.ts @@ -75,7 +75,12 @@ export const vaultRoutes: FastifyPluginAsync = async (app) => { app.get('/vault/categories', { preHandler: [app.authenticate, app.requirePermission('vault.view'), requireUnlocked] }, async (request, reply) => { const categories = await VaultCategoryService.listAccessible(app.db, request.user.id) - return reply.send({ data: categories }) + // Include accessLevel for each category so the UI knows what actions to show + const withAccess = await Promise.all(categories.map(async (cat) => { + const accessLevel = await VaultPermissionService.getAccessLevel(app.db, cat.id, request.user.id) + return { ...cat, accessLevel } + })) + return reply.send({ data: withAccess }) }) app.get('/vault/categories/:id', { preHandler: [app.authenticate, app.requirePermission('vault.view'), requireUnlocked] }, async (request, reply) => {