deb.open-vault/ui/lib/kmip/addon/controllers/role.js

27 lines
766 B
JavaScript

/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import Controller from '@ember/controller';
import { inject as service } from '@ember/service';
import { action } from '@ember/object';
export default class RoleController extends Controller {
@service flashMessages;
@service router;
@action
async deleteRole() {
const { id } = this.model;
try {
await this.model.destroyRecord();
this.flashMessages.success(`Successfully deleted role ${id}`);
this.router.transitionTo('vault.cluster.secrets.backend.kmip.scope.roles', this.scope);
} catch (e) {
this.flashMessages.danger(`There was an error deleting the role ${id}: ${e.errors.join(' ')}`);
this.model.rollbackAttributes();
}
}
}