From 86d1f6cfb209fa002cdec62c6df72ea0a7b38776 Mon Sep 17 00:00:00 2001 From: Richard Ramos Date: Wed, 14 Aug 2019 12:44:11 -0400 Subject: [PATCH] fix: estimate gas --- .../discover-service/discover-service.js | 6 ++--- src/common/blockchain/services/helpers.js | 22 +++++++++++-------- .../services/snt-service/snt-service.js | 2 +- 3 files changed, 16 insertions(+), 14 deletions(-) diff --git a/src/common/blockchain/services/discover-service/discover-service.js b/src/common/blockchain/services/discover-service/discover-service.js index 67e3900..cbe1e84 100644 --- a/src/common/blockchain/services/discover-service/discover-service.js +++ b/src/common/blockchain/services/discover-service/discover-service.js @@ -259,8 +259,7 @@ class DiscoverService extends BlockchainService { try { return broadcastContractFn( - ConnectedDiscoverContract.methods.withdraw(id, tokenAmount.toString()) - .send, + ConnectedDiscoverContract.methods.withdraw(id, tokenAmount.toString()), this.sharedContext.account, ) } catch (error) { @@ -281,8 +280,7 @@ class DiscoverService extends BlockchainService { try { const tx = await broadcastContractFn( - ConnectedDiscoverContract.methods.setMetadata(id, uploadedMetadata) - .send, + ConnectedDiscoverContract.methods.setMetadata(id, uploadedMetadata), this.sharedContext.account, ) diff --git a/src/common/blockchain/services/helpers.js b/src/common/blockchain/services/helpers.js index c2f6571..60942ef 100644 --- a/src/common/blockchain/services/helpers.js +++ b/src/common/blockchain/services/helpers.js @@ -1,11 +1,15 @@ export const broadcastContractFn = (contractMethod, account) => { - return new Promise((resolve, reject) => { - contractMethod({ from: account }) - .on('transactionHash', hash => { - resolve(hash) - }) - .on('error', error => { - reject(error) - }) - }) + return contractMethod + .estimateGas({ from: account }) + .then(estimatedGas => { + contractMethod + .send({ from: account, gas: estimatedGas + 1000 }) + .on('transactionHash', hash => { + resolve(hash) + }) + .on('error', error => { + reject(error) + }) + }) + .catch(error => reject) } diff --git a/src/common/blockchain/services/snt-service/snt-service.js b/src/common/blockchain/services/snt-service/snt-service.js index 8139119..9aa225e 100644 --- a/src/common/blockchain/services/snt-service/snt-service.js +++ b/src/common/blockchain/services/snt-service/snt-service.js @@ -44,7 +44,7 @@ class SNTService extends BlockchainService { spender, amount.toString(), callData, - ).send, + ), this.sharedContext.account, ) }