on 9fba8e3 help sign in
bridge/src/lib/network.js
45 lines 972 B history raw
1import { isMainnet } from './flags';
2import {
3 ETHEREUM_GOERLI_CHAIN_ID,
4 ETHEREUM_MAINNET_CHAIN_ID,
5} from './constants';
7const NETWORK_TYPES = {
8 OFFLINE: Symbol('OFFLINE'),
9 LOCAL: Symbol('LOCAL'),
10 GOERLI: Symbol('GOERLI'),
11 MAINNET: Symbol('MAINNET'),
12};
14const renderNetworkType = network =>
15 network === NETWORK_TYPES.OFFLINE
16 ? 'Offline'
17 : network === NETWORK_TYPES.GOERLI
18 ? 'Goerli'
19 : network === NETWORK_TYPES.MAINNET
20 ? 'Main Network'
21 : network === NETWORK_TYPES.LOCAL
22 ? 'Local Node'
23 : 'Offline';
25const chainIdToNetworkType = chainId => {
26 switch (chainId) {
27 case '0x1':
28 return NETWORK_TYPES.MAINNET;
29 case '0x5':
30 return NETWORK_TYPES.GOERLI;
31 default:
32 return NETWORK_TYPES.LOCAL;
33 }
34};
36const expectedChainId = () => {
37 return isMainnet ? ETHEREUM_MAINNET_CHAIN_ID : ETHEREUM_GOERLI_CHAIN_ID;
38};
40export {
41 NETWORK_TYPES,
42 expectedChainId,
43 renderNetworkType,
44 chainIdToNetworkType,
45};