github.com/Ilhicas/nomad@v1.0.4-0.20210304152020-e86851182bc3/ui/app/abilities/agent.js (about) 1 import AbstractAbility from './abstract'; 2 import { computed, get } from '@ember/object'; 3 import { or } from '@ember/object/computed'; 4 5 export default class Client extends AbstractAbility { 6 @or('bypassAuthorization', 'selfTokenIsManagement', 'policiesIncludeAgentReadOrWrite') 7 canRead; 8 9 @computed('token.selfTokenPolicies.[]') 10 get policiesIncludeAgentReadOrWrite() { 11 const policies = (get(this, 'token.selfTokenPolicies') || []) 12 .toArray() 13 .map(policy => get(policy, 'rulesJSON.Agent.Policy')) 14 .compact(); 15 16 return policies.some(policy => policy === 'read' || policy === 'write'); 17 } 18 }