| /** |
| * Copyright (c) HashiCorp, Inc. |
| * SPDX-License-Identifier: MPL-2.0 |
| */ |
| |
| import Model, { hasMany, belongsTo, attr } from '@ember-data/model'; |
| import { alias } from '@ember/object/computed'; |
| import lazyCapabilities, { apiPath } from 'vault/macros/lazy-capabilities'; |
| |
| export default Model.extend({ |
| approved: attr('boolean'), |
| requestPath: attr('string'), |
| requestEntity: belongsTo('identity/entity', { async: false }), |
| authorizations: hasMany('identity/entity', { async: false }), |
| |
| authorizePath: lazyCapabilities(apiPath`sys/control-group/authorize`), |
| canAuthorize: alias('authorizePath.canUpdate'), |
| configurePath: lazyCapabilities(apiPath`sys/config/control-group`), |
| canConfigure: alias('configurePath.canUpdate'), |
| }); |