add setTimeout

pull/2324/head
yann300 3 years ago
parent 466f9e4643
commit 3214e76184
  1. 14
      apps/remix-ide/src/app/tabs/web3-provider.js

@ -28,9 +28,15 @@ export class Web3ProviderModule extends Plugin {
if (error) return reject(error)
if (payload.method === 'eth_sendTransaction') {
if (payload.params.length && !payload.params[0].to && message.result) {
const receipt = await this.tryTillReceiptAvailable(message.result)
const contractData = await this.call('compilerArtefacts', 'getContractDataFromAddress', receipt.contractAddress)
if (contractData) this.call('udapp', 'addInstance', receipt.contractAddress, contractData.contract.abi, contractData.name)
setTimeout(async () => {
const receipt = await this.tryTillReceiptAvailable(message.result)
if (!receipt.contractAddress) {
console.log('receipt available but contract address not present', receipt)
return
}
const contractData = await this.call('compilerArtefacts', 'getContractDataFromAddress', receipt.contractAddress)
if (contractData) this.call('udapp', 'addInstance', receipt.contractAddress, contractData.contract.abi, contractData.name)
}, 50)
}
}
resolve(message)
@ -42,7 +48,7 @@ export class Web3ProviderModule extends Plugin {
try {
const receipt = await this.call('blockchain', 'getTransactionReceipt', txhash)
if (receipt) return receipt
} catch (e) {} // eslint-disable-line
} catch (e) {}
await this.pause()
return await this.tryTillReceiptAvailable(txhash)
}

Loading…
Cancel
Save