unleash-server
Version:
Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.
17 lines • 670 B
JavaScript
import { ADMIN_TOKEN_USER, RoleType, SYSTEM_USER_ID, } from '../../types/index.js';
import * as permissions from '../../types/permissions.js';
const { ADMIN } = permissions;
export class AccessReadModel {
constructor({ accessStore }) {
this.store = accessStore;
}
async isRootAdmin(userId) {
if (userId === SYSTEM_USER_ID || userId === ADMIN_TOKEN_USER.id) {
return true;
}
const roles = await this.store.getRolesForUserId(userId);
return roles.some((role) => role.name.toLowerCase() === ADMIN.toLowerCase() &&
role.type === RoleType.ROOT);
}
}
//# sourceMappingURL=access-read-model.js.map