Added blockHash to Etherscan getLogs result (#146).
This commit is contained in:
parent
ce7718c87e
commit
296473299c
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "ethers",
|
||||
"version": "3.0.7",
|
||||
"version": "3.0.8",
|
||||
"description": "Ethereum wallet library.",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
|
@ -210,7 +210,29 @@ utils.defineProperty(EtherscanProvider.prototype, 'perform', function(method, pa
|
||||
|
||||
|
||||
url += apiKey;
|
||||
return Provider.fetchJSON(url, null, getResult);
|
||||
|
||||
var self = this;
|
||||
return Provider.fetchJSON(url, null, getResult).then(function(logs) {
|
||||
var txs = {};
|
||||
|
||||
var seq = Promise.resolve();
|
||||
logs.forEach(function(log) {
|
||||
seq = seq.then(function() {
|
||||
if (log.blockHash != null) { return; }
|
||||
log.blockHash = txs[log.transactionHash];
|
||||
if (log.blockHash == null) {
|
||||
return self.getTransaction(log.transactionHash).then(function(tx) {
|
||||
txs[log.transactionHash] = tx.blockHash;
|
||||
log.blockHash = tx.blockHash;
|
||||
});
|
||||
}
|
||||
});
|
||||
})
|
||||
|
||||
return seq.then(function() {
|
||||
return logs;
|
||||
});
|
||||
});
|
||||
|
||||
case 'getEtherPrice':
|
||||
if (this.name !== 'homestead') { return Promise.resolve(0.0); }
|
||||
|
@ -569,6 +569,7 @@ utils.defineProperty(Provider, 'fetchJSON', function(url, json, processFunc) {
|
||||
var jsonError = new Error('invalid json response');
|
||||
jsonError.orginialError = error;
|
||||
jsonError.responseText = request.responseText;
|
||||
jsonError.url = url;
|
||||
reject(jsonError);
|
||||
return;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user