diff --git a/packages/asset-swapper/src/utils/market_operation_utils/constants.ts b/packages/asset-swapper/src/utils/market_operation_utils/constants.ts index 29aa44dd0e..a6a7d22efb 100644 --- a/packages/asset-swapper/src/utils/market_operation_utils/constants.ts +++ b/packages/asset-swapper/src/utils/market_operation_utils/constants.ts @@ -59,6 +59,7 @@ function valueByChainId(rest: Partial<{ [key in ChainId]: T }>, defaultValue: [ChainId.Mainnet]: defaultValue, [ChainId.Ropsten]: defaultValue, [ChainId.Rinkeby]: defaultValue, + [ChainId.Goerli]: defaultValue, [ChainId.Kovan]: defaultValue, [ChainId.Ganache]: defaultValue, [ChainId.BSC]: defaultValue, @@ -121,6 +122,17 @@ export const SELL_SOURCE_FILTER_BY_CHAIN_ID = valueByChainId( ]), [ChainId.Rinkeby]: new SourceFilters([ERC20BridgeSource.Native]), [ChainId.Kovan]: new SourceFilters([ERC20BridgeSource.Native]), + [ChainId.Goerli]: new SourceFilters([ + ERC20BridgeSource.Native, + ERC20BridgeSource.SushiSwap, + ERC20BridgeSource.Uniswap, + ERC20BridgeSource.UniswapV2, + ERC20BridgeSource.UniswapV3, + ]), + [ChainId.PolygonMumbai]: new SourceFilters([ + ERC20BridgeSource.Native, + ERC20BridgeSource.UniswapV3, + ]), [ChainId.Ganache]: new SourceFilters([ERC20BridgeSource.Native]), [ChainId.BSC]: new SourceFilters([ ERC20BridgeSource.BakerySwap, @@ -259,6 +271,17 @@ export const BUY_SOURCE_FILTER_BY_CHAIN_ID = valueByChainId( ERC20BridgeSource.Curve, ERC20BridgeSource.Mooniswap, ]), + [ChainId.Goerli]: new SourceFilters([ + ERC20BridgeSource.Native, + ERC20BridgeSource.SushiSwap, + ERC20BridgeSource.Uniswap, + ERC20BridgeSource.UniswapV2, + ERC20BridgeSource.UniswapV3, + ]), + [ChainId.PolygonMumbai]: new SourceFilters([ + ERC20BridgeSource.Native, + ERC20BridgeSource.UniswapV3, + ]), [ChainId.Rinkeby]: new SourceFilters([ERC20BridgeSource.Native]), [ChainId.Kovan]: new SourceFilters([ERC20BridgeSource.Native]), [ChainId.Ganache]: new SourceFilters([ERC20BridgeSource.Native]), @@ -365,6 +388,8 @@ export const FEE_QUOTE_SOURCES_BY_CHAIN_ID = valueByChainId [ChainId.Mainnet]: [ERC20BridgeSource.UniswapV2, ERC20BridgeSource.SushiSwap, ERC20BridgeSource.UniswapV3], [ChainId.BSC]: [ERC20BridgeSource.PancakeSwap, ERC20BridgeSource.Mooniswap, ERC20BridgeSource.SushiSwap], [ChainId.Ropsten]: [ERC20BridgeSource.UniswapV2, ERC20BridgeSource.SushiSwap], + [ChainId.Goerli]: [ERC20BridgeSource.UniswapV2, ERC20BridgeSource.SushiSwap], + [ChainId.PolygonMumbai]: [ERC20BridgeSource.UniswapV3], [ChainId.Polygon]: [ERC20BridgeSource.QuickSwap, ERC20BridgeSource.SushiSwap, ERC20BridgeSource.UniswapV3], [ChainId.Avalanche]: [ERC20BridgeSource.Pangolin, ERC20BridgeSource.TraderJoe, ERC20BridgeSource.SushiSwap], [ChainId.Fantom]: [ERC20BridgeSource.SpiritSwap, ERC20BridgeSource.SpookySwap, ERC20BridgeSource.SushiSwap], @@ -851,6 +876,15 @@ export const DEFAULT_INTERMEDIATE_TOKENS_BY_CHAIN_ID = valueByChainId( '0xad6d458402f60fd3bd25163575031acdce07538d', // DAI '0x07865c6e87b9f70255377e024ace6630c1eaa37f', // USDC ], + [ChainId.Goerli]: [ + getContractAddressesForChainOrThrow(ChainId.Goerli).etherToken, + '0x11fE4B6AE13d2a6055C8D9cF65c55bac32B5d844', // DAI + '0x07865c6E87B9F70255377e024ace6630C1Eaa37F', // USDC + ], + [ChainId.PolygonMumbai]: [ + getContractAddressesForChainOrThrow(ChainId.PolygonMumbai).etherToken, + '0xe6b8a5CF854791412c1f6EFC7CAf629f5Df1c747', // USDC + ], [ChainId.Polygon]: [ POLYGON_TOKENS.WMATIC, POLYGON_TOKENS.WETH, @@ -953,6 +987,8 @@ export const NATIVE_FEE_TOKEN_BY_CHAIN_ID = valueByChainId( [ChainId.BSC]: getContractAddressesForChainOrThrow(ChainId.BSC).etherToken, [ChainId.Ganache]: getContractAddressesForChainOrThrow(ChainId.Ganache).etherToken, [ChainId.Ropsten]: getContractAddressesForChainOrThrow(ChainId.Ropsten).etherToken, + [ChainId.Goerli]: getContractAddressesForChainOrThrow(ChainId.Goerli).etherToken, + [ChainId.PolygonMumbai]: getContractAddressesForChainOrThrow(ChainId.PolygonMumbai).etherToken, [ChainId.Rinkeby]: getContractAddressesForChainOrThrow(ChainId.Rinkeby).etherToken, [ChainId.Kovan]: getContractAddressesForChainOrThrow(ChainId.Kovan).etherToken, [ChainId.Polygon]: getContractAddressesForChainOrThrow(ChainId.Polygon).etherToken, @@ -1816,6 +1852,7 @@ export const UNISWAPV1_ROUTER_BY_CHAIN_ID = valueByChainId( { [ChainId.Mainnet]: '0xc0a47dfe034b400b47bdad5fecda2621de6c4d95', [ChainId.Ropsten]: '0x9c83dce8ca20e9aaf9d3efc003b2ea62abc08351', + [ChainId.Goerli]: '0x6Ce570d02D73d4c384b46135E87f8C592A8c86dA', }, NULL_ADDRESS, ); @@ -1824,6 +1861,7 @@ export const UNISWAPV2_ROUTER_BY_CHAIN_ID = valueByChainId( { [ChainId.Mainnet]: '0xf164fc0ec4e93095b804a4795bbe1e041497b92a', [ChainId.Ropsten]: '0xf164fc0ec4e93095b804a4795bbe1e041497b92a', + [ChainId.Goerli]: '0xf164fc0ec4e93095b804a4795bbe1e041497b92a', }, NULL_ADDRESS, ); @@ -1833,6 +1871,7 @@ export const SUSHISWAP_ROUTER_BY_CHAIN_ID = valueByChainId( [ChainId.Mainnet]: '0xd9e1ce17f2641f24ae83637ab66a2cca9c378b9f', [ChainId.BSC]: '0x1b02da8cb0d097eb8d57a175b88c7d8b47997506', [ChainId.Ropsten]: '0x1b02da8cb0d097eb8d57a175b88c7d8b47997506', + [ChainId.Goerli]: '0x1b02da8cb0d097eb8d57a175b88c7d8b47997506', [ChainId.Polygon]: '0x1b02da8cb0d097eb8d57a175b88c7d8b47997506', [ChainId.Avalanche]: '0x1b02da8cb0d097eb8d57a175b88c7d8b47997506', [ChainId.Fantom]: '0x1b02da8cb0d097eb8d57a175b88c7d8b47997506', @@ -2139,6 +2178,14 @@ export const UNISWAPV3_CONFIG_BY_CHAIN_ID = valueByChainId( quoter: '0x61ffe014ba17989e743c5f6cb21bf9697530b21e', router: '0xe592427a0aece92de3edee1f18e0157c05861564', }, + [ChainId.Goerli]: { + quoter: '0x61ffe014ba17989e743c5f6cb21bf9697530b21e', + router: '0xe592427a0aece92de3edee1f18e0157c05861564', + }, + [ChainId.PolygonMumbai]: { + quoter: '0x61ffe014ba17989e743c5f6cb21bf9697530b21e', + router: '0xe592427a0aece92de3edee1f18e0157c05861564', + }, [ChainId.Polygon]: { quoter: '0x61ffe014ba17989e743c5f6cb21bf9697530b21e', router: '0xe592427a0aece92de3edee1f18e0157c05861564', diff --git a/packages/contract-addresses/CHANGELOG.json b/packages/contract-addresses/CHANGELOG.json index 2cfc06f7a2..9eab316aa5 100644 --- a/packages/contract-addresses/CHANGELOG.json +++ b/packages/contract-addresses/CHANGELOG.json @@ -1,4 +1,12 @@ [ + { + "version": "6.17.0", + "changes": [ + { + "note": "Goerli and Mumbai" + } + ] + }, { "version": "6.16.0", "changes": [ diff --git a/packages/contract-addresses/addresses.json b/packages/contract-addresses/addresses.json index ca8c241df6..7e19ed79cc 100644 --- a/packages/contract-addresses/addresses.json +++ b/packages/contract-addresses/addresses.json @@ -125,6 +125,48 @@ "positiveSlippageFeeTransformer": "0x0000000000000000000000000000000000000000" } }, + "5": { + "erc20Proxy": "0x0000000000000000000000000000000000000000", + "erc721Proxy": "0x0000000000000000000000000000000000000000", + "zrxToken": "0x0000000000000000000000000000000000000000", + "etherToken": "0xb4fbf271143f4fbf7b91a5ded31805e42b2208d6", + "exchangeV2": "0x0000000000000000000000000000000000000000", + "exchange": "0x0000000000000000000000000000000000000000", + "assetProxyOwner": "0x0000000000000000000000000000000000000000", + "zeroExGovernor": "0x0000000000000000000000000000000000000000", + "forwarder": "0x0000000000000000000000000000000000000000", + "coordinatorRegistry": "0x0000000000000000000000000000000000000000", + "coordinator": "0x0000000000000000000000000000000000000000", + "multiAssetProxy": "0x0000000000000000000000000000000000000000", + "staticCallProxy": "0x0000000000000000000000000000000000000000", + "erc1155Proxy": "0x0000000000000000000000000000000000000000", + "devUtils": "0x0000000000000000000000000000000000000000", + "zrxVault": "0x0000000000000000000000000000000000000000", + "staking": "0x0000000000000000000000000000000000000000", + "stakingProxy": "0x0000000000000000000000000000000000000000", + "erc20BridgeProxy": "0x0000000000000000000000000000000000000000", + "erc20BridgeSampler": "0x0000000000000000000000000000000000000000", + "chaiBridge": "0x0000000000000000000000000000000000000000", + "dydxBridge": "0x0000000000000000000000000000000000000000", + "godsUnchainedValidator": "0x0000000000000000000000000000000000000000", + "broker": "0x0000000000000000000000000000000000000000", + "chainlinkStopLimit": "0x0000000000000000000000000000000000000000", + "maximumGasPrice": "0x0000000000000000000000000000000000000000", + "dexForwarderBridge": "0x0000000000000000000000000000000000000000", + "exchangeProxyGovernor": "0x7cee06249e371a1ecf8107e912294432f7f70832", + "exchangeProxy": "0xdef1c0ded9bec7f1a1670819833240f027b25eff", + "exchangeProxyTransformerDeployer": "0x2bef57ffde3098eeed9fa4f9166a81d7377533dc", + "exchangeProxyFlashWallet": "0xdb6f1920a889355780af7570773609bd8cb1f498", + "exchangeProxyLiquidityProviderSandbox": "0x0000000000000000000000000000000000000000", + "zrxTreasury": "0x0000000000000000000000000000000000000000", + "transformers": { + "wethTransformer": "0xad550dbef7b93a42e335062e808d66a70eca5a0a", + "payTakerTransformer": "0xbd3fec19e4d91a79b329b6b4a6f210c66a40a97f", + "affiliateFeeTransformer": "0x59e7371b613a6f3879694bf9db2fe3117c92a927", + "fillQuoteTransformer": "0x3edbf102250d59230ff6d3fc648f97c094f3cb27", + "positiveSlippageFeeTransformer": "0x48997b11bbc15c2fa2f141c9e93a0a2ab789a761" + } + }, "42": { "erc20Proxy": "0xaa460127562482faa5df42f2c39a025cd4a1cc0a", "erc721Proxy": "0x7b70a148e20b348c320208df84fdd642aab49fd0", diff --git a/packages/contract-addresses/src/index.ts b/packages/contract-addresses/src/index.ts index d40aa3a786..9ddf09161d 100644 --- a/packages/contract-addresses/src/index.ts +++ b/packages/contract-addresses/src/index.ts @@ -47,6 +47,7 @@ export enum ChainId { Mainnet = 1, Ropsten = 3, Rinkeby = 4, + Goerli = 5, Kovan = 42, Ganache = 1337, BSC = 56, @@ -55,6 +56,7 @@ export enum ChainId { Avalanche = 43114, Fantom = 250, Celo = 42220, + // Arbitrum = 42161, Optimism = 10, }