Merge pull request #2430 from 0xProject/feature/instant/enable-aggregator
Instant: whitelist tokens using bridge orders array
This commit is contained in:
		@@ -2,6 +2,20 @@ import { BigNumber } from '@0x/utils';
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import { AccountNotReady, AccountState, Network, ProviderType } from './types';
 | 
					import { AccountNotReady, AccountState, Network, ProviderType } from './types';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// TODO(dave4506) until we have /prices endpoint ready, we will use this whitelist for bridge order liquidity assets
 | 
				
			||||||
 | 
					export const SUPPORTED_TOKEN_ASSET_DATA_WITH_BRIDGE_ORDERS = [
 | 
				
			||||||
 | 
					    '0xf47261b0000000000000000000000000e41d2489571d322189246dafa5ebde1f4699f498', // ZRX
 | 
				
			||||||
 | 
					    '0xf47261b0000000000000000000000000960b236a07cf122663c4303350609a66a7b288c0', // ANT
 | 
				
			||||||
 | 
					    '0xf47261b00000000000000000000000000d8775f648430679a709e98d2b0cb6250d2887ef', // BAT
 | 
				
			||||||
 | 
					    '0xf47261b0000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', // USDC
 | 
				
			||||||
 | 
					    '0xf47261b00000000000000000000000006b175474e89094c44da98b954eedeac495271d0f', // DAI
 | 
				
			||||||
 | 
					    '0xf47261b000000000000000000000000005f4a42e251f2d52b8ed15e9fedaacfcef1fad27', // ZIL
 | 
				
			||||||
 | 
					    '0xf47261b000000000000000000000000058b6a8a3302369daec383334672404ee733ab239', // LPT
 | 
				
			||||||
 | 
					    '0xf47261b00000000000000000000000009f8f72aa9304c8b593d555f12ef6589cc3a579a2', // MKR
 | 
				
			||||||
 | 
					    '0xf47261b0000000000000000000000000d26114cd6ee289accf82350c8d8487fedb8a0c07', // OMG
 | 
				
			||||||
 | 
					    '0xf47261b0000000000000000000000000514910771af9ca656af840dff83e8264ecf986ca', // LINK
 | 
				
			||||||
 | 
					    '0xf47261b00000000000000000000000001985365e9f78359a9b6ad760e32412f4a445e862', // REP
 | 
				
			||||||
 | 
					];
 | 
				
			||||||
export const BIG_NUMBER_ZERO = new BigNumber(0);
 | 
					export const BIG_NUMBER_ZERO = new BigNumber(0);
 | 
				
			||||||
export const ETH_DECIMALS = 18;
 | 
					export const ETH_DECIMALS = 18;
 | 
				
			||||||
export const DEFAULT_ZERO_EX_CONTAINER_SELECTOR = '#zeroExInstantContainer';
 | 
					export const DEFAULT_ZERO_EX_CONTAINER_SELECTOR = '#zeroExInstantContainer';
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,7 +2,7 @@ import { Web3Wrapper } from '@0x/web3-wrapper';
 | 
				
			|||||||
import * as _ from 'lodash';
 | 
					import * as _ from 'lodash';
 | 
				
			||||||
import { Dispatch } from 'redux';
 | 
					import { Dispatch } from 'redux';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import { BIG_NUMBER_ZERO } from '../constants';
 | 
					import { BIG_NUMBER_ZERO, SUPPORTED_TOKEN_ASSET_DATA_WITH_BRIDGE_ORDERS } from '../constants';
 | 
				
			||||||
import { AccountState, BaseCurrency, OrderProcessState, ProviderState, QuoteFetchOrigin } from '../types';
 | 
					import { AccountState, BaseCurrency, OrderProcessState, ProviderState, QuoteFetchOrigin } from '../types';
 | 
				
			||||||
import { analytics } from '../util/analytics';
 | 
					import { analytics } from '../util/analytics';
 | 
				
			||||||
