The communications platform that puts data protection first.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Rocket.Chat/app/authorization/server/functions/hasRole.js

13 lines
429 B

import { Roles } from '../../../models/server/raw';
export const hasRoleAsync = async (userId, roleNames, scope) => {
if (!userId || userId === '') {
return false;
}
return Roles.isUserInRoles(userId, roleNames, scope);
};
export const hasRole = (userId, roleNames, scope) => Promise.await(hasRoleAsync(userId, roleNames, scope));
export const subscriptionHasRole = (sub, role) => sub.roles && sub.roles.includes(role);