Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: bump network controller 21.0.0 #11292

Closed
wants to merge 163 commits into from
Closed
Show file tree
Hide file tree
Changes from 149 commits
Commits
Show all changes
163 commits
Select commit Hold shift + click to select a range
af4efa6
fix: fix types conflicts
salimtb Aug 14, 2024
d3c18d5
fix: temp commit
salimtb Aug 16, 2024
42e0a4f
fix: remove providerConfig from unit tests
salimtb Aug 20, 2024
4e64481
fix: fix units tests
salimtb Sep 4, 2024
7bdf2f2
fix: fix unit test
salimtb Sep 4, 2024
ab2de38
fix: fix useBlockExplorer test
salimtb Sep 5, 2024
3fb114a
fix: unit tests
salimtb Sep 5, 2024
d997bc2
fix: fix unit test
salimtb Sep 6, 2024
9142b08
fix: adopt migration 29 to new state
salimtb Sep 6, 2024
206a9e6
fix: fix unit test
salimtb Sep 6, 2024
d94ba56
fix: add migration 51
salimtb Sep 6, 2024
5926c09
fix: fix units tests
salimtb Sep 6, 2024
689b48c
fix: patch smart transaction controller
salimtb Sep 6, 2024
6e2509a
fix: fix yarn lock
salimtb Sep 6, 2024
f1ebeca
fix: fix providerConfig migration
salimtb Sep 6, 2024
dab850a
fix: fix linter
salimtb Sep 6, 2024
6d9413d
fix: fix tsc linter
salimtb Sep 6, 2024
bba52b2
fix: fix migrations
salimtb Sep 8, 2024
06b22bc
fix: fix units tests
salimtb Sep 8, 2024
7f3ffa2
Merge branch 'main' into salim/bump-network-controller-20.0.0
salimtb Sep 10, 2024
78ee96c
fix: fix e2e tests
salimtb Sep 10, 2024
78f316e
fix: fix e2e tests
salimtb Sep 10, 2024
b917fca
fix: fix confirmation e2e tests
salimtb Sep 10, 2024
2eaeaa5
fix: fix e2e tests
salimtb Sep 11, 2024
ec93b6f
fix: fix e2e tests
salimtb Sep 11, 2024
e9703e7
fix: fix e2e swap test
salimtb Sep 11, 2024
b5e2381
fix: fix testnet ticker
salimtb Sep 11, 2024
1f4a4cb
fix: fix swap e2e test
salimtb Sep 11, 2024
840f657
fix: fix linter
salimtb Sep 11, 2024
fcf7b93
Merge branch 'main' into salim/bump-network-controller-20.0.0
salimtb Sep 11, 2024
18ed774
fix: fix unit test
salimtb Sep 11, 2024
126ab07
fix: update fixture builder
salimtb Sep 11, 2024
2c9acfb
fix: refacto unit test
salimtb Sep 11, 2024
f76c05d
fix: refactor mocked engine
cryptodev-2s Sep 12, 2024
7cc8072
fix: unit tests
cryptodev-2s Sep 12, 2024
dae7002
fix: add migration 53
salimtb Sep 12, 2024
8f841b5
Merge branch 'main' into salim/bump-network-controller-20.0.0
salimtb Sep 12, 2024
5e3d0c0
fix: fix tsc linter
salimtb Sep 12, 2024
0b766a2
fix: fix tsc linter
salimtb Sep 12, 2024
e41f39f
fix: rollback migration files changes
cryptodev-2s Sep 12, 2024
fdfdff6
fix: remove unwanted changes
cryptodev-2s Sep 12, 2024
b820d9a
fix: refacto unit tests
cryptodev-2s Sep 12, 2024
74e0599
fix: fix migration 29 test
salimtb Sep 13, 2024
89d9d34
fix: fix linter
salimtb Sep 13, 2024
3551d90
Merge branch 'main' into salim/bump-network-controller-20.0.0
salimtb Sep 13, 2024
b4ee911
fix: fix test migration 29
salimtb Sep 13, 2024
7d045f0
fix: fix flaky test
salimtb Sep 13, 2024
1dcabda
Merge branch 'main' into salim/bump-network-controller-20.0.0
salimtb Sep 16, 2024
0bae61e
fix: fix conflicts
salimtb Sep 16, 2024
4767a0d
fix: fix lint
salimtb Sep 16, 2024
c9ec0d0
fix: fix tsc lint
salimtb Sep 16, 2024
e2bef8c
fix: fix PR comments
salimtb Sep 17, 2024
abd0039
fix: fix patch ppom PR comment
salimtb Sep 17, 2024
c4de05f
fix:L fix tsc linter
salimtb Sep 17, 2024
f0145e9
fix: fix PR comment
salimtb Sep 17, 2024
2463557
Merge branch 'main' into salim/bump-network-controller-20.0.0
salimtb Sep 17, 2024
639ff37
fix: fix conflicts linter
salimtb Sep 17, 2024
57e0642
feat: bump network controller
salimtb Sep 17, 2024
5ccf2a3
fix: add network using dapp
salimtb Sep 17, 2024
c0b05dc
fix: test
salimtb Sep 17, 2024
23d83ee
fix: custom network
salimtb Sep 17, 2024
0a36868
fix: fix edit network form
salimtb Sep 17, 2024
7b61b3d
fix: custom netork select rpc
salimtb Sep 17, 2024
8bbadba
fix: fix network form
salimtb Sep 18, 2024
0572f9a
fix: fix custom form
salimtb Sep 18, 2024
34a14a2
fix: fix custom network form
salimtb Sep 18, 2024
e78f4a1
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Sep 18, 2024
3c92831
fix: clean up
salimtb Sep 18, 2024
aa1b672
fix: fix fixture builder
salimtb Sep 18, 2024
a4813ab
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Sep 19, 2024
e090157
fix: fix e2e test
salimtb Sep 19, 2024
661f338
fix: fix e2e tests
salimtb Sep 19, 2024
219b864
fix: fix linter
salimtb Sep 19, 2024
6cd67d5
fix: fix linter
salimtb Sep 19, 2024
f349747
fix: fix transaction controller
salimtb Sep 19, 2024
2e5e491
fix: fix linter
salimtb Sep 20, 2024
f145516
fix: fix linter
salimtb Sep 20, 2024
551e781
fix: fix linter
salimtb Sep 20, 2024
5998b2a
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Sep 20, 2024
1c193f5
fix: fix yarn lock
salimtb Sep 20, 2024
af33bc4
fix: fix linter
salimtb Sep 20, 2024
51d1786
fix: fix display on dapp switch context
salimtb Sep 20, 2024
82bdb05
fix: update mock network function
salimtb Sep 20, 2024
827bca6
fix: fix form
salimtb Sep 21, 2024
ac956e5
fix: fix network form
salimtb Sep 22, 2024
d82a4c3
fix: fix unit tests
salimtb Sep 22, 2024
15b0dc5
fix: fix unit tests
salimtb Sep 22, 2024
084a15f
fix: fix units tests
salimtb Sep 22, 2024
97a3825
fix: fix units tests
salimtb Sep 22, 2024
b996161
fix: fix units tests
salimtb Sep 22, 2024
ee48931
fix: fix unit tests
salimtb Sep 23, 2024
e29df42
fix: fix unit tests
salimtb Sep 23, 2024
1c67a5c
fix: fix unit tests
salimtb Sep 23, 2024
6212dc4
fix: fix unit tests
salimtb Sep 23, 2024
358aedb
fix: fix unit tests
salimtb Sep 23, 2024
50aa617
fix: fix unit tests
salimtb Sep 23, 2024
e81e410
fix: fix unit tests
salimtb Sep 23, 2024
a9519dd
fix: fix unit tests
salimtb Sep 23, 2024
471d919
fix: fix unit test
salimtb Sep 23, 2024
e678780
fix: refacto custom form
salimtb Sep 23, 2024
f206634
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Sep 23, 2024
b2d50cf
fix: fix yarn lock
salimtb Sep 23, 2024
eb3d9fe
fix: fix tests after rebase
salimtb Sep 23, 2024
abf98a2
fix: fix linter
salimtb Sep 23, 2024
e6c18dd
fix: clean up
salimtb Sep 23, 2024
72701c0
fix: clean up
salimtb Sep 23, 2024
b1fd31e
fix: clean up
salimtb Sep 24, 2024
b07c4ed
fix: refacto custom form
salimtb Sep 24, 2024
5728ac0
fix: clean up
salimtb Sep 24, 2024
6da52e2
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Sep 24, 2024
cc53ef2
fix:refacto
salimtb Sep 24, 2024
97f69dd
fix: fix yarn lock
salimtb Sep 24, 2024
83c5a06
fix: clean up
salimtb Sep 24, 2024
ec46978
fix: fix yarn lock
salimtb Sep 24, 2024
951179f
fix: fix linter
salimtb Sep 24, 2024
67aafaa
fix: fix yyarn lock
salimtb Sep 24, 2024
520ae80
fix: refacto selector
salimtb Sep 24, 2024
936aca8
fix: fix sonar cloud error
salimtb Sep 24, 2024
ca94543
fix: fix form display
salimtb Sep 24, 2024
aabe2e7
fix: clean up
salimtb Sep 24, 2024
6971233
fix: clean up
salimtb Sep 24, 2024
f8dda5a
fix: clean up
salimtb Sep 24, 2024
7c30f69
fix: fix linter
salimtb Sep 24, 2024
d6e61cb
fix: ui adjustment
salimtb Sep 25, 2024
10f49ce
fix: remove with avatar option
salimtb Sep 25, 2024
993a62d
fix: remove showButtonIcon UI changes
salimtb Sep 25, 2024
ce7cd21
fix: clean AccountApproval test
salimtb Sep 25, 2024
94aeeb7
fix: clean up tests
salimtb Sep 25, 2024
94dcfa6
fix: refacto
salimtb Sep 25, 2024
febe841
fix: refactor
salimtb Sep 25, 2024
a73675d
fix: refactor
salimtb Sep 25, 2024
d8ed3d2
fix: fix types
salimtb Sep 25, 2024
9e96441
fix: refacto
salimtb Sep 25, 2024
b7fe980
fix: refacto
salimtb Sep 25, 2024
ee16e16
fix: refactor
salimtb Sep 25, 2024
cc1af4c
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Sep 25, 2024
e186c47
fix: minor refactoring
cryptodev-2s Sep 25, 2024
b423fa5
fix: fix regression tests
salimtb Sep 26, 2024
469ab36
Merge branch 'main' into salim/bump-network-controller-21.0.0
legobeat Sep 30, 2024
b9e867c
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Sep 30, 2024
ead3615
fix: bump transaction controller to 37.1.0
cryptodev-2s Oct 1, 2024
38ae18a
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Oct 1, 2024
7a52098
fix: fix qualities issues
salimtb Oct 2, 2024
fa4b40e
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Oct 2, 2024
c331c48
fix: fix quality + merge main
salimtb Oct 2, 2024
5de757f
fix: delete non relevant unit test
salimtb Oct 2, 2024
3a054f2
fix: fix quality issue
salimtb Oct 2, 2024
2bbbe0c
Merge remote-tracking branch 'origin/main' into salim/bump-network-co…
cryptodev-2s Oct 3, 2024
cac4b4e
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Oct 4, 2024
0e7ac8b
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Oct 7, 2024
e608d27
fix: fix PR comments
salimtb Oct 8, 2024
e8b253f
fix: fix PR comments
salimtb Oct 8, 2024
beebe75
fix: fix PR comments
salimtb Oct 9, 2024
dcec324
fix: fix PRs comments
salimtb Oct 9, 2024
9e58fc4
fix: fix PR comments
salimtb Oct 9, 2024
0f99f4e
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Oct 9, 2024
fabc0d1
fix: fix after merge main conflicts
salimtb Oct 9, 2024
4d699f1
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Oct 9, 2024
dbf808b
fix: fix after merge main
salimtb Oct 9, 2024
1601553
fix: move UI changes
salimtb Oct 10, 2024
6d6caa8
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Oct 10, 2024
0a56a68
fix: fix snapshot
salimtb Oct 10, 2024
0a76ef0
Merge branch 'main' into salim/bump-network-controller-21.0.0
salimtb Oct 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 9 additions & 14 deletions app/components/UI/AccountInfoCard/index.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ import {
MOCK_ADDRESS_1,
} from '../../../util/test/accountsControllerTestUtils';
import { RootState } from '../../../reducers';
import { RpcEndpointType } from '@metamask/network-controller';
import { mockNetworkState } from '../../../util/test/network';

