From cc55a981d4034190e9e14b5a18d9fd2e33148682 Mon Sep 17 00:00:00 2001 From: Dan J Miller Date: Thu, 25 Mar 2021 18:22:37 -0230 Subject: [PATCH] Additional swaps network support (#10721) * Add swaps support for bnc chain * Use single default token address in shared/constants/swaps --- app/images/bnb.png | Bin 0 -> 2210 bytes shared/constants/swaps.js | 25 +++++++++++++++++++++---- 2 files changed, 21 insertions(+), 4 deletions(-) create mode 100644 app/images/bnb.png diff --git a/app/images/bnb.png b/app/images/bnb.png new file mode 100644 index 0000000000000000000000000000000000000000..64ef1c940b82852eda336c9af5fef1501b1e9a01 GIT binary patch literal 2210 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 literal 0 HcmV?d00001 diff --git a/shared/constants/swaps.js b/shared/constants/swaps.js index 17898d256..afe312683 100644 --- a/shared/constants/swaps.js +++ b/shared/constants/swaps.js @@ -7,21 +7,29 @@ export const QUOTES_NOT_AVAILABLE_ERROR = 'quotes-not-avilable'; export const OFFLINE_FOR_MAINTENANCE = 'offline-for-maintenance'; export const SWAPS_FETCH_ORDER_CONFLICT = 'swaps-fetch-order-conflict'; -// An address that the metaswap-api recognizes as ETH, in place of the token address that ERC-20 tokens have -const ETH_SWAPS_TOKEN_ADDRESS = '0x0000000000000000000000000000000000000000'; +// An address that the metaswap-api recognizes as the default token for the current network, in place of the token address that ERC-20 tokens have +const DEFAULT_TOKEN_ADDRESS = '0x0000000000000000000000000000000000000000'; export const ETH_SWAPS_TOKEN_OBJECT = { symbol: 'ETH', name: 'Ether', - address: ETH_SWAPS_TOKEN_ADDRESS, + address: DEFAULT_TOKEN_ADDRESS, decimals: 18, iconUrl: 'images/black-eth-logo.svg', }; +const BNB_SWAPS_TOKEN_OBJECT = { + symbol: 'BNB', + name: 'Binance Coin', + address: DEFAULT_TOKEN_ADDRESS, + decimals: 18, + iconUrl: 'images/bnb.png', +}; + const TEST_ETH_SWAPS_TOKEN_OBJECT = { symbol: 'TESTETH', name: 'Test Ether', - address: ETH_SWAPS_TOKEN_ADDRESS, + address: DEFAULT_TOKEN_ADDRESS, decimals: 18, iconUrl: 'images/black-eth-logo.svg', }; @@ -33,27 +41,36 @@ const MAINNET_CONTRACT_ADDRESS = '0x881d40237659c251811cec9c364ef91dc08d300c'; const TESTNET_CONTRACT_ADDRESS = '0x881d40237659c251811cec9c364ef91dc08d300c'; +const BSC_CONTRACT_ADDRESS = '0x1a1ec25DC08e98e5E93F1104B5e5cdD298707d31'; + const METASWAP_ETH_API_HOST = 'https://api.metaswap.codefi.network'; +const METASWAP_BNB_API_HOST = 'https://bsc-api.metaswap.codefi.network'; +const BNB_CHAIN_ID = '0x38'; + const SWAPS_TESTNET_CHAIN_ID = '0x539'; const SWAPS_TESTNET_HOST = 'https://metaswap-api.airswap-dev.codefi.network'; export const ALLOWED_SWAPS_CHAIN_IDS = { [MAINNET_CHAIN_ID]: true, [SWAPS_TESTNET_CHAIN_ID]: true, + [BNB_CHAIN_ID]: true, }; export const METASWAP_CHAINID_API_HOST_MAP = { [MAINNET_CHAIN_ID]: METASWAP_ETH_API_HOST, [SWAPS_TESTNET_CHAIN_ID]: SWAPS_TESTNET_HOST, + [BNB_CHAIN_ID]: METASWAP_BNB_API_HOST, }; export const SWAPS_CHAINID_CONTRACT_ADDRESS_MAP = { [MAINNET_CHAIN_ID]: MAINNET_CONTRACT_ADDRESS, [SWAPS_TESTNET_CHAIN_ID]: TESTNET_CONTRACT_ADDRESS, + [BNB_CHAIN_ID]: BSC_CONTRACT_ADDRESS, }; export const SWAPS_CHAINID_DEFAULT_TOKEN_MAP = { [MAINNET_CHAIN_ID]: ETH_SWAPS_TOKEN_OBJECT, [SWAPS_TESTNET_CHAIN_ID]: TEST_ETH_SWAPS_TOKEN_OBJECT, + [BNB_CHAIN_ID]: BNB_SWAPS_TOKEN_OBJECT, };