blob: 45a9ea161630de6255dcbcb4e19d55a70ec1ca58 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
import { Web3ProviderEngine } from '@0x/subproviders';
import { Web3Wrapper } from '@0x/web3-wrapper';
import { BlockWithoutTransactionData, Transaction } from 'ethereum-types';
export class Web3Source {
private readonly _web3Wrapper: Web3Wrapper;
constructor(provider: Web3ProviderEngine) {
this._web3Wrapper = new Web3Wrapper(provider);
}
public async getBlockInfoAsync(blockNumber: number): Promise<BlockWithoutTransactionData> {
const block = await this._web3Wrapper.getBlockIfExistsAsync(blockNumber);
if (block == null) {
return Promise.reject(new Error(`Could not find block for given block number: ${blockNumber}`));
}
return block;
}
public async getTransactionInfoAsync(txHash: string): Promise<Transaction> {
return this._web3Wrapper.getTransactionByHashAsync(txHash);
}
}
|