mirror of
https://github.com/optim-enterprises-bv/vault.git
synced 2025-11-01 19:17:58 +00:00
UI - identity details (#4502)
* add popups * add ability to disable entity and banner when entity is disabled * re-add alias-popup template * add accpetance tests for creating entities * add more entity creation acceptance tests * add delete to edit-form * add more identity tests and associated selectors * add onSuccess hook and use UnloadModel route mixins * add ability to toggle entity disabling from the popover * fix store list cache because unloadAll isn't synchronous * fill out tests for identity items and aliases * add ability to enable entity from the detail page * toArray on the peekAll * fix other tests/behavior that relied on a RecordArray * adjust layout for disabled entity and label for disabling an entity on the edit form * add item-details integration tests * move disable field on the entity form * use ghost buttons for delete in identity and policy edit forms * adding computed macros for lazy capability fetching and using them in the identity models
This commit is contained in:
40
ui/app/components/identity/_popup-base.js
Normal file
40
ui/app/components/identity/_popup-base.js
Normal file
@@ -0,0 +1,40 @@
|
||||
import Ember from 'ember';
|
||||
const { assert, inject, Component } = Ember;
|
||||
|
||||
export default Component.extend({
|
||||
tagName: '',
|
||||
flashMessages: inject.service(),
|
||||
params: null,
|
||||
successMessage() {
|
||||
return 'Save was successful';
|
||||
},
|
||||
errorMessage() {
|
||||
return 'There was an error saving';
|
||||
},
|
||||
onError(model) {
|
||||
if (model && model.rollbackAttributes) {
|
||||
model.rollbackAttributes();
|
||||
}
|
||||
},
|
||||
onSuccess(){},
|
||||
// override and return a promise
|
||||
transaction() {
|
||||
assert('override transaction call in an extension of popup-base', false);
|
||||
},
|
||||
|
||||
actions: {
|
||||
performTransaction() {
|
||||
let args = [...arguments];
|
||||
let messageArgs = this.messageArgs(...args);
|
||||
return this.transaction(...args)
|
||||
.then(() => {
|
||||
this.get('onSuccess')();
|
||||
this.get('flashMessages').success(this.successMessage(...messageArgs));
|
||||
})
|
||||
.catch(e => {
|
||||
this.onError(...messageArgs);
|
||||
this.get('flashMessages').success(this.errorMessage(e, ...messageArgs));
|
||||
});
|
||||
},
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user