diff --git a/src/config-local.tsx b/src/config-local.tsx index f175578..f7b7951 100644 --- a/src/config-local.tsx +++ b/src/config-local.tsx @@ -1,9 +1,9 @@ import { Channel } from './types/types'; -import localAddresses from './contracts-local.json' +import contractAddresses from './contracts-local.json' export default { // Contract Addresses - CONTRACT_ADDRESS: localAddresses, + CONTRACT_ADDRESS: contractAddresses, // Fetch chain data interval REFRESH_INTERVAL_MILLISECONDS: 10000, diff --git a/src/config-rococo.tsx b/src/config-rococo.tsx new file mode 100644 index 0000000..c3c068f --- /dev/null +++ b/src/config-rococo.tsx @@ -0,0 +1,52 @@ +import { Channel } from './types/types'; +import contractAddresses from './contracts-rococo.json' + +export default { + // Contract Addresses + CONTRACT_ADDRESS: contractAddresses, + + // Fetch chain data interval + REFRESH_INTERVAL_MILLISECONDS: 10000, + + // Health check data refresh interval + HEALTH_CHECK_POLL_INTERVAL_MILLISECONDS: 120_000, + // Health check will check at most n blocks from ethereum for time information + HEALTH_CHECK_ETHEREUM_POLL_MAX_BLOCKS: 1000, + // Health check will check at most n blocks from polkadot for time information + HEALTH_CHECK_POLKADOT_POLL_MAX_BLOCKS: 10000, + // Allow health check to skip blocks for performance + HEALTH_CHECK_POLKADOT_POLL_SKIP_BLOCKS: 1000, + + // Disables the option to transfer nfts. + DISABLE_NFT_ASSETS: true, + + // Polkadotjs API Provider + POLKADOT_API_PROVIDER: 'wss://rococo-rpc.snowbridge.network', + POLKADOT_RELAY_API_PROVIDER: 'wss://rococo-rpc.polkadot.io', + + // Minimum Number of confirmations required for an ETH transaction + // to be regarded as a success + REQUIRED_ETH_CONFIRMATIONS: 16, + + // URL to the block explorer the UI will redirect to + BLOCK_EXPLORER_URL: 'https://ropsten.etherscan.io', + SNOWBRIDGE_EXPLORER_URL: 'https://polkadot.js.org/apps/?rpc=wss://rococo-rpc.snowbridge.network#/explorer', + + PERMITTED_ETH_NETWORK: 'ropsten', + PERMITTED_ETH_NETWORK_ID: '0x3', + + BASIC_CHANNEL_ID: 0, + INCENTIVIZED_CHANNEL_ID: 1, + ACTIVE_CHANNEL: Channel.INCENTIVIZED, + + //Asset id for wrapped Ether + PARACHAIN_ETHER_ASSET_ID: 0, + //Key required for connection with walletconnect + INFURA_KEY: process.env.REACT_APP_INFURA_KEY, + PARACHAIN_LIST : [ + { "parachainName":'Snowbridge', "parachainId": 0, 'isDisabled':false, 'transactionFee': 0 }, + { "parachainName":'Acala (coming soon...)', "parachainId": 0,'isDisabled':true, 'transactionFee': 0 }, + { "parachainName":'Moonbeam (coming soon...)', "parachainId": 0,'isDisabled':true, 'transactionFee': 0 }, + { "parachainName":'Bifrost (coming soon...)', "parachainId": 0,'isDisabled':true, 'transactionFee': 0 }, + ] +}; diff --git a/src/config-staging.tsx b/src/config-staging.tsx index 452dbf4..b9040d7 100644 --- a/src/config-staging.tsx +++ b/src/config-staging.tsx @@ -1,9 +1,9 @@ import { Channel } from './types/types'; -import stagingAddresses from './contracts-staging.json' +import contractAddresses from './contracts-staging.json' export default { // Contract Addresses - CONTRACT_ADDRESS: stagingAddresses, + CONTRACT_ADDRESS: contractAddresses, // Fetch chain data interval REFRESH_INTERVAL_MILLISECONDS: 10000, diff --git a/src/config.tsx b/src/config.tsx index 994c258..fb78f59 100644 --- a/src/config.tsx +++ b/src/config.tsx @@ -1,11 +1,15 @@ import localConfig from './config-local'; import stagingConfig from './config-staging'; +import rococoConfig from './config-rococo'; let config = stagingConfig; if (process.env.REACT_APP_NODE_CONFIG_ENV === 'local') { config = localConfig; } +if (process.env.REACT_APP_NODE_CONFIG_ENV === 'rococo') { + config = rococoConfig; +} export const { CONTRACT_ADDRESS, diff --git a/src/contracts-rococo.json b/src/contracts-rococo.json new file mode 100644 index 0000000..8cd0628 --- /dev/null +++ b/src/contracts-rococo.json @@ -0,0 +1,24 @@ +{ + "ScaleCodec": "0xe719a6258e007A6f3C3415FD4B29b2345488Cf70", + "MerkleProof": "0xe0E5366dc3Fe8dde3F6071Db0185E0490A73D7e5", + "Bitfield": "0x25326cD54020446224eF0726Ac8875da051CB464", + "ParachainLightClient": "0x8C1c94d8C2e932e28BcCe009FBbE94BDfDb25EC0", + "ValidatorRegistry": "0xa47544369C2517B3B040ee5d01eCA88cFDa6fd89", + "SimplifiedMMRVerification": "0xc548E88eA6EFBDE521e8f8f880a856fc0899Ab40", + "BeefyLightClient": "0xd7d72f6D5d875b6433645668925D3861e47281CD", + "BasicInboundChannel": "0xea29FEC741552f56120985500895Dd5CAB111cA1", + "IncentivizedInboundChannel": "0x8Fa78eF6965d5b937982b7AEbc3D064061fcb935", + "BasicOutboundChannel": "0x416796A3CF2493ca40b3414a97c9853C7c6fF84E", + "IncentivizedOutboundChannel": "0xeF23C0278b8Ce463E80bb1613ee950F510e88a8C", + "ETHApp": "0xc96100053B6dE2BA9C3261c9E0F2b65A48bB5bCc", + "DOTApp": "0x052D74219685A1B2A277E808406cad40DF210f3D", + "ERC20App": "0x8fC127d5aF36DB9A06E3483b9897168c0E748AbD", + "TestToken": "0x93364ed61dc3c840389dB9105eA5bd79055B9Ef9", + "ERC721App": "0x001281b0F0E15E58cB917C9bd78014a9F208eD4f", + "TestToken721": "0x39B1c81bA2D736dfdE5D9dd97944382F3e83CB8F", + "TestToken721Enumerable": "0x9233DD6b98fbE0D0D506bd1ebd0B9D9bf2659751", + "MaliciousDOTApp": "0x5149DEd3d2e0220d3bec4e329403323a8e10f511", + "SnowDOTAddress": "0xabeaf9306a24da4c05b5001ba0ae70367c2a0f01", + "name": "ropsten", + "chainId": "3" +}