Skip to content

Commit 7a5ce94

Browse files
authored
feat: add bridge and swap to HyperEVM (MetaMask#25769)
<!-- Please submit this PR as a draft initially. Do not mark it as "Ready for review" until the template has been completely filled out, and PR status checks have passed at least once. --> ## **Description** - Adds HyperEVM as selectable network for Bridge/Swap. - Adds Bridge/Swap feature for HyperEVM (behind feature flags). - Switches from `CHAIN_IDS` (transactions-controller) to `NETWORK_CHAIN_ID` (internal, extends `CHAIN_IDS`) in bridge-related files mapping [chain.id]: { data }. @reviewers happy to discuss about that and where CHAIN_IDS could be located in the future. I used `NETWORK_CHAIN_ID` because it already existed and was an extension of the first one. <!-- Write a short description of the changes included in this pull request, also include relevant motivation and context. Have in mind the following questions: 1. What is the reason for the change? 2. What is the improvement/solution? --> ## **Changelog** <!-- If this PR is not End-User-Facing and should not show up in the CHANGELOG, you can choose to either: 1. Write `CHANGELOG entry: null` 2. Label with `no-changelog` If this PR is End-User-Facing, please write a short User-Facing description in the past tense like: `CHANGELOG entry: Added a new tab for users to see their NFTs` `CHANGELOG entry: Fixed a bug that was causing some NFTs to flicker` (This helps the Release Engineer do their job more quickly and accurately) --> CHANGELOG entry: Adds Bridge and Swap feature to HyperEVM ## **Related issues** Jira task: https://consensyssoftware.atlassian.net/browse/NEB-103 ## **Manual testing steps** ```gherkin Feature: my feature name Scenario: user [verb for user action] Given [describe expected initial app state] When user [verb for user action] Then [describe expected outcome] ``` ## **Screenshots/Recordings** <!-- If applicable, add screenshots and/or recordings to visualize the before and after of your change. --> ### **Before** <!-- [screenshots/recordings] --> ### **After** <!-- [screenshots/recordings] --> <img width="300" alt="image" src="https://github.com/user-attachments/assets/4989e0aa-3f21-424e-9f84-0ddede78f698" /> <img width="300" alt="image" src="https://github.com/user-attachments/assets/e1ea34c3-7aca-4d24-b88b-030cfc230408" /> <img width="300" alt="image" src="https://github.com/user-attachments/assets/8310e5f8-8472-4fc8-b0f6-b532f4d04aef" /> <img width="300" alt="image" src="https://github.com/user-attachments/assets/09d2f5af-e791-4799-9927-64a86f2c89e1" /> ## **Pre-merge author checklist** - [ ] I've followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [ ] I've completed the PR template to the best of my ability - [ ] I've included tests if applicable - [ ] I've documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [ ] I've applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Medium Risk** > Adds a new chain into bridge/swap routing via multiple constant maps and supported-chain allowlists, so incorrect ids/addresses could break swaps/bridges or mislabel activity. Dependency bumps to bridge/transaction controllers add some integration risk. > > **Overview** > Enables Bridge/Swaps flows to recognize **HyperEVM** by adding its chain id to supported network lists, display-name mappings, and first‑party `Bridge`/`Swaps` contract address maps. > > Updates bridge UI defaults by adding a HyperEVM default destination token (USDC) and treating HyperEVM USDC as a stablecoin for default slippage logic, while also standardizing several bridge constants to use `NETWORK_CHAIN_ID` (from `customNetworks`) instead of `CHAIN_IDS`. > > Bumps `@metamask/bridge-controller` and `@metamask/transaction-controller` versions and adjusts unit tests/mocks accordingly (including using a clearly invalid chain id in a transaction-history test). > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 225aa56. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
1 parent c602ef7 commit 7a5ce94

9 files changed

Lines changed: 115 additions & 76 deletions

File tree

app/components/UI/Bridge/constants/default-swap-dest-tokens.ts

Lines changed: 35 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -6,107 +6,116 @@ import {
66
} from '@metamask/keyring-api';
77
import { BridgeToken } from '../types';
88
import { CaipAssetType, Hex } from '@metamask/utils';
9-
import { CHAIN_IDS } from '@metamask/transaction-controller';
9+
import { NETWORK_CHAIN_ID } from '../../../../util/networks/customNetworks';
1010

1111
export const DefaultSwapDestTokens: Record<Hex | CaipChainId, BridgeToken> = {
12-
[CHAIN_IDS.MAINNET]: {
12+
[NETWORK_CHAIN_ID.MAINNET]: {
1313
symbol: 'mUSD',
1414
name: 'MetaMask USD',
1515
address: '0xaca92e438df0b2401ff60da7e4337b687a2435da',
1616
decimals: 6,
1717
image:
1818
'https://static.cx.metamask.io/api/v2/tokenIcons/assets/eip155/1/erc20/0xaca92e438df0b2401ff60da7e4337b687a2435da.png',
19-
chainId: CHAIN_IDS.MAINNET,
19+
chainId: NETWORK_CHAIN_ID.MAINNET,
2020
},
21-
[CHAIN_IDS.OPTIMISM]: {
21+
[NETWORK_CHAIN_ID.OPTIMISM]: {
2222
symbol: 'USDC',
2323
name: 'USD Coin',
2424
address: '0x0b2c639c533813f4aa9d7837caf62653d097ff85',
2525
decimals: 6,
2626
image:
2727
'https://static.cx.metamask.io/api/v1/tokenIcons/10/0x0b2c639c533813f4aa9d7837caf62653d097ff85.png',
28-
chainId: CHAIN_IDS.OPTIMISM,
28+
chainId: NETWORK_CHAIN_ID.OPTIMISM,
2929
},
30-
[CHAIN_IDS.BSC]: {
30+
[NETWORK_CHAIN_ID.BSC]: {
3131
symbol: 'USDT',
3232
name: 'Tether USD',
3333
address: '0x55d398326f99059ff775485246999027b3197955',
3434
decimals: 18,
3535
image:
3636
'https://static.cx.metamask.io/api/v1/tokenIcons/56/0x55d398326f99059ff775485246999027b3197955.png',
37-
chainId: CHAIN_IDS.BSC,
37+
chainId: NETWORK_CHAIN_ID.BSC,
3838
},
39-
[CHAIN_IDS.POLYGON]: {
39+
[NETWORK_CHAIN_ID.POLYGON]: {
4040
symbol: 'USDT',
4141
name: 'Tether USD',
4242
address: '0xc2132d05d31c914a87c6611c10748aeb04b58e8f',
4343
decimals: 6,
4444
image:
4545
'https://static.cx.metamask.io/api/v1/tokenIcons/137/0xc2132d05d31c914a87c6611c10748aeb04b58e8f.png',
46-
chainId: CHAIN_IDS.POLYGON,
46+
chainId: NETWORK_CHAIN_ID.POLYGON,
4747
},
48-
[CHAIN_IDS.ARBITRUM]: {
48+
[NETWORK_CHAIN_ID.ARBITRUM]: {
4949
symbol: 'USDC',
5050
name: 'USD Coin',
5151
address: '0xaf88d065e77c8cc2239327c5edb3a432268e5831',
5252
decimals: 6,
5353
image:
5454
'https://static.cx.metamask.io/api/v1/tokenIcons/42161/0xaf88d065e77c8cc2239327c5edb3a432268e5831.png',
55-
chainId: CHAIN_IDS.ARBITRUM,
55+
chainId: NETWORK_CHAIN_ID.ARBITRUM,
5656
},
57-
[CHAIN_IDS.AVALANCHE]: {
57+
[NETWORK_CHAIN_ID.AVALANCHE]: {
5858
symbol: 'USDC',
5959
name: 'USD Coin',
6060
address: '0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e',
6161
decimals: 6,
6262
image:
6363
'https://static.cx.metamask.io/api/v1/tokenIcons/43114/0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e.png',
64-
chainId: CHAIN_IDS.AVALANCHE,
64+
chainId: NETWORK_CHAIN_ID.AVALANCHE,
6565
},
66-
[CHAIN_IDS.BASE]: {
66+
[NETWORK_CHAIN_ID.BASE]: {
6767
symbol: 'USDC',
6868
name: 'USD Coin',
6969
address: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913',
7070
decimals: 6,
7171
image:
7272
'https://static.cx.metamask.io/api/v1/tokenIcons/8453/0x833589fcd6edb6e08f4c7c32d4f71b54bda02913.png',
73-
chainId: CHAIN_IDS.BASE,
73+
chainId: NETWORK_CHAIN_ID.BASE,
7474
},
75-
[CHAIN_IDS.LINEA_MAINNET]: {
75+
[NETWORK_CHAIN_ID.LINEA_MAINNET]: {
7676
symbol: 'mUSD',
7777
name: 'MetaMask USD',
7878
address: '0xaca92e438df0b2401ff60da7e4337b687a2435da',
7979
decimals: 6,
8080
image:
8181
'https://static.cx.metamask.io/api/v2/tokenIcons/assets/eip155/59144/erc20/0xaca92e438df0b2401ff60da7e4337b687a2435da.png',
82-
chainId: CHAIN_IDS.LINEA_MAINNET,
82+
chainId: NETWORK_CHAIN_ID.LINEA_MAINNET,
8383
},
84-
[CHAIN_IDS.ZKSYNC_ERA]: {
84+
[NETWORK_CHAIN_ID.ZKSYNC_ERA]: {
8585
symbol: 'USDT',
8686
name: 'Tether USD',
8787
address: '0x493257fd37edb34451f62edf8d2a0c418852ba4c',
8888
decimals: 6,
8989
image:
9090
'https://static.cx.metamask.io/api/v1/tokenIcons/324/0x493257fd37edb34451f62edf8d2a0c418852ba4c.png',
91-
chainId: CHAIN_IDS.ZKSYNC_ERA,
91+
chainId: NETWORK_CHAIN_ID.ZKSYNC_ERA,
9292
},
93-
[CHAIN_IDS.SEI]: {
93+
[NETWORK_CHAIN_ID.SEI]: {
9494
symbol: 'USDC',
9595
name: 'USD Coin',
9696
address: '0xe15fc38f6d8c56af07bbcbe3baf5708a2bf42392',
9797
decimals: 6,
9898
image:
9999
'https://static.cx.metamask.io/api/v1/tokenIcons/1329/0xe15fc38f6d8c56af07bbcbe3baf5708a2bf42392.png',
100-
chainId: CHAIN_IDS.SEI,
100+
chainId: NETWORK_CHAIN_ID.SEI,
101101
},
102-
[CHAIN_IDS.MONAD]: {
102+
[NETWORK_CHAIN_ID.MONAD]: {
103103
symbol: 'USDC',
104104
name: 'USD Coin',
105105
address: '0x754704Bc059F8C67012fEd69BC8A327a5aafb603',
106106
decimals: 6,
107107
image:
108108
'https://static.cx.metamask.io/api/v1/tokenIcons/143/0x754704Bc059F8C67012fEd69BC8A327a5aafb603.png',
109-
chainId: CHAIN_IDS.MONAD,
109+
chainId: NETWORK_CHAIN_ID.MONAD,
110+
},
111+
[NETWORK_CHAIN_ID.HYPE]: {
112+
symbol: 'USDC',
113+
name: 'USD Coin',
114+
address: '0xb88339CB7199b77E23DB6E890353E22632Ba630f',
115+
decimals: 6,
116+
image:
117+
'https://static.cx.metamask.io/api/v1/tokenIcons/999/0xb88339cb7199b77e23db6e890353e22632ba630f.png',
118+
chainId: NETWORK_CHAIN_ID.HYPE,
110119
},
111120
[SolScope.Mainnet]: {
112121
address:
@@ -146,7 +155,7 @@ export const Bip44TokensForDefaultPairs: Record<CaipAssetType, BridgeToken> = {
146155
decimals: 18,
147156
image:
148157
'https://static.cx.metamask.io/api/v2/tokenIcons/assets/eip155/1/slip44/60.png',
149-
chainId: CHAIN_IDS.MAINNET,
158+
chainId: NETWORK_CHAIN_ID.MAINNET,
150159
},
151160
'eip155:1/erc20:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48': {
152161
symbol: 'USDC',
@@ -155,7 +164,7 @@ export const Bip44TokensForDefaultPairs: Record<CaipAssetType, BridgeToken> = {
155164
decimals: 6,
156165
image:
157166
'https://static.cx.metamask.io/api/v2/tokenIcons/assets/eip155/1/erc20/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48.png',
158-
chainId: CHAIN_IDS.MAINNET,
167+
chainId: NETWORK_CHAIN_ID.MAINNET,
159168
},
160169
'eip155:1/erc20:0xaca92e438df0b2401ff60da7e4337b687a2435da': {
161170
symbol: 'mUSD',
@@ -164,7 +173,7 @@ export const Bip44TokensForDefaultPairs: Record<CaipAssetType, BridgeToken> = {
164173
decimals: 6,
165174
image:
166175
'https://static.cx.metamask.io/api/v2/tokenIcons/assets/eip155/1/erc20/0xaca92e438df0b2401ff60da7e4337b687a2435da.png',
167-
chainId: CHAIN_IDS.MAINNET,
176+
chainId: NETWORK_CHAIN_ID.MAINNET,
168177
},
169178
'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/slip44:501': {
170179
address: 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/slip44:501',

app/components/UI/Bridge/hooks/useStablecoinsDefaultSlippage/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,9 @@ const StablecoinsByChainId: Partial<Record<Hex, Set<string>>> = {
5555
[NETWORKS_CHAIN_ID.MONAD]: new Set([
5656
'0x754704Bc059F8C67012fEd69BC8A327a5aafb603', // USDC
5757
]),
58+
[NETWORKS_CHAIN_ID.HYPER_EVM]: new Set([
59+
'0xb88339CB7199b77E23DB6E890353E22632Ba630f', // USDC
60+
]),
5861
};
5962

6063
/**

app/components/UI/Bridge/utils/transaction-history.test.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,15 @@ describe('getBridgeTxActivityTitle', () => {
4242
assetId: 'eip155:1/erc20:0x123',
4343
},
4444
// eslint-disable-next-line @typescript-eslint/no-explicit-any
45-
destChainId: 999 as any, // Non-existent chain ID
45+
destChainId: 123456789 as any, // Non-existent chain ID
4646
destAsset: {
4747
// eslint-disable-next-line @typescript-eslint/no-explicit-any
48-
chainId: 999 as any,
48+
chainId: 123456789 as any,
4949
address: '0x456',
5050
decimals: 18,
5151
symbol: 'TOKEN',
5252
name: 'Test Token',
53-
assetId: 'eip155:999/erc20:0x456',
53+
assetId: 'eip155:123456789/erc20:0x456',
5454
},
5555
srcTokenAmount: '1000000000000000000',
5656
destTokenAmount: '2000000000000000000',
@@ -79,7 +79,7 @@ describe('getBridgeTxActivityTitle', () => {
7979
},
8080
destChain: {
8181
// eslint-disable-next-line @typescript-eslint/no-explicit-any
82-
chainId: 999 as any,
82+
chainId: 123456789 as any,
8383
txHash: '0x456',
8484
},
8585
status: StatusTypes.COMPLETE,

app/components/UI/Trending/components/TrendingTokenRowItem/TrendingTokenRowItem.test.tsx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,11 +171,16 @@ jest.mock('../../../../../util/networks/customNetworks', () => {
171171
},
172172
];
173173

174+
const { NETWORK_CHAIN_ID } = jest.requireActual(
175+
'../../../../../util/networks/customNetworks',
176+
);
177+
174178
return {
175179
CustomNetworkImgMapping: mockCustomNetworkImgMapping,
176180
PopularList: mockPopularList,
177181
UnpopularNetworkList: mockUnpopularNetworkList,
178182
getNonEvmNetworkImageSourceByChainId: jest.fn(),
183+
NETWORK_CHAIN_ID,
179184
};
180185
});
181186

app/constants/bridge.ts

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import { SolScope, BtcScope, TrxScope } from '@metamask/keyring-api';
2-
import { CHAIN_IDS } from '@metamask/transaction-controller';
32
import { CaipChainId, Hex } from '@metamask/utils';
43
import {
54
BRIDGE_DEV_API_BASE_URL,
65
BRIDGE_PROD_API_BASE_URL,
76
} from '@metamask/bridge-controller';
7+
import { NETWORK_CHAIN_ID } from '../util/networks/customNetworks';
88

99
/**
1010
* Native token address (zero address)
@@ -19,17 +19,18 @@ export const NETWORK_TO_SHORT_NETWORK_NAME_MAP: Record<
1919
Hex | CaipChainId,
2020
string
2121
> = {
22-
[CHAIN_IDS.MAINNET]: 'Ethereum',
23-
[CHAIN_IDS.LINEA_MAINNET]: 'Linea',
24-
[CHAIN_IDS.POLYGON]: 'Polygon',
25-
[CHAIN_IDS.AVALANCHE]: 'Avalanche',
26-
[CHAIN_IDS.BSC]: 'BNB',
27-
[CHAIN_IDS.ARBITRUM]: 'Arbitrum',
28-
[CHAIN_IDS.OPTIMISM]: 'Optimism',
29-
[CHAIN_IDS.ZKSYNC_ERA]: 'zkSync',
30-
[CHAIN_IDS.BASE]: 'Base',
31-
[CHAIN_IDS.SEI]: 'Sei',
32-
[CHAIN_IDS.MONAD]: 'Monad',
22+
[NETWORK_CHAIN_ID.MAINNET]: 'Ethereum',
23+
[NETWORK_CHAIN_ID.LINEA_MAINNET]: 'Linea',
24+
[NETWORK_CHAIN_ID.POLYGON]: 'Polygon',
25+
[NETWORK_CHAIN_ID.AVALANCHE]: 'Avalanche',
26+
[NETWORK_CHAIN_ID.BSC]: 'BNB',
27+
[NETWORK_CHAIN_ID.ARBITRUM]: 'Arbitrum',
28+
[NETWORK_CHAIN_ID.OPTIMISM]: 'Optimism',
29+
[NETWORK_CHAIN_ID.ZKSYNC_ERA]: 'zkSync',
30+
[NETWORK_CHAIN_ID.BASE]: 'Base',
31+
[NETWORK_CHAIN_ID.SEI]: 'Sei',
32+
[NETWORK_CHAIN_ID.MONAD]: 'Monad',
33+
[NETWORK_CHAIN_ID.HYPE]: 'HyperEVM',
3334
[SolScope.Mainnet]: 'Solana',
3435
[BtcScope.Mainnet]: 'BTC',
3536
[TrxScope.Mainnet]: 'Tron',

app/constants/first-party-contracts.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ const FIRST_PARTY_CONTRACT_NAMES: Record<string, Record<Hex, Hex>> = {
3232
[NETWORKS_CHAIN_ID.ARBITRUM]: '0x23981fC34e69eeDFE2BD9a0a9fCb0719Fe09DbFC',
3333
[NETWORKS_CHAIN_ID.SEI]: '0x099625f63395aA1e2e4d31175f330AB07591bD12',
3434
[NETWORKS_CHAIN_ID.MONAD]: '0xFB00D4EA6f3f0d0b4A57b32378075Df408F2aaBA',
35+
[NETWORKS_CHAIN_ID.HYPER_EVM]: '0x730a77f27eE2954106E0895815C1867126172b3e',
3536
},
3637
Swaps: {
3738
[NETWORKS_CHAIN_ID.MAINNET]: '0x881D40237659C251811CEC9c364ef91dC08D300C',
@@ -47,6 +48,7 @@ const FIRST_PARTY_CONTRACT_NAMES: Record<string, Record<Hex, Hex>> = {
4748
'0xf504c1fe13d14DF615E66dcd0ABF39e60c697f34',
4849
[NETWORKS_CHAIN_ID.SEI]: '0x962287c9d5B8a682389E61edAE90ec882325d08b',
4950
[NETWORKS_CHAIN_ID.MONAD]: '0x962287c9d5B8a682389E61edAE90ec882325d08b',
51+
[NETWORKS_CHAIN_ID.HYPER_EVM]: '0xB165C4d4B8044D4A9276c3d75F08cD6a2874A3b2',
5052
},
5153
};
5254

app/core/Engine/constants.ts

Lines changed: 26 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { CHAIN_IDS } from '@metamask/transaction-controller';
1+
import { NETWORK_CHAIN_ID } from '../../util/networks/customNetworks';
22

33
/**
44
* Messageable modules that are part of the Engine's context, but are not defined with state.
@@ -86,17 +86,18 @@ export const BACKGROUND_STATE_CHANGE_EVENT_NAMES = [
8686
] as const;
8787

8888
export const swapsSupportedChainIds = [
89-
CHAIN_IDS.MAINNET,
90-
CHAIN_IDS.BSC,
91-
CHAIN_IDS.POLYGON,
92-
CHAIN_IDS.AVALANCHE,
93-
CHAIN_IDS.ARBITRUM,
94-
CHAIN_IDS.OPTIMISM,
95-
CHAIN_IDS.ZKSYNC_ERA,
96-
CHAIN_IDS.LINEA_MAINNET,
97-
CHAIN_IDS.BASE,
98-
CHAIN_IDS.SEI,
99-
CHAIN_IDS.MONAD,
89+
NETWORK_CHAIN_ID.MAINNET,
90+
NETWORK_CHAIN_ID.BSC,
91+
NETWORK_CHAIN_ID.POLYGON,
92+
NETWORK_CHAIN_ID.AVALANCHE,
93+
NETWORK_CHAIN_ID.ARBITRUM,
94+
NETWORK_CHAIN_ID.OPTIMISM,
95+
NETWORK_CHAIN_ID.ZKSYNC_ERA,
96+
NETWORK_CHAIN_ID.LINEA_MAINNET,
97+
NETWORK_CHAIN_ID.BASE,
98+
NETWORK_CHAIN_ID.SEI,
99+
NETWORK_CHAIN_ID.MONAD,
100+
NETWORK_CHAIN_ID.HYPE,
100101
];
101102

102103
export const MAINNET_DISPLAY_NAME = 'Ethereum';
@@ -110,18 +111,20 @@ export const ZK_SYNC_ERA_DISPLAY_NAME = 'zkSync Era';
110111
export const BASE_DISPLAY_NAME = 'Base';
111112
export const SEI_DISPLAY_NAME = 'Sei';
112113
export const MONAD_DISPLAY_NAME = 'Monad';
114+
export const HYPEREVM_DISPLAY_NAME = 'HyperEVM';
113115

114116
export const NETWORK_TO_NAME_MAP = {
115-
[CHAIN_IDS.MAINNET]: MAINNET_DISPLAY_NAME,
116-
[CHAIN_IDS.LINEA_MAINNET]: LINEA_MAINNET_DISPLAY_NAME,
117-
[CHAIN_IDS.POLYGON]: POLYGON_DISPLAY_NAME,
118-
[CHAIN_IDS.AVALANCHE]: AVALANCHE_DISPLAY_NAME,
119-
[CHAIN_IDS.ARBITRUM]: ARBITRUM_DISPLAY_NAME,
120-
[CHAIN_IDS.BSC]: BNB_DISPLAY_NAME,
121-
[CHAIN_IDS.OPTIMISM]: OPTIMISM_DISPLAY_NAME,
122-
[CHAIN_IDS.ZKSYNC_ERA]: ZK_SYNC_ERA_DISPLAY_NAME,
123-
[CHAIN_IDS.BASE]: BASE_DISPLAY_NAME,
124-
[CHAIN_IDS.SEI]: SEI_DISPLAY_NAME,
117+
[NETWORK_CHAIN_ID.MAINNET]: MAINNET_DISPLAY_NAME,
118+
[NETWORK_CHAIN_ID.LINEA_MAINNET]: LINEA_MAINNET_DISPLAY_NAME,
119+
[NETWORK_CHAIN_ID.POLYGON]: POLYGON_DISPLAY_NAME,
120+
[NETWORK_CHAIN_ID.AVALANCHE]: AVALANCHE_DISPLAY_NAME,
121+
[NETWORK_CHAIN_ID.ARBITRUM]: ARBITRUM_DISPLAY_NAME,
122+
[NETWORK_CHAIN_ID.BSC]: BNB_DISPLAY_NAME,
123+
[NETWORK_CHAIN_ID.OPTIMISM]: OPTIMISM_DISPLAY_NAME,
124+
[NETWORK_CHAIN_ID.ZKSYNC_ERA]: ZK_SYNC_ERA_DISPLAY_NAME,
125+
[NETWORK_CHAIN_ID.BASE]: BASE_DISPLAY_NAME,
126+
[NETWORK_CHAIN_ID.SEI]: SEI_DISPLAY_NAME,
125127
// TODO: Update to use CHAIN_IDS.MONAD when it is added to the transaction controller
126-
[CHAIN_IDS.MONAD]: MONAD_DISPLAY_NAME,
128+
[NETWORK_CHAIN_ID.MONAD]: MONAD_DISPLAY_NAME,
129+
[NETWORK_CHAIN_ID.HYPE]: HYPEREVM_DISPLAY_NAME,
127130
} as const;

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,7 @@
209209
"@metamask/assets-controllers": "^99.0.0",
210210
"@metamask/base-controller": "^9.0.0",
211211
"@metamask/bitcoin-wallet-snap": "^1.10.0",
212-
"@metamask/bridge-controller": "^64.8.0",
212+
"@metamask/bridge-controller": "^65.2.0",
213213
"@metamask/bridge-status-controller": "^64.4.5",
214214
"@metamask/chain-agnostic-permission": "^1.3.0",
215215
"@metamask/connectivity-controller": "^0.1.0",
@@ -297,7 +297,7 @@
297297
"@metamask/storage-service": "^1.0.0",
298298
"@metamask/swappable-obj-proxy": "^2.1.0",
299299
"@metamask/swaps-controller": "^15.0.0",
300-
"@metamask/transaction-controller": "^62.14.0",
300+
"@metamask/transaction-controller": "^62.15.0",
301301
"@metamask/transaction-pay-controller": "^12.1.0",
302302
"@metamask/tron-wallet-snap": "^1.21.1",
303303
"@metamask/utils": "^11.8.1",

0 commit comments

Comments
 (0)