MCPcopy Create free account
hub / github.com/CommE2E/comm / threadHasAdminRole

Function threadHasAdminRole

lib/shared/thread-utils.js:1086–1110  ·  view source on GitHub ↗
(
  threadInfo: ?(
    | LegacyRawThreadInfo
    | RawThreadInfo
    | ThreadInfo
    | ServerThreadInfo
  ),
)

Source from the content-addressed store, hash-verified

1084}
1085
1086function threadHasAdminRole(
1087 threadInfo: ?(
1088 | LegacyRawThreadInfo
1089 | RawThreadInfo
1090 | ThreadInfo
1091 | ServerThreadInfo
1092 ),
1093): boolean {
1094 if (!threadInfo) {
1095 return false;
1096 }
1097 let hasSpecialRoleFieldBeenEncountered = false;
1098 for (const role of Object.values(threadInfo.roles)) {
1099 if (role.specialRole === specialRoles.ADMIN_ROLE) {
1100 return true;
1101 }
1102 if (role.specialRole !== undefined) {
1103 hasSpecialRoleFieldBeenEncountered = true;
1104 }
1105 }
1106 if (hasSpecialRoleFieldBeenEncountered) {
1107 return false;
1108 }
1109 return !!_find({ name: 'Admins' })(threadInfo.roles);
1110}
1111
1112const permissionsDisabledByBlockArray = values(
1113 threadPermissionsDisabledByBlock,

Callers 3

leaveThreadFunction · 0.90

Calls 1

valuesMethod · 0.65

Tested by

no test coverage detected