aboutsummaryrefslogtreecommitdiffstats
path: root/packages/website/ts
diff options
context:
space:
mode:
authorLeonid Logvinov <logvinov.leon@gmail.com>2017-12-07 01:55:09 +0800
committerLeonid Logvinov <logvinov.leon@gmail.com>2017-12-07 01:55:09 +0800
commitf1b267cc9fe7f6e5566dc2535b064b92aef92df1 (patch)
treec07a9dd32c5b959d33587ce2d38098dfe397badb /packages/website/ts
parent598f1dd2d8a89b0e3ab04b2917138997031bafc6 (diff)
downloaddexon-sol-tools-f1b267cc9fe7f6e5566dc2535b064b92aef92df1.tar
dexon-sol-tools-f1b267cc9fe7f6e5566dc2535b064b92aef92df1.tar.gz
dexon-sol-tools-f1b267cc9fe7f6e5566dc2535b064b92aef92df1.tar.bz2
dexon-sol-tools-f1b267cc9fe7f6e5566dc2535b064b92aef92df1.tar.lz
dexon-sol-tools-f1b267cc9fe7f6e5566dc2535b064b92aef92df1.tar.xz
dexon-sol-tools-f1b267cc9fe7f6e5566dc2535b064b92aef92df1.tar.zst
dexon-sol-tools-f1b267cc9fe7f6e5566dc2535b064b92aef92df1.zip
Refactor web3Wrapper to a separate package
Diffstat (limited to 'packages/website/ts')
-rw-r--r--packages/website/ts/blockchain.ts6
-rw-r--r--packages/website/ts/components/ui/lifecycle_raised_button.tsx2
-rw-r--r--packages/website/ts/globals.d.ts1
-rw-r--r--packages/website/ts/subproviders/redundant_rpc_subprovider.ts2
-rw-r--r--packages/website/ts/web3_wrapper.ts18
5 files changed, 14 insertions, 15 deletions
diff --git a/packages/website/ts/blockchain.ts b/packages/website/ts/blockchain.ts
index 31d725a41..9136dc916 100644
--- a/packages/website/ts/blockchain.ts
+++ b/packages/website/ts/blockchain.ts
@@ -16,9 +16,9 @@ import {
ZeroEx,
ZeroExError,
} from '0x.js';
+import {promisify} from '@0xproject/utils';
import BigNumber from 'bignumber.js';
import compareVersions = require('compare-versions');
-import promisify = require('es6-promisify');
import ethUtil = require('ethereumjs-util');
import findVersions = require('find-versions');
import * as _ from 'lodash';
@@ -65,7 +65,7 @@ export class Blockchain {
public nodeVersion: string;
private zeroEx: ZeroEx;
private dispatcher: Dispatcher;
- private web3Wrapper: Web3Wrapper;
+ private web3Wrapper?: Web3Wrapper;
private exchangeAddress: string;
private tokenTransferProxy: ContractInstance;
private tokenRegistry: ContractInstance;
@@ -624,7 +624,7 @@ export class Blockchain {
let networkId: number;
if (!_.isUndefined(injectedWeb3)) {
try {
- networkId = _.parseInt(await promisify(injectedWeb3.version.getNetwork)());
+ networkId = _.parseInt(await promisify<string>(injectedWeb3.version.getNetwork)());
} catch (err) {
// Ignore error and proceed with networkId undefined
}
diff --git a/packages/website/ts/components/ui/lifecycle_raised_button.tsx b/packages/website/ts/components/ui/lifecycle_raised_button.tsx
index 338a3bf76..cba94ca8c 100644
--- a/packages/website/ts/components/ui/lifecycle_raised_button.tsx
+++ b/packages/website/ts/components/ui/lifecycle_raised_button.tsx
@@ -20,7 +20,7 @@ interface LifeCycleRaisedButtonProps {
labelReady: React.ReactNode|string;
labelLoading: React.ReactNode|string;
labelComplete: React.ReactNode|string;
- onClickAsyncFn: () => boolean;
+ onClickAsyncFn: () => Promise<boolean>;
backgroundColor?: string;
labelColor?: string;
}
diff --git a/packages/website/ts/globals.d.ts b/packages/website/ts/globals.d.ts
index c5b94dc45..7bbbb3a98 100644
--- a/packages/website/ts/globals.d.ts
+++ b/packages/website/ts/globals.d.ts
@@ -1,6 +1,5 @@
declare module 'react-tooltip';
declare module 'react-router-hash-link';
-declare module 'es6-promisify';
declare module 'truffle-contract';
declare module 'ethereumjs-util';
declare module 'keccak';
diff --git a/packages/website/ts/subproviders/redundant_rpc_subprovider.ts b/packages/website/ts/subproviders/redundant_rpc_subprovider.ts
index 8dffd4437..d540e6e7b 100644
--- a/packages/website/ts/subproviders/redundant_rpc_subprovider.ts
+++ b/packages/website/ts/subproviders/redundant_rpc_subprovider.ts
@@ -1,4 +1,4 @@
-import promisify = require('es6-promisify');
+import {promisify} from '@0xproject/utils';
import * as _ from 'lodash';
import {JSONRPCPayload} from 'ts/types';
import RpcSubprovider = require('web3-provider-engine/subproviders/rpc');
diff --git a/packages/website/ts/web3_wrapper.ts b/packages/website/ts/web3_wrapper.ts
index c43436c7e..b713f8a33 100644
--- a/packages/website/ts/web3_wrapper.ts
+++ b/packages/website/ts/web3_wrapper.ts
@@ -1,8 +1,8 @@
+import {promisify} from '@0xproject/utils';
import BigNumber from 'bignumber.js';
-import promisify = require('es6-promisify');
import * as _ from 'lodash';
import {Dispatcher} from 'ts/redux/dispatcher';
-import Web3 = require('web3');
+import * as Web3 from 'web3';
export class Web3Wrapper {
private dispatcher: Dispatcher;
@@ -28,7 +28,7 @@ export class Web3Wrapper {
return this.web3.isAddress(address);
}
public async getAccountsAsync(): Promise<string[]> {
- const addresses = await promisify(this.web3.eth.getAccounts)();
+ const addresses = await promisify<string[]>(this.web3.eth.getAccounts)();
return addresses;
}
public async getFirstAccountIfExistsAsync() {
@@ -38,8 +38,8 @@ export class Web3Wrapper {
}
return (addresses)[0];
}
- public async getNodeVersionAsync() {
- const nodeVersion = await promisify(this.web3.version.getNode)();
+ public async getNodeVersionAsync(): Promise<string> {
+ const nodeVersion = await promisify<string>(this.web3.version.getNode)();
return nodeVersion;
}
public getProviderObj() {
@@ -54,24 +54,24 @@ export class Web3Wrapper {
}
}
public async getBalanceInEthAsync(owner: string): Promise<BigNumber> {
- const balanceInWei: BigNumber = await promisify(this.web3.eth.getBalance)(owner);
+ const balanceInWei: BigNumber = await promisify<BigNumber>(this.web3.eth.getBalance)(owner);
const balanceEthOldBigNumber = this.web3.fromWei(balanceInWei, 'ether');
const balanceEth = new BigNumber(balanceEthOldBigNumber);
return balanceEth;
}
public async doesContractExistAtAddressAsync(address: string): Promise<boolean> {
- const code = await promisify(this.web3.eth.getCode)(address);
+ const code = await promisify<string>(this.web3.eth.getCode)(address);
// Regex matches 0x0, 0x00, 0x in order to accomodate poorly implemented clients
const zeroHexAddressRegex = /^0[xX][0]*$/;
const didFindCode = _.isNull(code.match(zeroHexAddressRegex));
return didFindCode;
}
public async signTransactionAsync(address: string, message: string): Promise<string> {
- const signData = await promisify(this.web3.eth.sign)(address, message);
+ const signData = await promisify<string>(this.web3.eth.sign)(address, message);
return signData;
}
public async getBlockTimestampAsync(blockHash: string): Promise<number> {
- const {timestamp} = await promisify(this.web3.eth.getBlock)(blockHash);
+ const {timestamp} = await promisify<Web3.BlockWithoutTransactionData>(this.web3.eth.getBlock)(blockHash);
return timestamp;
}
public destroy() {