Update ethers.js to latest version v4

The main change is how ethers loads the networkId which is now async.
Thus the init process had to change a bit
This commit is contained in:
2019-03-29 18:13:51 +01:00
parent 3662f1ae24
commit 51e5da414f
6 changed files with 635 additions and 258 deletions

View File

@@ -4,22 +4,22 @@ const Kredits = require('../../lib/kredits');
module.exports = async function(web3) {
return new Promise((resolve, reject) => {
getNetworkId(web3).then(networkId => {
const provider = new ethers.providers.Web3Provider(
web3.currentProvider, { chainId: parseInt(networkId) }
);
let signer = provider.getSigner();
// checking if siner supports signing transactions
signer.getAddress().then(_ => {
new Kredits(provider, signer).init().then(kredits => {
resolve(kredits);
})
const provider = new ethers.providers.Web3Provider(web3.currentProvider);
let signer = provider.getSigner();
// checking if siner supports signing transactions
signer.getAddress().then(_ => {
new Kredits(provider, signer).init().then(kredits => {
resolve(kredits);
}).catch(e => {
console.log(`Signer account not available; readonly connection (${e.message}`);
new Kredits(provider, null).init().then(kredits => {
resolve(kredits);
})
})
reject(e);
});
}).catch(e => {
console.log(`Signer account not available; readonly connection (${e.message}`);
new Kredits(provider, null).init().then(kredits => {
resolve(kredits);
}).catch(e => {
reject(e);
});
})
});
}