From 8ec40d32e21641cfe416173fe25b775e37714fdb Mon Sep 17 00:00:00 2001 From: chenos Date: Wed, 27 Jan 2021 16:46:31 +0800 Subject: [PATCH] fix: tab permissions does not work --- packages/plugin-pages/src/actions/getCollection.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/plugin-pages/src/actions/getCollection.ts b/packages/plugin-pages/src/actions/getCollection.ts index 6fc022668..eec5ab47c 100644 --- a/packages/plugin-pages/src/actions/getCollection.ts +++ b/packages/plugin-pages/src/actions/getCollection.ts @@ -8,6 +8,9 @@ export default async (ctx, next) => { name: resourceName, }, })); + const permissions = (await ctx.ac.isRoot() || collection.developerMode || collection.internal) + ? await ctx.ac.getRootPermissions() + : await ctx.ac.can(resourceName).permissions(); const defaultView = await collection.getViews({ where: { default: true, @@ -18,8 +21,10 @@ export default async (ctx, next) => { collection.setDataValue('defaultViewName', defaultView.get('name')); const options = Tab.parseApiJson({ filter: ctx.state.developerMode ? { + 'id.in': permissions.tabs, enabled: true, } : { + 'id.in': permissions.tabs, enabled: true, developerMode: {'$isFalsy': true}, },