Api Fetcher bot Task Installation Process Implemented and tested
This commit is contained in:
1 parent
cd72460f46
commit
32a898d7c7
8 files changed
+58
-29
No files matched your search
@@ -50,7 +50,7 @@ function newEthereumBlockchainSpace() {
|
||||
try {
|
||||
if (UI.projects.superalgos.spaces.designSpace.workspace === undefined) { return }
|
||||
|
||||
let blockchain = UI.projects.superalgos.spaces.designSpace.workspace.getHierarchyHeadsByType('Ethereum Blockchain')
|
||||
let blockchain = UI.projects.superalgos.spaces.designSpace.workspace.getHierarchyHeadByNodeType('Ethereum Blockchain')
|
||||
if (blockchain === undefined) { return }
|
||||
for (let i = 0; i < blockchain.blockchainNetworks.length; i++) {
|
||||
let blockchainNetwork = blockchain.blockchainNetworks[i]
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"type":"Workspace","name":"API Fetcher Demo","rootNodes":[{"type":"Network","name":"My Network","project":"Superalgos","networkNodes":[{"type":"Network Node","name":"My Computer","config":"{ \n\"host\": \"localhost\", \n\"webPort\": \"34248\", \n\"webSocketsPort\": \"18041\"\n}","project":"Superalgos","dataTasks":{"type":"Data Tasks","name":"New Data Tasks","project":"Superalgos","projectDataTasks":[{"type":"Project Data Tasks","name":"Superalgos","project":"Superalgos","exchangeDataTasks":[{"type":"Exchange Data Tasks","name":"Binance","project":"Superalgos","marketDataTasks":[{"type":"Market Data Tasks","name":"Binance BTC/USDT","project":"Superalgos","dataMineTasks":[{"type":"Data Mine Tasks","name":"Masters","project":"Superalgos","taskManagers":[{"type":"Task Manager","name":"Masters","project":"Superalgos","tasks":[{"type":"Task","name":"Exchange Raw Data","project":"Superalgos","bot":{"type":"Sensor Bot Instance","name":"Exchange Raw Data","config":"{ \n\"startDate\": \"2020-01-01\"\n}","project":"Superalgos","processes":[{"type":"Sensor Process Instance","name":"Exchange Raw Data Historic-OHLCVs","project":"Superalgos","id":"ecc383c5-3e31-4f80-b2c5-1c966b9d77f4","savedPayload":{"position":{"x":23544.138017922,"y":29821.660447464918},"targetPosition":{"x":23756.270052277963,"y":29609.528413108954},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Historic-OHLCVs","id":"5eb11d6a-022e-4f60-97c4-d6cf90b249dc"}}}],"id":"624f61cb-a76a-4059-b46d-c81975d88a9b","savedPayload":{"position":{"x":23756.270052277963,"y":29609.528413108954},"targetPosition":{"x":24047.813522775024,"y":29538.800732456126},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"94b155fe-1012-4c24-9830-2e4adfe4a614","savedPayload":{"position":{"x":24047.813522775024,"y":29538.800732456126},"targetPosition":{"x":24339.356993272086,"y":29468.073051803298},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},{"type":"Task","name":"Webhooks","project":"Superalgos","bot":{"type":"Sensor Bot Instance","name":"Webhooks","config":"{ \n\"startDate\": \"2020-01-01\"\n}","project":"Superalgos","processes":[{"type":"Sensor Process Instance","name":"Webhooks Check-Webhook","project":"Superalgos","id":"cea8f612-7533-4bc8-9df9-2e14f2c6eabd","savedPayload":{"position":{"x":23527.90455540632,"y":29651.655936665014},"targetPosition":{"x":23740.036589762283,"y":29439.52390230905},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Check-Webhook","id":"69f37820-ab16-4e19-bfd8-386dd6e249a3"}}}],"id":"124d68e8-969b-4426-b736-d8a3f9fd730f","savedPayload":{"position":{"x":23740.036589762283,"y":29439.52390230905},"targetPosition":{"x":24039.696791517184,"y":29453.798477056174},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"77f3b15e-546d-4259-82bd-96a56781dd69","savedPayload":{"position":{"x":24039.696791517184,"y":29453.798477056174},"targetPosition":{"x":24339.356993272086,"y":29468.073051803298},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},{"type":"Task","name":"Candles Volumes","project":"Superalgos","bot":{"type":"Indicator Bot Instance","name":"Candles Volumes","config":"{ \n\"parameter1\": \"Value for parameter1 defined at the Product Definition\"\n}","project":"Superalgos","processes":[{"type":"Indicator Process Instance","name":"Candles Volumes Multi-Period-Market","project":"Superalgos","id":"abfaac8d-2eb6-452d-872f-2146e394d6a4","savedPayload":{"position":{"x":23560.224467687323,"y":29483.96430816881},"targetPosition":{"x":23772.356502043287,"y":29271.832273812845},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Market","id":"9f683143-a33f-42c1-9fa8-c601f01ee4e1"}}},{"type":"Indicator Process Instance","name":"Candles Volumes Multi-Period-Daily","project":"Superalgos","id":"f5f4dfd5-4d14-49fa-8cb3-8989f157d5cb","savedPayload":{"position":{"x":23472.356502043287,"y":29271.832273812845},"targetPosition":{"x":23772.356502043287,"y":29271.832273812845},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Line truncated
|
||||
{"type":"Workspace","name":"API Fetcher Demo","rootNodes":[{"type":"Network","name":"My Network","project":"Superalgos","networkNodes":[{"type":"Network Node","name":"My Computer","config":"{ \n\"host\": \"localhost\", \n\"webPort\": \"34248\", \n\"webSocketsPort\": \"18041\"\n}","project":"Superalgos","dataTasks":{"type":"Data Tasks","name":"New Data Tasks","project":"Superalgos","projectDataTasks":[{"type":"Project Data Tasks","name":"Superalgos","project":"Superalgos","exchangeDataTasks":[{"type":"Exchange Data Tasks","name":"Binance","project":"Superalgos","marketDataTasks":[{"type":"Market Data Tasks","name":"Binance BTC/USDT","project":"Superalgos","dataMineTasks":[{"type":"Data Mine Tasks","name":"Masters","project":"Superalgos","taskManagers":[{"type":"Task Manager","name":"Masters","project":"Superalgos","tasks":[{"type":"Task","name":"Exchange Raw Data","project":"Superalgos","bot":{"type":"Sensor Bot Instance","name":"Exchange Raw Data","config":"{ \n\"startDate\": \"2020-01-01\"\n}","project":"Superalgos","processes":[{"type":"Sensor Process Instance","name":"Exchange Raw Data Historic-OHLCVs","project":"Superalgos","id":"407b3902-312f-4074-a7b2-f4e9ce72db07","savedPayload":{"position":{"x":25257.356993272086,"y":30595.11115747996},"targetPosition":{"x":25233.356993272086,"y":30679.11115747996},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Historic-OHLCVs","id":"5eb11d6a-022e-4f60-97c4-d6cf90b249dc"}}}],"id":"4b5fb696-c41e-4cf0-92e2-e5a64a3871e4","savedPayload":{"position":{"x":25233.356993272086,"y":30679.11115747996},"targetPosition":{"x":25311.356993272086,"y":30585.11115747996},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"a5933e2f-5aa8-45dd-8f13-e50a42b795b2","savedPayload":{"position":{"x":25311.356993272086,"y":30585.11115747996},"targetPosition":{"x":25217.356993272086,"y":30681.11115747996},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"Webhooks","project":"Superalgos","bot":{"type":"Sensor Bot Instance","name":"Webhooks","config":"{ \n\"startDate\": \"2020-01-01\"\n}","project":"Superalgos","processes":[{"type":"Sensor Process Instance","name":"Webhooks Check-Webhook","project":"Superalgos","id":"c5bc3847-e5b9-4345-92a7-319b3248a40e","savedPayload":{"position":{"x":25139.356993272086,"y":30657.11115747996},"targetPosition":{"x":25226.356993272086,"y":30745.11115747996},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Check-Webhook","id":"69f37820-ab16-4e19-bfd8-386dd6e249a3"}}}],"id":"64cef381-ea35-4f33-bb53-8e06ea009225","savedPayload":{"position":{"x":25226.356993272086,"y":30745.11115747996},"targetPosition":{"x":25188.356993272086,"y":30686.11115747996},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"d3837a8f-361a-4a28-9691-e0afac2fb8f0","savedPayload":{"position":{"x":25188.356993272086,"y":30686.11115747996},"targetPosition":{"x":25217.356993272086,"y":30681.11115747996},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"Candles Volumes","project":"Superalgos","bot":{"type":"Indicator Bot Instance","name":"Candles Volumes","config":"{ \n\"parameter1\": \"Value for parameter1 defined at the Product Definition\"\n}","project":"Superalgos","processes":[{"type":"Indicator Process Instance","name":"Candles Volumes Multi-Period-Market","project":"Superalgos","id":"1e1ea090-43a5-457e-ac5a-d8c23e242b03","savedPayload":{"position":{"x":25045.356993272086,"y":30709.11115747996},"targetPosition":{"x":25134.356993272086,"y":30790.11115747996},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Market","id":"9f683143-a33f-42c1-9fa8-c601f01ee4e1"}}},{"type":"Indicator Process Instance","name":"Candles Volumes Multi-Period-Daily","project":"Superalgos","id":"3bb72ff9-6ce3-42ac-86c5-33f6a3e980c3","savedPayload":{"position":{"x":25046.356993272086,"y":30835.11115747996},"targetPosition":{"x":25134.356993272086,"y":30790.11115747996},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0}Line truncated
|
||||
+1
-1
@@ -44,7 +44,7 @@
|
||||
},
|
||||
{
|
||||
"style": "List",
|
||||
"text": "getHierarchyHeadsByType",
|
||||
"text": "getHierarchyHeadByNodeType",
|
||||
"updated": 1614931380751
|
||||
},
|
||||
{
|
||||
|
||||
@@ -136,9 +136,9 @@ function newSuperalgosFunctionLibraryTaskFunctions() {
|
||||
'Data Dependency Folder->Data Dependency Folder->Data Dependency Folder->Data Dependency Folder->Data Dependency Folder->' +
|
||||
'Data Dependency->Dataset Definition->Product Definition->' +
|
||||
'Record Definition->Record Property->Record Formula->' +
|
||||
'API Response Field Reference->' +
|
||||
'API Response Field Reference->' +
|
||||
'API Response Field->API Response Field->API Response Field->API Response Field->API Response Field->API Response Field->API Response Field->API Response Field->API Response Field->' +
|
||||
'API Response Schema->API Query Response->API Query Responses->API Endpoint->' +
|
||||
'API Response Schema->API Query Response->API Query Responses->API Endpoint->' +
|
||||
'Data Building Procedure->' +
|
||||
'Procedure Initialization->Procedure Javascript Code->' +
|
||||
'Procedure Loop->Procedure Javascript Code->' +
|
||||
@@ -154,9 +154,9 @@ function newSuperalgosFunctionLibraryTaskFunctions() {
|
||||
'Trading Bot->' +
|
||||
'Learning Bot->' +
|
||||
'Product Definition Folder->Product Definition Folder->Product Definition Folder->Product Definition Folder->Product Definition Folder->' +
|
||||
'Data Mine->Trading Mine->Learning Mine->'+
|
||||
'API Map Reference->' +
|
||||
'API Map->API Version->API Endpoint->API Query Parameters->API Query Parameter->API Query Responses->API Query Response->API Response Schema->' +
|
||||
'Data Mine->Trading Mine->Learning Mine->' +
|
||||
'API Map Reference->' +
|
||||
'API Map->API Version->API Endpoint->API Query Parameters->API Query Parameter->API Query Responses->API Query Response->API Response Schema->' +
|
||||
'API Response Field->API Response Field->API Response Field->API Response Field->API Response Field->API Response Field->API Response Field->API Response Field->API Response Field->'
|
||||
|
||||
let taskDefinition = UI.projects.superalgos.functionLibraries.protocolNode.getProtocolNode(node, false, true, true, false, false, taskLightingPath)
|
||||
@@ -167,7 +167,7 @@ function newSuperalgosFunctionLibraryTaskFunctions() {
|
||||
'Project Data Products->Project Trading Products->Project Learning Products->' +
|
||||
'Exchange Data Products->Exchange Trading Products->Exchange Learning Products->' +
|
||||
'Market Data Products->Market Trading Products->Market Learning Products->' +
|
||||
'Market->Market Base Asset->Market Quoted Asset->Asset->' +
|
||||
'Market->Market Base Asset->Market Quoted Asset->Asset->' +
|
||||
'Exchange Markets->Crypto Exchange->' +
|
||||
'Data Mine Products->Bot Products->' +
|
||||
'Data Product Folder->Data Product Folder->Data Product Folder->Data Product Folder->Data Product Folder->' +
|
||||
@@ -181,7 +181,7 @@ function newSuperalgosFunctionLibraryTaskFunctions() {
|
||||
'Indicator Bot Instance->Sensor Bot Instance->API Data Fetcher Bot Instance->Trading Bot Instance->Learning Bot Instance->' +
|
||||
'Indicator Process Instance->Sensor Process Instance->API Data Fetcher Process Instance->Trading Process Instance->Learning Process Instance->' +
|
||||
'Paper Trading Session->Forward Testing Session->Backtesting Session->Live Trading Session->Back Learning Session->Live Learning Session->' +
|
||||
'API Map Reference->' +
|
||||
'API Map Reference->' +
|
||||
'Market->' +
|
||||
'Process Definition->'
|
||||
|
||||
@@ -196,7 +196,7 @@ function newSuperalgosFunctionLibraryTaskFunctions() {
|
||||
let project = {
|
||||
name: projectDefinition.name,
|
||||
schema: SCHEMAS_BY_PROJECT.get(projectDefinition.name).array.appSchema
|
||||
}
|
||||
}
|
||||
projectSchemas.push(project)
|
||||
}
|
||||
let event = {
|
||||
@@ -804,13 +804,13 @@ function newSuperalgosFunctionLibraryTaskFunctions() {
|
||||
break
|
||||
}
|
||||
case 'Learning Bot': {
|
||||
let task
|
||||
let task
|
||||
/*
|
||||
For Learning Bots we will add two Tasks, each one with a different
|
||||
Session Type.
|
||||
*/
|
||||
task = addTask(taskManager)
|
||||
task.name = 'Back ' + task.name
|
||||
task.name = 'Back ' + task.name
|
||||
|
||||
botInstance = UI.projects.superalgos.functionLibraries.uiObjectsFromNodes.addUIObject(task, 'Learning Bot Instance')
|
||||
botInstance.name = 'Back ' + bot.name
|
||||
@@ -818,7 +818,7 @@ function newSuperalgosFunctionLibraryTaskFunctions() {
|
||||
addProcessInstance(task, bot, botInstance, 'Back Learning Session')
|
||||
|
||||
task = addTask(taskManager)
|
||||
task.name = 'Live ' + task.name
|
||||
task.name = 'Live ' + task.name
|
||||
|
||||
botInstance = UI.projects.superalgos.functionLibraries.uiObjectsFromNodes.addUIObject(task, 'Learning Bot Instance')
|
||||
botInstance.name = 'Live ' + bot.name
|
||||
@@ -828,7 +828,7 @@ function newSuperalgosFunctionLibraryTaskFunctions() {
|
||||
}
|
||||
}
|
||||
|
||||
function addTask(taskManager){
|
||||
function addTask(taskManager) {
|
||||
let task = UI.projects.superalgos.functionLibraries.uiObjectsFromNodes.addUIObject(taskManager, 'Task')
|
||||
|
||||
if (systemNode !== undefined) {
|
||||
@@ -852,6 +852,21 @@ function newSuperalgosFunctionLibraryTaskFunctions() {
|
||||
case 'API Data Fetcher Bot': {
|
||||
processInstance = UI.projects.superalgos.functionLibraries.uiObjectsFromNodes.addUIObject(botInstance, 'API Data Fetcher Process Instance')
|
||||
processInstance.payload.referenceParent = process
|
||||
|
||||
/*
|
||||
We will locate and reference the API MAP that has the same codeName than the data mine.
|
||||
*/
|
||||
let apiMaps = UI.projects.superalgos.spaces.designSpace.workspace.getHierarchyHeadsByNodeType('API Map')
|
||||
for (let i = 0; i < apiMaps.length; i++) {
|
||||
let apiMap = apiMaps[i]
|
||||
let apiMapCodeName = UI.projects.superalgos.utilities.nodeConfig.loadPropertyFromNodeConfig(apiMap.payload, 'codeName')
|
||||
let mineCodeName = UI.projects.superalgos.utilities.nodeConfig.loadPropertyFromNodeConfig(mine.payload, 'codeName')
|
||||
|
||||
if (apiMapCodeName === mineCodeName) {
|
||||
processInstance.apiMapReference.payload.referenceParent = apiMap
|
||||
break
|
||||
}
|
||||
}
|
||||
break
|
||||
}
|
||||
case 'Indicator Bot': {
|
||||
@@ -862,17 +877,17 @@ function newSuperalgosFunctionLibraryTaskFunctions() {
|
||||
case 'Trading Bot': {
|
||||
processInstance = UI.projects.superalgos.functionLibraries.uiObjectsFromNodes.addUIObject(botInstance, 'Trading Process Instance')
|
||||
processInstance.payload.referenceParent = process
|
||||
|
||||
|
||||
if (node.payload.parentNode === undefined) { return }
|
||||
if (node.payload.parentNode.payload === undefined) { return }
|
||||
if (node.payload.parentNode.payload.parentNode === undefined) { return }
|
||||
if (node.payload.parentNode.payload.parentNode.payload === undefined) { return }
|
||||
if (node.payload.parentNode.payload.parentNode.payload.parentNode === undefined) { return }
|
||||
if (node.payload.parentNode.payload.parentNode.payload.parentNode.payload.parentNode === undefined) { return }
|
||||
|
||||
|
||||
let environment = node.payload.parentNode.payload.parentNode.payload.parentNode.payload.parentNode
|
||||
let session
|
||||
|
||||
|
||||
switch (environment.type) {
|
||||
case 'Testing Trading Tasks': {
|
||||
addSession('Backtesting Session')
|
||||
@@ -884,14 +899,14 @@ function newSuperalgosFunctionLibraryTaskFunctions() {
|
||||
}
|
||||
}
|
||||
break
|
||||
|
||||
|
||||
function addSession(sessionType) {
|
||||
session = UI.projects.superalgos.functionLibraries.uiObjectsFromNodes.addUIObject(processInstance, sessionType)
|
||||
session.name = task.name
|
||||
let config = JSON.parse(session.config)
|
||||
config.folderName = session.name.split(" ").join("-")
|
||||
session.config = JSON.stringify(config)
|
||||
|
||||
|
||||
for (let m = 0; m < rootNodes.length; m++) {
|
||||
let rootNode = rootNodes[m]
|
||||
if (rootNode.type === 'Trading Engine' && rootNode.isPlugin === true) {
|
||||
@@ -905,18 +920,18 @@ function newSuperalgosFunctionLibraryTaskFunctions() {
|
||||
case 'Learning Bot': {
|
||||
processInstance = UI.projects.superalgos.functionLibraries.uiObjectsFromNodes.addUIObject(botInstance, 'Learning Process Instance')
|
||||
processInstance.payload.referenceParent = process
|
||||
|
||||
|
||||
let session
|
||||
addSession(sessionType)
|
||||
break
|
||||
|
||||
|
||||
function addSession(sessionType) {
|
||||
session = UI.projects.superalgos.functionLibraries.uiObjectsFromNodes.addUIObject(processInstance, sessionType)
|
||||
session.name = task.name
|
||||
let config = JSON.parse(session.config)
|
||||
config.folderName = session.name.split(" ").join("-")
|
||||
session.config = JSON.stringify(config)
|
||||
|
||||
|
||||
for (let m = 0; m < rootNodes.length; m++) {
|
||||
let rootNode = rootNodes[m]
|
||||
if (rootNode.type === 'Learning Engine' && rootNode.isPlugin === true) {
|
||||
|
||||
@@ -19,7 +19,8 @@ function newWorkspace() {
|
||||
getProjectsHeads: getProjectsHeads,
|
||||
getHierarchyHeads: getHierarchyHeads,
|
||||
getHierarchyHeadsById: getHierarchyHeadsById,
|
||||
getHierarchyHeadsByType: getHierarchyHeadsByType,
|
||||
getHierarchyHeadByNodeType: getHierarchyHeadByNodeType,
|
||||
getHierarchyHeadsByNodeType: getHierarchyHeadsByNodeType,
|
||||
getNodeThatIsOnFocus: getNodeThatIsOnFocus,
|
||||
getNodeByShortcutKey: getNodeByShortcutKey,
|
||||
getNodeById: getNodeById,
|
||||
@@ -512,7 +513,7 @@ function newWorkspace() {
|
||||
}
|
||||
}
|
||||
|
||||
function getHierarchyHeadsByType(nodeType) {
|
||||
function getHierarchyHeadByNodeType(nodeType) {
|
||||
let hierarchyHeads = getHierarchyHeads()
|
||||
if (hierarchyHeads === undefined) { return }
|
||||
for (let i = 0; i < hierarchyHeads.length; i++) {
|
||||
@@ -523,6 +524,19 @@ function newWorkspace() {
|
||||
}
|
||||
}
|
||||
|
||||
function getHierarchyHeadsByNodeType(nodeType) {
|
||||
let hierarchyHeads = getHierarchyHeads()
|
||||
let resultArray = []
|
||||
if (hierarchyHeads === undefined) { return }
|
||||
for (let i = 0; i < hierarchyHeads.length; i++) {
|
||||
let hierarchyHead = hierarchyHeads[i]
|
||||
if (hierarchyHead.type === nodeType) {
|
||||
resultArray.push(hierarchyHead)
|
||||
}
|
||||
}
|
||||
return resultArray
|
||||
}
|
||||
|
||||
function replaceWorkspaceByLoadingOne(project, name) {
|
||||
|
||||
let webCommand
|
||||
|
||||
@@ -42,7 +42,7 @@ function newSuperalgosDocsCommmandInterface() {
|
||||
}
|
||||
|
||||
/* Find the Username and Password */
|
||||
let apisNode = UI.projects.superalgos.spaces.designSpace.workspace.getHierarchyHeadsByType('APIs')
|
||||
let apisNode = UI.projects.superalgos.spaces.designSpace.workspace.getHierarchyHeadByNodeType('APIs')
|
||||
if (apisNode === undefined) {
|
||||
UI.projects.superalgos.spaces.docsSpace.navigateTo('Superalgos', 'Topic', 'App Error - Github Credentials Missing', 'Anchor Github Credentials Missing')
|
||||
return
|
||||
|
||||
@@ -21,7 +21,7 @@ function newSuperalgosDocsSearchEngine() {
|
||||
/*
|
||||
This is a way to avoid indexing the docs, if the user does not want to.
|
||||
*/
|
||||
let docsSpaceNode = UI.projects.superalgos.spaces.designSpace.workspace.getHierarchyHeadsByType('Docs Space')
|
||||
let docsSpaceNode = UI.projects.superalgos.spaces.designSpace.workspace.getHierarchyHeadByNodeType('Docs Space')
|
||||
if (docsSpaceNode !== undefined) {
|
||||
if (docsSpaceNode.spaceSettings !== undefined) {
|
||||
let indexContent = UI.projects.superalgos.utilities.nodeConfig.loadPropertyFromNodeConfig(docsSpaceNode.spaceSettings.payload, 'indexContent')
|
||||
|
||||
@@ -444,7 +444,7 @@ function newSuperalgosFloatingSpace() {
|
||||
function syncStylePhysics() {
|
||||
if (UI.projects.superalgos.spaces.designSpace === undefined) { return }
|
||||
if (UI.projects.superalgos.spaces.designSpace.workspace === undefined) { return }
|
||||
let designSpaceNode = UI.projects.superalgos.spaces.designSpace.workspace.getHierarchyHeadsByType('Design Space')
|
||||
let designSpaceNode = UI.projects.superalgos.spaces.designSpace.workspace.getHierarchyHeadByNodeType('Design Space')
|
||||
if (designSpaceNode === undefined) { return }
|
||||
if (designSpaceNode.spaceStyle === undefined) { return }
|
||||
let configStyle
|
||||
@@ -496,7 +496,7 @@ function newSuperalgosFloatingSpace() {
|
||||
function syncSettingsPhysics() {
|
||||
if (UI.projects.superalgos.spaces.designSpace === undefined) { return }
|
||||
if (UI.projects.superalgos.spaces.designSpace.workspace === undefined) { return }
|
||||
let designSpaceNode = UI.projects.superalgos.spaces.designSpace.workspace.getHierarchyHeadsByType('Design Space')
|
||||
let designSpaceNode = UI.projects.superalgos.spaces.designSpace.workspace.getHierarchyHeadByNodeType('Design Space')
|
||||
if (designSpaceNode === undefined) { return }
|
||||
if (designSpaceNode.spaceSettings === undefined) { return }
|
||||
let configSettings
|
||||
|
||||
Reference in new issue
Block a user