From 57581efce4ed1ac19409622963df0564384b46f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Sza=C5=82owski?= Date: Thu, 6 Feb 2025 18:05:36 +0100 Subject: [PATCH] chore: remove abstain from total drep votes calculation --- CHANGELOG.md | 2 +- govtool/backend/sql/get-network-metrics.sql | 2 +- .../GovernanceActionDetailsCardVotes.tsx | 2 +- .../components/molecules/VotesSubmitted.tsx | 28 +++++++++++-------- .../organisms/Modal/SubmittedVotesModal.tsx | 2 +- 5 files changed, 21 insertions(+), 15 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 783166767..8ef661132 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,7 +25,7 @@ changes. ### Removed -- +- Remove abstain from total DRep votes calculation ## [v2.0.11](https://github.com/IntersectMBO/govtool/releases/tag/v2.0.11) 2025-02-04 diff --git a/govtool/backend/sql/get-network-metrics.sql b/govtool/backend/sql/get-network-metrics.sql index 22e84eb88..ba668900f 100644 --- a/govtool/backend/sql/get-network-metrics.sql +++ b/govtool/backend/sql/get-network-metrics.sql @@ -196,7 +196,7 @@ SELECT TotalDRepVotes.count AS total_drep_votes, TotalRegisteredDReps.unique_registrations AS total_registered_dreps, TotalDRepDistr.total_drep_distr, - COALESCE(TotalStakeControlledByActiveDReps.total, 0) + COALESCE(AlwaysAbstainVotingPower.amount, 0) + COALESCE(AlwaysNoConfidenceVotingPower.amount, 0) AS total_stake_controlled_dreps, + COALESCE(TotalStakeControlledByActiveDReps.total, 0) + COALESCE(AlwaysNoConfidenceVotingPower.amount, 0) AS total_stake_controlled_by_active_dreps, COALESCE(TotalStakeControlledBySPOs.total, 0) AS total_stake_controlled_by_spos, TotalActiveDReps.unique_active_drep_registrations AS total_active_dreps, TotalInactiveDReps.total_inactive_dreps AS total_inactive_dreps, diff --git a/govtool/frontend/src/components/molecules/GovernanceActionDetailsCardVotes.tsx b/govtool/frontend/src/components/molecules/GovernanceActionDetailsCardVotes.tsx index 5bd37ba6c..00b3dbe02 100644 --- a/govtool/frontend/src/components/molecules/GovernanceActionDetailsCardVotes.tsx +++ b/govtool/frontend/src/components/molecules/GovernanceActionDetailsCardVotes.tsx @@ -58,7 +58,7 @@ export const GovernanceActionDetailsCardVotes = ({ isInProgress={isInProgress} /> ) : ( - + )} ); diff --git a/govtool/frontend/src/components/molecules/VotesSubmitted.tsx b/govtool/frontend/src/components/molecules/VotesSubmitted.tsx index a8bf07adf..6e9e933e5 100644 --- a/govtool/frontend/src/components/molecules/VotesSubmitted.tsx +++ b/govtool/frontend/src/components/molecules/VotesSubmitted.tsx @@ -10,12 +10,15 @@ import { } from "@utils"; import { SubmittedVotesData } from "@models"; import { useFeatureFlag, useAppContext } from "@/context"; +import { GovernanceActionType } from "@/types/governanceAction"; type Props = { + type: GovernanceActionType; votes: SubmittedVotesData; }; export const VotesSubmitted = ({ + type: govActionType, votes: { dRepYesVotes, dRepAbstainVotes, @@ -50,21 +53,24 @@ export const VotesSubmitted = ({ const totalStakeControlledByDReps = networkMetrics?.totalStakeControlledByDReps ?? 0; - const totalDRepVotes = totalStakeControlledByDReps - ? totalStakeControlledByDReps - dRepAbstainVotes + // TODO: Move this logic to backend + const dRepYesVotesPercentage = totalStakeControlledByDReps + ? (dRepYesVotes / totalStakeControlledByDReps) * 100 : undefined; - const dRepYesVotesPercentage = totalDRepVotes - ? (dRepYesVotes / totalDRepVotes) * 100 - : undefined; - const dRepNoVotesPercentage = totalDRepVotes - ? (dRepNoVotes / totalDRepVotes) * 100 + const dRepNoVotesPercentage = totalStakeControlledByDReps + ? (dRepNoVotes / totalStakeControlledByDReps) * 100 : undefined; const dRepNotVotedVotes = totalStakeControlledByDReps ? totalStakeControlledByDReps - - dRepYesVotes - - dRepNoVotes - - dRepAbstainVotes + - (networkMetrics?.alwaysNoConfidenceVotingPower ?? 0) + (dRepYesVotes - + (govActionType === GovernanceActionType.NoConfidence + ? networkMetrics?.alwaysNoConfidenceVotingPower ?? 0 + : 0)) - + (dRepNoVotes - + (govActionType === GovernanceActionType.NoConfidence + ? 0 + : networkMetrics?.alwaysNoConfidenceVotingPower ?? 0)) - + (dRepAbstainVotes - (networkMetrics?.alwaysAbstainVotingPower ?? 0)) : undefined; const dRepNotVotedVotesPercentage = 100 - (dRepYesVotesPercentage ?? 0) - (dRepNoVotesPercentage ?? 0); diff --git a/govtool/frontend/src/components/organisms/Modal/SubmittedVotesModal.tsx b/govtool/frontend/src/components/organisms/Modal/SubmittedVotesModal.tsx index 1f3f7b6f5..32fb6889f 100644 --- a/govtool/frontend/src/components/organisms/Modal/SubmittedVotesModal.tsx +++ b/govtool/frontend/src/components/organisms/Modal/SubmittedVotesModal.tsx @@ -23,7 +23,7 @@ export const SubmittedVotesModal = forwardRef((_, ref) => { > - +