From 7b9c5a0800238e1f50a9ebb6afe08a5996638304 Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Mon, 6 May 2024 18:21:57 +0200 Subject: [PATCH] chore: bigint/number conversion --- modules/aeternity/logic/aeternity.js | 10 +++++----- modules/aeternity/tests/chainListener.js | 2 +- modules/cache/logic/cacheLogic.js | 2 +- utils/basicTippingContractUtil.js | 10 ++++++---- 4 files changed, 13 insertions(+), 11 deletions(-) diff --git a/modules/aeternity/logic/aeternity.js b/modules/aeternity/logic/aeternity.js index 144938ca..bfda4083 100644 --- a/modules/aeternity/logic/aeternity.js +++ b/modules/aeternity/logic/aeternity.js @@ -217,19 +217,19 @@ const aeternity = { case 'Transfer': event.from = decodedEvent.args[0]; // eslint-disable-line prefer-destructuring event.to = decodedEvent.args[1]; // eslint-disable-line prefer-destructuring - event.amount = decodedEvent.args[2] || null; + event.amount = decodedEvent.args[2] ? Number(decodedEvent.args[2]) : null; break; case 'Allowance': event.from = decodedEvent.args[0]; // eslint-disable-line prefer-destructuring event.for = decodedEvent.args[1]; // eslint-disable-line prefer-destructuring - event.amount = decodedEvent.args[2] || null; + event.amount = decodedEvent.args[2] ? Number(decodedEvent.args[2]) : null; break; // V2 case 'TipDirectReceived': case 'TipDirectTokenReceived': event.address = decodedEvent.args[0]; // eslint-disable-line prefer-destructuring - event.amount = decodedEvent.args[1] || null; + event.amount = decodedEvent.args[1] ? Number(decodedEvent.args[1]) : null; event.receiver = decodedEvent.args[2]; // eslint-disable-line prefer-destructuring event.tokenContract = decodedEvent.args[3] || null; break; @@ -243,7 +243,7 @@ const aeternity = { // ORACLES case 'CheckPersistClaim': event.address = decodedEvent.args[1]; // eslint-disable-line prefer-destructuring - event.amount = decodedEvent.args[2] || null; + event.amount = decodedEvent.args[2] ? Number(decodedEvent.args[2]) : null; event.url = decodedEvent.args[0]; // eslint-disable-line prefer-destructuring break; case 'QueryOracle': @@ -257,7 +257,7 @@ const aeternity = { case 'ReTipTokenReceived': case 'TipWithdrawn': event.address = decodedEvent.args[0]; // eslint-disable-line prefer-destructuring - event.amount = decodedEvent.args[1] ? decodedEvent.args[1] : null; + event.amount = decodedEvent.args[1] ? Number(decodedEvent.args[1]) : null; event.url = decodedEvent.args[2]; // eslint-disable-line prefer-destructuring event.tokenContract = decodedEvent.args[3] || null; break; diff --git a/modules/aeternity/tests/chainListener.js b/modules/aeternity/tests/chainListener.js index 4e3af157..277b885c 100644 --- a/modules/aeternity/tests/chainListener.js +++ b/modules/aeternity/tests/chainListener.js @@ -83,7 +83,7 @@ describe('Chain Listener', () => { event.should.be.an('object'); event.should.have.property('name', 'TipReceived'); event.should.have.property('address', 'ak_y87WkN4C4QevzjTuEYHg6XLqiWx3rjfYDFLBmZiqiro5mkRag'); - event.should.have.property('amount', 120000000000000000n); + event.should.have.property('amount', 120000000000000000); event.should.have.property('url', 'https://github.com/thepiwo'); event.should.have.property('tokenContract', null); diff --git a/modules/cache/logic/cacheLogic.js b/modules/cache/logic/cacheLogic.js index 2f13050f..2afa7746 100644 --- a/modules/cache/logic/cacheLogic.js +++ b/modules/cache/logic/cacheLogic.js @@ -75,7 +75,7 @@ const CacheLogic = { async getWordRegistryAndSaleData() { const wordRegistryData = await CacheLogic.getWordRegistryData(); - return wordRegistryData.tokens.asyncMap(async ([word, sale]) => { + return Array.from(wordRegistryData.tokens).asyncMap(async ([word, sale]) => { const wordSaleDetails = await CacheLogic.getWordSaleDetails(sale); return { diff --git a/utils/basicTippingContractUtil.js b/utils/basicTippingContractUtil.js index 7617a974..105afe5e 100644 --- a/utils/basicTippingContractUtil.js +++ b/utils/basicTippingContractUtil.js @@ -14,8 +14,8 @@ const formatSingleClaim = (contractId, url, [claimGen, amount]) => { const data = {}; data.contractId = contractId; data.url = url; - data.claimGen = claimGen; - data.amount = String(amount); + data.claimGen = Number(claimGen); + data.amount = Number(amount); return data; }; @@ -37,11 +37,13 @@ const formatSingleRetip = (contractId, suffix, id, tipTypeData) => { data.contractId = contractId; data.claimGen = data.claim_gen === 'None' || data.claim_gen === undefined ? null : Number(data.claim_gen); data.token = data.token !== undefined ? data.token : null; - data.tokenAmount = data.token_amount ? data.token_amount : '0'; + data.tokenAmount = data.token_amount ? Number(data.token_amount) : 0; + data.amount = Number(data.amount) // formatting delete data.claim_gen; delete data.tip_id; + delete data.token_amount; return data; }; @@ -136,7 +138,7 @@ const formatSingleTip = (contractId, suffix, id, tipTypeData, url) => { delete data.url_id; data.token = data.token !== undefined ? data.token : null; - data.tokenAmount = data.tokenAmount ? data.tokenAmount : '0'; + data.tokenAmount = data.tokenAmount ? Number(data.tokenAmount) : 0; data.topics = [...new Set(data.title.match(topicsRegex))].map(x => x.toLowerCase()); data.amount = Number(data.amount)