diff --git a/app/components/UI/AccountApproval/index.test.js b/app/components/UI/AccountApproval/index.test.js
index 8974b51022e..74905c35d60 100644
--- a/app/components/UI/AccountApproval/index.test.js
+++ b/app/components/UI/AccountApproval/index.test.js
@@ -2,6 +2,7 @@ import React from 'react';
import AccountApproval from './';
import { shallow } from 'enzyme';
import configureMockStore from 'redux-mock-store';
+import { ROPSTEN } from '../../../constants/network';
const mockStore = configureMockStore();
@@ -15,7 +16,7 @@ describe('AccountApproval', () => {
},
NetworkController: {
provider: {
- type: 'ropsten'
+ type: ROPSTEN
}
},
AssetsController: {
diff --git a/app/components/UI/DrawerView/index.js b/app/components/UI/DrawerView/index.js
index 70627d20d2b..15831fc8169 100644
--- a/app/components/UI/DrawerView/index.js
+++ b/app/components/UI/DrawerView/index.js
@@ -38,6 +38,7 @@ import { protectWalletModalVisible } from '../../../actions/user';
import DeeplinkManager from '../../../core/DeeplinkManager';
import SettingsNotification from '../SettingsNotification';
import WhatsNewModal from '../WhatsNewModal';
+import { RPC } from '../../../constants/network';
const styles = StyleSheet.create({
wrapper: {
@@ -582,7 +583,7 @@ class DrawerView extends PureComponent {
},
frequentRpcList
} = this.props;
- if (network.provider.type === 'rpc') {
+ if (network.provider.type === RPC) {
const blockExplorer = findBlockExplorerForRpc(rpcTarget, frequentRpcList);
const url = `${blockExplorer}/address/${selectedAddress}`;
const title = new URL(blockExplorer).hostname;
@@ -642,7 +643,7 @@ class DrawerView extends PureComponent {
hasBlockExplorer = providerType => {
const { frequentRpcList } = this.props;
- if (providerType === 'rpc') {
+ if (providerType === RPC) {
const {
network: {
provider: { rpcTarget }
@@ -697,7 +698,7 @@ class DrawerView extends PureComponent {
paymentChannelsEnabled
} = this.props;
let blockExplorer, blockExplorerName;
- if (type === 'rpc') {
+ if (type === RPC) {
blockExplorer = findBlockExplorerForRpc(rpcTarget, frequentRpcList);
blockExplorerName = getBlockExplorerName(blockExplorer);
}
diff --git a/app/components/UI/NetworkList/index.js b/app/components/UI/NetworkList/index.js
index 62c4e86f554..cfb7f8477a8 100644
--- a/app/components/UI/NetworkList/index.js
+++ b/app/components/UI/NetworkList/index.js
@@ -9,7 +9,7 @@ import Networks, { getAllNetworks } from '../../../util/networks';
import { connect } from 'react-redux';
import Analytics from '../../../core/Analytics';
import { ANALYTICS_EVENT_OPTS } from '../../../util/analytics';
-import { MAINNET } from '../../../constants/network';
+import { MAINNET, RPC } from '../../../constants/network';
const styles = StyleSheet.create({
wrapper: {
@@ -200,7 +200,7 @@ export class NetworkList extends PureComponent {
return frequentRpcList.map(({ nickname, rpcUrl }, i) => {
const { color, name } = { name: nickname || rpcUrl, color: null };
const selected =
- provider.rpcTarget === rpcUrl && provider.type === 'rpc' ? (
+ provider.rpcTarget === rpcUrl && provider.type === RPC ? (
) : null;
return this.networkElement(selected, this.onSetRpcTarget, name, color, i, rpcUrl);
diff --git a/app/components/UI/SignatureRequest/index.test.js b/app/components/UI/SignatureRequest/index.test.js
index 8d426007aff..ef0a381d3f3 100644
--- a/app/components/UI/SignatureRequest/index.test.js
+++ b/app/components/UI/SignatureRequest/index.test.js
@@ -2,6 +2,7 @@ import React from 'react';
import { shallow } from 'enzyme';
import SignatureRequest from './';
import configureMockStore from 'redux-mock-store';
+import { ROPSTEN } from '../../../constants/network';
const mockStore = configureMockStore();
@@ -19,7 +20,7 @@ describe('SignatureRequest', () => {
},
NetworkController: {
provider: {
- type: 'ropsten'
+ type: ROPSTEN
}
}
}
diff --git a/app/components/UI/TransactionElement/TransactionDetails/index.js b/app/components/UI/TransactionElement/TransactionDetails/index.js
index 080c039f87e..d2c78474402 100644
--- a/app/components/UI/TransactionElement/TransactionDetails/index.js
+++ b/app/components/UI/TransactionElement/TransactionDetails/index.js
@@ -21,6 +21,7 @@ import AppConstants from '../../../../core/AppConstants';
import StatusText from '../../../Base/StatusText';
import Text from '../../../Base/Text';
import DetailsModal from '../../../Base/DetailsModal';
+import { RPC } from '../../../../constants/network';
const styles = StyleSheet.create({
viewOnEtherscan: {
@@ -107,7 +108,7 @@ class TransactionDetails extends PureComponent {
frequentRpcList
} = this.props;
let blockExplorer;
- if (type === 'rpc') {
+ if (type === RPC) {
blockExplorer = findBlockExplorerForRpc(rpcTarget, frequentRpcList) || NO_RPC_BLOCK_EXPLORER;
}
this.setState({ rpcBlockExplorer: blockExplorer });
@@ -125,7 +126,7 @@ class TransactionDetails extends PureComponent {
} = this.props;
const { rpcBlockExplorer } = this.state;
try {
- if (type === 'rpc') {
+ if (type === RPC) {
const url = `${rpcBlockExplorer}/tx/${transactionHash}`;
const title = new URL(rpcBlockExplorer).hostname;
navigation.push('Webview', {
diff --git a/app/components/UI/TransactionElement/TransactionDetails/index.test.js b/app/components/UI/TransactionElement/TransactionDetails/index.test.js
index 7de7b36a91e..b644919a622 100644
--- a/app/components/UI/TransactionElement/TransactionDetails/index.test.js
+++ b/app/components/UI/TransactionElement/TransactionDetails/index.test.js
@@ -2,6 +2,7 @@ import React from 'react';
import TransactionDetails from './';
import configureMockStore from 'redux-mock-store';
import { shallow } from 'enzyme';
+import { RPC } from '../../../../constants/network';
const mockStore = configureMockStore();
@@ -20,7 +21,7 @@ describe('TransactionDetails', () => {
NetworkController: {
provider: {
rpcTarget: '',
- type: 'rpc'
+ type: RPC
}
}
}
diff --git a/app/components/UI/TransactionHeader/index.test.js b/app/components/UI/TransactionHeader/index.test.js
index 229ec64b814..6447410fcaf 100644
--- a/app/components/UI/TransactionHeader/index.test.js
+++ b/app/components/UI/TransactionHeader/index.test.js
@@ -2,6 +2,7 @@ import React from 'react';
import { shallow } from 'enzyme';
import TransactionHeader from './';
import configureMockStore from 'redux-mock-store';
+import { ROPSTEN } from '../../../constants/network';
const mockStore = configureMockStore();
@@ -12,7 +13,7 @@ describe('TransactionHeader', () => {
backgroundState: {
NetworkController: {
provider: {
- type: 'ropsten'
+ type: ROPSTEN
}
}
}
diff --git a/app/components/UI/UrlAutocomplete/index.test.js b/app/components/UI/UrlAutocomplete/index.test.js
index 448608ef54a..4972e6a7e2b 100644
--- a/app/components/UI/UrlAutocomplete/index.test.js
+++ b/app/components/UI/UrlAutocomplete/index.test.js
@@ -3,6 +3,7 @@ import { shallow } from 'enzyme';
import UrlAutocomplete from './';
import { Provider } from 'react-redux';
import configureMockStore from 'redux-mock-store';
+import { ROPSTEN } from '../../../constants/network';
const mockStore = configureMockStore();
const store = mockStore({});
@@ -11,7 +12,7 @@ describe('UrlAutocomplete', () => {
it('should render correctly', () => {
const wrapper = shallow(
-
+
);
expect(wrapper).toMatchSnapshot();
diff --git a/app/components/Views/Approval/index.test.js b/app/components/Views/Approval/index.test.js
index 6eed1f46d62..4ef3bb31fdb 100644
--- a/app/components/Views/Approval/index.test.js
+++ b/app/components/Views/Approval/index.test.js
@@ -2,6 +2,7 @@ import React from 'react';
import Approval from './';
import configureMockStore from 'redux-mock-store';
import { shallow } from 'enzyme';
+import { ROPSTEN } from '../../../constants/network';
const mockStore = configureMockStore();
@@ -28,7 +29,7 @@ describe('Approval', () => {
},
NetworkController: {
provider: {
- type: 'ropsten'
+ type: ROPSTEN
}
}
}
diff --git a/app/components/Views/Asset/index.js b/app/components/Views/Asset/index.js
index b06984f944c..37158fdf7a3 100644
--- a/app/components/Views/Asset/index.js
+++ b/app/components/Views/Asset/index.js
@@ -9,6 +9,7 @@ import Transactions from '../../UI/Transactions';
import { getNetworkNavbarOptions } from '../../UI/Navbar';
import Engine from '../../../core/Engine';
import { safeToChecksumAddress } from '../../../util/address';
+import { RPC } from '../../../constants/network';
const styles = StyleSheet.create({
wrapper: {
@@ -140,7 +141,7 @@ class Asset extends PureComponent {
return (
(safeToChecksumAddress(from) === selectedAddress || safeToChecksumAddress(to) === selectedAddress) &&
((networkId && networkId.toString() === tx.networkID) ||
- (networkType === 'rpc' && !isKnownNetwork(tx.networkID))) &&
+ (networkType === RPC && !isKnownNetwork(tx.networkID))) &&
tx.status !== 'unapproved'
);
};
@@ -157,7 +158,7 @@ class Asset extends PureComponent {
return (
(from & (from.toLowerCase() === this.navAddress) || (to && to.toLowerCase() === this.navAddress)) &&
((networkId && networkId.toString() === tx.networkID) ||
- (networkType === 'rpc' && !isKnownNetwork(tx.networkID))) &&
+ (networkType === RPC && !isKnownNetwork(tx.networkID))) &&
tx.status !== 'unapproved'
);
};
diff --git a/app/components/Views/BrowserTab/index.js b/app/components/Views/BrowserTab/index.js
index 84fa0961e7d..88f45065795 100644
--- a/app/components/Views/BrowserTab/index.js
+++ b/app/components/Views/BrowserTab/index.js
@@ -59,6 +59,7 @@ import { ethErrors } from 'eth-json-rpc-errors';
import EntryScriptWeb3 from '../../../core/EntryScriptWeb3';
import { getVersion } from 'react-native-device-info';
import ErrorBoundary from '../ErrorBoundary';
+import { RPC } from '../../../constants/network';
const { HOMEPAGE_URL, USER_AGENT, NOTIFICATION_NAMES } = AppConstants;
const HOMEPAGE_HOST = 'home.metamask.io';
@@ -511,7 +512,7 @@ export const BrowserTab = props => {
const data = JSON.parse(req.params[1]);
const chainId = data.domain.chainId;
const activeChainId =
- props.networkType === 'rpc' ? props.network : Networks[props.networkType].networkId;
+ props.networkType === RPC ? props.network : Networks[props.networkType].networkId;
// eslint-disable-next-line
if (chainId && chainId != activeChainId) {
@@ -545,7 +546,7 @@ export const BrowserTab = props => {
const data = JSON.parse(req.params[1]);
const chainId = data.domain.chainId;
const activeChainId =
- props.networkType === 'rpc' ? props.network : Networks[props.networkType].networkId;
+ props.networkType === RPC ? props.network : Networks[props.networkType].networkId;
// eslint-disable-next-line eqeqeq
if (chainId && chainId != activeChainId) {
diff --git a/app/components/Views/Login/index.test.js b/app/components/Views/Login/index.test.js
index d85423737b5..317c64abd47 100644
--- a/app/components/Views/Login/index.test.js
+++ b/app/components/Views/Login/index.test.js
@@ -2,6 +2,7 @@ import React from 'react';
import { shallow } from 'enzyme';
import Login from './';
import configureMockStore from 'redux-mock-store';
+import { ROPSTEN } from '../../../constants/network';
const mockStore = configureMockStore();
@@ -15,7 +16,7 @@ describe('Login', () => {
},
NetworkController: {
provider: {
- type: 'ropsten'
+ type: ROPSTEN
}
},
AssetsController: {
diff --git a/app/components/Views/PaymentChannel/PaymentChannelDeposit/index.test.js b/app/components/Views/PaymentChannel/PaymentChannelDeposit/index.test.js
index ddf23ac0bb1..ca5f0a44c12 100644
--- a/app/components/Views/PaymentChannel/PaymentChannelDeposit/index.test.js
+++ b/app/components/Views/PaymentChannel/PaymentChannelDeposit/index.test.js
@@ -2,6 +2,7 @@ import React from 'react';
import { shallow } from 'enzyme';
import PaymentChannelDeposit from './';
import configureMockStore from 'redux-mock-store';
+import { ROPSTEN } from '../../../../constants/network';
const mockStore = configureMockStore();
@@ -24,7 +25,7 @@ describe('PaymentChannelDeposit', () => {
},
NetworkController: {
provider: {
- type: 'ropsten',
+ type: ROPSTEN,
ticker: 'ETH'
}
}
diff --git a/app/components/Views/PaymentChannel/index.test.js b/app/components/Views/PaymentChannel/index.test.js
index 6dacff25645..26319b96dc2 100644
--- a/app/components/Views/PaymentChannel/index.test.js
+++ b/app/components/Views/PaymentChannel/index.test.js
@@ -2,6 +2,7 @@ import React from 'react';
import { shallow } from 'enzyme';
import PaymentChannel from './';
import configureMockStore from 'redux-mock-store';
+import { ROPSTEN } from '../../../constants/network';
const mockStore = configureMockStore();
@@ -15,7 +16,7 @@ describe('PaymentChannel', () => {
backgroundState: {
NetworkController: {
provider: {
- type: 'ropsten',
+ type: ROPSTEN,
ticker: 'ETH'
}
},
diff --git a/app/components/Views/Settings/NetworksSettings/index.js b/app/components/Views/Settings/NetworksSettings/index.js
index d7b406e21b7..80a5575ca34 100644
--- a/app/components/Views/Settings/NetworksSettings/index.js
+++ b/app/components/Views/Settings/NetworksSettings/index.js
@@ -9,6 +9,7 @@ import { strings } from '../../../../../locales/i18n';
import Networks, { getAllNetworks } from '../../../../util/networks';
import StyledButton from '../../../UI/StyledButton';
import Engine from '../../../../core/Engine';
+import { MAINNET, RPC } from '../../../../constants/network';
const styles = StyleSheet.create({
wrapper: {
@@ -105,7 +106,7 @@ class NetworksSettings extends PureComponent {
switchToMainnet = () => {
const { NetworkController, CurrencyRateController } = Engine.context;
CurrencyRateController.configure({ nativeCurrency: 'ETH' });
- NetworkController.setProviderType('mainnet');
+ NetworkController.setProviderType(MAINNET);
this.props.thirdPartyApiMode &&
setTimeout(() => {
Engine.refreshTransactionHistory();
@@ -115,7 +116,7 @@ class NetworksSettings extends PureComponent {
removeNetwork = () => {
// Check if it's the selected network and then switch to mainnet first
const { provider } = this.props;
- if (provider.rpcTarget === this.networkToRemove && provider.type === 'rpc') {
+ if (provider.rpcTarget === this.networkToRemove && provider.type === RPC) {
this.switchToMainnet();
}
const { PreferencesController } = Engine.context;
@@ -180,8 +181,8 @@ class NetworksSettings extends PureComponent {
this.onPress('mainnet')} // eslint-disable-line
+ key={`network-${MAINNET}`}
+ onPress={() => this.onPress(MAINNET)} // eslint-disable-line
>
diff --git a/app/components/Views/TransactionsView/index.js b/app/components/Views/TransactionsView/index.js
index f458362eefb..dfb2fa5e7aa 100644
--- a/app/components/Views/TransactionsView/index.js
+++ b/app/components/Views/TransactionsView/index.js
@@ -9,6 +9,7 @@ import { colors } from '../../../styles/common';
import Transactions from '../../UI/Transactions';
import Networks, { isKnownNetwork } from '../../../util/networks';
import { safeToChecksumAddress } from '../../../util/address';
+import { RPC } from '../../../constants/network';
const styles = StyleSheet.create({
wrapper: {
@@ -120,7 +121,7 @@ class TransactionsView extends PureComponent {
return (
(safeToChecksumAddress(from) === selectedAddress || safeToChecksumAddress(to) === selectedAddress) &&
((networkId && networkId.toString() === tx.networkID) ||
- (networkType === 'rpc' && !isKnownNetwork(tx.networkID))) &&
+ (networkType === RPC && !isKnownNetwork(tx.networkID))) &&
tx.status !== 'unapproved'
);
};
diff --git a/app/core/NotificationManager.js b/app/core/NotificationManager.js
index e00c811e2d7..993c517e669 100644
--- a/app/core/NotificationManager.js
+++ b/app/core/NotificationManager.js
@@ -11,6 +11,7 @@ import { Alert, AppState } from 'react-native';
import AsyncStorage from '@react-native-community/async-storage';
import AppConstants from './AppConstants';
import { PUSH_NOTIFICATIONS_PROMPT_COUNT, PUSH_NOTIFICATIONS_PROMPT_TIME } from '../constants/storage';
+import { RPC } from '../constants/network';
/**
* Singleton class responsible for managing all the
@@ -382,7 +383,7 @@ class NotificationManager {
toChecksumAddress(tx.transaction.to) === selectedAddress &&
toChecksumAddress(tx.transaction.from) !== selectedAddress &&
((networkId && networkId.toString() === tx.networkID) ||
- (networkType === 'rpc' && !isKnownNetwork(tx.networkID))) &&
+ (networkType === RPC && !isKnownNetwork(tx.networkID))) &&
tx.status === 'confirmed' &&
lastBlock <= parseInt(tx.blockNumber, 10) &&
tx.time > oldestTimeAllowed
diff --git a/app/util/accountSecurity.js b/app/util/accountSecurity.js
index 9b93a6da226..e0f2adaf6ca 100644
--- a/app/util/accountSecurity.js
+++ b/app/util/accountSecurity.js
@@ -3,6 +3,7 @@ import Networks, { isKnownNetwork } from './networks';
import { toChecksumAddress } from 'ethereumjs-util';
import { toBN, hexToBN, renderFromWei, renderFromTokenMinimalUnit } from './number';
import { strings } from '../../locales/i18n';
+import { RPC } from '../constants/network';
export default async function findFirstIncomingTransaction(networkType, selectedAddress, thirPartyApiMode) {
// Pull txs if allowed
@@ -17,7 +18,7 @@ export default async function findFirstIncomingTransaction(networkType, selected
tx.transaction.to &&
toChecksumAddress(tx.transaction.to) === selectedAddress &&
((networkId && networkId.toString() === tx.networkID) ||
- (networkType === 'rpc' && !isKnownNetwork(tx.networkID))) &&
+ (networkType === RPC && !isKnownNetwork(tx.networkID))) &&
tx.status === 'confirmed'
);
if (txs.length > 0) {
diff --git a/app/util/networks.test.js b/app/util/networks.test.js
index 4659bdb22ec..4113d0db905 100644
--- a/app/util/networks.test.js
+++ b/app/util/networks.test.js
@@ -1,5 +1,5 @@
import { isMainNet, getNetworkName, getAllNetworks, getNetworkTypeById } from './networks';
-import { MAINNET, ROPSTEN, GOERLI, RPC } from '../../app/constants/network';
+import { MAINNET, ROPSTEN, GOERLI, RPC, KOVAN } from '../../app/constants/network';
describe('getAllNetworks', () => {
const allNetworks = getAllNetworks();
@@ -48,7 +48,7 @@ describe('getNetworkName', () => {
describe('getNetworkTypeById', () => {
it('should get network type by Id', () => {
const type = getNetworkTypeById(42);
- expect(type).toEqual('kovan');
+ expect(type).toEqual(KOVAN);
});
it('should fail if network Id is missing', () => {
try {