aboutsummaryrefslogtreecommitdiffstats
path: root/packages/instant/src/util/asset_buyer_factory.ts
diff options
context:
space:
mode:
authorBrandon Millman <brandon.millman@gmail.com>2018-11-07 12:25:30 +0800
committerBrandon Millman <brandon.millman@gmail.com>2018-11-08 01:32:49 +0800
commitdfbf10c94bfbbdbca353531c5cae6707e05981f0 (patch)
tree6b1f2832742517b280d7a7594adfa6fec4ea7bef /packages/instant/src/util/asset_buyer_factory.ts
parentc30dca69619bf87ed198cf375d21593213798113 (diff)
downloaddexon-sol-tools-dfbf10c94bfbbdbca353531c5cae6707e05981f0.tar
dexon-sol-tools-dfbf10c94bfbbdbca353531c5cae6707e05981f0.tar.gz
dexon-sol-tools-dfbf10c94bfbbdbca353531c5cae6707e05981f0.tar.bz2
dexon-sol-tools-dfbf10c94bfbbdbca353531c5cae6707e05981f0.tar.lz
dexon-sol-tools-dfbf10c94bfbbdbca353531c5cae6707e05981f0.tar.xz
dexon-sol-tools-dfbf10c94bfbbdbca353531c5cae6707e05981f0.tar.zst
dexon-sol-tools-dfbf10c94bfbbdbca353531c5cae6707e05981f0.zip
feat(instant): fallback to an empty wallet provider when none is injected
Diffstat (limited to 'packages/instant/src/util/asset_buyer_factory.ts')
-rw-r--r--packages/instant/src/util/asset_buyer_factory.ts17
1 files changed, 17 insertions, 0 deletions
diff --git a/packages/instant/src/util/asset_buyer_factory.ts b/packages/instant/src/util/asset_buyer_factory.ts
new file mode 100644
index 000000000..5ba46223c
--- /dev/null
+++ b/packages/instant/src/util/asset_buyer_factory.ts
@@ -0,0 +1,17 @@
+import { AssetBuyer, AssetBuyerOpts } from '@0x/asset-buyer';
+import { Provider } from 'ethereum-types';
+import * as _ from 'lodash';
+
+import { Network, OrderSource } from '../types';
+
+export const assetBuyerFactory = {
+ getAssetBuyer: (provider: Provider, orderSource: OrderSource, network: Network): AssetBuyer => {
+ const assetBuyerOptions: Partial<AssetBuyerOpts> = {
+ networkId: network,
+ };
+ const assetBuyer = _.isString(orderSource)
+ ? AssetBuyer.getAssetBuyerForStandardRelayerAPIUrl(provider, orderSource, assetBuyerOptions)
+ : AssetBuyer.getAssetBuyerForProvidedOrders(provider, orderSource, assetBuyerOptions);
+ return assetBuyer;
+ },
+};