user Delegates showing up

This commit is contained in:
Luis Fernando Molina committed 2021-06-24 16:21:06 +02:00
1 parent 0de05a8532
commit 80184b6d2e
4 files changed
+184 -32

No files matched your search

@@ -667,12 +667,12 @@
"id": "4381f059-44c8-4843-9cac-8a7cf41fa14c",
"savedPayload": {
"position": {
"x": 29953.867965644036,
"y": 24471.939655491293
"x": 30109.15939270555,
"y": 24451.495151264735
},
"targetPosition": {
"x": 29953.867965644036,
"y": 24171.939655491293
"x": 30031.513679174794,
"y": 24161.717403378014
},
"floatingObject": {
"isPinned": false,
@@ -694,8 +694,8 @@
"id": "d69739f9-958e-480e-95e3-a72bb5f6ceab",
"savedPayload": {
"position": {
"x": 29953.867965644036,
"y": 24171.939655491293
"x": 30031.513679174794,
"y": 24161.717403378014
},
"targetPosition": {
"x": 29953.867965644036,
@@ -2344,12 +2344,12 @@
"id": "e059f5c4-9132-4d76-9f3e-1060658fa704",
"savedPayload": {
"position": {
"x": 29544.060344508704,
"y": 24281.747276626626
"x": 29803.867965644036,
"y": 24431.747276626626
},
"targetPosition": {
"x": 29694.060344508704,
"y": 24021.939655491293
"x": 29803.867965644036,
"y": 24131.747276626626
},
"floatingObject": {
"isPinned": false,
@@ -2381,12 +2381,12 @@
"id": "7607658c-f3ad-42de-a316-35dd052e0477",
"savedPayload": {
"position": {
"x": 29394.060344508704,
"y": 24021.939655491293
"x": 29544.060344508704,
"y": 24281.747276626626
},
"targetPosition": {
"x": 29694.060344508704,
"y": 24021.939655491293
"x": 29803.867965644036,
"y": 24131.747276626626
},
"floatingObject": {
"isPinned": false,
@@ -2409,8 +2409,72 @@
"id": "1d398124-3f36-40a1-8b3b-6c77ad489b92",
"savedPayload": {
"position": {
"x": 29694.060344508704,
"y": 24021.939655491293
"x": 29803.867965644036,
"y": 24131.747276626626
},
"targetPosition": {
"x": 29953.867965644036,
"y": 23871.939655491293
},
"floatingObject": {
"isPinned": false,
"isFrozen": false,
"isCollapsed": false,
"angleToParent": 2,
"distanceToParent": 3,
"arrangementStyle": 0
},
"uiObject": {
"isRunning": false
}
}
}
],
"userProfileVotesSwitch": [
{
"type": "User Profile Votes Switch",
"name": "New User Profile Votes Switch",
"config": "{}",
"project": "Governance",
"userProfileVotesSwitch": [],
"userProfileVote": [
{
"type": "User Profile Vote",
"name": "Julian-Molina",
"config": "{}",
"project": "Governance",
"id": "cb86dfcf-6af1-4c53-afbe-442848706b9c",
"savedPayload": {
"position": {
"x": 29374.312469870594,
"y": 24027.231082552807
},
"targetPosition": {
"x": 29664.090217757315,
"y": 23949.58536902205
},
"floatingObject": {
"isPinned": false,
"isFrozen": false,
"isCollapsed": false,
"angleToParent": 2,
"distanceToParent": 3,
"arrangementStyle": 0
},
"uiObject": {},
"referenceParent": {
"type": "User Profile",
"name": "Julian-Molina",
"id": "1fd95e41-4b22-48d5-be3a-904c37afcb11"
}
}
}
],
"id": "67805814-d2e1-4f8e-bdeb-6a46cc29ceff",
"savedPayload": {
"position": {
"x": 29664.090217757315,
"y": 23949.58536902205
},
"targetPosition": {
"x": 29953.867965644036,
@@ -2430,7 +2494,6 @@
}
}
],
"userProfileVotesSwitch": [],
"id": "2b8d3ce7-515c-44ad-8d80-3c2be6d7736f",
"savedPayload": {
"position": {
@@ -41,13 +41,43 @@ function newGovernanceFunctionLibraryDelegationProgram() {
distributeProgram(userProfile.tokenPowerSwitch.delegationProgram)
}
function resetProgram(programNode) {
if (programNode === undefined) { return }
if (programNode.payload === undefined) { return }
programNode.payload.delegationProgram = {
function resetProgram(node) {
if (node === undefined) { return }
if (node.payload === undefined) { return }
node.payload.delegationProgram = {
programPower: 0,
ownPower: 0
}
let schemaDocument = getSchemaDocument(node)
if (schemaDocument === undefined) { return }
if (schemaDocument.childrenNodesProperties !== undefined) {
for (let i = 0; i < schemaDocument.childrenNodesProperties.length; i++) {
let property = schemaDocument.childrenNodesProperties[i]
if (node.type === 'User Profile' && property.name !== "votingProgram") { continue }
switch (property.type) {
case 'node': {
if (node.type === 'User Profile' && property.name === "votingProgram") {
let childNode = node[property.name]
resetProgram(childNode)
}
}
break
case 'array': {
let propertyArray = node[property.name]
if (propertyArray !== undefined) {
for (let m = 0; m < propertyArray.length; m++) {
let childNode = propertyArray[m]
resetProgram(childNode)
}
}
break
}
}
}
}
}
function distributeProgram(programNode) {
@@ -68,7 +98,7 @@ function newGovernanceFunctionLibraryDelegationProgram() {
function distributeProgramPower(node, programPower, percentage) {
if (node === undefined) { return }
if (node.payload === undefined) { return }
if (node.payload.delegationProgram === undefined) {return}
if (node.payload.delegationProgram === undefined) { return }
node.payload.delegationProgram.programPower = node.payload.delegationProgram.programPower + programPower
drawPower(node, node.payload.delegationProgram.programPower, percentage)
@@ -199,17 +229,47 @@ function newGovernanceFunctionLibraryDelegationProgram() {
}
return
}
node.payload.uiObject.valueAngleOffset = 180
node.payload.uiObject.valueAtAngle = true
node.payload.uiObject.percentageAngleOffset = 180
node.payload.uiObject.percentageAtAngle = true
let voteType = 'Delegate Power'
if (node.type === 'User Delegate') {
drawUserNode(node, programPower, percentage)
return
}
if (node.type === 'Delegate Power Switch') {
node.payload.uiObject.valueAngleOffset = 180
node.payload.uiObject.valueAtAngle = true
node.payload.uiObject.percentageAngleOffset = 180
node.payload.uiObject.percentageAtAngle = true
let powerType = 'Delegate Power'
const programPowerText = parseFloat(programPower.toFixed(2)).toLocaleString('en') + ' ' + voteType
node.payload.uiObject.setValue(programPowerText)
const programPowerText = parseFloat(programPower.toFixed(2)).toLocaleString('en') + ' ' + powerType
node.payload.uiObject.setValue(programPowerText)
if (percentage !== undefined) {
node.payload.uiObject.setPercentage(percentage.toFixed(2))
if (percentage !== undefined) {
node.payload.uiObject.setPercentage(percentage.toFixed(2))
}
}
}
function drawUserNode(node, programPower, percentage) {
if (node.payload !== undefined) {
const outgoingPowerText = parseFloat(programPower.toFixed(2)).toLocaleString('en')
node.payload.uiObject.valueAngleOffset = 180
node.payload.uiObject.valueAtAngle = true
node.payload.uiObject.setValue(outgoingPowerText + ' Delegate Power')
node.payload.uiObject.percentageAngleOffset = 180
node.payload.uiObject.percentageAtAngle = true
node.payload.uiObject.setPercentage(percentage)
if (node.payload.referenceParent !== undefined) {
node.payload.uiObject.statusAngleOffset = 0
node.payload.uiObject.statusAtAngle = true
node.payload.uiObject.setStatus(outgoingPowerText + ' ' + ' Outgoing Power')
}
}
}
@@ -113,7 +113,8 @@ function newGovernanceFunctionLibraryTokenPower() {
node.type === 'Support Program' ||
node.type === 'Voting Program' ||
node.type === 'Claims Program' ||
node.type === 'Staking Program'
node.type === 'Staking Program' ||
node.type === 'Delegation Program'
) { return }
/*
We will redistribute token power among children.
@@ -288,6 +288,10 @@ function newGovernanceFunctionLibraryVotingProgram() {
}
return
}
if (node.type === 'User Profile Vote') {
drawUserNode(node, votes, percentage)
return
}
if (
node.type === 'Position' ||
node.type === 'Position Class' ||
@@ -334,6 +338,30 @@ function newGovernanceFunctionLibraryVotingProgram() {
}
}
function drawUserNode(node, votes, percentage) {
if (node.payload !== undefined) {
const outgoingPowerText = parseFloat(votes.toFixed(2)).toLocaleString('en')
node.payload.uiObject.valueAngleOffset = 180
node.payload.uiObject.valueAtAngle = true
node.payload.uiObject.setValue(outgoingPowerText + ' Voting Power')
node.payload.uiObject.percentageAngleOffset = 180
node.payload.uiObject.percentageAtAngle = true
node.payload.uiObject.setPercentage(percentage)
if (node.payload.referenceParent !== undefined) {
node.payload.uiObject.statusAngleOffset = 0
node.payload.uiObject.statusAtAngle = true
node.payload.uiObject.setStatus(outgoingPowerText + ' ' + ' Outgoing Power')
}
}
}
function drawProgram(node) {
if (node.payload !== undefined) {