mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-23 09:52:26 +01:00
UX: Multichain: Improve networks selector (#19083)
* UX: Multichain: Improve networks selector * Update ui/selectors/selectors.js Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com> * Update ui/selectors/selectors.js Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com> * Update ui/selectors/selectors.js Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com> * Improvements --------- Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com>
This commit is contained in:
parent
f95320d03e
commit
e5fdb72acc
@ -1170,61 +1170,56 @@ export function getAllEnabledNetworks(state) {
|
|||||||
|
|
||||||
export function getAllNetworks(state) {
|
export function getAllNetworks(state) {
|
||||||
const networkConfigurations = getNetworkConfigurations(state) || {};
|
const networkConfigurations = getNetworkConfigurations(state) || {};
|
||||||
const localhostFilter = (network) => network.chainId === CHAIN_IDS.LOCALHOST;
|
|
||||||
|
|
||||||
const networks = [];
|
const networks = [
|
||||||
// Mainnet always first
|
// Mainnet always first
|
||||||
networks.push({
|
{
|
||||||
chainId: CHAIN_IDS.MAINNET,
|
chainId: CHAIN_IDS.MAINNET,
|
||||||
nickname: MAINNET_DISPLAY_NAME,
|
nickname: MAINNET_DISPLAY_NAME,
|
||||||
rpcUrl: CHAIN_ID_TO_RPC_URL_MAP[CHAIN_IDS.MAINNET],
|
rpcUrl: CHAIN_ID_TO_RPC_URL_MAP[CHAIN_IDS.MAINNET],
|
||||||
rpcPrefs: {
|
rpcPrefs: {
|
||||||
imageUrl: ETH_TOKEN_IMAGE_URL,
|
imageUrl: ETH_TOKEN_IMAGE_URL,
|
||||||
|
},
|
||||||
|
providerType: NETWORK_TYPES.MAINNET,
|
||||||
|
ticker: CURRENCY_SYMBOLS.ETH,
|
||||||
},
|
},
|
||||||
providerType: NETWORK_TYPES.MAINNET,
|
// Custom networks added by the user
|
||||||
ticker: CURRENCY_SYMBOLS.ETH,
|
...Object.values(networkConfigurations).filter(
|
||||||
});
|
({ chainId }) =>
|
||||||
// Custom networks added
|
![
|
||||||
networks.push(
|
CHAIN_IDS.LOCALHOST,
|
||||||
...Object.entries(networkConfigurations)
|
CHAIN_IDS.MAINNET,
|
||||||
.filter(
|
|
||||||
([, network]) =>
|
|
||||||
!localhostFilter(network) &&
|
|
||||||
network.chainId !== CHAIN_IDS.MAINNET &&
|
|
||||||
// Linea gets added as a custom network configuration so
|
// Linea gets added as a custom network configuration so
|
||||||
// we must ignore it here to display in test networks
|
// we must ignore it here to display in test networks
|
||||||
network.chainId !== CHAIN_IDS.LINEA_TESTNET,
|
CHAIN_IDS.LINEA_TESTNET,
|
||||||
)
|
].includes(chainId),
|
||||||
.map(([, network]) => network),
|
),
|
||||||
);
|
// Test networks
|
||||||
// Test networks
|
{
|
||||||
networks.push(
|
chainId: CHAIN_IDS.GOERLI,
|
||||||
...[
|
nickname: GOERLI_DISPLAY_NAME,
|
||||||
{
|
rpcUrl: CHAIN_ID_TO_RPC_URL_MAP[CHAIN_IDS.GOERLI],
|
||||||
chainId: CHAIN_IDS.GOERLI,
|
providerType: NETWORK_TYPES.GOERLI,
|
||||||
nickname: GOERLI_DISPLAY_NAME,
|
ticker: TEST_NETWORK_TICKER_MAP[NETWORK_TYPES.GOERLI],
|
||||||
rpcUrl: CHAIN_ID_TO_RPC_URL_MAP[CHAIN_IDS.GOERLI],
|
},
|
||||||
providerType: NETWORK_TYPES.GOERLI,
|
{
|
||||||
ticker: TEST_NETWORK_TICKER_MAP[NETWORK_TYPES.GOERLI],
|
chainId: CHAIN_IDS.SEPOLIA,
|
||||||
},
|
nickname: SEPOLIA_DISPLAY_NAME,
|
||||||
{
|
rpcUrl: CHAIN_ID_TO_RPC_URL_MAP[CHAIN_IDS.SEPOLIA],
|
||||||
chainId: CHAIN_IDS.SEPOLIA,
|
providerType: NETWORK_TYPES.SEPOLIA,
|
||||||
nickname: SEPOLIA_DISPLAY_NAME,
|
ticker: TEST_NETWORK_TICKER_MAP[NETWORK_TYPES.SEPOLIA],
|
||||||
rpcUrl: CHAIN_ID_TO_RPC_URL_MAP[CHAIN_IDS.SEPOLIA],
|
},
|
||||||
providerType: NETWORK_TYPES.SEPOLIA,
|
{
|
||||||
ticker: TEST_NETWORK_TICKER_MAP[NETWORK_TYPES.SEPOLIA],
|
chainId: CHAIN_IDS.LINEA_TESTNET,
|
||||||
},
|
nickname: LINEA_TESTNET_DISPLAY_NAME,
|
||||||
{
|
rpcUrl: CHAIN_ID_TO_RPC_URL_MAP[CHAIN_IDS.LINEA_TESTNET],
|
||||||
chainId: CHAIN_IDS.LINEA_TESTNET,
|
ticker: TEST_NETWORK_TICKER_MAP[NETWORK_TYPES.LINEA_TESTNET],
|
||||||
nickname: LINEA_TESTNET_DISPLAY_NAME,
|
},
|
||||||
rpcUrl: CHAIN_ID_TO_RPC_URL_MAP[CHAIN_IDS.LINEA_TESTNET],
|
// Localhosts
|
||||||
ticker: TEST_NETWORK_TICKER_MAP[NETWORK_TYPES.LINEA_TESTNET],
|
...Object.values(networkConfigurations).filter(
|
||||||
},
|
({ chainId }) => chainId === CHAIN_IDS.LOCALHOST,
|
||||||
], // Localhosts
|
),
|
||||||
...Object.entries(networkConfigurations)
|
];
|
||||||
.filter(([, network]) => localhostFilter(network))
|
|
||||||
.map(([, network]) => network),
|
|
||||||
);
|
|
||||||
|
|
||||||
return networks;
|
return networks;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user