Files
threshold-ui/addons/api/addon/abilities/storage-bucket.js
T
lisbet-alvarez 4f0b3f71fd chore: 🤖 can abilities for storage bucket (#97)
* chore: 🤖 add can list, navigate, and create

✅ Closes: ICU-8244
2023-03-09 08:57:50 -08:00

42 lines
834 B
JavaScript

/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import ModelAbility from './model';
/**
* Provides abilities for storage buckets.
*/
export default class StorageBucketAbility extends ModelAbility {
// =services
// =permissions
/**
* Only "known" storage bucket types may be read.
* @type {boolean}
*/
get canRead() {
return !this.model.isUnknown && this.hasAuthorizedAction('read');
}
/**
* Storage buckets can only exist within global and org scopes.
* @type {boolean}
*/
get canCreate() {
return (
this.hasAuthorizedCollectionAction('create') &&
(this.model.isGlobal || this.model.isOrg)
);
}
get canList() {
return (
this.hasAuthorizedCollectionAction('list') &&
(this.model.isGlobal || this.model.isOrg)
);
}
}