From 760556f956f7355602bfdd9c24490c05c23b703b Mon Sep 17 00:00:00 2001
From: Pablo Carranza Velez <pablo@edgeandnode.com>
Date: Mon, 29 Jan 2024 12:44:56 -0300
Subject: [PATCH] fix: track total delegated tokens changes when rewards or
 fees are collected

---
 src/mappings/rewardsManager.ts | 1 +
 src/mappings/staking.ts        | 2 ++
 2 files changed, 3 insertions(+)

diff --git a/src/mappings/rewardsManager.ts b/src/mappings/rewardsManager.ts
index a83eee3d..443b127d 100644
--- a/src/mappings/rewardsManager.ts
+++ b/src/mappings/rewardsManager.ts
@@ -85,6 +85,7 @@ export function handleRewardsAssigned(event: RewardsAssigned): void {
   graphNetwork.totalIndexingDelegatorRewards = graphNetwork.totalIndexingDelegatorRewards.plus(
     delegatorIndexingRewards,
   )
+  graphNetwork.totalDelegatedTokens = graphNetwork.totalDelegatedTokens.plus(delegatorIndexingRewards)
   graphNetwork.save()
 }
 
diff --git a/src/mappings/staking.ts b/src/mappings/staking.ts
index ce70b653..1cd7d5e9 100644
--- a/src/mappings/staking.ts
+++ b/src/mappings/staking.ts
@@ -659,6 +659,7 @@ export function handleRebateClaimed(event: RebateClaimed): void {
   graphNetwork.totalUnclaimedQueryFeeRebates = graphNetwork.totalUnclaimedQueryFeeRebates.minus(
     event.params.delegationFees.plus(event.params.tokens),
   )
+  graphNetwork.totalDelegatedTokens = graphNetwork.totalDelegatedTokens.plus(event.params.delegationFees)
   graphNetwork.save()
 }
 
@@ -742,6 +743,7 @@ export function handleRebateCollected(event: RebateCollected): void {
   graphNetwork.totalUnclaimedQueryFeeRebates = graphNetwork.totalUnclaimedQueryFeeRebates.minus(
     event.params.delegationRewards.plus(event.params.queryRebates),
   )
+  graphNetwork.totalDelegatedTokens = graphNetwork.totalDelegatedTokens.plus(event.params.delegationRewards)
   graphNetwork.save()
 }