diff options
author | Fabio Berger <me@fabioberger.com> | 2018-05-24 03:01:38 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-24 03:01:38 +0800 |
commit | 513007a82ce9065d44694516bc94771ee4bc2c6f (patch) | |
tree | fe156fa4bb2dc5fecd2df4dd1fcd82e1e3007821 /packages/subproviders | |
parent | af0d9439d4f4e05fce8018665e375cf2db07184c (diff) | |
parent | bf18a90da79d43e90901b0cd156f15398e215d91 (diff) | |
download | dexon-sol-tools-513007a82ce9065d44694516bc94771ee4bc2c6f.tar dexon-sol-tools-513007a82ce9065d44694516bc94771ee4bc2c6f.tar.gz dexon-sol-tools-513007a82ce9065d44694516bc94771ee4bc2c6f.tar.bz2 dexon-sol-tools-513007a82ce9065d44694516bc94771ee4bc2c6f.tar.lz dexon-sol-tools-513007a82ce9065d44694516bc94771ee4bc2c6f.tar.xz dexon-sol-tools-513007a82ce9065d44694516bc94771ee4bc2c6f.tar.zst dexon-sol-tools-513007a82ce9065d44694516bc94771ee4bc2c6f.zip |
Merge pull request #589 from 0xProject/feature/truffle-sol-cov
Sol-cov artifact Adapters (truffle)
Diffstat (limited to 'packages/subproviders')
-rw-r--r-- | packages/subproviders/src/index.ts | 1 | ||||
-rw-r--r-- | packages/subproviders/src/utils/subprovider_utils.ts | 15 |
2 files changed, 16 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..24ebedd06 --- /dev/null +++ b/packages/subproviders/src/utils/subprovider_utils.ts @@ -0,0 +1,15 @@ +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); + // HACK: We use implementation details of provider engine here + // https://github.com/MetaMask/provider-engine/blob/master/index.js#L68 + (provider as any)._providers = [subprovider, ...(provider as any)._providers]; +} |