Script to Unistall a Market

This commit is contained in:
Luis Fernando Molina committed 2020-02-28 16:06:37 +01:00
1 parent 3a8a5f46f5
commit 18ec91c2d9
4 files changed
+37 -27

No files matched your search

@@ -56,38 +56,40 @@ function newNodeDeleter () {
}
/* Remove node from parent */
if (node.payload.parentNode !== undefined) {
let parentNodeDefinition = APP_SCHEMA_MAP.get(node.payload.parentNode.type)
if (parentNodeDefinition !== undefined) {
if (parentNodeDefinition.properties !== undefined) {
for (let i = 0; i < parentNodeDefinition.properties.length; i++) {
let property = parentNodeDefinition.properties[i]
if (nodeDefinition.propertyNameAtParent === property.name) {
switch (property.type) {
case 'node': {
node.payload.parentNode[property.name] = undefined
}
break
case 'array': {
let nodePropertyArray = node.payload.parentNode[property.name]
if (nodePropertyArray !== undefined) {
for (let j = 0; j < nodePropertyArray.length; j++) {
let arrayItem = nodePropertyArray[j]
if (arrayItem.id === node.id) {
if (node.payload !== undefined) {
if (node.payload.parentNode !== undefined) {
let parentNodeDefinition = APP_SCHEMA_MAP.get(node.payload.parentNode.type)
if (parentNodeDefinition !== undefined) {
if (parentNodeDefinition.properties !== undefined) {
for (let i = 0; i < parentNodeDefinition.properties.length; i++) {
let property = parentNodeDefinition.properties[i]
if (nodeDefinition.propertyNameAtParent === property.name) {
switch (property.type) {
case 'node': {
node.payload.parentNode[property.name] = undefined
}
break
case 'array': {
let nodePropertyArray = node.payload.parentNode[property.name]
if (nodePropertyArray !== undefined) {
for (let j = 0; j < nodePropertyArray.length; j++) {
let arrayItem = nodePropertyArray[j]
if (arrayItem.id === node.id) {
/* If this object is chained to the ones of the same type we need to give the next in the chain the reference to the current chain parent */
if (nodeDefinition.chainedToSameType === true) {
if (j < nodePropertyArray.length - 1) {
let nextArrayItem = nodePropertyArray[j + 1]
nextArrayItem.payload.chainParent = node.payload.chainParent
if (nodeDefinition.chainedToSameType === true) {
if (j < nodePropertyArray.length - 1) {
let nextArrayItem = nodePropertyArray[j + 1]
nextArrayItem.payload.chainParent = node.payload.chainParent
}
}
}
nodePropertyArray.splice(j, 1)
nodePropertyArray.splice(j, 1)
}
}
}
}
break
}
break
}
}
}
@@ -112,6 +114,9 @@ function newNodeDeleter () {
}
function cleanNode (node) {
if (node.payload === undefined) { return }
if (node === undefined) { return }
node.payload.targetPosition.x = undefined
node.payload.targetPosition.y = undefined
node.payload.visible = undefined
@@ -5,7 +5,7 @@ function newSuperScriptsFunctions () {
return thisObject
function runSuperScript (node, functionLibraryNodeCloning, functionLibraryUiObjectsFromNodes) {
function runSuperScript (node, rootNodes, functionLibraryNodeCloning, functionLibraryUiObjectsFromNodes, functionLibraryNodeDeleter) {
try {
let clone = functionLibraryNodeCloning.getNodeClone
let executionResult = true
@@ -17,6 +17,10 @@ function newSuperScriptsFunctions () {
functionLibraryUiObjectsFromNodes.createUiObjectFromNode(templateClone, target, target)
}
function deleteNode (node) {
functionLibraryNodeDeleter.deleteUIObject(node, rootNodes)
}
/* Validations */
if (executionResult === true && node.payload.parentNode === undefined) {
node.payload.uiObject.setErrorMessage('Super Action node needs a Parent Node.')
+1 -1
View File
@@ -368,7 +368,7 @@ function newWorkspace () {
break
case 'Run Super Action':
{
functionLibrarySuperScripts.runSuperScript(payload.node, functionLibraryNodeCloning, functionLibraryUiObjectsFromNodes)
functionLibrarySuperScripts.runSuperScript(payload.node, thisObject.workspaceNode.rootNodes, functionLibraryNodeCloning, functionLibraryUiObjectsFromNodes, functionLibraryNodeDeleter)
}
break
case 'Remove Parent':
@@ -495,6 +495,7 @@ function newUiObjectConstructor () {
}
function destroyUiObject (payload) {
if (payload === undefined) { return }
floatingLayer.removeFloatingObject(payload.floatingObject.handle)
payload.floatingObject.finalize()