import { assetUtils } from '../util/asset';
 | 
					import { assetUtils } from '../util/asset';
 | 
				
			||||||
@@ -35,7 +35,17 @@ export const asyncData = {
 | 
				
			|||||||
            const wethAssetData = await swapQuoter.getEtherTokenAssetDataOrThrowAsync();
 | 
					            const wethAssetData = await swapQuoter.getEtherTokenAssetDataOrThrowAsync();
 | 
				
			||||||
            const assetDatas = await swapQuoter.getAvailableMakerAssetDatasAsync(wethAssetData);
 | 
					            const assetDatas = await swapQuoter.getAvailableMakerAssetDatasAsync(wethAssetData);
 | 
				
			||||||
            const deduplicatedAssetDatas = _.uniq(assetDatas);
 | 
					            const deduplicatedAssetDatas = _.uniq(assetDatas);
 | 
				
			||||||
            const assets = assetUtils.createAssetsFromAssetDatas(deduplicatedAssetDatas, assetMetaDataMap, network);
 | 
					            const assetsWithNativeOrders = assetUtils.createAssetsFromAssetDatas(
 | 
				
			||||||
 | 
					                deduplicatedAssetDatas,
 | 
				
			||||||
 | 
					                assetMetaDataMap,
 | 
				
			||||||
 | 
					                network,
 | 
				
			||||||
 | 
					            );
 | 
				
			||||||
 | 
					            const assetsWithBridgeOrders = assetUtils.createAssetsFromAssetDatas(
 | 
				
			||||||
 | 
					                SUPPORTED_TOKEN_ASSET_DATA_WITH_BRIDGE_ORDERS,
 | 
				
			||||||
 | 
					                assetMetaDataMap,
 | 
				
			||||||
 | 
					                network,
 | 
				
			||||||
 | 
					            );
 | 
				
			||||||
 | 
					            const assets = _.uniqBy(_.concat(assetsWithNativeOrders, assetsWithBridgeOrders), asset => asset.assetData);
 | 
				
			||||||
            dispatch(actions.setAvailableAssets(assets));
 | 
					            dispatch(actions.setAvailableAssets(assets));
 | 
				
			||||||
        } catch (e) {
 | 
					        } catch (e) {
 | 
				
			||||||
            const errorMessage = 'Could not find any assets';
 | 
					            const errorMessage = 'Could not find any assets';
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
import { ERC20BridgeSource, MarketBuySwapQuote, SwapQuoter } from '@0x/asset-swapper';
 | 
					import { MarketBuySwapQuote, SwapQuoter } from '@0x/asset-swapper';
 | 
				
			||||||
import { AssetProxyId } from '@0x/types';
 | 
					import { AssetProxyId } from '@0x/types';
 | 
				
			||||||
import { BigNumber } from '@0x/utils';
 | 
					import { BigNumber } from '@0x/utils';
 | 
				
			||||||
import { Web3Wrapper } from '@0x/web3-wrapper';
 | 
					import { Web3Wrapper } from '@0x/web3-wrapper';
 | 
				
			||||||
@@ -51,7 +51,7 @@ export const swapQuoteUpdater = {
 | 
				
			|||||||
                    slippagePercentage,
 | 
					                    slippagePercentage,
 | 
				
			||||||
                    gasPrice: gasInfo.gasPriceInWei,
 | 
					                    gasPrice: gasInfo.gasPriceInWei,
 | 
				
			||||||
                    // Only use native orders
 | 
					                    // Only use native orders
 | 
				
			||||||
                    excludedSources: [ERC20BridgeSource.Eth2Dai, ERC20BridgeSource.Kyber, ERC20BridgeSource.Uniswap],
 | 
					                    // excludedSources: [ERC20BridgeSource.Eth2Dai, ERC20BridgeSource.Kyber, ERC20BridgeSource.Uniswap],
 | 
				
			||||||
                },
 | 
					                },
 | 
				
			||||||
            );
 | 
					            );
 | 
				
			||||||
        } catch (error) {
 | 
					        } catch (error) {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user