jest.mock('../../../core/Engine', () => ({
resetState: jest.fn(),
Expand Down Expand Up @@ -48,20 +50,13 @@ const mockInitialState: DeepPartial<RootState> = {
},
},
NetworkController: {
selectedNetworkClientId: 'sepolia',
networksMetadata: {},
networkConfigurations: {
sepolia: {
id: 'sepolia',
rpcUrl: 'http://localhost/v3/',
chainId: '0xaa36a7',
ticker: 'ETH',
nickname: 'sepolia',
rpcPrefs: {
blockExplorerUrl: 'https://etherscan.com',
},
},
},
...mockNetworkState({
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could reduce the size of this PR by implementing this mockNetworkState helper in a separate PR, before the rest of the changes.

chainId: '0xaa36a7',
id: 'mainnet',
nickname: 'Sepolia',
ticker: 'SepoliaETH',
type: RpcEndpointType.Infura,
}),
},
TokenBalancesController: {
contractBalances: {},
Expand Down
14 changes: 11 additions & 3 deletions app/components/UI/NetworkInfo/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,12 @@ import { useTheme } from '../../../util/theme';
import { fontStyles } from '../../../styles/common';
import { isTokenDetectionSupportedForNetwork } from '@metamask/assets-controllers';
import { NETWORK_EDUCATION_MODAL_CLOSE_BUTTON } from '../../../../wdio/screen-objects/testIDs/Screens/NetworksScreen.testids.js';
import { selectProviderConfig } from '../../../selectors/networkController';
import {
selectChainId,
selectProviderType,
selectRpcUrl,
selectTicker,
} from '../../../selectors/networkController';
import {
selectNetworkName,
selectNetworkImageSource,
Expand Down Expand Up @@ -112,8 +117,11 @@ interface NetworkInfoProps {

const NetworkInfo = (props: NetworkInfoProps) => {
const { onClose, ticker, isTokenDetectionEnabled } = props;
const providerConfig = useSelector(selectProviderConfig);
const { type, ticker: networkTicker, rpcUrl, chainId } = providerConfig;
const type = useSelector(selectProviderType);
salimtb marked this conversation as resolved.
Show resolved Hide resolved
const networkTicker = useSelector(selectTicker);
const chainId = useSelector(selectChainId);
const rpcUrl = useSelector(selectRpcUrl);

const { colors } = useTheme();
const styles = createStyles(colors);
const isTokenDetectionSupported =
Expand Down
200 changes: 161 additions & 39 deletions app/components/UI/NetworkModal/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import NetworkDetails from './NetworkDetails';
import NetworkAdded from './NetworkAdded';
import Engine from '../../../core/Engine';
import {
isprivateConnection,
isPrivateConnection,
cryptodev-2s marked this conversation as resolved.
Show resolved Hide resolved
toggleUseSafeChainsListValidation,
} from '../../../util/networks';
import getDecimalChainId from '../../../util/networks/getDecimalChainId';
Expand Down Expand Up @@ -36,6 +36,13 @@ import { useMetrics } from '../../../components/hooks/useMetrics';
import { toHex } from '@metamask/controller-utils';
import { rpcIdentifierUtility } from '../../../components/hooks/useSafeChains';
import Logger from '../../../util/Logger';
import { selectNetworkConfigurations } from '../../../selectors/networkController';
import {
NetworkConfiguration,
RpcEndpointType,
AddNetworkFields,
} from '@metamask/network-controller';
import Routes from '../../../constants/navigation/Routes';

export interface SafeChain {
chainId: string;
Expand Down Expand Up @@ -156,6 +163,10 @@ const NetworkModals = (props: NetworkProps) => {
selectUseSafeChainsListValidation,
);

const networkConfigurationByChainId = useSelector(
selectNetworkConfigurations,
);

const customNetworkInformation = {
chainId,
blockExplorerUrl,
Expand All @@ -166,6 +177,18 @@ const NetworkModals = (props: NetworkProps) => {
alerts,
};

/**
* Go to wallet page
*/
const goToWalletPage = () => {
navigation.navigate(Routes.WALLET.HOME, {
screen: Routes.WALLET.TAB_STACK_FLOW,
params: {
screen: Routes.WALLET_VIEW,
},
});
};

const checkNetwork = useCallback(async () => {
if (useSafeChainsListValidation) {
const alertsNetwork = await checkSafeNetwork(
Expand All @@ -183,56 +206,155 @@ const NetworkModals = (props: NetworkProps) => {
checkNetwork();
}, [checkNetwork]);

const closeModal = () => {
const closeModal = async () => {
const { NetworkController } = Engine.context;
const url = new URLPARSE(rpcUrl);
!isprivateConnection(url.hostname) && url.set('protocol', 'https:');
NetworkController.upsertNetworkConfiguration(
{
rpcUrl: url.href,
!isPrivateConnection(url.hostname) && url.set('protocol', 'https:');

const existingNetwork = networkConfigurationByChainId[chainId];

if (existingNetwork) {
const updatedNetwork = await NetworkController.updateNetwork(
existingNetwork.chainId,
existingNetwork,
existingNetwork.chainId === chainId
? {
replacementSelectedRpcEndpointIndex:
existingNetwork.defaultRpcEndpointIndex,
}
: undefined,
);

const { networkClientId } =
updatedNetwork?.rpcEndpoints?.[
updatedNetwork.defaultRpcEndpointIndex
] ?? {};

await NetworkController.setActiveNetwork(networkClientId);
} else {
const addedNetwork = await NetworkController.addNetwork({
chainId,
ticker,
nickname,
rpcPrefs: { blockExplorerUrl },
},
{
// Metrics-related properties required, but the metric event is a no-op
// TODO: Use events for controller metric events
referrer: 'ignored',
source: 'ignored',
},
);
blockExplorerUrls: [blockExplorerUrl],
defaultRpcEndpointIndex: 0,
defaultBlockExplorerUrlIndex: 0,
name: nickname,
nativeCurrency: ticker,
rpcEndpoints: [
{
url: rpcUrl,
name: nickname,
type: RpcEndpointType.Custom,
},
],
});

const { networkClientId } =
addedNetwork?.rpcEndpoints?.[addedNetwork.defaultRpcEndpointIndex] ??
{};

await NetworkController.setActiveNetwork(networkClientId);
}
onClose();
goToWalletPage();
salimtb marked this conversation as resolved.
Show resolved Hide resolved
};

const handleExistingNetwork = async (
existingNetwork: NetworkConfiguration,
networkId: string,
) => {
const { NetworkController } = Engine.context;
const updatedNetwork = await NetworkController.updateNetwork(
existingNetwork.chainId,
existingNetwork,
existingNetwork.chainId === networkId
? {
replacementSelectedRpcEndpointIndex:
existingNetwork.defaultRpcEndpointIndex,
}
: undefined,
);

const { networkClientId } =
updatedNetwork?.rpcEndpoints?.[updatedNetwork.defaultRpcEndpointIndex] ??
{};

await NetworkController.setActiveNetwork(networkClientId);
};

const switchNetwork = () => {
const handleNewNetwork = async (
networkId: `0x${string}`,
networkRpcUrl: string,
name: string,
nativeCurrency: string,
networkBlockExplorerUrl: string,
) => {
const { NetworkController } = Engine.context;
const networkConfig = {
chainId: networkId,
blockExplorerUrls: networkBlockExplorerUrl
? [networkBlockExplorerUrl]
: [],
defaultRpcEndpointIndex: 0,
defaultBlockExplorerUrlIndex: blockExplorerUrl ? 0 : undefined,
name,
nativeCurrency,
rpcEndpoints: [
{
url: networkRpcUrl,
name,
type: RpcEndpointType.Custom,
},
],
} as AddNetworkFields;

return NetworkController.addNetwork(networkConfig);
};

const handleNavigation = (
onSwitchNetwork: () => void,
networkSwitchPopToWallet: boolean,
) => {
if (onSwitchNetwork) {
onSwitchNetwork();
} else {
networkSwitchPopToWallet
? navigation.navigate('WalletView')
: navigation.goBack();
}
};

const switchNetwork = async () => {
const { NetworkController, CurrencyRateController } = Engine.context;
const url = new URLPARSE(rpcUrl);
const existingNetwork = networkConfigurationByChainId[chainId];

CurrencyRateController.updateExchangeRate(ticker);
!isprivateConnection(url.hostname) && url.set('protocol', 'https:');
NetworkController.upsertNetworkConfiguration(
{
rpcUrl: url.href,

if (!isPrivateConnection(url.hostname)) {
url.set('protocol', 'https:');
}

if (existingNetwork) {
await handleExistingNetwork(existingNetwork, chainId);
} else {
const addedNetwork = await handleNewNetwork(
chainId,
ticker,
rpcUrl,
nickname,
rpcPrefs: { blockExplorerUrl },
},
{
setActive: true,
// Metrics-related properties required, but the metric event is a no-op
// TODO: Use events for controller metric events
referrer: 'ignored',
source: 'ignored',
},
);
closeModal();
ticker,
blockExplorerUrl,
);
const { networkClientId } =
addedNetwork?.rpcEndpoints?.[addedNetwork.defaultRpcEndpointIndex] ??
{};

NetworkController.setActiveNetwork(networkClientId);
}
onClose();
goToWalletPage();

if (onNetworkSwitch) {
onNetworkSwitch();
} else {
shouldNetworkSwitchPopToWallet
? navigation.navigate('WalletView')
: navigation.goBack();
handleNavigation(onNetworkSwitch, shouldNetworkSwitchPopToWallet);
}
dispatch(networkSwitched({ networkUrl: url.href, networkStatus: true }));
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ function render(Component: React.ComponentType, chainId?: `0x${string}`) {
chainId: '0x89',
id: 'networkId1',
nickname: 'Polygon Mainnet',
ticker: 'MATIC',
ticker: 'POL',
salimtb marked this conversation as resolved.
Show resolved Hide resolved
},
),
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -154,16 +154,22 @@ function NetworkSwitcher() {
const switchNetwork = useCallback(
(networkConfiguration) => {
const { CurrencyRateController, NetworkController } = Engine.context;
const entry = Object.entries(networkConfigurations).find(
([_a, { chainId }]) => chainId === networkConfiguration.chainId,
const config = Object.values(networkConfigurations).find(
({ chainId }) => chainId === networkConfiguration.chainId,
);

if (entry) {
const [networkConfigurationId] = entry;
const { ticker } = networkConfiguration;
if (config) {
const {
nativeCurrency: ticker,
rpcEndpoints,
defaultRpcEndpointIndex,
} = config;

const { networkClientId } =
rpcEndpoints?.[defaultRpcEndpointIndex] ?? {};

CurrencyRateController.updateExchangeRate(ticker);
NetworkController.setActiveNetwork(networkConfigurationId);
NetworkController.setActiveNetwork(networkClientId);
navigateToGetStarted();
}
},
Expand Down
Loading
Loading