diff options
Diffstat (limited to 'packages/utils/src/transaction_utils.ts')
-rw-r--r-- | packages/utils/src/transaction_utils.ts | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/packages/utils/src/transaction_utils.ts b/packages/utils/src/transaction_utils.ts deleted file mode 100644 index a1db90817..000000000 --- a/packages/utils/src/transaction_utils.ts +++ /dev/null @@ -1,52 +0,0 @@ -import { AbiDecoder } from '@0xproject/abi-decoder'; -import { TransactionReceiptWithDecodedLogs } from '@0xproject/types'; -import { Web3Wrapper } from '@0xproject/web3-wrapper'; -import * as _ from 'lodash'; - -import { intervalUtils } from './interval_utils'; -import { TransactionError } from './types'; - -export const awaitTransactionMinedAsync = async ( - web3Wrapper: Web3Wrapper, - abiDecoder: AbiDecoder, - txHash: string, - pollingIntervalMs = 1000, - timeoutMs?: number, -) => { - let timeoutExceeded = false; - if (timeoutMs) { - setTimeout(() => (timeoutExceeded = true), timeoutMs); - } - - const txReceiptPromise = new Promise((resolve: (receipt: TransactionReceiptWithDecodedLogs) => void, reject) => { - const intervalId = intervalUtils.setAsyncExcludingInterval( - async () => { - if (timeoutExceeded) { - intervalUtils.clearAsyncExcludingInterval(intervalId); - return reject(TransactionError.TransactionMiningTimeout); - } - - const transactionReceipt = await web3Wrapper.getTransactionReceiptAsync(txHash); - if (!_.isNull(transactionReceipt)) { - intervalUtils.clearAsyncExcludingInterval(intervalId); - const logsWithDecodedArgs = _.map( - transactionReceipt.logs, - abiDecoder.tryToDecodeLogOrNoop.bind(abiDecoder), - ); - const transactionReceiptWithDecodedLogArgs: TransactionReceiptWithDecodedLogs = { - ...transactionReceipt, - logs: logsWithDecodedArgs, - }; - resolve(transactionReceiptWithDecodedLogArgs); - } - }, - pollingIntervalMs, - (err: Error) => { - intervalUtils.clearAsyncExcludingInterval(intervalId); - reject(err); - }, - ); - }); - - return txReceiptPromise; -}; |