user Delegates showing up
This commit is contained in:
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) {
|
||||
|
||||
|
||||
Reference in new issue
Block a user