Merge pull request #1211 from jacobsfletch/master

feat: async admin access control
This commit is contained in:
James Mikrut
2022-10-06 13:31:01 -04:00
committed by GitHub
3 changed files with 18 additions and 3 deletions

View File

@@ -78,7 +78,7 @@ async function accessOperation(args: Arguments): Promise<Permissions> {
});
};
const executeEntityPolicies = (entity, operations, type) => {
const executeEntityPolicies = async (entity, operations, type) => {
if (!results[type]) results[type] = {};
results[type][entity.slug] = {
@@ -99,7 +99,7 @@ async function accessOperation(args: Arguments): Promise<Permissions> {
};
if (userCollectionConfig) {
results.canAccessAdmin = userCollectionConfig.access.admin ? userCollectionConfig.access.admin(args) : isLoggedIn;
results.canAccessAdmin = userCollectionConfig.access.admin ? await userCollectionConfig.access.admin(args) : isLoggedIn;
} else {
results.canAccessAdmin = false;
}

View File

@@ -236,7 +236,7 @@ export type CollectionConfig = {
readVersions?: Access;
update?: Access;
delete?: Access;
admin?: (args?: any) => boolean;
admin?: (args?: any) => boolean | Promise<boolean>;
unlock?: Access;
};
/**