The main change is how ethers loads the networkId which is now async. Thus the init process had to change a bit
26 lines
815 B
JavaScript
26 lines
815 B
JavaScript
const ethers = require('ethers');
|
|
const getNetworkId = require('./networkid.js')
|
|
const Kredits = require('../../lib/kredits');
|
|
|
|
module.exports = async function(web3) {
|
|
return new Promise((resolve, reject) => {
|
|
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 => {
|
|
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);
|
|
});
|
|
})
|
|
});
|
|
}
|