aboutsummaryrefslogtreecommitdiffstats
path: root/packages/subproviders/src
diff options
context:
space:
mode:
authorLeonid Logvinov <logvinov.leon@gmail.com>2018-05-15 21:14:36 +0800
committerLeonid Logvinov <logvinov.leon@gmail.com>2018-05-23 06:20:34 +0800
commit1ff34bd0f4084d2f9dfd6f07447bb63684ac51ac (patch)
treee7f1870dab995b33c381924707a17acc1feaf3c8 /packages/subproviders/src
parentb86248f13fcb8f326098252beee6ca557e0175e7 (diff)
downloaddexon-0x-contracts-1ff34bd0f4084d2f9dfd6f07447bb63684ac51ac.tar.gz
dexon-0x-contracts-1ff34bd0f4084d2f9dfd6f07447bb63684ac51ac.tar.zst
dexon-0x-contracts-1ff34bd0f4084d2f9dfd6f07447bb63684ac51ac.zip
Remove web3Factory.create and remove dev-tools dependency on sol-cov
Diffstat (limited to 'packages/subproviders/src')
-rw-r--r--packages/subproviders/src/index.ts1
-rw-r--r--packages/subproviders/src/utils/subprovider_utils.ts13
2 files changed, 14 insertions, 0 deletions
diff --git a/packages/subproviders/src/index.ts b/packages/subproviders/src/index.ts
index ff28b8a8d..6cc650a4d 100644
--- a/packages/subproviders/src/index.ts
+++ b/packages/subproviders/src/index.ts
@@ -4,6 +4,7 @@ export { ECSignature } from '@0xproject/types';
import { LedgerEthereumClient } from './types';
+export { prependSubprovider } from './utils/subprovider_utils';
export { EmptyWalletSubprovider } from './subproviders/empty_wallet_subprovider';
export { FakeGasEstimateSubprovider } from './subproviders/fake_gas_estimate_subprovider';
export { InjectedWeb3Subprovider } from './subproviders/injected_web3';
diff --git a/packages/subproviders/src/utils/subprovider_utils.ts b/packages/subproviders/src/utils/subprovider_utils.ts
new file mode 100644
index 000000000..380f98606
--- /dev/null
+++ b/packages/subproviders/src/utils/subprovider_utils.ts
@@ -0,0 +1,13 @@
+import ProviderEngine = require('web3-provider-engine');
+
+import { Subprovider } from '../subproviders/subprovider';
+
+/**
+ * Prepends a subprovider to a provider
+ * @param provider Given provider
+ * @param subprovider Subprovider to prepend
+ */
+export function prependSubprovider(provider: ProviderEngine, subprovider: Subprovider): void {
+ subprovider.setEngine(provider);
+ (provider as any)._providers = [subprovider, ...(provider as any)._providers];
+}