31 lines
793 B
JavaScript
31 lines
793 B
JavaScript
/**
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: MPL-2.0
|
|
*/
|
|
|
|
import AbstractAbility from './abstract';
|
|
import { computed } from '@ember/object';
|
|
import { and, or } from '@ember/object/computed';
|
|
|
|
export default class Recommendation extends AbstractAbility {
|
|
@and('dynamicApplicationSizingIsPresent', 'hasPermissions')
|
|
canAccept;
|
|
|
|
@or(
|
|
'bypassAuthorization',
|
|
'selfTokenIsManagement',
|
|
'policiesSupportAcceptingOnAnyNamespace'
|
|
)
|
|
hasPermissions;
|
|
|
|
@computed('capabilitiesForAllNamespaces.[]')
|
|
get policiesSupportAcceptingOnAnyNamespace() {
|
|
return this.capabilitiesForAllNamespaces.includes('submit-job');
|
|
}
|
|
|
|
@computed('features.[]')
|
|
get dynamicApplicationSizingIsPresent() {
|
|
return this.featureIsPresent('Dynamic Application Sizing');
|
|
}
|
|
}
|