chore(mock): fixes permissions for mock server
This commit is contained in:
@@ -9,7 +9,6 @@ export const data: Array<UmbMockUserGroupModel> = [
|
||||
name: 'Administrators',
|
||||
alias: 'admin',
|
||||
icon: 'icon-medal',
|
||||
documentStartNode: { id: 'all-property-editors-document-id' },
|
||||
fallbackPermissions: [
|
||||
'Umb.Document.Read',
|
||||
'Umb.Document.Create',
|
||||
@@ -27,13 +26,7 @@ export const data: Array<UmbMockUserGroupModel> = [
|
||||
'Umb.Document.PublicAccess',
|
||||
'Umb.Document.Rollback',
|
||||
],
|
||||
permissions: [
|
||||
{
|
||||
$type: 'DocumentPermissionPresentationModel',
|
||||
verbs: ['Umb.Document.Rollback'],
|
||||
document: { id: 'simple-document-id' },
|
||||
},
|
||||
],
|
||||
permissions: [],
|
||||
sections: [
|
||||
UMB_CONTENT_SECTION_ALIAS,
|
||||
'Umb.Section.Media',
|
||||
|
||||
@@ -50,6 +50,16 @@ export class UmbUserGroupMockDB extends UmbEntityMockDbBase<UmbMockUserGroupMode
|
||||
return uniqueArray;
|
||||
}
|
||||
|
||||
getFallbackPermissions(userGroupIds: Array<{ id: string }>): string[] {
|
||||
const fallbackPermissions = this.data
|
||||
.filter((userGroup) => userGroupIds.map((reference) => reference.id).includes(userGroup.id))
|
||||
.map((userGroup) => (userGroup.fallbackPermissions?.length ? userGroup.fallbackPermissions : []))
|
||||
.flat();
|
||||
|
||||
// Remove duplicates
|
||||
return Array.from(new Set(fallbackPermissions));
|
||||
}
|
||||
|
||||
getAllowedSections(userGroupIds: Array<{ id: string }>): string[] {
|
||||
const sections = this.data
|
||||
.filter((userGroup) => userGroupIds.map((reference) => reference.id).includes(userGroup.id))
|
||||
|
||||
@@ -64,6 +64,9 @@ class UmbUserMockDB extends UmbEntityMockDbBase<UmbMockUserModel> {
|
||||
getCurrentUser(): CurrentUserResponseModel {
|
||||
const firstUser = this.data[0];
|
||||
const permissions = firstUser.userGroupIds?.length ? umbUserGroupMockDb.getPermissions(firstUser.userGroupIds) : [];
|
||||
const fallbackPermissions = firstUser.userGroupIds?.length
|
||||
? umbUserGroupMockDb.getFallbackPermissions(firstUser.userGroupIds)
|
||||
: [];
|
||||
const allowedSections = firstUser.userGroupIds?.length
|
||||
? umbUserGroupMockDb.getAllowedSections(firstUser.userGroupIds)
|
||||
: [];
|
||||
@@ -82,7 +85,7 @@ class UmbUserMockDB extends UmbEntityMockDbBase<UmbMockUserModel> {
|
||||
mediaStartNodeIds: firstUser.mediaStartNodeIds,
|
||||
hasDocumentRootAccess: firstUser.hasDocumentRootAccess,
|
||||
hasMediaRootAccess: firstUser.hasMediaRootAccess,
|
||||
fallbackPermissions: [],
|
||||
fallbackPermissions,
|
||||
permissions,
|
||||
allowedSections,
|
||||
isAdmin: firstUser.isAdmin,
|
||||
|
||||
Reference in New Issue
Block a user