Merge branch 'develop' of https://github.com/Superalgos/Superalgos into develop

This commit is contained in:
Neobii committed 2021-12-01 09:26:46 -06:00
commit f1833b6ba5
16 files changed
+10709 -3818

No files matched your search

+2 -2
View File
@@ -38,8 +38,8 @@ exports.newEnvironment = function () {
PLATFORM_APP_SIGNING_ACCOUNT: 'Algo-Traders-Platform-1',
P2P_NETWORK_NODE_SIGNING_ACCOUNT: 'P2P-Network-Node-1',
P2P_NETWORK_NODE_MAX_INCOMING_CLIENTS: 1,
P2P_NETWORK_NODE_MAX_INCOMING_PEERS: 2,
P2P_NETWORK_NODE_MAX_OUTGOING_PEERS: 2
P2P_NETWORK_NODE_MAX_INCOMING_PEERS: 0,
P2P_NETWORK_NODE_MAX_OUTGOING_PEERS: 0
}
if (process.env.DATA_PATH) {
@@ -36,9 +36,9 @@
"relatedUiObjectProject": "Community-Plugins"
},
{
"action": "Save Plugin",
"action": "Save Plugin File",
"actionFunction": "payload.executeAction",
"label": "Save Plugin",
"label": "Save Plugin File",
"relatedUiObject": "Plugin File",
"actionProject": "Community-Plugins",
"relatedUiObjectProject": "Community-Plugins"
@@ -39,9 +39,9 @@ function newCommunityPluginsActionSwitch() {
}
break
case 'Add Specified Plugin Data Mine':
{
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.addSpecifiedPluginDataMine(action.node, action.rootNodes)
}
{
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.addSpecifiedPluginDataMine(action.node, action.rootNodes)
}
break
case 'Add Missing Plugin Trading Mines':
{
@@ -108,9 +108,14 @@ function newCommunityPluginsActionSwitch() {
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.disableSavingWithWorkspace(action.node, action.rootNodes, action.callBackFunction)
}
break
case 'Save Plugin File':
{
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.savePluginFile(action.node, action.rootNodes)
}
break
case 'Save Plugin':
{
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.savePlugin(action.node, action.rootNodes)
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.savePluginHierarchy(action.node, action.rootNodes)
}
break
@@ -17,7 +17,8 @@ function newPluginsFunctionLibraryPluginsFunctions() {
addMissingPluginApiMaps: addMissingPluginApiMaps,
enableSavingWithWorkspace: enableSavingWithWorkspace,
disableSavingWithWorkspace: disableSavingWithWorkspace,
savePlugin: savePlugin,
savePluginFile: savePluginFile,
savePluginHierarchy: savePluginHierarchy,
installAsPlugin: installAsPlugin
}
return thisObject
@@ -283,8 +284,35 @@ function newPluginsFunctionLibraryPluginsFunctions() {
callBackFunction(GLOBAL.DEFAULT_OK_RESPONSE)
}
function savePlugin(node, rootNodes) {
UI.projects.communityPlugins.utilities.plugins.savePluginFile(node)
function savePluginFile(pluginFile, rootNodes) {
UI.projects.communityPlugins.utilities.plugins.savePluginFileAtClient(pluginFile)
}
function savePluginHierarchy(node, rootNodes) {
if (node.isPlugin !== true) { return }
let plugins = UI.projects.foundations.spaces.designSpace.workspace.getHierarchyHeadByNodeType('Plugins')
let pluginProject = UI.projects.visualScripting.utilities.nodeChildren.findChildByCodeName(plugins, node.project)
let pluginFolderName = UI.projects.communityPlugins.utilities.plugins.getPluginFolderNamesByNodeType(node.type)
let pluginForlderNodeType = 'Plugin ' + pluginFolderName.replaceAll('-', ' ')
let pluginFolderNode = UI.projects.visualScripting.utilities.nodeChildren.findChildByType(pluginProject, pluginForlderNodeType)
for (let i = 0; i < pluginFolderNode.pluginFiles.length; i++) {
let pluginFile = pluginFolderNode.pluginFiles[i]
let fileName = UI.projects.visualScripting.utilities.nodeConfig.loadConfigProperty(pluginFile.payload, 'fileName')
let codeName = UI.projects.visualScripting.utilities.nodeConfig.loadConfigProperty(node.payload, 'codeName')
if (codeName === fileName) {
UI.projects.communityPlugins.utilities.plugins.savePluginFileAtClient(pluginFile)
/*
Show nice message.
*/
node.payload.uiObject.setInfoMessage(
"Plugin Saved.",
UI.projects.governance.globals.designer.SET_INFO_COUNTER_FACTOR
)
return
}
}
}
function installAsPlugin(node, rootNodes) {
@@ -301,6 +329,8 @@ function newPluginsFunctionLibraryPluginsFunctions() {
return
}
UI.projects.communityPlugins.utilities.plugins.savePluginFile(pluginFile)
UI.projects.communityPlugins.utilities.plugins.savePluginFileAtClient(pluginFile)
}
}
@@ -5,7 +5,7 @@ function newPluginsUtilitiesPlugins() {
addMissingPluginFiles: addMissingPluginFiles,
addMissingPluginFile: addMissingPluginFile,
getProjectName: getProjectName,
savePluginFile: savePluginFile
savePluginFileAtClient: savePluginFileAtClient
}
return thisObject
@@ -119,7 +119,7 @@ function newPluginsUtilitiesPlugins() {
return config.codeName
}
function savePluginFile(pluginFile) {
function savePluginFileAtClient(pluginFile) {
let project = UI.projects.visualScripting.utilities.nodeConfig.loadConfigProperty(pluginFile.payload, 'project')
let fileName = UI.projects.visualScripting.utilities.nodeConfig.loadConfigProperty(pluginFile.payload, 'fileName')
let folderName = UI.projects.visualScripting.utilities.nodeConfig.loadConfigProperty(pluginFile.payload, 'folderName')
@@ -70,7 +70,7 @@
},
{
"style": "List",
"text": "Or use the Save Plugin option to manually save the plugin file whenever you wish to!",
"text": "Or use the Save Plugin File option to manually save the plugin file whenever you wish to!",
"updated": 1629909705348,
"translations": [
{
@@ -197,7 +197,7 @@ function newFoundationsFunctionLibraryProductFunctions() {
}
function installInTradingMine(tradingMine) {
let savePlugin = false
let savePluginFile = false
for (let j = 0; j < tradingMine.tradingBots.length; j++) {
let tradingBotNode = tradingMine.tradingBots[j]
@@ -231,7 +231,7 @@ function newFoundationsFunctionLibraryProductFunctions() {
// Explicit check is needed so we know if we have to save the plugin or not
if (UI.projects.visualScripting.utilities.nodeChildren.isMissingChildrenById(botDataDependencies, dataset, true) === true) {
savePlugin = true
savePluginFile = true
let dataDependency = UI.projects.visualScripting.functionLibraries.uiObjectsFromNodes.addUIObject(botDataDependencies, 'Data Dependency')
UI.projects.visualScripting.functionLibraries.attachDetach.referenceAttachNode(dataDependency, dataset)
}
@@ -244,7 +244,7 @@ function newFoundationsFunctionLibraryProductFunctions() {
* We will save the plugin only if we get to the point were we have to add the data dependencies
*
*/
if (savePlugin) {
if (savePluginFile) {
for (let i = 0; i < rootNodes.length; i++) {
let rootNode = rootNodes[i]
if (rootNode.type === 'Plugins') {
@@ -253,7 +253,7 @@ function newFoundationsFunctionLibraryProductFunctions() {
for (let j = 0; j < tradingMinePlugin.pluginFiles.length; j++) {
let pluginFile = tradingMinePlugin.pluginFiles[j]
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.savePlugin(pluginFile)
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.savePluginFile(pluginFile)
}
}
}
@@ -263,7 +263,7 @@ function newFoundationsFunctionLibraryProductFunctions() {
}
function installInPortfolioMine(portfolioMine) {
let savePlugin = false
let savePluginFile = false
for (let j = 0; j < portfolioMine.portfolioBots.length; j++) {
let portfolioBotNode = portfolioMine.portfolioBots[j]
@@ -297,7 +297,7 @@ function newFoundationsFunctionLibraryProductFunctions() {
// Explicit check is needed so we know if we have to save the plugin or not
if (UI.projects.visualScripting.utilities.nodeChildren.isMissingChildrenById(botDataDependencies, dataset, true) === true) {
savePlugin = true
savePluginFile = true
let dataDependency = UI.projects.visualScripting.functionLibraries.uiObjectsFromNodes.addUIObject(botDataDependencies, 'Data Dependency')
UI.projects.visualScripting.functionLibraries.attachDetach.referenceAttachNode(dataDependency, dataset)
}
@@ -310,7 +310,7 @@ function newFoundationsFunctionLibraryProductFunctions() {
* We will save the plugin only if we get to the point were we have to add the data dependencies
*
*/
if (savePlugin) {
if (savePluginFile) {
for (let i = 0; i < rootNodes.length; i++) {
let rootNode = rootNodes[i]
if (rootNode.type === 'Plugins') {
@@ -319,7 +319,7 @@ function newFoundationsFunctionLibraryProductFunctions() {
for (let j = 0; j < portfolioMinePlugin.pluginFiles.length; j++) {
let pluginFile = portfolioMinePlugin.pluginFiles[j]
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.savePlugin(pluginFile)
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.savePluginFile(pluginFile)
}
}
}
@@ -280,7 +280,7 @@ function newWorkspace() {
let saveWithWorkspace = UI.projects.visualScripting.utilities.nodeConfig.loadConfigProperty(pluginFile.payload, 'saveWithWorkspace')
if (saveWithWorkspace === true) {
UI.projects.communityPlugins.utilities.plugins.savePluginFile(pluginFile)
UI.projects.communityPlugins.utilities.plugins.savePluginFileAtClient(pluginFile)
}
}
}
@@ -338,7 +338,9 @@ function newCircularMenuItem() {
text = text + ' -> [Existing Reference] Type : [' + thisObject.payload.uiObject.payload.referenceParent.type + '] , Name : [' + thisObject.payload.uiObject.payload.referenceParent.name + ']'
}
thisObject.payload.uiObject.setInfoMessage(text)
if (thisObject.label === undefined) {
thisObject.payload.uiObject.setInfoMessage(text)
}
isMouseOver = true
} else {
isMouseOver = false
@@ -1418,13 +1418,13 @@
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"Social-Trading-Desktop-App-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0x898b2153520afe468c285dc7432b52f2e61e5572215917a3761e1ebffbd55bcd\",\n \"s\": \"0x3fdd357a3bde3776062cbfb29ed6b82fa4b071fe0e2339a2b42b9ec47ada851f\",\n \"signature\": \"0x898b2153520afe468c285dc7432b52f2e61e5572215917a3761e1ebffbd55bcd3fdd357a3bde3776062cbfb29ed6b82fa4b071fe0e2339a2b42b9ec47ada851f1c\"\n }\n}",
"config": "{\n \"codeName\": \"Social-Trading-Desktop-App-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0xb7856f6e87c3a2808f7ad16a0bfbc33594edf7fdda4147281753caa04b828cb1\",\n \"s\": \"0x32239a2a5d29887a37d70a377a8d2d234d915036c12622b45feca6a070c0c932\",\n \"signature\": \"0xb7856f6e87c3a2808f7ad16a0bfbc33594edf7fdda4147281753caa04b828cb132239a2a5d29887a37d70a377a8d2d234d915036c12622b45feca6a070c0c9321b\"\n }\n}",
"project": "Governance",
"id": "71e01eca-2d04-43fa-8cb2-144b64507402",
"id": "5bbf87b3-0c88-4762-8963-dcc013778923",
"savedPayload": {
"position": {
"x": 37947.26095580142,
"y": 19649.585369022054
"x": 37688.45333466609,
"y": 19598.585369022054
},
"targetPosition": {
"x": 37687.45333466609,
@@ -1474,13 +1474,13 @@
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"Social-Trading-Desktop-App-2\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0xf6cd2df3ab15cd9652bd018ee571b120faa2003a91f61d7b7836220d9a712355\",\n \"s\": \"0x5c8f89f5eabd9e43a0e24383d475c1b56ea760fe1190a67a43dc139b1567d64c\",\n \"signature\": \"0xf6cd2df3ab15cd9652bd018ee571b120faa2003a91f61d7b7836220d9a7123555c8f89f5eabd9e43a0e24383d475c1b56ea760fe1190a67a43dc139b1567d64c1b\"\n }\n}",
"config": "{\n \"codeName\": \"Social-Trading-Desktop-App-2\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0xb3caae868f8d2f39d2c8d005e52864fb89446fa46e9b3b7d1246aa5882e04206\",\n \"s\": \"0x36f9db32a86b7416906f54b478af814963e75e16c36ab2fea11b16d90a6f4869\",\n \"signature\": \"0xb3caae868f8d2f39d2c8d005e52864fb89446fa46e9b3b7d1246aa5882e0420636f9db32a86b7416906f54b478af814963e75e16c36ab2fea11b16d90a6f48691b\"\n }\n}",
"project": "Governance",
"id": "95b48c78-cfba-4457-aab0-270225a4d2f7",
"id": "ef671e4a-85ca-44a2-aaff-46986537af62",
"savedPayload": {
"position": {
"x": 37582.93714059227,
"y": 19929.140864795496
"x": 37558.291427061515,
"y": 19577.363116908775
},
"targetPosition": {
"x": 37505.291427061515,
@@ -1532,13 +1532,13 @@
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"Algo-Traders-Platform-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0x49610638d20ae306ccfb31e65bde5fdbf47203a97ad01d9f4378e7321084a727\",\n \"s\": \"0x2be4f2d5072fb88475d2f07beacf09295e46f246785e976e58794923f00d002b\",\n \"signature\": \"0x49610638d20ae306ccfb31e65bde5fdbf47203a97ad01d9f4378e7321084a7272be4f2d5072fb88475d2f07beacf09295e46f246785e976e58794923f00d002b1b\"\n }\n}",
"config": "{\n \"codeName\": \"Algo-Traders-Platform-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0xa452ff2bc00af08db7ec00f485eabb777b688a121bec31aeb39adb2449b20e49\",\n \"s\": \"0x2ba6fb158373c827fc6d46083011e2bc6b6d0a91d122ac6a85625c32fc2e1e36\",\n \"signature\": \"0xa452ff2bc00af08db7ec00f485eabb777b688a121bec31aeb39adb2449b20e492ba6fb158373c827fc6d46083011e2bc6b6d0a91d122ac6a85625c32fc2e1e361c\"\n }\n}",
"project": "Governance",
"id": "aa0a9beb-3498-4184-97a2-5f85181199fa",
"id": "616fc2e6-2286-49ce-b037-9da2b153a8f5",
"savedPayload": {
"position": {
"x": 37127.64571353076,
"y": 19869.20061129272
"x": 37345.64571353076,
"y": 19667.392990157387
},
"targetPosition": {
"x": 37277.64571353076,
@@ -1618,13 +1618,13 @@
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"Social-Trading-Mobile-App-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0x79f3cfdf758eeaeadcfca9163d9b8d58fe10ad0b4e8f2c7ce1da90e262058a1a\",\n \"s\": \"0x41ed971b2a304885eac9101f6d0e70964ef707b8589f2ce0dd4058737ab87611\",\n \"signature\": \"0x79f3cfdf758eeaeadcfca9163d9b8d58fe10ad0b4e8f2c7ce1da90e262058a1a41ed971b2a304885eac9101f6d0e70964ef707b8589f2ce0dd4058737ab876111b\"\n }\n}",
"config": "{\n \"codeName\": \"Social-Trading-Mobile-App-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0xc61a99e7e06f91a85feb75e1ffb602f40c58d9746f46d507f3d450582ef18fd9\",\n \"s\": \"0x29ac7352f6bd02c6779637a3dd3e68ba06ec02acfa9b79f576587a732f0cc7b4\",\n \"signature\": \"0xc61a99e7e06f91a85feb75e1ffb602f40c58d9746f46d507f3d450582ef18fd929ac7352f6bd02c6779637a3dd3e68ba06ec02acfa9b79f576587a732f0cc7b41c\"\n }\n}",
"project": "Governance",
"id": "53d1e709-d520-44a9-9321-43cd5f1df872",
"id": "c958d032-f21f-4e60-9d93-410ca3f650f8",
"savedPayload": {
"position": {
"x": 36900,
"y": 19839.23048454133
"x": 37066,
"y": 19626.422863406
},
"targetPosition": {
"x": 37050,
@@ -1704,13 +1704,13 @@
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"Task-Server-App-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0xe631e24d501ccb6de25efdffedeb36e75d678d426d269aca7fa29116886ca6cd\",\n \"s\": \"0x3c16d8e0cf5220b5bf2078cab8d8aa48f1e0ef777228c19a5cf3d0ce7ac5340d\",\n \"signature\": \"0xe631e24d501ccb6de25efdffedeb36e75d678d426d269aca7fa29116886ca6cd3c16d8e0cf5220b5bf2078cab8d8aa48f1e0ef777228c19a5cf3d0ce7ac5340d1b\"\n }\n}",
"config": "{\n \"codeName\": \"Task-Server-App-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0xe69562f3d6fce7a56692c7d000ddf95bc313dc513f1aabdde1f9ee4a09a3a1c8\",\n \"s\": \"0x5da50897902dce98a44b1f94dc498037baa93fe51ca5e08064f0785a00092ee1\",\n \"signature\": \"0xe69562f3d6fce7a56692c7d000ddf95bc313dc513f1aabdde1f9ee4a09a3a1c85da50897902dce98a44b1f94dc498037baa93fe51ca5e08064f0785a00092ee11b\"\n }\n}",
"project": "Governance",
"id": "faa2d0ea-4e8d-4e79-9e21-e0006cce48c6",
"id": "90f0eaeb-99a4-4e19-ae05-c19567059dba",
"savedPayload": {
"position": {
"x": 36760.22225211328,
"y": 19657.068576936756
"x": 36832.22225211328,
"y": 19368.260955801423
},
"targetPosition": {
"x": 36910.22225211328,
@@ -1760,13 +1760,13 @@
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"Task-Server-App-2\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0x3e8698a5bf00f3b5d13eda57ce6dc77a0670915b6277b160e8c23df30553a3cb\",\n \"s\": \"0x2e7d7ac3fb1100a55886a30ae9a62484040dfbf64995695a4de3ef9f2c9cef9e\",\n \"signature\": \"0x3e8698a5bf00f3b5d13eda57ce6dc77a0670915b6277b160e8c23df30553a3cb2e7d7ac3fb1100a55886a30ae9a62484040dfbf64995695a4de3ef9f2c9cef9e1c\"\n }\n}",
"config": "{\n \"codeName\": \"Task-Server-App-2\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0xee23a1f8bae29ecb2ceb8ea501e3f75b3e4969cda04dd1c4d4009e84d260409d\",\n \"s\": \"0x1bba5e0ef908751361f0137cc8b93d834010447589ea7c28682c44db71e06081\",\n \"signature\": \"0xee23a1f8bae29ecb2ceb8ea501e3f75b3e4969cda04dd1c4d4009e84d260409d1bba5e0ef908751361f0137cc8b93d834010447589ea7c28682c44db71e060811b\"\n }\n}",
"project": "Governance",
"id": "e85e08cc-a688-4ff5-b515-fb3ca67708ee",
"id": "358e8b10-6a2b-4711-b842-42ff37c8b9a0",
"savedPayload": {
"position": {
"x": 36480.66675633984,
"y": 19292.744761727605
"x": 36684.44450422656,
"y": 19186.099048196847
},
"targetPosition": {
"x": 36770.44450422656,
@@ -1818,13 +1818,13 @@
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"Social-Trading-Server-App-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0x944f1d46c6e725609e832f380de33e9871a28606a604d74c9fd9be33dbb6cec2\",\n \"s\": \"0x75ce5a3316bdefebfd28f7ea1d462a1751d1ab76d5997ae4c9cf14fe9a3467f4\",\n \"signature\": \"0x944f1d46c6e725609e832f380de33e9871a28606a604d74c9fd9be33dbb6cec275ce5a3316bdefebfd28f7ea1d462a1751d1ab76d5997ae4c9cf14fe9a3467f41c\"\n }\n}",
"config": "{\n \"codeName\": \"Social-Trading-Server-App-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0x7c60590c40a658cf32166197a19aecd6d3ce790e34e7bcd26417ce28b414f810\",\n \"s\": \"0x53f1b2191fd5dbc94ef8acb711ba2362a3fb8f114bf206a26f8119a4611dde2b\",\n \"signature\": \"0x7c60590c40a658cf32166197a19aecd6d3ce790e34e7bcd26417ce28b414f81053f1b2191fd5dbc94ef8acb711ba2362a3fb8f114bf206a26f8119a4611dde2b1c\"\n }\n}",
"project": "Governance",
"id": "553eb437-f487-4cd0-95b0-8ba6bb3d5f51",
"id": "3c08805f-d53a-4091-b671-4dfab46af594",
"savedPayload": {
"position": {
"x": 36540.60700984261,
"y": 18837.45333466609
"x": 36877.414630977946,
"y": 19025.45333466609
},
"targetPosition": {
"x": 36800.414630977946,
@@ -2077,13 +2077,13 @@
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"Social-Trading-Bot-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0xf60f00a96558f3fc94e71d59460c3bdd43e62f0c5706bb68805280817b840ac6\",\n \"s\": \"0x63b83b8d1629709d9ccca81efee72d9950e224078a9e396f1ffdb5cc2fcd6d51\",\n \"signature\": \"0xf60f00a96558f3fc94e71d59460c3bdd43e62f0c5706bb68805280817b840ac663b83b8d1629709d9ccca81efee72d9950e224078a9e396f1ffdb5cc2fcd6d511c\"\n }\n}",
"config": "{\n \"codeName\": \"Social-Trading-Bot-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0xf20489ce6a3ce04e64b7830049fe1178167e68343153d4a6ffa627269951f133\",\n \"s\": \"0x45ec9473ae6ec521d73dbe01756da5b7cd4aba51ddb1ca244cf8c146fca86ef8\",\n \"signature\": \"0xf20489ce6a3ce04e64b7830049fe1178167e68343153d4a6ffa627269951f13345ec9473ae6ec521d73dbe01756da5b7cd4aba51ddb1ca244cf8c146fca86ef81c\"\n }\n}",
"project": "Governance",
"id": "ca84c500-2c93-441e-be41-0d5dadfa62be",
"id": "c16d25bb-6e53-4229-acd1-6384d8765a0b",
"savedPayload": {
"position": {
"x": 32452.525712198003,
"y": 19030
"x": 32554.525712198003,
"y": 18873
},
"targetPosition": {
"x": 32473.525712198003,
@@ -3038,13 +3038,13 @@
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"Social-Trading-Bot-2\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0xddeff57782baa1f4650b7bcaf293102a9d5b2260db3176e2e9ab4d046d4339a5\",\n \"s\": \"0x3640cbc79138edab416ea73b89eccbce87c9fe04628bb3e8964c4650fb82dec3\",\n \"signature\": \"0xddeff57782baa1f4650b7bcaf293102a9d5b2260db3176e2e9ab4d046d4339a53640cbc79138edab416ea73b89eccbce87c9fe04628bb3e8964c4650fb82dec31c\"\n }\n}",
"config": "{\n \"codeName\": \"Social-Trading-Bot-2\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0x7fd30d009b5a44db7499e502c45b1440a116a4d75b867c87930ae288f91a338f\",\n \"s\": \"0x693cda2392a47563bceb9806483ae267629dcda78176ae9624e931b9d4ea462e\",\n \"signature\": \"0x7fd30d009b5a44db7499e502c45b1440a116a4d75b867c87930ae288f91a338f693cda2392a47563bceb9806483ae267629dcda78176ae9624e931b9d4ea462e1b\"\n }\n}",
"project": "Governance",
"id": "5f1fdb9a-c7ae-4760-a188-80ee15eff0ae",
"id": "ff1ea43f-4160-43c1-8ee1-6bf5943686e5",
"savedPayload": {
"position": {
"x": 32451.525712198003,
"y": 18562
"x": 32518.525712198003,
"y": 18581
},
"targetPosition": {
"x": 32473.525712198003,
@@ -3514,13 +3514,13 @@
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"Social-Persona-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0xaabe9a8f34b22d058200320e218af3bd58f77ba26127903f72f4b39b4fec9199\",\n \"s\": \"0x5e8d7ebe876a3712611196205aa664b96d20ce547b04d50420fb27baa4b7e721\",\n \"signature\": \"0xaabe9a8f34b22d058200320e218af3bd58f77ba26127903f72f4b39b4fec91995e8d7ebe876a3712611196205aa664b96d20ce547b04d50420fb27baa4b7e7211c\"\n }\n}",
"config": "{\n \"codeName\": \"Social-Persona-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0xe39747b8f0cf55261bf82a3139a41e1581b79789e82430c49fd8ad5fbc6a8460\",\n \"s\": \"0x27f0fa30bed4af002887b8d77e7e389097e11ba886ea44ea942839ee7ac5959a\",\n \"signature\": \"0xe39747b8f0cf55261bf82a3139a41e1581b79789e82430c49fd8ad5fbc6a846027f0fa30bed4af002887b8d77e7e389097e11ba886ea44ea942839ee7ac5959a1c\"\n }\n}",
"project": "Governance",
"id": "e4f9d4a6-c9d1-4d7a-a2e0-dc7d4105768e",
"id": "2087a41a-a76c-4d1f-a71c-29dfdb886a5d",
"savedPayload": {
"position": {
"x": 37249.19189848183,
"y": 18241.606064796506
"x": 37322.19189848183,
"y": 18289.606064796506
},
"targetPosition": {
"x": 37229.19189848183,
@@ -3570,13 +3570,13 @@
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"Social-Persona-2\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0x71413077e5544c24a616c565fb761f45454233e18b2b29bc13b9aca5e249b5ac\",\n \"s\": \"0x2d25d9101c4dde0d1ab9e2ebcfc79e156a051350741f41083b7d6162ce220436\",\n \"signature\": \"0x71413077e5544c24a616c565fb761f45454233e18b2b29bc13b9aca5e249b5ac2d25d9101c4dde0d1ab9e2ebcfc79e156a051350741f41083b7d6162ce2204361b\"\n }\n}",
"config": "{\n \"codeName\": \"Social-Persona-2\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0x791a6cfb6af87cb37e3c98766c829fe7adfae9c5d64aa03aae824d19ec5ecc38\",\n \"s\": \"0x05ff43ad3b73f1c05aafcbe5deb89d05bbefd3f9bec426c6a93bb7f7d2c684ab\",\n \"signature\": \"0x791a6cfb6af87cb37e3c98766c829fe7adfae9c5d64aa03aae824d19ec5ecc3805ff43ad3b73f1c05aafcbe5deb89d05bbefd3f9bec426c6a93bb7f7d2c684ab1b\"\n }\n}",
"project": "Governance",
"id": "bd27765f-4612-4b57-befe-3d76d764d668",
"id": "e679fa5a-4e7b-4550-9be9-6f5c65d0a7ea",
"savedPayload": {
"position": {
"x": 37569.670272136376,
"y": 18187.84978460961
"x": 37586.670272136376,
"y": 18150.84978460961
},
"targetPosition": {
"x": 37521.670272136376,
@@ -3656,9 +3656,9 @@
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"P2P-Network-Node-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0xa519983fd30d4340dde3aed5d8eaa99befeb611ddc08c99e8eaa629491b6faf5\",\n \"s\": \"0x3083736197c5d4f0d071168f9becdb113cb93f054e2370ed11b555a047d70eb3\",\n \"signature\": \"0xa519983fd30d4340dde3aed5d8eaa99befeb611ddc08c99e8eaa629491b6faf53083736197c5d4f0d071168f9becdb113cb93f054e2370ed11b555a047d70eb31c\"\n }\n}",
"config": "{\n \"codeName\": \"P2P-Network-Node-1\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0xbdf8238593b801dc6969d275052c0a95c6d8e041ba9b197ea039a6782c3b1686\",\n \"s\": \"0x2546945aeec87f977a934bb8ef153de38c9824c4d538f2dc8b9482c2b3966d9e\",\n \"signature\": \"0xbdf8238593b801dc6969d275052c0a95c6d8e041ba9b197ea039a6782c3b16862546945aeec87f977a934bb8ef153de38c9824c4d538f2dc8b9482c2b3966d9e1b\"\n }\n}",
"project": "Governance",
"id": "99c27360-3dbf-44c6-ba6c-eea9da1711ce",
"id": "c22841c9-fe97-44c8-850b-b297c61d5071",
"savedPayload": {
"position": {
"x": 37650,
@@ -3707,14 +3707,14 @@
{
"type": "P2P Network Node",
"name": "P2P Network Node #2",
"config": "{\n \"codeName\": \"P2P-Network-Node-2\",\n \"host\": \"localhost\",\n \"webPort\": \"31248\",\n \"webSocketsPort\": \"18042\"\n}",
"config": "{\n \"codeName\": \"P2P-Network-Node-2\",\n \"host\": \"localhost\",\n \"webPort\": \"31249\",\n \"webSocketsPort\": \"18043\"\n}",
"project": "Governance",
"signingAccount": {
"type": "Signing Account",
"name": "New Signing Account",
"config": "{\n \"codeName\": \"P2P-Network-Node-2\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1c\",\n \"r\": \"0x82de669c37cc4d376aad3369d00db371ffdd2dbe06a21393cb736c0be5d71116\",\n \"s\": \"0x510d1f631ad66b71613e9ef6ad64c4b5510d494b74cc29462cc2e26ac64f5736\",\n \"signature\": \"0x82de669c37cc4d376aad3369d00db371ffdd2dbe06a21393cb736c0be5d71116510d1f631ad66b71613e9ef6ad64c4b5510d494b74cc29462cc2e26ac64f57361c\"\n }\n}",
"config": "{\n \"codeName\": \"P2P-Network-Node-2\",\n \"signature\": {\n \"message\": \"Luis-Fernando-Molina\",\n \"messageHash\": \"0x443abf3389e332a62d21b84dd12e271cb428d334195d3aeb986ca85ee53cccb9\",\n \"v\": \"0x1b\",\n \"r\": \"0x114b5ecd16068e194613344da55f9649164e303030b311a80c1c89b8d3f3640a\",\n \"s\": \"0x72497582c2122f8185c581a1365aa7881e602a82588cc67ef0a64e88139e11ea\",\n \"signature\": \"0x114b5ecd16068e194613344da55f9649164e303030b311a80c1c89b8d3f3640a72497582c2122f8185c581a1365aa7881e602a82588cc67ef0a64e88139e11ea1b\"\n }\n}",
"project": "Governance",
"id": "afa8b24a-6618-4811-8d42-49321b95f4ac",
"id": "229d11eb-449d-4fb1-8841-b2bc3f1c06a4",
"savedPayload": {
"position": {
"x": 38169.615242270665,
@@ -3774,7 +3774,7 @@
"floatingObject": {
"isPinned": false,
"isFrozen": false,
"isCollapsed": true,
"isCollapsed": false,
"angleToParent": 1,
"distanceToParent": 3,
"arrangementStyle": 0
File diff suppressed because it is too large. Load diff
@@ -99,12 +99,12 @@
"id": "db380c52-cf90-475b-87df-c005dd51cdf6",
"savedPayload": {
"position": {
"x": 13705.000000000002,
"y": 6103.05830753354
"x": 14014.000000000002,
"y": 6057.05830753354
},
"targetPosition": {
"x": 13705.000000000002,
"y": 6103.05830753354
"x": 14014.000000000002,
"y": 6057.05830753354
},
"floatingObject": {
"isPinned": true,
@@ -2914,7 +2914,7 @@
"floatingObject": {
"isPinned": false,
"isFrozen": false,
"isCollapsed": false,
"isCollapsed": true,
"angleToParent": 2,
"distanceToParent": 5,
"arrangementStyle": 0
@@ -5059,6 +5059,7 @@
"arrangementStyle": 1
},
"uiObject": {
"isPlaying": true,
"isRunning": false
},
"tutorial": {
@@ -78,6 +78,16 @@
"iconPathOff": "configuration",
"actionFunction": "payload.executeAction"
},
{
"action": "Save Plugin",
"actionProject": "Community-Plugins",
"askConfirmation": true,
"confirmationLabel": "Confirm to Install",
"label": "Save Plugin",
"iconPathOn": "configuration",
"iconPathOff": "configuration",
"actionFunction": "payload.executeAction"
},
{
"action": "Delete UI Object",
"actionProject": "Visual-Scripting",
@@ -72,7 +72,7 @@
},
{
"language": "TR",
"text": "Çalışma alanını her kaydettiğinizde profilinizi Eklenti olarak kaydedecek şekilde ayarladık! Plugins düğümünü genişleterek Governance Plugin Project düğümünü bulun.Bu düğümün altında Plugin User Profiles düğümünü de genişletrek kullanıcı profilinize erişin ve \"Save Plugin\" butonuna tıklayarak profilinizi kaydedin.",
"text": "Çalışma alanını her kaydettiğinizde profilinizi Eklenti olarak kaydedecek şekilde ayarladık! Plugins düğümünü genişleterek Governance Plugin Project düğümünü bulun.Bu düğümün altında Plugin User Profiles düğümünü de genişletrek kullanıcı profilinize erişin ve \"Save Plugin File\" butonuna tıklayarak profilinizi kaydedin.",
"updated": 1637442025686
}
]
@@ -273,10 +273,10 @@ function newGovernanceFunctionLibraryProfileConstructor() {
console.log('Call to WEB3 Server failed. ' + response.error)
return
}
signSigningAccountData(response.privateKey)
signSigningAccountData(response.address, response.privateKey)
}
function signSigningAccountData(privateKey) {
function signSigningAccountData(blockchainAccount, privateKey) {
let request = {
url: 'WEB3',
@@ -340,7 +340,13 @@ function newGovernanceFunctionLibraryProfileConstructor() {
UI.projects.visualScripting.utilities.nodeConfig.saveConfigProperty(targetNode.payload, 'codeName', codeName)
UI.projects.visualScripting.utilities.nodeConfig.saveConfigProperty(signingAccount.payload, 'codeName', codeName)
UI.projects.visualScripting.utilities.nodeConfig.saveConfigProperty(signingAccount.payload, 'signature', signature)
/*
Save User Profile Plugin
*/
UI.projects.communityPlugins.functionLibraries.pluginsFunctions.savePluginHierarchy(userProfile)
/*
Deal with secrets
*/
let secrets = secretsFile.secrets
let secret = {
@@ -349,6 +355,7 @@ function newGovernanceFunctionLibraryProfileConstructor() {
nodeType: targetNodeType,
nodeCodeName: codeName,
signingAccountNodeId: signingAccount.id,
blockchainAccount: blockchainAccount,
privateKey: privateKey,
userProfileHandle: userProfileHandle,
userProfileId: userProfile.id
@@ -8,7 +8,8 @@ exports.newNetworkModulesWebSocketsNetworkClient = function newNetworkModulesWeb
port: undefined,
callerRole: undefined,
p2pNetworkNode: undefined,
p2pNetworkIdentity: undefined,
p2pNetworkClientIdentity: undefined,
p2pNetworkClientCodeName: undefined,
onConnectionClosedCallBack: undefined,
sendMessage: sendMessage,
initialize: initialize,
@@ -30,7 +31,7 @@ exports.newNetworkModulesWebSocketsNetworkClient = function newNetworkModulesWeb
thisObject.port = undefined
thisObject.callerRole = undefined
thisObject.p2pNetworkNode = undefined
thisObject.p2pNetworkIdentity = undefined
thisObject.p2pNetworkClientIdentity = undefined
thisObject.onConnectionClosedCallBack = undefined
web3 = undefined
@@ -38,10 +39,11 @@ exports.newNetworkModulesWebSocketsNetworkClient = function newNetworkModulesWeb
onMessageFunctionsMap = undefined
}
async function initialize(callerRole, p2pNetworkIdentity, p2pNetworkNode, onConnectionClosedCallBack) {
async function initialize(callerRole, p2pNetworkClientIdentity, p2pNetworkNode, onConnectionClosedCallBack) {
thisObject.callerRole = callerRole
thisObject.p2pNetworkIdentity = p2pNetworkIdentity
thisObject.p2pNetworkClientIdentity = p2pNetworkClientIdentity
thisObject.p2pNetworkClientCodeName = JSON.parse(thisObject.p2pNetworkClientIdentity.node.config).codeName
thisObject.p2pNetworkNode = p2pNetworkNode
thisObject.onConnectionClosedCallBack = onConnectionClosedCallBack
@@ -100,9 +102,9 @@ exports.newNetworkModulesWebSocketsNetworkClient = function newNetworkModulesWeb
let message = {
messageType: 'Handshake',
callerRole: thisObject.callerRole,
callerProfileHandle: SA.secrets.map.get(global.env.DESKTOP_APP_SIGNING_ACCOUNT).userProfileHandle,
callerProfileHandle: SA.secrets.map.get(thisObject.p2pNetworkClientCodeName).userProfileHandle,
callerTimestamp: callerTimestamp,
callerNode: JSON.stringify(thisObject.p2pNetworkIdentity.node),
callerNode: JSON.stringify(thisObject.p2pNetworkClientIdentity.node),
step: 'One'
}
thisObject.socket.send(JSON.stringify(message))
@@ -162,7 +164,7 @@ exports.newNetworkModulesWebSocketsNetworkClient = function newNetworkModulesWeb
We will check that the profile handle we sent to the Network Node, is returned at the
signed message, to avoid man in the middle attacks.
*/
if (signedMessage.callerProfileHandle !== SA.secrets.map.get(global.env.DESKTOP_APP_SIGNING_ACCOUNT).userProfileHandle) {
if (signedMessage.callerProfileHandle !== SA.secrets.map.get(thisObject.p2pNetworkClientCodeName).userProfileHandle) {
console.log('[ERROR] Web Sockets Network Client -> stepOneResponse -> The Network Node callerProfileHandle does not match my own userProfileHandle.')
reject()
return
@@ -192,7 +194,7 @@ exports.newNetworkModulesWebSocketsNetworkClient = function newNetworkModulesWeb
*/
thisObject.socket.onmessage = socketMessage => { stepTwoResponse(socketMessage) }
let signature = web3.eth.accounts.sign(JSON.stringify(signedMessage), SA.secrets.map.get(global.env.DESKTOP_APP_SIGNING_ACCOUNT).privateKey)
let signature = web3.eth.accounts.sign(JSON.stringify(signedMessage), SA.secrets.map.get(thisObject.p2pNetworkClientCodeName).privateKey)
let message = {
messageType: 'Handshake',