From 6198efbe4cf71926c5a28446d0044a0144164f0c Mon Sep 17 00:00:00 2001 From: Danish Arora Date: Thu, 27 Mar 2025 12:46:47 +0530 Subject: [PATCH] chore: big number conversions --- packages/rln/src/contract/rln_contract.ts | 4 ++-- .../rln/src/contract/rln_light_contract.ts | 19 +++++++++++++------ 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/packages/rln/src/contract/rln_contract.ts b/packages/rln/src/contract/rln_contract.ts index 863a9ee12c..0aa0d81fb8 100644 --- a/packages/rln/src/contract/rln_contract.ts +++ b/packages/rln/src/contract/rln_contract.ts @@ -152,7 +152,7 @@ export class RLNContract { */ public async getMinRateLimit(): Promise { const minRate = await this.contract.minMembershipRateLimit(); - return minRate.toNumber(); + return ethers.BigNumber.from(minRate).toNumber(); } /** @@ -161,7 +161,7 @@ export class RLNContract { */ public async getMaxRateLimit(): Promise { const maxRate = await this.contract.maxMembershipRateLimit(); - return maxRate.toNumber(); + return ethers.BigNumber.from(maxRate).toNumber(); } /** diff --git a/packages/rln/src/contract/rln_light_contract.ts b/packages/rln/src/contract/rln_light_contract.ts index db0ccdb65c..2205c704f9 100644 --- a/packages/rln/src/contract/rln_light_contract.ts +++ b/packages/rln/src/contract/rln_light_contract.ts @@ -133,7 +133,7 @@ export class RLNLightContract { */ public async getMinRateLimit(): Promise { const minRate = await this.contract.minMembershipRateLimit(); - return minRate.toNumber(); + return ethers.BigNumber.from(minRate).toNumber(); } /** @@ -142,7 +142,7 @@ export class RLNLightContract { */ public async getMaxRateLimit(): Promise { const maxRate = await this.contract.maxMembershipRateLimit(); - return maxRate.toNumber(); + return ethers.BigNumber.from(maxRate).toNumber(); } /** @@ -151,7 +151,7 @@ export class RLNLightContract { */ public async getMaxTotalRateLimit(): Promise { const maxTotalRate = await this.contract.maxTotalRateLimit(); - return maxTotalRate.toNumber(); + return ethers.BigNumber.from(maxTotalRate).toNumber(); } /** @@ -160,7 +160,7 @@ export class RLNLightContract { */ public async getCurrentTotalRateLimit(): Promise { const currentTotal = await this.contract.currentTotalRateLimit(); - return currentTotal.toNumber(); + return ethers.BigNumber.from(currentTotal).toNumber(); } /** @@ -172,7 +172,9 @@ export class RLNLightContract { this.contract.maxTotalRateLimit(), this.contract.currentTotalRateLimit() ]); - return Number(maxTotal) - Number(currentTotal); + return ethers.BigNumber.from(maxTotal) + .sub(ethers.BigNumber.from(currentTotal)) + .toNumber(); } /** @@ -451,7 +453,12 @@ export class RLNLightContract { membershipId, currentEpochStart ); - return Math.max(0, rateLimit.sub(messageCount).toNumber()); + return Math.max( + 0, + ethers.BigNumber.from(rateLimit) + .sub(ethers.BigNumber.from(messageCount)) + .toNumber() + ); } catch (error) { log.error( `Error getting remaining messages: ${(error as Error).message}`