Correctly use creatable attribute and persistability when working with domainObjects (#4898)

* making move action location check persistability

* adding persistence check instead of creatability for styles

* added check for link action to make sure parent is persistable

* debug

* adding parent to link action and move action form location controls so they can be used in the form

* adding parent persistability check for duplicate

* updating multilple actions appliesTo methods to check for persistability

* updated the tree to not require an initial selection if being used in a form

* remove noneditable folder plugin

* added persistence check for the parent, in the create wizard

* minor name change

* removing noneditabl folder from default plugins as well

* checking the correct parent for persistability in create wizard

* importing file-saver correctly

* updated tests for import as json

* changes addressing PR review: using consts, removing comments, removing unneccessary code

Co-authored-by: Scott Bell <scott@traclabs.com>
This commit is contained in:
Jamie V
2022-03-14 13:20:06 -07:00
committed by GitHub
parent bcd668594d
commit e691a89682
13 changed files with 67 additions and 124 deletions

View File

@ -106,6 +106,11 @@ export default class RemoveAction {
let child = objectPath[0];
let locked = child.locked ? child.locked : parent && parent.locked;
let isEditing = this.openmct.editor.isEditing();
let isPersistable = this.openmct.objects.isPersistable(child.identifier);
if (locked || !isPersistable) {
return false;
}
if (isEditing) {
let currentItemInView = this.openmct.router.path[0];
@ -116,10 +121,6 @@ export default class RemoveAction {
}
}
if (locked) {
return false;
}
return parentType
&& parentType.definition.creatable
&& Array.isArray(parent.composition);