@circle-fin/app-kit 1.6.1 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +225 -0
- package/README.md +28 -5
- package/bridge.cjs +19951 -0
- package/bridge.cjs.map +1 -0
- package/bridge.d.cts +6603 -0
- package/bridge.d.mts +6603 -0
- package/bridge.d.ts +6603 -0
- package/bridge.mjs +19944 -0
- package/bridge.mjs.map +1 -0
- package/chains.cjs +1018 -1087
- package/chains.d.cts +2060 -0
- package/chains.d.mts +2060 -0
- package/chains.d.ts +40 -37
- package/chains.mjs +1018 -1087
- package/context.cjs +59 -0
- package/context.cjs.map +1 -0
- package/context.d.cts +6428 -0
- package/context.d.mts +6428 -0
- package/context.d.ts +6428 -0
- package/context.mjs +57 -0
- package/context.mjs.map +1 -0
- package/earn.cjs +7940 -4626
- package/earn.d.cts +8340 -0
- package/earn.d.mts +8340 -0
- package/earn.d.ts +987 -85
- package/earn.mjs +7937 -4627
- package/estimateBridge.cjs +19889 -0
- package/estimateBridge.cjs.map +1 -0
- package/estimateBridge.d.cts +6483 -0
- package/estimateBridge.d.mts +6483 -0
- package/estimateBridge.d.ts +6483 -0
- package/estimateBridge.mjs +19882 -0
- package/estimateBridge.mjs.map +1 -0
- package/estimateSwap.cjs +21577 -0
- package/estimateSwap.cjs.map +1 -0
- package/estimateSwap.d.cts +6625 -0
- package/estimateSwap.d.mts +6625 -0
- package/estimateSwap.d.ts +6625 -0
- package/estimateSwap.mjs +21571 -0
- package/estimateSwap.mjs.map +1 -0
- package/index.cjs +15844 -11589
- package/index.d.cts +26657 -0
- package/index.d.mts +26657 -0
- package/index.d.ts +5667 -688
- package/index.mjs +15834 -11590
- package/package.json +66 -32
- package/swap.cjs +21577 -0
- package/swap.cjs.map +1 -0
- package/swap.d.cts +6721 -0
- package/swap.d.mts +6721 -0
- package/swap.d.ts +6721 -0
- package/swap.mjs +21571 -0
- package/swap.mjs.map +1 -0
- package/unifiedBalance.cjs +20557 -0
- package/unifiedBalance.cjs.map +1 -0
- package/unifiedBalance.d.cts +7276 -0
- package/unifiedBalance.d.mts +7276 -0
- package/unifiedBalance.d.ts +7276 -0
- package/unifiedBalance.mjs +20551 -0
- package/unifiedBalance.mjs.map +1 -0
package/chains.mjs
CHANGED
|
@@ -18,23 +18,34 @@
|
|
|
18
18
|
|
|
19
19
|
import { z } from 'zod';
|
|
20
20
|
|
|
21
|
-
// -----------------------------------------------------------------------------
|
|
22
|
-
// Blockchain Enum
|
|
23
|
-
// -----------------------------------------------------------------------------
|
|
24
21
|
/**
|
|
25
|
-
*
|
|
22
|
+
* @packageDocumentation
|
|
23
|
+
* @module ChainDefinitions
|
|
26
24
|
*
|
|
27
|
-
* This
|
|
28
|
-
*
|
|
29
|
-
*
|
|
25
|
+
* This module provides a complete type system for blockchain chain definitions.
|
|
26
|
+
* It supports both EVM and non‑EVM chains, token configurations, and multiple
|
|
27
|
+
* versions of the Cross-Chain Transfer Protocol (CCTP). Additionally, utility types
|
|
28
|
+
* are provided to extract subsets of chains (e.g. chains supporting USDC, EURC, or specific
|
|
29
|
+
* CCTP versions) from a provided collection.
|
|
30
30
|
*
|
|
31
|
-
*
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
31
|
+
* All types are fully documented with TSDoc to maximize developer experience.
|
|
32
|
+
*/ // -----------------------------------------------------------------------------
|
|
33
|
+
// Currency and Base Types
|
|
34
|
+
// -----------------------------------------------------------------------------
|
|
35
|
+
/**
|
|
36
|
+
* Represents basic information about a currency or token.
|
|
37
|
+
* @category Types
|
|
38
|
+
* @description Provides the essential properties of a cryptocurrency or token.
|
|
39
|
+
* @example
|
|
40
|
+
* ```typescript
|
|
41
|
+
* const ethCurrency: Currency = {
|
|
42
|
+
* name: "Ether",
|
|
43
|
+
* symbol: "ETH",
|
|
44
|
+
* decimals: 18
|
|
45
|
+
* };
|
|
46
|
+
* ```
|
|
47
|
+
*/ var Blockchain;
|
|
48
|
+
(function(Blockchain) {
|
|
38
49
|
Blockchain["Algorand"] = "Algorand";
|
|
39
50
|
Blockchain["Algorand_Testnet"] = "Algorand_Testnet";
|
|
40
51
|
Blockchain["Aptos"] = "Aptos";
|
|
@@ -101,103 +112,8 @@ var Blockchain;
|
|
|
101
112
|
Blockchain["ZKSync_Era"] = "ZKSync_Era";
|
|
102
113
|
Blockchain["ZKSync_Sepolia"] = "ZKSync_Sepolia";
|
|
103
114
|
})(Blockchain || (Blockchain = {}));
|
|
104
|
-
/**
|
|
105
|
-
* Enum representing the subset of {@link Blockchain} that supports swap operations.
|
|
106
|
-
*
|
|
107
|
-
* This enum provides compile-time type safety for swap chain selection,
|
|
108
|
-
* ensuring only supported chains are available in IDE autocomplete
|
|
109
|
-
* when building swap parameters.
|
|
110
|
-
*
|
|
111
|
-
* @remarks
|
|
112
|
-
* Unlike the full {@link Blockchain} enum, SwapChain only includes networks
|
|
113
|
-
* where the swap functionality is actively supported by the library.
|
|
114
|
-
* Using this enum prevents runtime errors from attempting unsupported
|
|
115
|
-
* cross-chain swaps.
|
|
116
|
-
*
|
|
117
|
-
* Currently supports:
|
|
118
|
-
* - Ethereum mainnet
|
|
119
|
-
* - Base mainnet
|
|
120
|
-
* - Polygon mainnet
|
|
121
|
-
* - Solana mainnet
|
|
122
|
-
*
|
|
123
|
-
* @example
|
|
124
|
-
* ```typescript
|
|
125
|
-
* import { SwapChain, swap, createSwapKitContext } from '@circle-fin/swap-kit'
|
|
126
|
-
* import { createViemAdapterFromPrivateKey } from '@circle-fin/adapter-viem-v2'
|
|
127
|
-
*
|
|
128
|
-
* const context = createSwapKitContext()
|
|
129
|
-
* const adapter = createViemAdapterFromPrivateKey({
|
|
130
|
-
* privateKey: process.env.PRIVATE_KEY
|
|
131
|
-
* })
|
|
132
|
-
*
|
|
133
|
-
* // ✅ Autocomplete shows only swap-supported chains
|
|
134
|
-
* const result = await swap(context, {
|
|
135
|
-
* from: {
|
|
136
|
-
* adapter,
|
|
137
|
-
* chain: SwapChain.Ethereum // Autocomplete: Ethereum, Base, Polygon, Solana
|
|
138
|
-
* },
|
|
139
|
-
* tokenIn: 'USDC',
|
|
140
|
-
* tokenOut: 'USDT',
|
|
141
|
-
* amount: '100.0'
|
|
142
|
-
* })
|
|
143
|
-
* ```
|
|
144
|
-
*
|
|
145
|
-
* @example
|
|
146
|
-
* ```typescript
|
|
147
|
-
* // String literals also work (constrained to SwapChain values)
|
|
148
|
-
* const result = await swap(context, {
|
|
149
|
-
* from: {
|
|
150
|
-
* adapter,
|
|
151
|
-
* chain: 'Ethereum' // ✅ Only SwapChain strings allowed
|
|
152
|
-
* },
|
|
153
|
-
* tokenIn: 'USDC',
|
|
154
|
-
* tokenOut: 'NATIVE',
|
|
155
|
-
* amount: '50.0'
|
|
156
|
-
* })
|
|
157
|
-
*
|
|
158
|
-
* // ❌ TypeScript error - Sui not in SwapChain enum
|
|
159
|
-
* const invalidResult = await swap(context, {
|
|
160
|
-
* from: {
|
|
161
|
-
* adapter,
|
|
162
|
-
* chain: 'Sui' // Compile-time error!
|
|
163
|
-
* },
|
|
164
|
-
* tokenIn: 'USDC',
|
|
165
|
-
* tokenOut: 'USDT',
|
|
166
|
-
* amount: '100.0'
|
|
167
|
-
* })
|
|
168
|
-
* ```
|
|
169
|
-
*/
|
|
170
|
-
/**
|
|
171
|
-
* Enum representing chains that support same-chain swaps through the Swap Kit.
|
|
172
|
-
*
|
|
173
|
-
* Unlike the full {@link Blockchain} enum, SwapChain includes mainnet
|
|
174
|
-
* networks and explicitly whitelisted testnets (e.g., {@link Arc_Testnet})
|
|
175
|
-
* where adapter contracts are deployed (CCTPv2 support).
|
|
176
|
-
*
|
|
177
|
-
* Dynamic validation via {@link isSwapSupportedChain} ensures chains
|
|
178
|
-
* automatically work when adapter contracts and supported tokens are deployed.
|
|
179
|
-
*
|
|
180
|
-
* @example
|
|
181
|
-
* ```typescript
|
|
182
|
-
* import { SwapChain } from '@core/chains'
|
|
183
|
-
* import { swap } from '@circle-fin/swap-kit'
|
|
184
|
-
*
|
|
185
|
-
* const result = await swap(context, {
|
|
186
|
-
* from: {
|
|
187
|
-
* adapter,
|
|
188
|
-
* chain: SwapChain.Arbitrum // Now supported!
|
|
189
|
-
* },
|
|
190
|
-
* tokenIn: 'USDC',
|
|
191
|
-
* tokenOut: 'WETH',
|
|
192
|
-
* amount: '100.0'
|
|
193
|
-
* })
|
|
194
|
-
* ```
|
|
195
|
-
*
|
|
196
|
-
* @see {@link isSwapSupportedChain} for runtime validation
|
|
197
|
-
* @see {@link getSwapSupportedChains} for all supported chains
|
|
198
|
-
*/
|
|
199
115
|
var SwapChain;
|
|
200
|
-
(function
|
|
116
|
+
(function(SwapChain) {
|
|
201
117
|
// Original 4 chains
|
|
202
118
|
SwapChain["Ethereum"] = "Ethereum";
|
|
203
119
|
SwapChain["Base"] = "Base";
|
|
@@ -220,57 +136,8 @@ var SwapChain;
|
|
|
220
136
|
// Testnet chains with swap support
|
|
221
137
|
SwapChain["Arc_Testnet"] = "Arc_Testnet";
|
|
222
138
|
})(SwapChain || (SwapChain = {}));
|
|
223
|
-
// -----------------------------------------------------------------------------
|
|
224
|
-
// Bridge Chain Enum (CCTPv2 Supported Chains)
|
|
225
|
-
// -----------------------------------------------------------------------------
|
|
226
|
-
/**
|
|
227
|
-
* Enumeration of blockchains that support cross-chain bridging via CCTPv2.
|
|
228
|
-
*
|
|
229
|
-
* The enum is derived from the full {@link Blockchain} enum but filtered to only
|
|
230
|
-
* include chains with active CCTPv2 support. When new chains gain CCTPv2 support,
|
|
231
|
-
* they are added to this enum.
|
|
232
|
-
*
|
|
233
|
-
* @enum
|
|
234
|
-
* @category Enums
|
|
235
|
-
*
|
|
236
|
-
* @remarks
|
|
237
|
-
* - This enum is the **canonical source** of bridging-supported chains.
|
|
238
|
-
* - Use this enum (or its string literals) in `kit.bridge()` calls for type safety.
|
|
239
|
-
* - Attempting to use a chain not in this enum will produce a TypeScript compile error.
|
|
240
|
-
*
|
|
241
|
-
* @example
|
|
242
|
-
* ```typescript
|
|
243
|
-
* import { BridgeKit, BridgeChain } from '@circle-fin/bridge-kit'
|
|
244
|
-
*
|
|
245
|
-
* const kit = new BridgeKit()
|
|
246
|
-
*
|
|
247
|
-
* // ✅ Valid - autocomplete suggests only supported chains
|
|
248
|
-
* await kit.bridge({
|
|
249
|
-
* from: { adapter, chain: BridgeChain.Ethereum },
|
|
250
|
-
* to: { adapter, chain: BridgeChain.Base },
|
|
251
|
-
* amount: '100'
|
|
252
|
-
* })
|
|
253
|
-
*
|
|
254
|
-
* // ✅ Also valid - string literals work with autocomplete
|
|
255
|
-
* await kit.bridge({
|
|
256
|
-
* from: { adapter, chain: 'Ethereum_Sepolia' },
|
|
257
|
-
* to: { adapter, chain: 'Base_Sepolia' },
|
|
258
|
-
* amount: '100'
|
|
259
|
-
* })
|
|
260
|
-
*
|
|
261
|
-
* // ❌ Compile error - Algorand is not in BridgeChain
|
|
262
|
-
* await kit.bridge({
|
|
263
|
-
* from: { adapter, chain: 'Algorand' }, // TypeScript error!
|
|
264
|
-
* to: { adapter, chain: 'Base' },
|
|
265
|
-
* amount: '100'
|
|
266
|
-
* })
|
|
267
|
-
* ```
|
|
268
|
-
*
|
|
269
|
-
* @see {@link Blockchain} for the complete list of all known blockchains.
|
|
270
|
-
* @see {@link BridgeChainIdentifier} for the type that accepts these values.
|
|
271
|
-
*/
|
|
272
139
|
var BridgeChain;
|
|
273
|
-
(function
|
|
140
|
+
(function(BridgeChain) {
|
|
274
141
|
// Mainnet chains with CCTPv2 support
|
|
275
142
|
BridgeChain["Arbitrum"] = "Arbitrum";
|
|
276
143
|
BridgeChain["Avalanche"] = "Avalanche";
|
|
@@ -319,30 +186,8 @@ var BridgeChain;
|
|
|
319
186
|
BridgeChain["World_Chain_Sepolia"] = "World_Chain_Sepolia";
|
|
320
187
|
BridgeChain["XDC_Apothem"] = "XDC_Apothem";
|
|
321
188
|
})(BridgeChain || (BridgeChain = {}));
|
|
322
|
-
// -----------------------------------------------------------------------------
|
|
323
|
-
// Unified Balance Chain Enum (Gateway V1 Supported Chains)
|
|
324
|
-
// -----------------------------------------------------------------------------
|
|
325
|
-
/**
|
|
326
|
-
* Enumeration of blockchains that support Gateway V1 operations
|
|
327
|
-
* (deposit, spend, balance, delegate, removeFund).
|
|
328
|
-
*
|
|
329
|
-
* Derived from the full {@link Blockchain} enum but filtered to only
|
|
330
|
-
* include chains with active Gateway V1 contract support. When new chains
|
|
331
|
-
* gain Gateway V1 support, they are added to this enum.
|
|
332
|
-
*
|
|
333
|
-
* @enum
|
|
334
|
-
* @category Enums
|
|
335
|
-
*
|
|
336
|
-
* @remarks
|
|
337
|
-
* - This enum is the **canonical source** of Gateway-supported chains.
|
|
338
|
-
* - Use this enum (or its string literals) in unified-balance-kit calls
|
|
339
|
-
* for type safety.
|
|
340
|
-
*
|
|
341
|
-
* @see {@link Blockchain} for the complete list of all known blockchains.
|
|
342
|
-
* @see {@link UnifiedBalanceChainIdentifier} for the type that accepts these values.
|
|
343
|
-
*/
|
|
344
189
|
var UnifiedBalanceChain;
|
|
345
|
-
(function
|
|
190
|
+
(function(UnifiedBalanceChain) {
|
|
346
191
|
// Mainnet chains with Gateway V1 support
|
|
347
192
|
UnifiedBalanceChain["Arbitrum"] = "Arbitrum";
|
|
348
193
|
UnifiedBalanceChain["Avalanche"] = "Avalanche";
|
|
@@ -371,28 +216,41 @@ var UnifiedBalanceChain;
|
|
|
371
216
|
UnifiedBalanceChain["Unichain_Sepolia"] = "Unichain_Sepolia";
|
|
372
217
|
UnifiedBalanceChain["World_Chain_Sepolia"] = "World_Chain_Sepolia";
|
|
373
218
|
})(UnifiedBalanceChain || (UnifiedBalanceChain = {}));
|
|
374
|
-
|
|
375
|
-
|
|
219
|
+
var EarnChain;
|
|
220
|
+
(function(EarnChain) {
|
|
221
|
+
EarnChain["Arc_Testnet"] = "Arc_Testnet";
|
|
222
|
+
})(EarnChain || (EarnChain = {}));
|
|
223
|
+
/**
|
|
224
|
+
* Blockchains supported as the source chain for cross-chain Earn deposits.
|
|
225
|
+
*
|
|
226
|
+
* Single source of truth for the source allowlist: the Earn Service bridge
|
|
227
|
+
* route map is `satisfies`-checked against {@link EarnBridgeSourceBlockchain},
|
|
228
|
+
* and both the type and the runtime validation schema derive from this array.
|
|
229
|
+
*
|
|
230
|
+
* @example
|
|
231
|
+
* ```typescript
|
|
232
|
+
* import { EARN_BRIDGE_SOURCE_BLOCKCHAINS } from '@core/chains'
|
|
233
|
+
*
|
|
234
|
+
* console.log(EARN_BRIDGE_SOURCE_BLOCKCHAINS.join(', '))
|
|
235
|
+
* ```
|
|
236
|
+
*/ const EARN_BRIDGE_SOURCE_BLOCKCHAINS = [
|
|
237
|
+
"Arbitrum_Sepolia",
|
|
238
|
+
"Base_Sepolia",
|
|
239
|
+
"Ethereum_Sepolia"
|
|
240
|
+
];
|
|
376
241
|
/**
|
|
377
|
-
*
|
|
378
|
-
*
|
|
242
|
+
* Blockchains supported as the destination (vault) chain for cross-chain Earn
|
|
243
|
+
* deposits. Single source of truth for the destination allowlist.
|
|
379
244
|
*
|
|
380
245
|
* @example
|
|
381
246
|
* ```typescript
|
|
382
|
-
* import {
|
|
247
|
+
* import { EARN_BRIDGE_DESTINATION_BLOCKCHAINS } from '@core/chains'
|
|
383
248
|
*
|
|
384
|
-
*
|
|
385
|
-
* from: { adapter, chain: EarnChain.Arc_Testnet },
|
|
386
|
-
* vaultAddress: '0x...',
|
|
387
|
-
* amount: '100',
|
|
388
|
-
* })
|
|
249
|
+
* console.log(EARN_BRIDGE_DESTINATION_BLOCKCHAINS.join(', '))
|
|
389
250
|
* ```
|
|
390
|
-
*/
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
(function (EarnChain) {
|
|
394
|
-
EarnChain["Arc_Testnet"] = "Arc_Testnet";
|
|
395
|
-
})(EarnChain || (EarnChain = {}));
|
|
251
|
+
*/ const EARN_BRIDGE_DESTINATION_BLOCKCHAINS = [
|
|
252
|
+
"Arc_Testnet"
|
|
253
|
+
];
|
|
396
254
|
|
|
397
255
|
/**
|
|
398
256
|
* Helper function to define a chain with proper TypeScript typing.
|
|
@@ -428,8 +286,7 @@ var EarnChain;
|
|
|
428
286
|
* }
|
|
429
287
|
* } as const);
|
|
430
288
|
* ```
|
|
431
|
-
*/
|
|
432
|
-
function defineChain(chain) {
|
|
289
|
+
*/ function defineChain(chain) {
|
|
433
290
|
return chain;
|
|
434
291
|
}
|
|
435
292
|
|
|
@@ -437,8 +294,7 @@ function defineChain(chain) {
|
|
|
437
294
|
* Algorand Mainnet chain definition
|
|
438
295
|
* @remarks
|
|
439
296
|
* This represents the official production network for the Algorand blockchain.
|
|
440
|
-
*/
|
|
441
|
-
defineChain({
|
|
297
|
+
*/ defineChain({
|
|
442
298
|
type: 'algorand',
|
|
443
299
|
chain: Blockchain.Algorand,
|
|
444
300
|
name: 'Algorand',
|
|
@@ -446,23 +302,24 @@ defineChain({
|
|
|
446
302
|
nativeCurrency: {
|
|
447
303
|
name: 'Algo',
|
|
448
304
|
symbol: 'ALGO',
|
|
449
|
-
decimals: 6
|
|
305
|
+
decimals: 6
|
|
450
306
|
},
|
|
451
307
|
isTestnet: false,
|
|
452
308
|
explorerUrl: 'https://explorer.perawallet.app/tx/{hash}',
|
|
453
|
-
rpcEndpoints: [
|
|
309
|
+
rpcEndpoints: [
|
|
310
|
+
'https://mainnet-api.algonode.cloud'
|
|
311
|
+
],
|
|
454
312
|
eurcAddress: null,
|
|
455
313
|
usdcAddress: '31566704',
|
|
456
314
|
usdtAddress: null,
|
|
457
|
-
cctp: null
|
|
315
|
+
cctp: null
|
|
458
316
|
});
|
|
459
317
|
|
|
460
318
|
/**
|
|
461
319
|
* Algorand Testnet chain definition
|
|
462
320
|
* @remarks
|
|
463
321
|
* This represents the official testnet for the Algorand blockchain.
|
|
464
|
-
*/
|
|
465
|
-
defineChain({
|
|
322
|
+
*/ defineChain({
|
|
466
323
|
type: 'algorand',
|
|
467
324
|
chain: Blockchain.Algorand_Testnet,
|
|
468
325
|
name: 'Algorand Testnet',
|
|
@@ -470,23 +327,24 @@ defineChain({
|
|
|
470
327
|
nativeCurrency: {
|
|
471
328
|
name: 'Algo',
|
|
472
329
|
symbol: 'ALGO',
|
|
473
|
-
decimals: 6
|
|
330
|
+
decimals: 6
|
|
474
331
|
},
|
|
475
332
|
isTestnet: true,
|
|
476
333
|
explorerUrl: 'https://testnet.explorer.perawallet.app/tx/{hash}',
|
|
477
|
-
rpcEndpoints: [
|
|
334
|
+
rpcEndpoints: [
|
|
335
|
+
'https://testnet-api.algonode.cloud'
|
|
336
|
+
],
|
|
478
337
|
eurcAddress: null,
|
|
479
338
|
usdcAddress: '10458941',
|
|
480
339
|
usdtAddress: null,
|
|
481
|
-
cctp: null
|
|
340
|
+
cctp: null
|
|
482
341
|
});
|
|
483
342
|
|
|
484
343
|
/**
|
|
485
344
|
* Aptos Mainnet chain definition
|
|
486
345
|
* @remarks
|
|
487
346
|
* This represents the official production network for the Aptos blockchain.
|
|
488
|
-
*/
|
|
489
|
-
defineChain({
|
|
347
|
+
*/ defineChain({
|
|
490
348
|
type: 'aptos',
|
|
491
349
|
chain: Blockchain.Aptos,
|
|
492
350
|
name: 'Aptos',
|
|
@@ -494,11 +352,13 @@ defineChain({
|
|
|
494
352
|
nativeCurrency: {
|
|
495
353
|
name: 'Aptos',
|
|
496
354
|
symbol: 'APT',
|
|
497
|
-
decimals: 8
|
|
355
|
+
decimals: 8
|
|
498
356
|
},
|
|
499
357
|
isTestnet: false,
|
|
500
358
|
explorerUrl: 'https://explorer.aptoslabs.com/txn/{hash}?network=mainnet',
|
|
501
|
-
rpcEndpoints: [
|
|
359
|
+
rpcEndpoints: [
|
|
360
|
+
'https://fullnode.mainnet.aptoslabs.com/v1'
|
|
361
|
+
],
|
|
502
362
|
eurcAddress: null,
|
|
503
363
|
usdcAddress: '0xbae207659db88bea0cbead6da0ed00aac12edcdda169e591cd41c94180b46f3b',
|
|
504
364
|
usdtAddress: '0x357b0b74bc833e95a115ad22604854d6b0fca151cecd94111770e5d6ffc9dc2b',
|
|
@@ -509,22 +369,21 @@ defineChain({
|
|
|
509
369
|
type: 'split',
|
|
510
370
|
tokenMessenger: '0x9bce6734f7b63e835108e3bd8c36743d4709fe435f44791918801d0989640a9d',
|
|
511
371
|
messageTransmitter: '0x177e17751820e4b4371873ca8c30279be63bdea63b88ed0f2239c2eea10f1772',
|
|
512
|
-
confirmations: 1
|
|
513
|
-
}
|
|
372
|
+
confirmations: 1
|
|
373
|
+
}
|
|
514
374
|
},
|
|
515
375
|
forwarderSupported: {
|
|
516
376
|
source: false,
|
|
517
|
-
destination: false
|
|
518
|
-
}
|
|
519
|
-
}
|
|
377
|
+
destination: false
|
|
378
|
+
}
|
|
379
|
+
}
|
|
520
380
|
});
|
|
521
381
|
|
|
522
382
|
/**
|
|
523
383
|
* Aptos Testnet chain definition
|
|
524
384
|
* @remarks
|
|
525
385
|
* This represents the official test network for the Aptos blockchain.
|
|
526
|
-
*/
|
|
527
|
-
defineChain({
|
|
386
|
+
*/ defineChain({
|
|
528
387
|
type: 'aptos',
|
|
529
388
|
chain: Blockchain.Aptos_Testnet,
|
|
530
389
|
name: 'Aptos Testnet',
|
|
@@ -532,11 +391,13 @@ defineChain({
|
|
|
532
391
|
nativeCurrency: {
|
|
533
392
|
name: 'Aptos',
|
|
534
393
|
symbol: 'APT',
|
|
535
|
-
decimals: 8
|
|
394
|
+
decimals: 8
|
|
536
395
|
},
|
|
537
396
|
isTestnet: true,
|
|
538
397
|
explorerUrl: 'https://explorer.aptoslabs.com/txn/{hash}?network=testnet',
|
|
539
|
-
rpcEndpoints: [
|
|
398
|
+
rpcEndpoints: [
|
|
399
|
+
'https://fullnode.testnet.aptoslabs.com/v1'
|
|
400
|
+
],
|
|
540
401
|
eurcAddress: null,
|
|
541
402
|
usdcAddress: '0x69091fbab5f7d635ee7ac5098cf0c1efbe31d68fec0f2cd565e8d168daf52832',
|
|
542
403
|
usdtAddress: null,
|
|
@@ -547,17 +408,28 @@ defineChain({
|
|
|
547
408
|
type: 'split',
|
|
548
409
|
tokenMessenger: '0x5f9b937419dda90aa06c1836b7847f65bbbe3f1217567758dc2488be31a477b9',
|
|
549
410
|
messageTransmitter: '0x081e86cebf457a0c6004f35bd648a2794698f52e0dde09a48619dcd3d4cc23d9',
|
|
550
|
-
confirmations: 1
|
|
551
|
-
}
|
|
411
|
+
confirmations: 1
|
|
412
|
+
}
|
|
552
413
|
},
|
|
553
414
|
forwarderSupported: {
|
|
554
415
|
source: false,
|
|
555
|
-
destination: false
|
|
556
|
-
}
|
|
557
|
-
}
|
|
416
|
+
destination: false
|
|
417
|
+
}
|
|
418
|
+
}
|
|
558
419
|
});
|
|
559
420
|
|
|
560
421
|
/**
|
|
422
|
+
* @packageDocumentation
|
|
423
|
+
* @module SwapTokenRegistry
|
|
424
|
+
*
|
|
425
|
+
* Central swap token registry for swap-supported tokens.
|
|
426
|
+
*
|
|
427
|
+
* Contains metadata for all tokens that can be used in swap operations,
|
|
428
|
+
* including decimals, categories, and descriptions. All packages should import
|
|
429
|
+
* from this registry instead of maintaining separate token lists.
|
|
430
|
+
*/ /**
|
|
431
|
+
* Swap token metadata.
|
|
432
|
+
*/ /**
|
|
561
433
|
* Complete swap token registry - single source of truth for all swap-supported tokens.
|
|
562
434
|
*
|
|
563
435
|
* @remarks
|
|
@@ -576,8 +448,7 @@ defineChain({
|
|
|
576
448
|
* // Check if token is stablecoin
|
|
577
449
|
* const isStable = SWAP_TOKEN_REGISTRY.DAI.category === 'stablecoin' // true
|
|
578
450
|
* ```
|
|
579
|
-
*/
|
|
580
|
-
const SWAP_TOKEN_REGISTRY = {
|
|
451
|
+
*/ const SWAP_TOKEN_REGISTRY = {
|
|
581
452
|
// ============================================================================
|
|
582
453
|
// Stablecoins (6 decimals)
|
|
583
454
|
// ============================================================================
|
|
@@ -585,25 +456,25 @@ const SWAP_TOKEN_REGISTRY = {
|
|
|
585
456
|
symbol: 'USDC',
|
|
586
457
|
decimals: 6,
|
|
587
458
|
category: 'stablecoin',
|
|
588
|
-
description: 'USD Coin'
|
|
459
|
+
description: 'USD Coin'
|
|
589
460
|
},
|
|
590
461
|
EURC: {
|
|
591
462
|
symbol: 'EURC',
|
|
592
463
|
decimals: 6,
|
|
593
464
|
category: 'stablecoin',
|
|
594
|
-
description: 'Euro Coin'
|
|
465
|
+
description: 'Euro Coin'
|
|
595
466
|
},
|
|
596
467
|
USDT: {
|
|
597
468
|
symbol: 'USDT',
|
|
598
469
|
decimals: 6,
|
|
599
470
|
category: 'stablecoin',
|
|
600
|
-
description: 'Tether USD'
|
|
471
|
+
description: 'Tether USD'
|
|
601
472
|
},
|
|
602
473
|
PYUSD: {
|
|
603
474
|
symbol: 'PYUSD',
|
|
604
475
|
decimals: 6,
|
|
605
476
|
category: 'stablecoin',
|
|
606
|
-
description: 'PayPal USD'
|
|
477
|
+
description: 'PayPal USD'
|
|
607
478
|
},
|
|
608
479
|
// ============================================================================
|
|
609
480
|
// Stablecoins (18 decimals)
|
|
@@ -612,13 +483,13 @@ const SWAP_TOKEN_REGISTRY = {
|
|
|
612
483
|
symbol: 'DAI',
|
|
613
484
|
decimals: 18,
|
|
614
485
|
category: 'stablecoin',
|
|
615
|
-
description: 'MakerDAO stablecoin'
|
|
486
|
+
description: 'MakerDAO stablecoin'
|
|
616
487
|
},
|
|
617
488
|
USDE: {
|
|
618
489
|
symbol: 'USDE',
|
|
619
490
|
decimals: 18,
|
|
620
491
|
category: 'stablecoin',
|
|
621
|
-
description: 'Ethena USD (synthetic dollar)'
|
|
492
|
+
description: 'Ethena USD (synthetic dollar)'
|
|
622
493
|
},
|
|
623
494
|
// ============================================================================
|
|
624
495
|
// Wrapped Tokens
|
|
@@ -627,38 +498,38 @@ const SWAP_TOKEN_REGISTRY = {
|
|
|
627
498
|
symbol: 'WBTC',
|
|
628
499
|
decimals: 8,
|
|
629
500
|
category: 'wrapped',
|
|
630
|
-
description: 'Wrapped Bitcoin'
|
|
501
|
+
description: 'Wrapped Bitcoin'
|
|
631
502
|
},
|
|
632
503
|
WETH: {
|
|
633
504
|
symbol: 'WETH',
|
|
634
505
|
decimals: 18,
|
|
635
506
|
category: 'wrapped',
|
|
636
|
-
description: 'Wrapped Ethereum'
|
|
507
|
+
description: 'Wrapped Ethereum'
|
|
637
508
|
},
|
|
638
509
|
WSOL: {
|
|
639
510
|
symbol: 'WSOL',
|
|
640
511
|
decimals: 9,
|
|
641
512
|
category: 'wrapped',
|
|
642
|
-
description: 'Wrapped Solana'
|
|
513
|
+
description: 'Wrapped Solana'
|
|
643
514
|
},
|
|
644
515
|
WAVAX: {
|
|
645
516
|
symbol: 'WAVAX',
|
|
646
517
|
decimals: 18,
|
|
647
518
|
category: 'wrapped',
|
|
648
|
-
description: 'Wrapped Avalanche'
|
|
519
|
+
description: 'Wrapped Avalanche'
|
|
649
520
|
},
|
|
650
521
|
WPOL: {
|
|
651
522
|
symbol: 'WPOL',
|
|
652
523
|
decimals: 18,
|
|
653
524
|
category: 'wrapped',
|
|
654
|
-
description: 'Wrapped Polygon'
|
|
525
|
+
description: 'Wrapped Polygon'
|
|
655
526
|
},
|
|
656
527
|
CIRBTC: {
|
|
657
528
|
symbol: 'CIRBTC',
|
|
658
529
|
decimals: 8,
|
|
659
530
|
category: 'wrapped',
|
|
660
|
-
description: 'Circle Bitcoin'
|
|
661
|
-
}
|
|
531
|
+
description: 'Circle Bitcoin'
|
|
532
|
+
}
|
|
662
533
|
};
|
|
663
534
|
/**
|
|
664
535
|
* Special NATIVE token constant for swap operations.
|
|
@@ -667,15 +538,13 @@ const SWAP_TOKEN_REGISTRY = {
|
|
|
667
538
|
* NATIVE is handled separately from SWAP_TOKEN_REGISTRY because it resolves
|
|
668
539
|
* dynamically based on the chain (ETH on Ethereum, SOL on Solana, etc.).
|
|
669
540
|
* Its decimals are chain-specific.
|
|
670
|
-
*/
|
|
671
|
-
const NATIVE_TOKEN = 'NATIVE';
|
|
541
|
+
*/ const NATIVE_TOKEN = 'NATIVE';
|
|
672
542
|
/**
|
|
673
543
|
* Array of all supported swap token symbols including NATIVE.
|
|
674
544
|
* Useful for iteration, validation, and filtering.
|
|
675
|
-
*/
|
|
676
|
-
[
|
|
545
|
+
*/ [
|
|
677
546
|
...Object.keys(SWAP_TOKEN_REGISTRY),
|
|
678
|
-
NATIVE_TOKEN
|
|
547
|
+
NATIVE_TOKEN
|
|
679
548
|
];
|
|
680
549
|
|
|
681
550
|
/**
|
|
@@ -684,87 +553,75 @@ const NATIVE_TOKEN = 'NATIVE';
|
|
|
684
553
|
* This contract handles USDC transfers on testnet environments across
|
|
685
554
|
* EVM-compatible chains. Use this address when deploying or testing
|
|
686
555
|
* cross-chain USDC transfers on test networks.
|
|
687
|
-
*/
|
|
688
|
-
const BRIDGE_CONTRACT_EVM_TESTNET = '0xC5567a5E3370d4DBfB0540025078e283e36A363d';
|
|
556
|
+
*/ const BRIDGE_CONTRACT_EVM_TESTNET = '0xC5567a5E3370d4DBfB0540025078e283e36A363d';
|
|
689
557
|
/**
|
|
690
558
|
* The bridge contract address for EVM mainnet networks.
|
|
691
559
|
*
|
|
692
560
|
* This contract handles USDC transfers on mainnet environments across
|
|
693
561
|
* EVM-compatible chains. Use this address for production cross-chain
|
|
694
562
|
* USDC transfers on live networks.
|
|
695
|
-
*/
|
|
696
|
-
const BRIDGE_CONTRACT_EVM_MAINNET = '0xB3FA262d0fB521cc93bE83d87b322b8A23DAf3F0';
|
|
563
|
+
*/ const BRIDGE_CONTRACT_EVM_MAINNET = '0xB3FA262d0fB521cc93bE83d87b322b8A23DAf3F0';
|
|
697
564
|
/**
|
|
698
565
|
* The adapter contract address for EVM mainnet networks.
|
|
699
566
|
*
|
|
700
567
|
* This contract serves as an adapter for integrating with various protocols
|
|
701
568
|
* on EVM-compatible chains. Use this address for mainnet adapter integrations.
|
|
702
|
-
*/
|
|
703
|
-
const ADAPTER_CONTRACT_EVM_MAINNET = '0x7FB8c7260b63934d8da38aF902f87ae6e284a845';
|
|
569
|
+
*/ const ADAPTER_CONTRACT_EVM_MAINNET = '0x7FB8c7260b63934d8da38aF902f87ae6e284a845';
|
|
704
570
|
/**
|
|
705
571
|
* The adapter contract address for EVM testnet networks.
|
|
706
572
|
*
|
|
707
573
|
* This contract serves as an adapter for integrating with various protocols
|
|
708
574
|
* on EVM-compatible testnet chains. Use this address for testnet adapter
|
|
709
575
|
* integrations (e.g., Arc Testnet).
|
|
710
|
-
*/
|
|
711
|
-
const ADAPTER_CONTRACT_EVM_TESTNET = '0xBBD70b01a1CAbc96d5b7b129Ae1AAabdf50dd40b';
|
|
576
|
+
*/ const ADAPTER_CONTRACT_EVM_TESTNET = '0xBBD70b01a1CAbc96d5b7b129Ae1AAabdf50dd40b';
|
|
712
577
|
/**
|
|
713
578
|
* The GatewayWallet contract address for EVM mainnet networks.
|
|
714
579
|
*
|
|
715
580
|
* This contract manages wallet operations for Gateway transactions
|
|
716
581
|
* on mainnet environments across EVM-compatible chains.
|
|
717
|
-
*/
|
|
718
|
-
const GATEWAY_WALLET_EVM_MAINNET = '0x77777777Dcc4d5A8B6E418Fd04D8997ef11000eE';
|
|
582
|
+
*/ const GATEWAY_WALLET_EVM_MAINNET = '0x77777777Dcc4d5A8B6E418Fd04D8997ef11000eE';
|
|
719
583
|
/**
|
|
720
584
|
* The GatewayMinter contract address for EVM mainnet networks.
|
|
721
585
|
*
|
|
722
586
|
* This contract handles minting operations for Gateway transactions
|
|
723
587
|
* on mainnet environments across EVM-compatible chains.
|
|
724
|
-
*/
|
|
725
|
-
const GATEWAY_MINTER_EVM_MAINNET = '0x2222222d7164433c4C09B0b0D809a9b52C04C205';
|
|
588
|
+
*/ const GATEWAY_MINTER_EVM_MAINNET = '0x2222222d7164433c4C09B0b0D809a9b52C04C205';
|
|
726
589
|
/**
|
|
727
590
|
* The GatewayWallet contract address for EVM testnet networks.
|
|
728
591
|
*
|
|
729
592
|
* This contract manages wallet operations for Gateway transactions
|
|
730
593
|
* on testnet environments across EVM-compatible chains.
|
|
731
|
-
*/
|
|
732
|
-
const GATEWAY_WALLET_EVM_TESTNET = '0x0077777d7EBA4688BDeF3E311b846F25870A19B9';
|
|
594
|
+
*/ const GATEWAY_WALLET_EVM_TESTNET = '0x0077777d7EBA4688BDeF3E311b846F25870A19B9';
|
|
733
595
|
/**
|
|
734
596
|
* The GatewayMinter contract address for EVM testnet networks.
|
|
735
597
|
*
|
|
736
598
|
* This contract handles minting operations for Gateway transactions
|
|
737
599
|
* on testnet environments across EVM-compatible chains.
|
|
738
|
-
*/
|
|
739
|
-
const GATEWAY_MINTER_EVM_TESTNET = '0x0022222ABE238Cc2C7Bb1f21003F0a260052475B';
|
|
600
|
+
*/ const GATEWAY_MINTER_EVM_TESTNET = '0x0022222ABE238Cc2C7Bb1f21003F0a260052475B';
|
|
740
601
|
/**
|
|
741
602
|
* The GatewayWallet program address for Solana mainnet.
|
|
742
603
|
*
|
|
743
604
|
* This program manages wallet operations for Gateway transactions
|
|
744
605
|
* on Solana mainnet.
|
|
745
|
-
*/
|
|
746
|
-
const GATEWAY_WALLET_SOLANA_MAINNET = 'GATEwy4YxeiEbRJLwB6dXgg7q61e6zBPrMzYj5h1pRXQ';
|
|
606
|
+
*/ const GATEWAY_WALLET_SOLANA_MAINNET = 'GATEwy4YxeiEbRJLwB6dXgg7q61e6zBPrMzYj5h1pRXQ';
|
|
747
607
|
/**
|
|
748
608
|
* The GatewayMinter program address for Solana mainnet.
|
|
749
609
|
*
|
|
750
610
|
* This program handles minting operations for Gateway transactions
|
|
751
611
|
* on Solana mainnet.
|
|
752
|
-
*/
|
|
753
|
-
const GATEWAY_MINTER_SOLANA_MAINNET = 'GATEm5SoBJiSw1v2Pz1iPBgUYkXzCUJ27XSXhDfSyzVZ';
|
|
612
|
+
*/ const GATEWAY_MINTER_SOLANA_MAINNET = 'GATEm5SoBJiSw1v2Pz1iPBgUYkXzCUJ27XSXhDfSyzVZ';
|
|
754
613
|
/**
|
|
755
614
|
* The GatewayWallet program address for Solana devnet.
|
|
756
615
|
*
|
|
757
616
|
* This program manages wallet operations for Gateway transactions
|
|
758
617
|
* on Solana devnet.
|
|
759
|
-
*/
|
|
760
|
-
const GATEWAY_WALLET_SOLANA_DEVNET = 'GATEwdfmYNELfp5wDmmR6noSr2vHnAfBPMm2PvCzX5vu';
|
|
618
|
+
*/ const GATEWAY_WALLET_SOLANA_DEVNET = 'GATEwdfmYNELfp5wDmmR6noSr2vHnAfBPMm2PvCzX5vu';
|
|
761
619
|
/**
|
|
762
620
|
* The GatewayMinter program address for Solana devnet.
|
|
763
621
|
*
|
|
764
622
|
* This program handles minting operations for Gateway transactions
|
|
765
623
|
* on Solana devnet.
|
|
766
|
-
*/
|
|
767
|
-
const GATEWAY_MINTER_SOLANA_DEVNET = 'GATEmKK2ECL1brEngQZWCgMWPbvrEYqsV6u29dAaHavr';
|
|
624
|
+
*/ const GATEWAY_MINTER_SOLANA_DEVNET = 'GATEmKK2ECL1brEngQZWCgMWPbvrEYqsV6u29dAaHavr';
|
|
768
625
|
|
|
769
626
|
/**
|
|
770
627
|
* Arc Testnet chain definition
|
|
@@ -774,8 +631,7 @@ const GATEWAY_MINTER_SOLANA_DEVNET = 'GATEmKK2ECL1brEngQZWCgMWPbvrEYqsV6u29dAaHa
|
|
|
774
631
|
* and asset tokenization. Arc uses USDC as the native gas token and
|
|
775
632
|
* features the Malachite Byzantine Fault Tolerant (BFT) consensus
|
|
776
633
|
* engine for sub-second finality.
|
|
777
|
-
*/
|
|
778
|
-
const ArcTestnet = defineChain({
|
|
634
|
+
*/ const ArcTestnet = defineChain({
|
|
779
635
|
type: 'evm',
|
|
780
636
|
chain: Blockchain.Arc_Testnet,
|
|
781
637
|
name: 'Arc Testnet',
|
|
@@ -786,12 +642,14 @@ const ArcTestnet = defineChain({
|
|
|
786
642
|
// Arc uses native USDC with 18 decimals for gas payments (EVM standard).
|
|
787
643
|
// Note: The ERC-20 USDC contract at usdcAddress uses 6 decimals.
|
|
788
644
|
// See: https://docs.arc.network/arc/references/contract-addresses
|
|
789
|
-
decimals: 18
|
|
645
|
+
decimals: 18
|
|
790
646
|
},
|
|
791
647
|
chainId: 5042002,
|
|
792
648
|
isTestnet: true,
|
|
793
649
|
explorerUrl: 'https://testnet.arcscan.app/tx/{hash}',
|
|
794
|
-
rpcEndpoints: [
|
|
650
|
+
rpcEndpoints: [
|
|
651
|
+
'https://rpc.testnet.arc.network/'
|
|
652
|
+
],
|
|
795
653
|
eurcAddress: '0x89B50855Aa3bE2F677cD6303Cec089B5F319D72a',
|
|
796
654
|
usdcAddress: '0x3600000000000000000000000000000000000000',
|
|
797
655
|
usdtAddress: null,
|
|
@@ -803,39 +661,38 @@ const ArcTestnet = defineChain({
|
|
|
803
661
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
804
662
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
805
663
|
confirmations: 1,
|
|
806
|
-
fastConfirmations: 1
|
|
807
|
-
}
|
|
664
|
+
fastConfirmations: 1
|
|
665
|
+
}
|
|
808
666
|
},
|
|
809
667
|
forwarderSupported: {
|
|
810
|
-
source:
|
|
811
|
-
destination: true
|
|
812
|
-
}
|
|
668
|
+
source: false,
|
|
669
|
+
destination: true
|
|
670
|
+
}
|
|
813
671
|
},
|
|
814
672
|
kitContracts: {
|
|
815
673
|
bridge: BRIDGE_CONTRACT_EVM_TESTNET,
|
|
816
|
-
adapter: ADAPTER_CONTRACT_EVM_TESTNET
|
|
674
|
+
adapter: ADAPTER_CONTRACT_EVM_TESTNET
|
|
817
675
|
},
|
|
818
676
|
gateway: {
|
|
819
677
|
domain: 26,
|
|
820
678
|
contracts: {
|
|
821
679
|
v1: {
|
|
822
680
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
823
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
824
|
-
}
|
|
681
|
+
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
682
|
+
}
|
|
825
683
|
},
|
|
826
684
|
forwarderSupported: {
|
|
827
685
|
source: true,
|
|
828
|
-
destination: true
|
|
829
|
-
}
|
|
830
|
-
}
|
|
686
|
+
destination: true
|
|
687
|
+
}
|
|
688
|
+
}
|
|
831
689
|
});
|
|
832
690
|
|
|
833
691
|
/**
|
|
834
692
|
* Arbitrum Mainnet chain definition
|
|
835
693
|
* @remarks
|
|
836
694
|
* This represents the official production network for the Arbitrum blockchain.
|
|
837
|
-
*/
|
|
838
|
-
const Arbitrum = defineChain({
|
|
695
|
+
*/ const Arbitrum = defineChain({
|
|
839
696
|
type: 'evm',
|
|
840
697
|
chain: Blockchain.Arbitrum,
|
|
841
698
|
name: 'Arbitrum',
|
|
@@ -843,12 +700,14 @@ const Arbitrum = defineChain({
|
|
|
843
700
|
nativeCurrency: {
|
|
844
701
|
name: 'Ether',
|
|
845
702
|
symbol: 'ETH',
|
|
846
|
-
decimals: 18
|
|
703
|
+
decimals: 18
|
|
847
704
|
},
|
|
848
705
|
chainId: 42161,
|
|
849
706
|
isTestnet: false,
|
|
850
707
|
explorerUrl: 'https://arbiscan.io/tx/{hash}',
|
|
851
|
-
rpcEndpoints: [
|
|
708
|
+
rpcEndpoints: [
|
|
709
|
+
'https://arb1.arbitrum.io/rpc'
|
|
710
|
+
],
|
|
852
711
|
eurcAddress: null,
|
|
853
712
|
usdcAddress: '0xaf88d065e77c8cc2239327c5edb3a432268e5831',
|
|
854
713
|
usdtAddress: null,
|
|
@@ -859,46 +718,45 @@ const Arbitrum = defineChain({
|
|
|
859
718
|
type: 'split',
|
|
860
719
|
tokenMessenger: '0x19330d10D9Cc8751218eaf51E8885D058642E08A',
|
|
861
720
|
messageTransmitter: '0xC30362313FBBA5cf9163F0bb16a0e01f01A896ca',
|
|
862
|
-
confirmations: 65
|
|
721
|
+
confirmations: 65
|
|
863
722
|
},
|
|
864
723
|
v2: {
|
|
865
724
|
type: 'split',
|
|
866
725
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
867
726
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
868
727
|
confirmations: 65,
|
|
869
|
-
fastConfirmations: 1
|
|
870
|
-
}
|
|
728
|
+
fastConfirmations: 1
|
|
729
|
+
}
|
|
871
730
|
},
|
|
872
731
|
forwarderSupported: {
|
|
873
|
-
source:
|
|
874
|
-
destination: true
|
|
875
|
-
}
|
|
732
|
+
source: false,
|
|
733
|
+
destination: true
|
|
734
|
+
}
|
|
876
735
|
},
|
|
877
736
|
kitContracts: {
|
|
878
737
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
879
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
738
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
880
739
|
},
|
|
881
740
|
gateway: {
|
|
882
741
|
domain: 3,
|
|
883
742
|
contracts: {
|
|
884
743
|
v1: {
|
|
885
744
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
886
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
887
|
-
}
|
|
745
|
+
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
746
|
+
}
|
|
888
747
|
},
|
|
889
748
|
forwarderSupported: {
|
|
890
749
|
source: true,
|
|
891
|
-
destination: true
|
|
892
|
-
}
|
|
893
|
-
}
|
|
750
|
+
destination: true
|
|
751
|
+
}
|
|
752
|
+
}
|
|
894
753
|
});
|
|
895
754
|
|
|
896
755
|
/**
|
|
897
756
|
* Arbitrum Sepolia Testnet chain definition
|
|
898
757
|
* @remarks
|
|
899
758
|
* This represents the official test network for the Arbitrum blockchain on Sepolia.
|
|
900
|
-
*/
|
|
901
|
-
const ArbitrumSepolia = defineChain({
|
|
759
|
+
*/ const ArbitrumSepolia = defineChain({
|
|
902
760
|
type: 'evm',
|
|
903
761
|
chain: Blockchain.Arbitrum_Sepolia,
|
|
904
762
|
name: 'Arbitrum Sepolia',
|
|
@@ -906,12 +764,14 @@ const ArbitrumSepolia = defineChain({
|
|
|
906
764
|
nativeCurrency: {
|
|
907
765
|
name: 'Sepolia Ether',
|
|
908
766
|
symbol: 'ETH',
|
|
909
|
-
decimals: 18
|
|
767
|
+
decimals: 18
|
|
910
768
|
},
|
|
911
769
|
chainId: 421614,
|
|
912
770
|
isTestnet: true,
|
|
913
771
|
explorerUrl: 'https://sepolia.arbiscan.io/tx/{hash}',
|
|
914
|
-
rpcEndpoints: [
|
|
772
|
+
rpcEndpoints: [
|
|
773
|
+
'https://sepolia-rollup.arbitrum.io/rpc'
|
|
774
|
+
],
|
|
915
775
|
eurcAddress: null,
|
|
916
776
|
usdcAddress: '0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d',
|
|
917
777
|
usdtAddress: null,
|
|
@@ -922,45 +782,45 @@ const ArbitrumSepolia = defineChain({
|
|
|
922
782
|
type: 'split',
|
|
923
783
|
tokenMessenger: '0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5',
|
|
924
784
|
messageTransmitter: '0xaCF1ceeF35caAc005e15888dDb8A3515C41B4872',
|
|
925
|
-
confirmations: 65
|
|
785
|
+
confirmations: 65
|
|
926
786
|
},
|
|
927
787
|
v2: {
|
|
928
788
|
type: 'split',
|
|
929
789
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
930
790
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
931
791
|
confirmations: 65,
|
|
932
|
-
fastConfirmations: 1
|
|
933
|
-
}
|
|
792
|
+
fastConfirmations: 1
|
|
793
|
+
}
|
|
934
794
|
},
|
|
935
795
|
forwarderSupported: {
|
|
936
|
-
source:
|
|
937
|
-
destination: true
|
|
938
|
-
}
|
|
796
|
+
source: false,
|
|
797
|
+
destination: true
|
|
798
|
+
}
|
|
939
799
|
},
|
|
940
800
|
kitContracts: {
|
|
941
801
|
bridge: BRIDGE_CONTRACT_EVM_TESTNET,
|
|
802
|
+
adapter: ADAPTER_CONTRACT_EVM_TESTNET
|
|
942
803
|
},
|
|
943
804
|
gateway: {
|
|
944
805
|
domain: 3,
|
|
945
806
|
contracts: {
|
|
946
807
|
v1: {
|
|
947
808
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
948
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
949
|
-
}
|
|
809
|
+
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
810
|
+
}
|
|
950
811
|
},
|
|
951
812
|
forwarderSupported: {
|
|
952
813
|
source: true,
|
|
953
|
-
destination: true
|
|
954
|
-
}
|
|
955
|
-
}
|
|
814
|
+
destination: true
|
|
815
|
+
}
|
|
816
|
+
}
|
|
956
817
|
});
|
|
957
818
|
|
|
958
819
|
/**
|
|
959
820
|
* Avalanche Mainnet chain definition
|
|
960
821
|
* @remarks
|
|
961
822
|
* This represents the official production network for the Avalanche blockchain.
|
|
962
|
-
*/
|
|
963
|
-
const Avalanche = defineChain({
|
|
823
|
+
*/ const Avalanche = defineChain({
|
|
964
824
|
type: 'evm',
|
|
965
825
|
chain: Blockchain.Avalanche,
|
|
966
826
|
name: 'Avalanche',
|
|
@@ -968,12 +828,14 @@ const Avalanche = defineChain({
|
|
|
968
828
|
nativeCurrency: {
|
|
969
829
|
name: 'Avalanche',
|
|
970
830
|
symbol: 'AVAX',
|
|
971
|
-
decimals: 18
|
|
831
|
+
decimals: 18
|
|
972
832
|
},
|
|
973
833
|
chainId: 43114,
|
|
974
834
|
isTestnet: false,
|
|
975
835
|
explorerUrl: 'https://subnets.avax.network/c-chain/tx/{hash}',
|
|
976
|
-
rpcEndpoints: [
|
|
836
|
+
rpcEndpoints: [
|
|
837
|
+
'https://api.avax.network/ext/bc/C/rpc'
|
|
838
|
+
],
|
|
977
839
|
eurcAddress: '0xc891eb4cbdeff6e073e859e987815ed1505c2acd',
|
|
978
840
|
usdcAddress: '0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E',
|
|
979
841
|
usdtAddress: '0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7',
|
|
@@ -984,46 +846,45 @@ const Avalanche = defineChain({
|
|
|
984
846
|
type: 'split',
|
|
985
847
|
tokenMessenger: '0x6b25532e1060ce10cc3b0a99e5683b91bfde6982',
|
|
986
848
|
messageTransmitter: '0x8186359af5f57fbb40c6b14a588d2a59c0c29880',
|
|
987
|
-
confirmations: 1
|
|
849
|
+
confirmations: 1
|
|
988
850
|
},
|
|
989
851
|
v2: {
|
|
990
852
|
type: 'split',
|
|
991
853
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
992
854
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
993
855
|
confirmations: 1,
|
|
994
|
-
fastConfirmations: 1
|
|
995
|
-
}
|
|
856
|
+
fastConfirmations: 1
|
|
857
|
+
}
|
|
996
858
|
},
|
|
997
859
|
forwarderSupported: {
|
|
998
|
-
source:
|
|
999
|
-
destination: true
|
|
1000
|
-
}
|
|
860
|
+
source: false,
|
|
861
|
+
destination: true
|
|
862
|
+
}
|
|
1001
863
|
},
|
|
1002
864
|
kitContracts: {
|
|
1003
865
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
1004
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
866
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
1005
867
|
},
|
|
1006
868
|
gateway: {
|
|
1007
869
|
domain: 1,
|
|
1008
870
|
contracts: {
|
|
1009
871
|
v1: {
|
|
1010
872
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
1011
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
1012
|
-
}
|
|
873
|
+
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
874
|
+
}
|
|
1013
875
|
},
|
|
1014
876
|
forwarderSupported: {
|
|
1015
877
|
source: true,
|
|
1016
|
-
destination: true
|
|
1017
|
-
}
|
|
1018
|
-
}
|
|
878
|
+
destination: true
|
|
879
|
+
}
|
|
880
|
+
}
|
|
1019
881
|
});
|
|
1020
882
|
|
|
1021
883
|
/**
|
|
1022
884
|
* Avalanche Fuji Testnet chain definition
|
|
1023
885
|
* @remarks
|
|
1024
886
|
* This represents the official test network for the Avalanche blockchain.
|
|
1025
|
-
*/
|
|
1026
|
-
const AvalancheFuji = defineChain({
|
|
887
|
+
*/ const AvalancheFuji = defineChain({
|
|
1027
888
|
type: 'evm',
|
|
1028
889
|
chain: Blockchain.Avalanche_Fuji,
|
|
1029
890
|
name: 'Avalanche Fuji',
|
|
@@ -1031,7 +892,7 @@ const AvalancheFuji = defineChain({
|
|
|
1031
892
|
nativeCurrency: {
|
|
1032
893
|
name: 'Avalanche',
|
|
1033
894
|
symbol: 'AVAX',
|
|
1034
|
-
decimals: 18
|
|
895
|
+
decimals: 18
|
|
1035
896
|
},
|
|
1036
897
|
chainId: 43113,
|
|
1037
898
|
isTestnet: true,
|
|
@@ -1046,46 +907,47 @@ const AvalancheFuji = defineChain({
|
|
|
1046
907
|
type: 'split',
|
|
1047
908
|
tokenMessenger: '0xeb08f243e5d3fcff26a9e38ae5520a669f4019d0',
|
|
1048
909
|
messageTransmitter: '0xa9fb1b3009dcb79e2fe346c16a604b8fa8ae0a79',
|
|
1049
|
-
confirmations: 1
|
|
910
|
+
confirmations: 1
|
|
1050
911
|
},
|
|
1051
912
|
v2: {
|
|
1052
913
|
type: 'split',
|
|
1053
914
|
tokenMessenger: '0x8fe6b999dc680ccfdd5bf7eb0974218be2542daa',
|
|
1054
915
|
messageTransmitter: '0xe737e5cebeeba77efe34d4aa090756590b1ce275',
|
|
1055
916
|
confirmations: 1,
|
|
1056
|
-
fastConfirmations: 1
|
|
1057
|
-
}
|
|
917
|
+
fastConfirmations: 1
|
|
918
|
+
}
|
|
1058
919
|
},
|
|
1059
920
|
forwarderSupported: {
|
|
1060
|
-
source:
|
|
1061
|
-
destination: true
|
|
1062
|
-
}
|
|
921
|
+
source: false,
|
|
922
|
+
destination: true
|
|
923
|
+
}
|
|
1063
924
|
},
|
|
1064
|
-
rpcEndpoints: [
|
|
925
|
+
rpcEndpoints: [
|
|
926
|
+
'https://api.avax-test.network/ext/bc/C/rpc'
|
|
927
|
+
],
|
|
1065
928
|
kitContracts: {
|
|
1066
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
929
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1067
930
|
},
|
|
1068
931
|
gateway: {
|
|
1069
932
|
domain: 1,
|
|
1070
933
|
contracts: {
|
|
1071
934
|
v1: {
|
|
1072
935
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
1073
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
1074
|
-
}
|
|
936
|
+
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
937
|
+
}
|
|
1075
938
|
},
|
|
1076
939
|
forwarderSupported: {
|
|
1077
940
|
source: true,
|
|
1078
|
-
destination: true
|
|
1079
|
-
}
|
|
1080
|
-
}
|
|
941
|
+
destination: true
|
|
942
|
+
}
|
|
943
|
+
}
|
|
1081
944
|
});
|
|
1082
945
|
|
|
1083
946
|
/**
|
|
1084
947
|
* Base chain definition
|
|
1085
948
|
* @remarks
|
|
1086
949
|
* This represents the official production network for the Base blockchain.
|
|
1087
|
-
*/
|
|
1088
|
-
const Base = defineChain({
|
|
950
|
+
*/ const Base = defineChain({
|
|
1089
951
|
type: 'evm',
|
|
1090
952
|
chain: Blockchain.Base,
|
|
1091
953
|
name: 'Base',
|
|
@@ -1093,12 +955,15 @@ const Base = defineChain({
|
|
|
1093
955
|
nativeCurrency: {
|
|
1094
956
|
name: 'Ether',
|
|
1095
957
|
symbol: 'ETH',
|
|
1096
|
-
decimals: 18
|
|
958
|
+
decimals: 18
|
|
1097
959
|
},
|
|
1098
960
|
chainId: 8453,
|
|
1099
961
|
isTestnet: false,
|
|
1100
962
|
explorerUrl: 'https://basescan.org/tx/{hash}',
|
|
1101
|
-
rpcEndpoints: [
|
|
963
|
+
rpcEndpoints: [
|
|
964
|
+
'https://mainnet.base.org',
|
|
965
|
+
'https://base.publicnode.com'
|
|
966
|
+
],
|
|
1102
967
|
eurcAddress: '0x60a3e35cc302bfa44cb288bc5a4f316fdb1adb42',
|
|
1103
968
|
usdcAddress: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913',
|
|
1104
969
|
usdtAddress: null,
|
|
@@ -1109,46 +974,45 @@ const Base = defineChain({
|
|
|
1109
974
|
type: 'split',
|
|
1110
975
|
tokenMessenger: '0x1682Ae6375C4E4A97e4B583BC394c861A46D8962',
|
|
1111
976
|
messageTransmitter: '0xAD09780d193884d503182aD4588450C416D6F9D4',
|
|
1112
|
-
confirmations: 65
|
|
977
|
+
confirmations: 65
|
|
1113
978
|
},
|
|
1114
979
|
v2: {
|
|
1115
980
|
type: 'split',
|
|
1116
981
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
1117
982
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
1118
983
|
confirmations: 65,
|
|
1119
|
-
fastConfirmations: 1
|
|
1120
|
-
}
|
|
984
|
+
fastConfirmations: 1
|
|
985
|
+
}
|
|
1121
986
|
},
|
|
1122
987
|
forwarderSupported: {
|
|
1123
|
-
source:
|
|
1124
|
-
destination: true
|
|
1125
|
-
}
|
|
988
|
+
source: false,
|
|
989
|
+
destination: true
|
|
990
|
+
}
|
|
1126
991
|
},
|
|
1127
992
|
kitContracts: {
|
|
1128
993
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
1129
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
994
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
1130
995
|
},
|
|
1131
996
|
gateway: {
|
|
1132
997
|
domain: 6,
|
|
1133
998
|
contracts: {
|
|
1134
999
|
v1: {
|
|
1135
1000
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
1136
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
1137
|
-
}
|
|
1001
|
+
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
1002
|
+
}
|
|
1138
1003
|
},
|
|
1139
1004
|
forwarderSupported: {
|
|
1140
1005
|
source: true,
|
|
1141
|
-
destination: true
|
|
1142
|
-
}
|
|
1143
|
-
}
|
|
1006
|
+
destination: true
|
|
1007
|
+
}
|
|
1008
|
+
}
|
|
1144
1009
|
});
|
|
1145
1010
|
|
|
1146
1011
|
/**
|
|
1147
1012
|
* Base Sepolia Testnet chain definition
|
|
1148
1013
|
* @remarks
|
|
1149
1014
|
* This represents the official test network for the Base blockchain on Sepolia.
|
|
1150
|
-
*/
|
|
1151
|
-
const BaseSepolia = defineChain({
|
|
1015
|
+
*/ const BaseSepolia = defineChain({
|
|
1152
1016
|
type: 'evm',
|
|
1153
1017
|
chain: Blockchain.Base_Sepolia,
|
|
1154
1018
|
name: 'Base Sepolia',
|
|
@@ -1156,12 +1020,14 @@ const BaseSepolia = defineChain({
|
|
|
1156
1020
|
nativeCurrency: {
|
|
1157
1021
|
name: 'Sepolia Ether',
|
|
1158
1022
|
symbol: 'ETH',
|
|
1159
|
-
decimals: 18
|
|
1023
|
+
decimals: 18
|
|
1160
1024
|
},
|
|
1161
1025
|
chainId: 84532,
|
|
1162
1026
|
isTestnet: true,
|
|
1163
1027
|
explorerUrl: 'https://sepolia.basescan.org/tx/{hash}',
|
|
1164
|
-
rpcEndpoints: [
|
|
1028
|
+
rpcEndpoints: [
|
|
1029
|
+
'https://sepolia.base.org'
|
|
1030
|
+
],
|
|
1165
1031
|
eurcAddress: '0x808456652fdb597867f38412077A9182bf77359F',
|
|
1166
1032
|
usdcAddress: '0x036CbD53842c5426634e7929541eC2318f3dCF7e',
|
|
1167
1033
|
usdtAddress: null,
|
|
@@ -1172,45 +1038,45 @@ const BaseSepolia = defineChain({
|
|
|
1172
1038
|
type: 'split',
|
|
1173
1039
|
tokenMessenger: '0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5',
|
|
1174
1040
|
messageTransmitter: '0x7865fAfC2db2093669d92c0F33AeEF291086BEFD',
|
|
1175
|
-
confirmations: 65
|
|
1041
|
+
confirmations: 65
|
|
1176
1042
|
},
|
|
1177
1043
|
v2: {
|
|
1178
1044
|
type: 'split',
|
|
1179
1045
|
tokenMessenger: '0x8fe6b999dc680ccfdd5bf7eb0974218be2542daa',
|
|
1180
1046
|
messageTransmitter: '0xe737e5cebeeba77efe34d4aa090756590b1ce275',
|
|
1181
1047
|
confirmations: 65,
|
|
1182
|
-
fastConfirmations: 1
|
|
1183
|
-
}
|
|
1048
|
+
fastConfirmations: 1
|
|
1049
|
+
}
|
|
1184
1050
|
},
|
|
1185
1051
|
forwarderSupported: {
|
|
1186
|
-
source:
|
|
1187
|
-
destination: true
|
|
1188
|
-
}
|
|
1052
|
+
source: false,
|
|
1053
|
+
destination: true
|
|
1054
|
+
}
|
|
1189
1055
|
},
|
|
1190
1056
|
kitContracts: {
|
|
1191
1057
|
bridge: BRIDGE_CONTRACT_EVM_TESTNET,
|
|
1058
|
+
adapter: ADAPTER_CONTRACT_EVM_TESTNET
|
|
1192
1059
|
},
|
|
1193
1060
|
gateway: {
|
|
1194
1061
|
domain: 6,
|
|
1195
1062
|
contracts: {
|
|
1196
1063
|
v1: {
|
|
1197
1064
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
1198
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
1199
|
-
}
|
|
1065
|
+
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
1066
|
+
}
|
|
1200
1067
|
},
|
|
1201
1068
|
forwarderSupported: {
|
|
1202
1069
|
source: true,
|
|
1203
|
-
destination: true
|
|
1204
|
-
}
|
|
1205
|
-
}
|
|
1070
|
+
destination: true
|
|
1071
|
+
}
|
|
1072
|
+
}
|
|
1206
1073
|
});
|
|
1207
1074
|
|
|
1208
1075
|
/**
|
|
1209
1076
|
* Celo Mainnet chain definition
|
|
1210
1077
|
* @remarks
|
|
1211
1078
|
* This represents the official production network for the Celo blockchain.
|
|
1212
|
-
*/
|
|
1213
|
-
defineChain({
|
|
1079
|
+
*/ defineChain({
|
|
1214
1080
|
type: 'evm',
|
|
1215
1081
|
chain: Blockchain.Celo,
|
|
1216
1082
|
name: 'Celo',
|
|
@@ -1218,24 +1084,25 @@ defineChain({
|
|
|
1218
1084
|
nativeCurrency: {
|
|
1219
1085
|
name: 'Celo',
|
|
1220
1086
|
symbol: 'CELO',
|
|
1221
|
-
decimals: 18
|
|
1087
|
+
decimals: 18
|
|
1222
1088
|
},
|
|
1223
1089
|
chainId: 42220,
|
|
1224
1090
|
isTestnet: false,
|
|
1225
1091
|
explorerUrl: 'https://celoscan.io/tx/{hash}',
|
|
1226
|
-
rpcEndpoints: [
|
|
1092
|
+
rpcEndpoints: [
|
|
1093
|
+
'https://forno.celo.org'
|
|
1094
|
+
],
|
|
1227
1095
|
eurcAddress: null,
|
|
1228
1096
|
usdcAddress: '0xcebA9300f2b948710d2653dD7B07f33A8B32118C',
|
|
1229
1097
|
usdtAddress: '0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e',
|
|
1230
|
-
cctp: null
|
|
1098
|
+
cctp: null
|
|
1231
1099
|
});
|
|
1232
1100
|
|
|
1233
1101
|
/**
|
|
1234
1102
|
* Celo Alfajores Testnet chain definition
|
|
1235
1103
|
* @remarks
|
|
1236
1104
|
* This represents the official test network for the Celo blockchain.
|
|
1237
|
-
*/
|
|
1238
|
-
defineChain({
|
|
1105
|
+
*/ defineChain({
|
|
1239
1106
|
type: 'evm',
|
|
1240
1107
|
chain: Blockchain.Celo_Alfajores_Testnet,
|
|
1241
1108
|
name: 'Celo Alfajores',
|
|
@@ -1243,24 +1110,25 @@ defineChain({
|
|
|
1243
1110
|
nativeCurrency: {
|
|
1244
1111
|
name: 'Celo',
|
|
1245
1112
|
symbol: 'CELO',
|
|
1246
|
-
decimals: 18
|
|
1113
|
+
decimals: 18
|
|
1247
1114
|
},
|
|
1248
1115
|
chainId: 44787,
|
|
1249
1116
|
isTestnet: true,
|
|
1250
1117
|
explorerUrl: 'https://alfajores.celoscan.io/tx/{hash}',
|
|
1251
|
-
rpcEndpoints: [
|
|
1118
|
+
rpcEndpoints: [
|
|
1119
|
+
'https://alfajores-forno.celo-testnet.org'
|
|
1120
|
+
],
|
|
1252
1121
|
eurcAddress: null,
|
|
1253
1122
|
usdcAddress: '0x2F25deB3848C207fc8E0c34035B3Ba7fC157602B',
|
|
1254
1123
|
usdtAddress: null,
|
|
1255
|
-
cctp: null
|
|
1124
|
+
cctp: null
|
|
1256
1125
|
});
|
|
1257
1126
|
|
|
1258
1127
|
/**
|
|
1259
1128
|
* Codex Mainnet chain definition
|
|
1260
1129
|
* @remarks
|
|
1261
1130
|
* This represents the main network for the Codex blockchain.
|
|
1262
|
-
*/
|
|
1263
|
-
const Codex = defineChain({
|
|
1131
|
+
*/ const Codex = defineChain({
|
|
1264
1132
|
type: 'evm',
|
|
1265
1133
|
chain: Blockchain.Codex,
|
|
1266
1134
|
name: 'Codex Mainnet',
|
|
@@ -1268,12 +1136,14 @@ const Codex = defineChain({
|
|
|
1268
1136
|
nativeCurrency: {
|
|
1269
1137
|
name: 'ETH',
|
|
1270
1138
|
symbol: 'ETH',
|
|
1271
|
-
decimals: 18
|
|
1139
|
+
decimals: 18
|
|
1272
1140
|
},
|
|
1273
1141
|
chainId: 81224,
|
|
1274
1142
|
isTestnet: false,
|
|
1275
1143
|
explorerUrl: 'https://explorer.codex.xyz/tx/{hash}',
|
|
1276
|
-
rpcEndpoints: [
|
|
1144
|
+
rpcEndpoints: [
|
|
1145
|
+
'https://rpc.codex.xyz'
|
|
1146
|
+
],
|
|
1277
1147
|
eurcAddress: null,
|
|
1278
1148
|
usdcAddress: '0xd996633a415985DBd7D6D12f4A4343E31f5037cf',
|
|
1279
1149
|
usdtAddress: null,
|
|
@@ -1285,25 +1155,24 @@ const Codex = defineChain({
|
|
|
1285
1155
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
1286
1156
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
1287
1157
|
confirmations: 65,
|
|
1288
|
-
fastConfirmations: 1
|
|
1289
|
-
}
|
|
1158
|
+
fastConfirmations: 1
|
|
1159
|
+
}
|
|
1290
1160
|
},
|
|
1291
1161
|
forwarderSupported: {
|
|
1292
|
-
source:
|
|
1293
|
-
destination: true
|
|
1294
|
-
}
|
|
1162
|
+
source: false,
|
|
1163
|
+
destination: true
|
|
1164
|
+
}
|
|
1295
1165
|
},
|
|
1296
1166
|
kitContracts: {
|
|
1297
|
-
bridge: BRIDGE_CONTRACT_EVM_MAINNET
|
|
1298
|
-
}
|
|
1167
|
+
bridge: BRIDGE_CONTRACT_EVM_MAINNET
|
|
1168
|
+
}
|
|
1299
1169
|
});
|
|
1300
1170
|
|
|
1301
1171
|
/**
|
|
1302
1172
|
* Codex Testnet chain definition
|
|
1303
1173
|
* @remarks
|
|
1304
1174
|
* This represents the test network for the Codex blockchain.
|
|
1305
|
-
*/
|
|
1306
|
-
const CodexTestnet = defineChain({
|
|
1175
|
+
*/ const CodexTestnet = defineChain({
|
|
1307
1176
|
type: 'evm',
|
|
1308
1177
|
chain: Blockchain.Codex_Testnet,
|
|
1309
1178
|
name: 'Codex Testnet',
|
|
@@ -1311,12 +1180,14 @@ const CodexTestnet = defineChain({
|
|
|
1311
1180
|
nativeCurrency: {
|
|
1312
1181
|
name: 'ETH',
|
|
1313
1182
|
symbol: 'ETH',
|
|
1314
|
-
decimals: 18
|
|
1183
|
+
decimals: 18
|
|
1315
1184
|
},
|
|
1316
1185
|
chainId: 812242,
|
|
1317
1186
|
isTestnet: true,
|
|
1318
1187
|
explorerUrl: 'https://explorer.codex-stg.xyz/tx/{hash}',
|
|
1319
|
-
rpcEndpoints: [
|
|
1188
|
+
rpcEndpoints: [
|
|
1189
|
+
'https://rpc.codex-stg.xyz'
|
|
1190
|
+
],
|
|
1320
1191
|
eurcAddress: null,
|
|
1321
1192
|
usdcAddress: '0x6d7f141b6819C2c9CC2f818e6ad549E7Ca090F8f',
|
|
1322
1193
|
usdtAddress: null,
|
|
@@ -1328,17 +1199,17 @@ const CodexTestnet = defineChain({
|
|
|
1328
1199
|
tokenMessenger: '0x8fe6b999dc680ccfdd5bf7eb0974218be2542daa',
|
|
1329
1200
|
messageTransmitter: '0xe737e5cebeeba77efe34d4aa090756590b1ce275',
|
|
1330
1201
|
confirmations: 65,
|
|
1331
|
-
fastConfirmations: 1
|
|
1332
|
-
}
|
|
1202
|
+
fastConfirmations: 1
|
|
1203
|
+
}
|
|
1333
1204
|
},
|
|
1334
1205
|
forwarderSupported: {
|
|
1335
|
-
source:
|
|
1336
|
-
destination: true
|
|
1337
|
-
}
|
|
1206
|
+
source: false,
|
|
1207
|
+
destination: true
|
|
1208
|
+
}
|
|
1338
1209
|
},
|
|
1339
1210
|
kitContracts: {
|
|
1340
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1341
|
-
}
|
|
1211
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1212
|
+
}
|
|
1342
1213
|
});
|
|
1343
1214
|
|
|
1344
1215
|
/**
|
|
@@ -1346,8 +1217,7 @@ const CodexTestnet = defineChain({
|
|
|
1346
1217
|
* @remarks
|
|
1347
1218
|
* This represents the official production network for the Edge blockchain.
|
|
1348
1219
|
* Edge is an EVM-compatible blockchain.
|
|
1349
|
-
*/
|
|
1350
|
-
defineChain({
|
|
1220
|
+
*/ defineChain({
|
|
1351
1221
|
type: 'evm',
|
|
1352
1222
|
chain: Blockchain.Edge,
|
|
1353
1223
|
name: 'Edge',
|
|
@@ -1355,12 +1225,14 @@ defineChain({
|
|
|
1355
1225
|
nativeCurrency: {
|
|
1356
1226
|
name: 'Ether',
|
|
1357
1227
|
symbol: 'ETH',
|
|
1358
|
-
decimals: 18
|
|
1228
|
+
decimals: 18
|
|
1359
1229
|
},
|
|
1360
1230
|
chainId: 3343,
|
|
1361
1231
|
isTestnet: false,
|
|
1362
1232
|
explorerUrl: 'https://pro.edgex.exchange/en-US/explorer/tx/{hash}',
|
|
1363
|
-
rpcEndpoints: [
|
|
1233
|
+
rpcEndpoints: [
|
|
1234
|
+
'https://edge-mainnet.g.alchemy.com/public'
|
|
1235
|
+
],
|
|
1364
1236
|
eurcAddress: null,
|
|
1365
1237
|
usdcAddress: '0x98d2919b9A214E6Fa5384AC81E6864bA686Ad74c',
|
|
1366
1238
|
usdtAddress: null,
|
|
@@ -1372,17 +1244,17 @@ defineChain({
|
|
|
1372
1244
|
tokenMessenger: '0x98706A006bc632Df31CAdFCBD43F38887ce2ca5c',
|
|
1373
1245
|
messageTransmitter: '0x5b61381Fc9e58E70EfC13a4A97516997019198ee',
|
|
1374
1246
|
confirmations: 65,
|
|
1375
|
-
fastConfirmations: 1
|
|
1376
|
-
}
|
|
1247
|
+
fastConfirmations: 1
|
|
1248
|
+
}
|
|
1377
1249
|
},
|
|
1378
1250
|
forwarderSupported: {
|
|
1379
|
-
source:
|
|
1380
|
-
destination: true
|
|
1381
|
-
}
|
|
1251
|
+
source: false,
|
|
1252
|
+
destination: true
|
|
1253
|
+
}
|
|
1382
1254
|
},
|
|
1383
1255
|
kitContracts: {
|
|
1384
|
-
bridge: '0x6D1AaE1c34Aeb582022916a67f2A655C6f4eDFF2'
|
|
1385
|
-
}
|
|
1256
|
+
bridge: '0x6D1AaE1c34Aeb582022916a67f2A655C6f4eDFF2'
|
|
1257
|
+
}
|
|
1386
1258
|
});
|
|
1387
1259
|
|
|
1388
1260
|
/**
|
|
@@ -1390,8 +1262,7 @@ defineChain({
|
|
|
1390
1262
|
* @remarks
|
|
1391
1263
|
* This represents the official test network for the Edge blockchain.
|
|
1392
1264
|
* Edge is an EVM-compatible blockchain.
|
|
1393
|
-
*/
|
|
1394
|
-
defineChain({
|
|
1265
|
+
*/ defineChain({
|
|
1395
1266
|
type: 'evm',
|
|
1396
1267
|
chain: Blockchain.Edge_Testnet,
|
|
1397
1268
|
name: 'Edge Testnet',
|
|
@@ -1399,12 +1270,14 @@ defineChain({
|
|
|
1399
1270
|
nativeCurrency: {
|
|
1400
1271
|
name: 'Ether',
|
|
1401
1272
|
symbol: 'ETH',
|
|
1402
|
-
decimals: 18
|
|
1273
|
+
decimals: 18
|
|
1403
1274
|
},
|
|
1404
1275
|
chainId: 33431,
|
|
1405
1276
|
isTestnet: true,
|
|
1406
1277
|
explorerUrl: 'https://edge-testnet.explorer.alchemy.com/tx/{hash}',
|
|
1407
|
-
rpcEndpoints: [
|
|
1278
|
+
rpcEndpoints: [
|
|
1279
|
+
'https://edge-testnet.g.alchemy.com/public'
|
|
1280
|
+
],
|
|
1408
1281
|
eurcAddress: null,
|
|
1409
1282
|
usdcAddress: '0x2d9F7CAD728051AA35Ecdc472a14cf8cDF5CFD6B',
|
|
1410
1283
|
usdtAddress: null,
|
|
@@ -1416,25 +1289,24 @@ defineChain({
|
|
|
1416
1289
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
1417
1290
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
1418
1291
|
confirmations: 65,
|
|
1419
|
-
fastConfirmations: 1
|
|
1420
|
-
}
|
|
1292
|
+
fastConfirmations: 1
|
|
1293
|
+
}
|
|
1421
1294
|
},
|
|
1422
1295
|
forwarderSupported: {
|
|
1423
|
-
source:
|
|
1424
|
-
destination: true
|
|
1425
|
-
}
|
|
1296
|
+
source: false,
|
|
1297
|
+
destination: true
|
|
1298
|
+
}
|
|
1426
1299
|
},
|
|
1427
1300
|
kitContracts: {
|
|
1428
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1429
|
-
}
|
|
1301
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1302
|
+
}
|
|
1430
1303
|
});
|
|
1431
1304
|
|
|
1432
1305
|
/**
|
|
1433
1306
|
* Ethereum Mainnet chain definition
|
|
1434
1307
|
* @remarks
|
|
1435
1308
|
* This represents the official production network for the Ethereum blockchain.
|
|
1436
|
-
*/
|
|
1437
|
-
const Ethereum = defineChain({
|
|
1309
|
+
*/ const Ethereum = defineChain({
|
|
1438
1310
|
type: 'evm',
|
|
1439
1311
|
chain: Blockchain.Ethereum,
|
|
1440
1312
|
name: 'Ethereum',
|
|
@@ -1442,14 +1314,14 @@ const Ethereum = defineChain({
|
|
|
1442
1314
|
nativeCurrency: {
|
|
1443
1315
|
name: 'Ether',
|
|
1444
1316
|
symbol: 'ETH',
|
|
1445
|
-
decimals: 18
|
|
1317
|
+
decimals: 18
|
|
1446
1318
|
},
|
|
1447
1319
|
chainId: 1,
|
|
1448
1320
|
isTestnet: false,
|
|
1449
1321
|
explorerUrl: 'https://etherscan.io/tx/{hash}',
|
|
1450
1322
|
rpcEndpoints: [
|
|
1451
1323
|
'https://ethereum-rpc.publicnode.com',
|
|
1452
|
-
'https://ethereum.publicnode.com'
|
|
1324
|
+
'https://ethereum.publicnode.com'
|
|
1453
1325
|
],
|
|
1454
1326
|
eurcAddress: '0x1aBaEA1f7C830bD89Acc67eC4af516284b1bC33c',
|
|
1455
1327
|
usdcAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
|
|
@@ -1461,46 +1333,45 @@ const Ethereum = defineChain({
|
|
|
1461
1333
|
type: 'split',
|
|
1462
1334
|
tokenMessenger: '0xbd3fa81b58ba92a82136038b25adec7066af3155',
|
|
1463
1335
|
messageTransmitter: '0x0a992d191deec32afe36203ad87d7d289a738f81',
|
|
1464
|
-
confirmations: 65
|
|
1336
|
+
confirmations: 65
|
|
1465
1337
|
},
|
|
1466
1338
|
v2: {
|
|
1467
1339
|
type: 'split',
|
|
1468
1340
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
1469
1341
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
1470
1342
|
confirmations: 65,
|
|
1471
|
-
fastConfirmations: 2
|
|
1472
|
-
}
|
|
1343
|
+
fastConfirmations: 2
|
|
1344
|
+
}
|
|
1473
1345
|
},
|
|
1474
1346
|
forwarderSupported: {
|
|
1475
|
-
source:
|
|
1476
|
-
destination: true
|
|
1477
|
-
}
|
|
1347
|
+
source: false,
|
|
1348
|
+
destination: true
|
|
1349
|
+
}
|
|
1478
1350
|
},
|
|
1479
1351
|
kitContracts: {
|
|
1480
1352
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
1481
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
1353
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
1482
1354
|
},
|
|
1483
1355
|
gateway: {
|
|
1484
1356
|
domain: 0,
|
|
1485
1357
|
contracts: {
|
|
1486
1358
|
v1: {
|
|
1487
1359
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
1488
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
1489
|
-
}
|
|
1360
|
+
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
1361
|
+
}
|
|
1490
1362
|
},
|
|
1491
1363
|
forwarderSupported: {
|
|
1492
1364
|
source: true,
|
|
1493
|
-
destination: true
|
|
1494
|
-
}
|
|
1495
|
-
}
|
|
1365
|
+
destination: true
|
|
1366
|
+
}
|
|
1367
|
+
}
|
|
1496
1368
|
});
|
|
1497
1369
|
|
|
1498
1370
|
/**
|
|
1499
1371
|
* Ethereum Sepolia Testnet chain definition
|
|
1500
1372
|
* @remarks
|
|
1501
1373
|
* This represents the official test network for the Ethereum blockchain on Sepolia.
|
|
1502
|
-
*/
|
|
1503
|
-
const EthereumSepolia = defineChain({
|
|
1374
|
+
*/ const EthereumSepolia = defineChain({
|
|
1504
1375
|
type: 'evm',
|
|
1505
1376
|
chain: Blockchain.Ethereum_Sepolia,
|
|
1506
1377
|
name: 'Ethereum Sepolia',
|
|
@@ -1508,12 +1379,14 @@ const EthereumSepolia = defineChain({
|
|
|
1508
1379
|
nativeCurrency: {
|
|
1509
1380
|
name: 'Sepolia Ether',
|
|
1510
1381
|
symbol: 'ETH',
|
|
1511
|
-
decimals: 18
|
|
1382
|
+
decimals: 18
|
|
1512
1383
|
},
|
|
1513
1384
|
chainId: 11155111,
|
|
1514
1385
|
isTestnet: true,
|
|
1515
1386
|
explorerUrl: 'https://sepolia.etherscan.io/tx/{hash}',
|
|
1516
|
-
rpcEndpoints: [
|
|
1387
|
+
rpcEndpoints: [
|
|
1388
|
+
'https://ethereum-sepolia-rpc.publicnode.com'
|
|
1389
|
+
],
|
|
1517
1390
|
eurcAddress: '0x08210F9170F89Ab7658F0B5E3fF39b0E03C594D4',
|
|
1518
1391
|
usdcAddress: '0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238',
|
|
1519
1392
|
usdtAddress: null,
|
|
@@ -1524,45 +1397,45 @@ const EthereumSepolia = defineChain({
|
|
|
1524
1397
|
type: 'split',
|
|
1525
1398
|
tokenMessenger: '0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5',
|
|
1526
1399
|
messageTransmitter: '0x7865fAfC2db2093669d92c0F33AeEF291086BEFD',
|
|
1527
|
-
confirmations: 65
|
|
1400
|
+
confirmations: 65
|
|
1528
1401
|
},
|
|
1529
1402
|
v2: {
|
|
1530
1403
|
type: 'split',
|
|
1531
1404
|
tokenMessenger: '0x8fe6b999dc680ccfdd5bf7eb0974218be2542daa',
|
|
1532
1405
|
messageTransmitter: '0xe737e5cebeeba77efe34d4aa090756590b1ce275',
|
|
1533
1406
|
confirmations: 65,
|
|
1534
|
-
fastConfirmations: 2
|
|
1535
|
-
}
|
|
1407
|
+
fastConfirmations: 2
|
|
1408
|
+
}
|
|
1536
1409
|
},
|
|
1537
1410
|
forwarderSupported: {
|
|
1538
|
-
source:
|
|
1539
|
-
destination: true
|
|
1540
|
-
}
|
|
1411
|
+
source: false,
|
|
1412
|
+
destination: true
|
|
1413
|
+
}
|
|
1541
1414
|
},
|
|
1542
1415
|
kitContracts: {
|
|
1543
1416
|
bridge: BRIDGE_CONTRACT_EVM_TESTNET,
|
|
1417
|
+
adapter: ADAPTER_CONTRACT_EVM_TESTNET
|
|
1544
1418
|
},
|
|
1545
1419
|
gateway: {
|
|
1546
1420
|
domain: 0,
|
|
1547
1421
|
contracts: {
|
|
1548
1422
|
v1: {
|
|
1549
1423
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
1550
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
1551
|
-
}
|
|
1424
|
+
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
1425
|
+
}
|
|
1552
1426
|
},
|
|
1553
1427
|
forwarderSupported: {
|
|
1554
1428
|
source: true,
|
|
1555
|
-
destination: true
|
|
1556
|
-
}
|
|
1557
|
-
}
|
|
1429
|
+
destination: true
|
|
1430
|
+
}
|
|
1431
|
+
}
|
|
1558
1432
|
});
|
|
1559
1433
|
|
|
1560
1434
|
/**
|
|
1561
1435
|
* Hedera Mainnet chain definition
|
|
1562
1436
|
* @remarks
|
|
1563
1437
|
* This represents the official production network for the Hedera blockchain.
|
|
1564
|
-
*/
|
|
1565
|
-
defineChain({
|
|
1438
|
+
*/ defineChain({
|
|
1566
1439
|
type: 'hedera',
|
|
1567
1440
|
chain: Blockchain.Hedera,
|
|
1568
1441
|
name: 'Hedera',
|
|
@@ -1570,23 +1443,24 @@ defineChain({
|
|
|
1570
1443
|
nativeCurrency: {
|
|
1571
1444
|
name: 'HBAR',
|
|
1572
1445
|
symbol: 'HBAR',
|
|
1573
|
-
decimals: 18
|
|
1446
|
+
decimals: 18
|
|
1574
1447
|
},
|
|
1575
1448
|
isTestnet: false,
|
|
1576
|
-
explorerUrl: 'https://hashscan.io/mainnet/transaction/{hash}',
|
|
1577
|
-
rpcEndpoints: [
|
|
1449
|
+
explorerUrl: 'https://hashscan.io/mainnet/transaction/{hash}',
|
|
1450
|
+
rpcEndpoints: [
|
|
1451
|
+
'https://mainnet.hashio.io/api'
|
|
1452
|
+
],
|
|
1578
1453
|
eurcAddress: null,
|
|
1579
1454
|
usdcAddress: '0.0.456858',
|
|
1580
1455
|
usdtAddress: null,
|
|
1581
|
-
cctp: null
|
|
1456
|
+
cctp: null
|
|
1582
1457
|
});
|
|
1583
1458
|
|
|
1584
1459
|
/**
|
|
1585
1460
|
* Hedera Testnet chain definition
|
|
1586
1461
|
* @remarks
|
|
1587
1462
|
* This represents the official test network for the Hedera blockchain.
|
|
1588
|
-
*/
|
|
1589
|
-
defineChain({
|
|
1463
|
+
*/ defineChain({
|
|
1590
1464
|
type: 'hedera',
|
|
1591
1465
|
chain: Blockchain.Hedera_Testnet,
|
|
1592
1466
|
name: 'Hedera Testnet',
|
|
@@ -1594,15 +1468,17 @@ defineChain({
|
|
|
1594
1468
|
nativeCurrency: {
|
|
1595
1469
|
name: 'HBAR',
|
|
1596
1470
|
symbol: 'HBAR',
|
|
1597
|
-
decimals: 18
|
|
1471
|
+
decimals: 18
|
|
1598
1472
|
},
|
|
1599
1473
|
isTestnet: true,
|
|
1600
|
-
explorerUrl: 'https://hashscan.io/testnet/transaction/{hash}',
|
|
1601
|
-
rpcEndpoints: [
|
|
1474
|
+
explorerUrl: 'https://hashscan.io/testnet/transaction/{hash}',
|
|
1475
|
+
rpcEndpoints: [
|
|
1476
|
+
'https://testnet.hashio.io/api'
|
|
1477
|
+
],
|
|
1602
1478
|
eurcAddress: null,
|
|
1603
1479
|
usdcAddress: '0.0.429274',
|
|
1604
1480
|
usdtAddress: null,
|
|
1605
|
-
cctp: null
|
|
1481
|
+
cctp: null
|
|
1606
1482
|
});
|
|
1607
1483
|
|
|
1608
1484
|
/**
|
|
@@ -1611,8 +1487,7 @@ defineChain({
|
|
|
1611
1487
|
* This represents the official production network for the HyperEVM blockchain.
|
|
1612
1488
|
* HyperEVM is a Layer 1 blockchain specialized for DeFi and trading applications
|
|
1613
1489
|
* with native orderbook and matching engine.
|
|
1614
|
-
*/
|
|
1615
|
-
const HyperEVM = defineChain({
|
|
1490
|
+
*/ const HyperEVM = defineChain({
|
|
1616
1491
|
type: 'evm',
|
|
1617
1492
|
chain: Blockchain.HyperEVM,
|
|
1618
1493
|
name: 'HyperEVM',
|
|
@@ -1620,12 +1495,14 @@ const HyperEVM = defineChain({
|
|
|
1620
1495
|
nativeCurrency: {
|
|
1621
1496
|
name: 'Hype',
|
|
1622
1497
|
symbol: 'HYPE',
|
|
1623
|
-
decimals: 18
|
|
1498
|
+
decimals: 18
|
|
1624
1499
|
},
|
|
1625
1500
|
chainId: 999,
|
|
1626
1501
|
isTestnet: false,
|
|
1627
1502
|
explorerUrl: 'https://hyperevmscan.io/tx/{hash}',
|
|
1628
|
-
rpcEndpoints: [
|
|
1503
|
+
rpcEndpoints: [
|
|
1504
|
+
'https://rpc.hyperliquid.xyz/evm'
|
|
1505
|
+
],
|
|
1629
1506
|
eurcAddress: null,
|
|
1630
1507
|
usdcAddress: '0xb88339CB7199b77E23DB6E890353E22632Ba630f',
|
|
1631
1508
|
usdtAddress: null,
|
|
@@ -1637,31 +1514,31 @@ const HyperEVM = defineChain({
|
|
|
1637
1514
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
1638
1515
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
1639
1516
|
confirmations: 1,
|
|
1640
|
-
fastConfirmations: 1
|
|
1641
|
-
}
|
|
1517
|
+
fastConfirmations: 1
|
|
1518
|
+
}
|
|
1642
1519
|
},
|
|
1643
1520
|
forwarderSupported: {
|
|
1644
|
-
source:
|
|
1645
|
-
destination: true
|
|
1646
|
-
}
|
|
1521
|
+
source: false,
|
|
1522
|
+
destination: true
|
|
1523
|
+
}
|
|
1647
1524
|
},
|
|
1648
1525
|
kitContracts: {
|
|
1649
1526
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
1650
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
1527
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
1651
1528
|
},
|
|
1652
1529
|
gateway: {
|
|
1653
1530
|
domain: 19,
|
|
1654
1531
|
contracts: {
|
|
1655
1532
|
v1: {
|
|
1656
1533
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
1657
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
1658
|
-
}
|
|
1534
|
+
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
1535
|
+
}
|
|
1659
1536
|
},
|
|
1660
1537
|
forwarderSupported: {
|
|
1661
1538
|
source: true,
|
|
1662
|
-
destination: true
|
|
1663
|
-
}
|
|
1664
|
-
}
|
|
1539
|
+
destination: true
|
|
1540
|
+
}
|
|
1541
|
+
}
|
|
1665
1542
|
});
|
|
1666
1543
|
|
|
1667
1544
|
/**
|
|
@@ -1669,8 +1546,7 @@ const HyperEVM = defineChain({
|
|
|
1669
1546
|
* @remarks
|
|
1670
1547
|
* This represents the official testnet for the HyperEVM blockchain.
|
|
1671
1548
|
* Used for development and testing purposes before deploying to mainnet.
|
|
1672
|
-
*/
|
|
1673
|
-
const HyperEVMTestnet = defineChain({
|
|
1549
|
+
*/ const HyperEVMTestnet = defineChain({
|
|
1674
1550
|
type: 'evm',
|
|
1675
1551
|
chain: Blockchain.HyperEVM_Testnet,
|
|
1676
1552
|
name: 'HyperEVM Testnet',
|
|
@@ -1678,12 +1554,14 @@ const HyperEVMTestnet = defineChain({
|
|
|
1678
1554
|
nativeCurrency: {
|
|
1679
1555
|
name: 'Hype',
|
|
1680
1556
|
symbol: 'HYPE',
|
|
1681
|
-
decimals: 18
|
|
1557
|
+
decimals: 18
|
|
1682
1558
|
},
|
|
1683
1559
|
chainId: 998,
|
|
1684
1560
|
isTestnet: true,
|
|
1685
1561
|
explorerUrl: 'https://app.hyperliquid-testnet.xyz/explorer/tx/{hash}',
|
|
1686
|
-
rpcEndpoints: [
|
|
1562
|
+
rpcEndpoints: [
|
|
1563
|
+
'https://rpc.hyperliquid-testnet.xyz/evm'
|
|
1564
|
+
],
|
|
1687
1565
|
eurcAddress: null,
|
|
1688
1566
|
usdcAddress: '0x2B3370eE501B4a559b57D449569354196457D8Ab',
|
|
1689
1567
|
usdtAddress: null,
|
|
@@ -1695,30 +1573,30 @@ const HyperEVMTestnet = defineChain({
|
|
|
1695
1573
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
1696
1574
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
1697
1575
|
confirmations: 1,
|
|
1698
|
-
fastConfirmations: 1
|
|
1699
|
-
}
|
|
1576
|
+
fastConfirmations: 1
|
|
1577
|
+
}
|
|
1700
1578
|
},
|
|
1701
1579
|
forwarderSupported: {
|
|
1702
|
-
source:
|
|
1703
|
-
destination: true
|
|
1704
|
-
}
|
|
1580
|
+
source: false,
|
|
1581
|
+
destination: true
|
|
1582
|
+
}
|
|
1705
1583
|
},
|
|
1706
1584
|
kitContracts: {
|
|
1707
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1585
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1708
1586
|
},
|
|
1709
1587
|
gateway: {
|
|
1710
1588
|
domain: 19,
|
|
1711
1589
|
contracts: {
|
|
1712
1590
|
v1: {
|
|
1713
1591
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
1714
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
1715
|
-
}
|
|
1592
|
+
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
1593
|
+
}
|
|
1716
1594
|
},
|
|
1717
1595
|
forwarderSupported: {
|
|
1718
1596
|
source: true,
|
|
1719
|
-
destination: true
|
|
1720
|
-
}
|
|
1721
|
-
}
|
|
1597
|
+
destination: true
|
|
1598
|
+
}
|
|
1599
|
+
}
|
|
1722
1600
|
});
|
|
1723
1601
|
|
|
1724
1602
|
/**
|
|
@@ -1728,8 +1606,7 @@ const HyperEVMTestnet = defineChain({
|
|
|
1728
1606
|
* Injective is a high-performance, interoperable Layer-1 blockchain built for
|
|
1729
1607
|
* finance, with an EVM execution layer on top of a Cosmos SDK base and
|
|
1730
1608
|
* sub-second block finality.
|
|
1731
|
-
*/
|
|
1732
|
-
defineChain({
|
|
1609
|
+
*/ defineChain({
|
|
1733
1610
|
type: 'evm',
|
|
1734
1611
|
chain: Blockchain.Injective,
|
|
1735
1612
|
name: 'Injective',
|
|
@@ -1737,12 +1614,14 @@ defineChain({
|
|
|
1737
1614
|
nativeCurrency: {
|
|
1738
1615
|
name: 'Injective',
|
|
1739
1616
|
symbol: 'INJ',
|
|
1740
|
-
decimals: 18
|
|
1617
|
+
decimals: 18
|
|
1741
1618
|
},
|
|
1742
1619
|
chainId: 1776,
|
|
1743
1620
|
isTestnet: false,
|
|
1744
1621
|
explorerUrl: 'https://injscan.com/transaction/{hash}',
|
|
1745
|
-
rpcEndpoints: [
|
|
1622
|
+
rpcEndpoints: [
|
|
1623
|
+
'https://sentry.evm-rpc.injective.network'
|
|
1624
|
+
],
|
|
1746
1625
|
eurcAddress: null,
|
|
1747
1626
|
usdcAddress: '0xa00C59fF5a080D2b954d0c75e46E22a0c371235a',
|
|
1748
1627
|
usdtAddress: null,
|
|
@@ -1754,17 +1633,17 @@ defineChain({
|
|
|
1754
1633
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
1755
1634
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
1756
1635
|
confirmations: 1,
|
|
1757
|
-
fastConfirmations: 1
|
|
1758
|
-
}
|
|
1636
|
+
fastConfirmations: 1
|
|
1637
|
+
}
|
|
1759
1638
|
},
|
|
1760
1639
|
forwarderSupported: {
|
|
1761
1640
|
source: false,
|
|
1762
|
-
destination: false
|
|
1763
|
-
}
|
|
1641
|
+
destination: false
|
|
1642
|
+
}
|
|
1764
1643
|
},
|
|
1765
1644
|
kitContracts: {
|
|
1766
|
-
bridge: BRIDGE_CONTRACT_EVM_MAINNET
|
|
1767
|
-
}
|
|
1645
|
+
bridge: BRIDGE_CONTRACT_EVM_MAINNET
|
|
1646
|
+
}
|
|
1768
1647
|
});
|
|
1769
1648
|
|
|
1770
1649
|
/**
|
|
@@ -1774,8 +1653,7 @@ defineChain({
|
|
|
1774
1653
|
* Injective is a high-performance, interoperable Layer-1 blockchain built for
|
|
1775
1654
|
* finance, with an EVM execution layer on top of a Cosmos SDK base and
|
|
1776
1655
|
* sub-second block finality.
|
|
1777
|
-
*/
|
|
1778
|
-
defineChain({
|
|
1656
|
+
*/ defineChain({
|
|
1779
1657
|
type: 'evm',
|
|
1780
1658
|
chain: Blockchain.Injective_Testnet,
|
|
1781
1659
|
name: 'Injective Testnet',
|
|
@@ -1783,12 +1661,14 @@ defineChain({
|
|
|
1783
1661
|
nativeCurrency: {
|
|
1784
1662
|
name: 'Injective',
|
|
1785
1663
|
symbol: 'INJ',
|
|
1786
|
-
decimals: 18
|
|
1664
|
+
decimals: 18
|
|
1787
1665
|
},
|
|
1788
1666
|
chainId: 1439,
|
|
1789
1667
|
isTestnet: true,
|
|
1790
1668
|
explorerUrl: 'https://testnet.explorer.injective.network/transaction/{hash}',
|
|
1791
|
-
rpcEndpoints: [
|
|
1669
|
+
rpcEndpoints: [
|
|
1670
|
+
'https://k8s.testnet.json-rpc.injective.network'
|
|
1671
|
+
],
|
|
1792
1672
|
eurcAddress: null,
|
|
1793
1673
|
usdcAddress: '0x0C382e685bbeeFE5d3d9C29e29E341fEE8E84C5d',
|
|
1794
1674
|
usdtAddress: null,
|
|
@@ -1800,17 +1680,17 @@ defineChain({
|
|
|
1800
1680
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
1801
1681
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
1802
1682
|
confirmations: 1,
|
|
1803
|
-
fastConfirmations: 1
|
|
1804
|
-
}
|
|
1683
|
+
fastConfirmations: 1
|
|
1684
|
+
}
|
|
1805
1685
|
},
|
|
1806
1686
|
forwarderSupported: {
|
|
1807
1687
|
source: false,
|
|
1808
|
-
destination: false
|
|
1809
|
-
}
|
|
1688
|
+
destination: false
|
|
1689
|
+
}
|
|
1810
1690
|
},
|
|
1811
1691
|
kitContracts: {
|
|
1812
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1813
|
-
}
|
|
1692
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1693
|
+
}
|
|
1814
1694
|
});
|
|
1815
1695
|
|
|
1816
1696
|
/**
|
|
@@ -1819,8 +1699,7 @@ defineChain({
|
|
|
1819
1699
|
* This represents the official production network for the Ink blockchain.
|
|
1820
1700
|
* Ink is a Layer 1 blockchain specialized for DeFi and trading applications
|
|
1821
1701
|
* with native orderbook and matching engine.
|
|
1822
|
-
*/
|
|
1823
|
-
const Ink = defineChain({
|
|
1702
|
+
*/ const Ink = defineChain({
|
|
1824
1703
|
type: 'evm',
|
|
1825
1704
|
chain: Blockchain.Ink,
|
|
1826
1705
|
name: 'Ink',
|
|
@@ -1828,14 +1707,14 @@ const Ink = defineChain({
|
|
|
1828
1707
|
nativeCurrency: {
|
|
1829
1708
|
name: 'Ether',
|
|
1830
1709
|
symbol: 'ETH',
|
|
1831
|
-
decimals: 18
|
|
1710
|
+
decimals: 18
|
|
1832
1711
|
},
|
|
1833
1712
|
chainId: 57073,
|
|
1834
1713
|
isTestnet: false,
|
|
1835
1714
|
explorerUrl: 'https://explorer.inkonchain.com/tx/{hash}',
|
|
1836
1715
|
rpcEndpoints: [
|
|
1837
1716
|
'https://rpc-gel.inkonchain.com',
|
|
1838
|
-
'https://rpc-qnd.inkonchain.com'
|
|
1717
|
+
'https://rpc-qnd.inkonchain.com'
|
|
1839
1718
|
],
|
|
1840
1719
|
eurcAddress: null,
|
|
1841
1720
|
usdcAddress: '0x2D270e6886d130D724215A266106e6832161EAEd',
|
|
@@ -1848,18 +1727,18 @@ const Ink = defineChain({
|
|
|
1848
1727
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
1849
1728
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
1850
1729
|
confirmations: 65,
|
|
1851
|
-
fastConfirmations: 1
|
|
1852
|
-
}
|
|
1730
|
+
fastConfirmations: 1
|
|
1731
|
+
}
|
|
1853
1732
|
},
|
|
1854
1733
|
forwarderSupported: {
|
|
1855
|
-
source:
|
|
1856
|
-
destination: true
|
|
1857
|
-
}
|
|
1734
|
+
source: false,
|
|
1735
|
+
destination: true
|
|
1736
|
+
}
|
|
1858
1737
|
},
|
|
1859
1738
|
kitContracts: {
|
|
1860
1739
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
1861
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
1862
|
-
}
|
|
1740
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
1741
|
+
}
|
|
1863
1742
|
});
|
|
1864
1743
|
|
|
1865
1744
|
/**
|
|
@@ -1867,8 +1746,7 @@ const Ink = defineChain({
|
|
|
1867
1746
|
* @remarks
|
|
1868
1747
|
* This represents the official testnet for the Ink blockchain.
|
|
1869
1748
|
* Used for development and testing purposes before deploying to mainnet.
|
|
1870
|
-
*/
|
|
1871
|
-
const InkTestnet = defineChain({
|
|
1749
|
+
*/ const InkTestnet = defineChain({
|
|
1872
1750
|
type: 'evm',
|
|
1873
1751
|
chain: Blockchain.Ink_Testnet,
|
|
1874
1752
|
name: 'Ink Sepolia',
|
|
@@ -1876,14 +1754,14 @@ const InkTestnet = defineChain({
|
|
|
1876
1754
|
nativeCurrency: {
|
|
1877
1755
|
name: 'Sepolia Ether',
|
|
1878
1756
|
symbol: 'ETH',
|
|
1879
|
-
decimals: 18
|
|
1757
|
+
decimals: 18
|
|
1880
1758
|
},
|
|
1881
1759
|
chainId: 763373,
|
|
1882
1760
|
isTestnet: true,
|
|
1883
1761
|
explorerUrl: 'https://explorer-sepolia.inkonchain.com/tx/{hash}',
|
|
1884
1762
|
rpcEndpoints: [
|
|
1885
1763
|
'https://rpc-gel-sepolia.inkonchain.com',
|
|
1886
|
-
'https://rpc-qnd-sepolia.inkonchain.com'
|
|
1764
|
+
'https://rpc-qnd-sepolia.inkonchain.com'
|
|
1887
1765
|
],
|
|
1888
1766
|
eurcAddress: null,
|
|
1889
1767
|
usdcAddress: '0xFabab97dCE620294D2B0b0e46C68964e326300Ac',
|
|
@@ -1896,25 +1774,24 @@ const InkTestnet = defineChain({
|
|
|
1896
1774
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
1897
1775
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
1898
1776
|
confirmations: 65,
|
|
1899
|
-
fastConfirmations: 1
|
|
1900
|
-
}
|
|
1777
|
+
fastConfirmations: 1
|
|
1778
|
+
}
|
|
1901
1779
|
},
|
|
1902
1780
|
forwarderSupported: {
|
|
1903
|
-
source:
|
|
1904
|
-
destination: true
|
|
1905
|
-
}
|
|
1781
|
+
source: false,
|
|
1782
|
+
destination: true
|
|
1783
|
+
}
|
|
1906
1784
|
},
|
|
1907
1785
|
kitContracts: {
|
|
1908
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1909
|
-
}
|
|
1786
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1787
|
+
}
|
|
1910
1788
|
});
|
|
1911
1789
|
|
|
1912
1790
|
/**
|
|
1913
1791
|
* Linea Mainnet chain definition
|
|
1914
1792
|
* @remarks
|
|
1915
1793
|
* This represents the official production network for the Linea blockchain.
|
|
1916
|
-
*/
|
|
1917
|
-
const Linea = defineChain({
|
|
1794
|
+
*/ const Linea = defineChain({
|
|
1918
1795
|
type: 'evm',
|
|
1919
1796
|
chain: Blockchain.Linea,
|
|
1920
1797
|
name: 'Linea',
|
|
@@ -1922,12 +1799,14 @@ const Linea = defineChain({
|
|
|
1922
1799
|
nativeCurrency: {
|
|
1923
1800
|
name: 'Ether',
|
|
1924
1801
|
symbol: 'ETH',
|
|
1925
|
-
decimals: 18
|
|
1802
|
+
decimals: 18
|
|
1926
1803
|
},
|
|
1927
1804
|
chainId: 59144,
|
|
1928
1805
|
isTestnet: false,
|
|
1929
1806
|
explorerUrl: 'https://lineascan.build/tx/{hash}',
|
|
1930
|
-
rpcEndpoints: [
|
|
1807
|
+
rpcEndpoints: [
|
|
1808
|
+
'https://rpc.linea.build'
|
|
1809
|
+
],
|
|
1931
1810
|
eurcAddress: null,
|
|
1932
1811
|
usdcAddress: '0x176211869ca2b568f2a7d4ee941e073a821ee1ff',
|
|
1933
1812
|
usdtAddress: null,
|
|
@@ -1939,26 +1818,25 @@ const Linea = defineChain({
|
|
|
1939
1818
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
1940
1819
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
1941
1820
|
confirmations: 1,
|
|
1942
|
-
fastConfirmations: 1
|
|
1943
|
-
}
|
|
1821
|
+
fastConfirmations: 1
|
|
1822
|
+
}
|
|
1944
1823
|
},
|
|
1945
1824
|
forwarderSupported: {
|
|
1946
|
-
source:
|
|
1947
|
-
destination: true
|
|
1948
|
-
}
|
|
1825
|
+
source: false,
|
|
1826
|
+
destination: true
|
|
1827
|
+
}
|
|
1949
1828
|
},
|
|
1950
1829
|
kitContracts: {
|
|
1951
1830
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
1952
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
1953
|
-
}
|
|
1831
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
1832
|
+
}
|
|
1954
1833
|
});
|
|
1955
1834
|
|
|
1956
1835
|
/**
|
|
1957
1836
|
* Linea Sepolia Testnet chain definition
|
|
1958
1837
|
* @remarks
|
|
1959
1838
|
* This represents the official test network for the Linea blockchain on Sepolia.
|
|
1960
|
-
*/
|
|
1961
|
-
const LineaSepolia = defineChain({
|
|
1839
|
+
*/ const LineaSepolia = defineChain({
|
|
1962
1840
|
type: 'evm',
|
|
1963
1841
|
chain: Blockchain.Linea_Sepolia,
|
|
1964
1842
|
name: 'Linea Sepolia',
|
|
@@ -1966,12 +1844,14 @@ const LineaSepolia = defineChain({
|
|
|
1966
1844
|
nativeCurrency: {
|
|
1967
1845
|
name: 'Sepolia Ether',
|
|
1968
1846
|
symbol: 'ETH',
|
|
1969
|
-
decimals: 18
|
|
1847
|
+
decimals: 18
|
|
1970
1848
|
},
|
|
1971
1849
|
chainId: 59141,
|
|
1972
1850
|
isTestnet: true,
|
|
1973
1851
|
explorerUrl: 'https://sepolia.lineascan.build/tx/{hash}',
|
|
1974
|
-
rpcEndpoints: [
|
|
1852
|
+
rpcEndpoints: [
|
|
1853
|
+
'https://rpc.sepolia.linea.build'
|
|
1854
|
+
],
|
|
1975
1855
|
eurcAddress: null,
|
|
1976
1856
|
usdcAddress: '0xfece4462d57bd51a6a552365a011b95f0e16d9b7',
|
|
1977
1857
|
usdtAddress: null,
|
|
@@ -1983,17 +1863,17 @@ const LineaSepolia = defineChain({
|
|
|
1983
1863
|
tokenMessenger: '0x8fe6b999dc680ccfdd5bf7eb0974218be2542daa',
|
|
1984
1864
|
messageTransmitter: '0xe737e5cebeeba77efe34d4aa090756590b1ce275',
|
|
1985
1865
|
confirmations: 1,
|
|
1986
|
-
fastConfirmations: 1
|
|
1987
|
-
}
|
|
1866
|
+
fastConfirmations: 1
|
|
1867
|
+
}
|
|
1988
1868
|
},
|
|
1989
1869
|
forwarderSupported: {
|
|
1990
|
-
source:
|
|
1991
|
-
destination: true
|
|
1992
|
-
}
|
|
1870
|
+
source: false,
|
|
1871
|
+
destination: true
|
|
1872
|
+
}
|
|
1993
1873
|
},
|
|
1994
1874
|
kitContracts: {
|
|
1995
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1996
|
-
}
|
|
1875
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1876
|
+
}
|
|
1997
1877
|
});
|
|
1998
1878
|
|
|
1999
1879
|
/**
|
|
@@ -2002,8 +1882,7 @@ const LineaSepolia = defineChain({
|
|
|
2002
1882
|
* This represents the official production network for the Monad blockchain.
|
|
2003
1883
|
* Monad is a high-performance EVM-compatible Layer-1 blockchain featuring
|
|
2004
1884
|
* over 10,000 TPS, sub-second finality, and near-zero gas fees.
|
|
2005
|
-
*/
|
|
2006
|
-
defineChain({
|
|
1885
|
+
*/ defineChain({
|
|
2007
1886
|
type: 'evm',
|
|
2008
1887
|
chain: Blockchain.Monad,
|
|
2009
1888
|
name: 'Monad',
|
|
@@ -2011,12 +1890,14 @@ defineChain({
|
|
|
2011
1890
|
nativeCurrency: {
|
|
2012
1891
|
name: 'Monad',
|
|
2013
1892
|
symbol: 'MON',
|
|
2014
|
-
decimals: 18
|
|
1893
|
+
decimals: 18
|
|
2015
1894
|
},
|
|
2016
1895
|
chainId: 143,
|
|
2017
1896
|
isTestnet: false,
|
|
2018
1897
|
explorerUrl: 'https://monadscan.com/tx/{hash}',
|
|
2019
|
-
rpcEndpoints: [
|
|
1898
|
+
rpcEndpoints: [
|
|
1899
|
+
'https://rpc.monad.xyz'
|
|
1900
|
+
],
|
|
2020
1901
|
eurcAddress: null,
|
|
2021
1902
|
usdcAddress: '0x754704Bc059F8C67012fEd69BC8A327a5aafb603',
|
|
2022
1903
|
usdtAddress: null,
|
|
@@ -2028,18 +1909,18 @@ defineChain({
|
|
|
2028
1909
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
2029
1910
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
2030
1911
|
confirmations: 1,
|
|
2031
|
-
fastConfirmations: 1
|
|
2032
|
-
}
|
|
1912
|
+
fastConfirmations: 1
|
|
1913
|
+
}
|
|
2033
1914
|
},
|
|
2034
1915
|
forwarderSupported: {
|
|
2035
|
-
source:
|
|
2036
|
-
destination: true
|
|
2037
|
-
}
|
|
1916
|
+
source: false,
|
|
1917
|
+
destination: true
|
|
1918
|
+
}
|
|
2038
1919
|
},
|
|
2039
1920
|
kitContracts: {
|
|
2040
1921
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
2041
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
2042
|
-
}
|
|
1922
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
1923
|
+
}
|
|
2043
1924
|
});
|
|
2044
1925
|
|
|
2045
1926
|
/**
|
|
@@ -2048,8 +1929,7 @@ defineChain({
|
|
|
2048
1929
|
* This represents the official test network for the Monad blockchain.
|
|
2049
1930
|
* Monad is a high-performance EVM-compatible Layer-1 blockchain featuring
|
|
2050
1931
|
* over 10,000 TPS, sub-second finality, and near-zero gas fees.
|
|
2051
|
-
*/
|
|
2052
|
-
defineChain({
|
|
1932
|
+
*/ defineChain({
|
|
2053
1933
|
type: 'evm',
|
|
2054
1934
|
chain: Blockchain.Monad_Testnet,
|
|
2055
1935
|
name: 'Monad Testnet',
|
|
@@ -2057,12 +1937,14 @@ defineChain({
|
|
|
2057
1937
|
nativeCurrency: {
|
|
2058
1938
|
name: 'Monad',
|
|
2059
1939
|
symbol: 'MON',
|
|
2060
|
-
decimals: 18
|
|
1940
|
+
decimals: 18
|
|
2061
1941
|
},
|
|
2062
1942
|
chainId: 10143,
|
|
2063
1943
|
isTestnet: true,
|
|
2064
1944
|
explorerUrl: 'https://testnet.monadscan.com/tx/{hash}',
|
|
2065
|
-
rpcEndpoints: [
|
|
1945
|
+
rpcEndpoints: [
|
|
1946
|
+
'https://testnet-rpc.monad.xyz'
|
|
1947
|
+
],
|
|
2066
1948
|
eurcAddress: null,
|
|
2067
1949
|
usdcAddress: '0x534b2f3A21130d7a60830c2Df862319e593943A3',
|
|
2068
1950
|
usdtAddress: null,
|
|
@@ -2074,17 +1956,17 @@ defineChain({
|
|
|
2074
1956
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
2075
1957
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
2076
1958
|
confirmations: 1,
|
|
2077
|
-
fastConfirmations: 1
|
|
2078
|
-
}
|
|
1959
|
+
fastConfirmations: 1
|
|
1960
|
+
}
|
|
2079
1961
|
},
|
|
2080
1962
|
forwarderSupported: {
|
|
2081
|
-
source:
|
|
2082
|
-
destination: true
|
|
2083
|
-
}
|
|
1963
|
+
source: false,
|
|
1964
|
+
destination: true
|
|
1965
|
+
}
|
|
2084
1966
|
},
|
|
2085
1967
|
kitContracts: {
|
|
2086
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2087
|
-
}
|
|
1968
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
1969
|
+
}
|
|
2088
1970
|
});
|
|
2089
1971
|
|
|
2090
1972
|
/**
|
|
@@ -2092,8 +1974,7 @@ defineChain({
|
|
|
2092
1974
|
* @remarks
|
|
2093
1975
|
* This represents the official production network for the Morph blockchain.
|
|
2094
1976
|
* Morph is an EVM-compatible Layer-2 blockchain built on the OP Stack.
|
|
2095
|
-
*/
|
|
2096
|
-
defineChain({
|
|
1977
|
+
*/ defineChain({
|
|
2097
1978
|
type: 'evm',
|
|
2098
1979
|
chain: Blockchain.Morph,
|
|
2099
1980
|
name: 'Morph',
|
|
@@ -2101,12 +1982,14 @@ defineChain({
|
|
|
2101
1982
|
nativeCurrency: {
|
|
2102
1983
|
name: 'Ether',
|
|
2103
1984
|
symbol: 'ETH',
|
|
2104
|
-
decimals: 18
|
|
1985
|
+
decimals: 18
|
|
2105
1986
|
},
|
|
2106
1987
|
chainId: 2818,
|
|
2107
1988
|
isTestnet: false,
|
|
2108
1989
|
explorerUrl: 'https://explorer.morph.network/tx/{hash}',
|
|
2109
|
-
rpcEndpoints: [
|
|
1990
|
+
rpcEndpoints: [
|
|
1991
|
+
'https://rpc.morphl2.io'
|
|
1992
|
+
],
|
|
2110
1993
|
eurcAddress: null,
|
|
2111
1994
|
usdcAddress: '0xCfb1186F4e93D60E60a8bDd997427D1F33bc372B',
|
|
2112
1995
|
usdtAddress: null,
|
|
@@ -2118,17 +2001,17 @@ defineChain({
|
|
|
2118
2001
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
2119
2002
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
2120
2003
|
confirmations: 64,
|
|
2121
|
-
fastConfirmations: 1
|
|
2122
|
-
}
|
|
2004
|
+
fastConfirmations: 1
|
|
2005
|
+
}
|
|
2123
2006
|
},
|
|
2124
2007
|
forwarderSupported: {
|
|
2125
2008
|
source: false,
|
|
2126
|
-
destination: false
|
|
2127
|
-
}
|
|
2009
|
+
destination: false
|
|
2010
|
+
}
|
|
2128
2011
|
},
|
|
2129
2012
|
kitContracts: {
|
|
2130
|
-
bridge: BRIDGE_CONTRACT_EVM_MAINNET
|
|
2131
|
-
}
|
|
2013
|
+
bridge: BRIDGE_CONTRACT_EVM_MAINNET
|
|
2014
|
+
}
|
|
2132
2015
|
});
|
|
2133
2016
|
|
|
2134
2017
|
/**
|
|
@@ -2136,8 +2019,7 @@ defineChain({
|
|
|
2136
2019
|
* @remarks
|
|
2137
2020
|
* This represents the official test network for the Morph blockchain.
|
|
2138
2021
|
* Morph is an EVM-compatible Layer-2 blockchain built on the OP Stack.
|
|
2139
|
-
*/
|
|
2140
|
-
defineChain({
|
|
2022
|
+
*/ defineChain({
|
|
2141
2023
|
type: 'evm',
|
|
2142
2024
|
chain: Blockchain.Morph_Testnet,
|
|
2143
2025
|
name: 'Morph Hoodi',
|
|
@@ -2145,12 +2027,14 @@ defineChain({
|
|
|
2145
2027
|
nativeCurrency: {
|
|
2146
2028
|
name: 'Ether',
|
|
2147
2029
|
symbol: 'ETH',
|
|
2148
|
-
decimals: 18
|
|
2030
|
+
decimals: 18
|
|
2149
2031
|
},
|
|
2150
2032
|
chainId: 2910,
|
|
2151
2033
|
isTestnet: true,
|
|
2152
2034
|
explorerUrl: 'https://explorer-hoodi.morphl2.io/tx/{hash}',
|
|
2153
|
-
rpcEndpoints: [
|
|
2035
|
+
rpcEndpoints: [
|
|
2036
|
+
'https://rpc-hoodi.morphl2.io'
|
|
2037
|
+
],
|
|
2154
2038
|
eurcAddress: null,
|
|
2155
2039
|
usdcAddress: '0x7433b41C6c5e1d58D4Da99483609520255ab661B',
|
|
2156
2040
|
usdtAddress: null,
|
|
@@ -2162,25 +2046,24 @@ defineChain({
|
|
|
2162
2046
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
2163
2047
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
2164
2048
|
confirmations: 64,
|
|
2165
|
-
fastConfirmations: 1
|
|
2166
|
-
}
|
|
2049
|
+
fastConfirmations: 1
|
|
2050
|
+
}
|
|
2167
2051
|
},
|
|
2168
2052
|
forwarderSupported: {
|
|
2169
2053
|
source: false,
|
|
2170
|
-
destination: false
|
|
2171
|
-
}
|
|
2054
|
+
destination: false
|
|
2055
|
+
}
|
|
2172
2056
|
},
|
|
2173
2057
|
kitContracts: {
|
|
2174
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2175
|
-
}
|
|
2058
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2059
|
+
}
|
|
2176
2060
|
});
|
|
2177
2061
|
|
|
2178
2062
|
/**
|
|
2179
2063
|
* NEAR Protocol Mainnet chain definition
|
|
2180
2064
|
* @remarks
|
|
2181
2065
|
* This represents the official production network for the NEAR Protocol blockchain.
|
|
2182
|
-
*/
|
|
2183
|
-
defineChain({
|
|
2066
|
+
*/ defineChain({
|
|
2184
2067
|
type: 'near',
|
|
2185
2068
|
chain: Blockchain.NEAR,
|
|
2186
2069
|
name: 'NEAR Protocol',
|
|
@@ -2188,23 +2071,24 @@ defineChain({
|
|
|
2188
2071
|
nativeCurrency: {
|
|
2189
2072
|
name: 'NEAR',
|
|
2190
2073
|
symbol: 'NEAR',
|
|
2191
|
-
decimals: 24
|
|
2074
|
+
decimals: 24
|
|
2192
2075
|
},
|
|
2193
2076
|
isTestnet: false,
|
|
2194
2077
|
explorerUrl: 'https://nearblocks.io/txns/{hash}',
|
|
2195
|
-
rpcEndpoints: [
|
|
2078
|
+
rpcEndpoints: [
|
|
2079
|
+
'https://eth-rpc.mainnet.near.org'
|
|
2080
|
+
],
|
|
2196
2081
|
eurcAddress: null,
|
|
2197
2082
|
usdcAddress: '17208628f84f5d6ad33f0da3bbbeb27ffcb398eac501a31bd6ad2011e36133a1',
|
|
2198
2083
|
usdtAddress: 'usdt.tether-token.near',
|
|
2199
|
-
cctp: null
|
|
2084
|
+
cctp: null
|
|
2200
2085
|
});
|
|
2201
2086
|
|
|
2202
2087
|
/**
|
|
2203
2088
|
* NEAR Testnet chain definition
|
|
2204
2089
|
* @remarks
|
|
2205
2090
|
* This represents the official test network for the NEAR Protocol blockchain.
|
|
2206
|
-
*/
|
|
2207
|
-
defineChain({
|
|
2091
|
+
*/ defineChain({
|
|
2208
2092
|
type: 'near',
|
|
2209
2093
|
chain: Blockchain.NEAR_Testnet,
|
|
2210
2094
|
name: 'NEAR Protocol Testnet',
|
|
@@ -2212,23 +2096,24 @@ defineChain({
|
|
|
2212
2096
|
nativeCurrency: {
|
|
2213
2097
|
name: 'NEAR',
|
|
2214
2098
|
symbol: 'NEAR',
|
|
2215
|
-
decimals: 24
|
|
2099
|
+
decimals: 24
|
|
2216
2100
|
},
|
|
2217
2101
|
isTestnet: true,
|
|
2218
2102
|
explorerUrl: 'https://testnet.nearblocks.io/txns/{hash}',
|
|
2219
|
-
rpcEndpoints: [
|
|
2103
|
+
rpcEndpoints: [
|
|
2104
|
+
'https://eth-rpc.testnet.near.org'
|
|
2105
|
+
],
|
|
2220
2106
|
eurcAddress: null,
|
|
2221
2107
|
usdcAddress: '3e2210e1184b45b64c8a434c0a7e7b23cc04ea7eb7a6c3c32520d03d4afcb8af',
|
|
2222
2108
|
usdtAddress: null,
|
|
2223
|
-
cctp: null
|
|
2109
|
+
cctp: null
|
|
2224
2110
|
});
|
|
2225
2111
|
|
|
2226
2112
|
/**
|
|
2227
2113
|
* Noble Mainnet chain definition
|
|
2228
2114
|
* @remarks
|
|
2229
2115
|
* This represents the official production network for the Noble blockchain.
|
|
2230
|
-
*/
|
|
2231
|
-
defineChain({
|
|
2116
|
+
*/ defineChain({
|
|
2232
2117
|
type: 'noble',
|
|
2233
2118
|
chain: Blockchain.Noble,
|
|
2234
2119
|
name: 'Noble',
|
|
@@ -2236,11 +2121,13 @@ defineChain({
|
|
|
2236
2121
|
nativeCurrency: {
|
|
2237
2122
|
name: 'Noble USDC',
|
|
2238
2123
|
symbol: 'USDC',
|
|
2239
|
-
decimals: 6
|
|
2124
|
+
decimals: 6
|
|
2240
2125
|
},
|
|
2241
2126
|
isTestnet: false,
|
|
2242
2127
|
explorerUrl: 'https://www.mintscan.io/noble/tx/{hash}',
|
|
2243
|
-
rpcEndpoints: [
|
|
2128
|
+
rpcEndpoints: [
|
|
2129
|
+
'https://noble-rpc.polkachu.com'
|
|
2130
|
+
],
|
|
2244
2131
|
eurcAddress: null,
|
|
2245
2132
|
usdcAddress: 'uusdc',
|
|
2246
2133
|
usdtAddress: null,
|
|
@@ -2250,22 +2137,21 @@ defineChain({
|
|
|
2250
2137
|
v1: {
|
|
2251
2138
|
type: 'merged',
|
|
2252
2139
|
contract: 'noble12l2w4ugfz4m6dd73yysz477jszqnfughxvkss5',
|
|
2253
|
-
confirmations: 1
|
|
2254
|
-
}
|
|
2140
|
+
confirmations: 1
|
|
2141
|
+
}
|
|
2255
2142
|
},
|
|
2256
2143
|
forwarderSupported: {
|
|
2257
2144
|
source: false,
|
|
2258
|
-
destination: false
|
|
2259
|
-
}
|
|
2260
|
-
}
|
|
2145
|
+
destination: false
|
|
2146
|
+
}
|
|
2147
|
+
}
|
|
2261
2148
|
});
|
|
2262
2149
|
|
|
2263
2150
|
/**
|
|
2264
2151
|
* Noble Testnet chain definition
|
|
2265
2152
|
* @remarks
|
|
2266
2153
|
* This represents the official test network for the Noble blockchain.
|
|
2267
|
-
*/
|
|
2268
|
-
defineChain({
|
|
2154
|
+
*/ defineChain({
|
|
2269
2155
|
type: 'noble',
|
|
2270
2156
|
chain: Blockchain.Noble_Testnet,
|
|
2271
2157
|
name: 'Noble Testnet',
|
|
@@ -2273,11 +2159,13 @@ defineChain({
|
|
|
2273
2159
|
nativeCurrency: {
|
|
2274
2160
|
name: 'Noble USDC',
|
|
2275
2161
|
symbol: 'USDC',
|
|
2276
|
-
decimals: 6
|
|
2162
|
+
decimals: 6
|
|
2277
2163
|
},
|
|
2278
2164
|
isTestnet: true,
|
|
2279
2165
|
explorerUrl: 'https://www.mintscan.io/noble-testnet/tx/{hash}',
|
|
2280
|
-
rpcEndpoints: [
|
|
2166
|
+
rpcEndpoints: [
|
|
2167
|
+
'https://noble-testnet-rpc.polkachu.com'
|
|
2168
|
+
],
|
|
2281
2169
|
eurcAddress: null,
|
|
2282
2170
|
usdcAddress: 'uusdc',
|
|
2283
2171
|
usdtAddress: null,
|
|
@@ -2287,22 +2175,21 @@ defineChain({
|
|
|
2287
2175
|
v1: {
|
|
2288
2176
|
type: 'merged',
|
|
2289
2177
|
contract: 'noble12l2w4ugfz4m6dd73yysz477jszqnfughxvkss5',
|
|
2290
|
-
confirmations: 1
|
|
2291
|
-
}
|
|
2178
|
+
confirmations: 1
|
|
2179
|
+
}
|
|
2292
2180
|
},
|
|
2293
2181
|
forwarderSupported: {
|
|
2294
2182
|
source: false,
|
|
2295
|
-
destination: false
|
|
2296
|
-
}
|
|
2297
|
-
}
|
|
2183
|
+
destination: false
|
|
2184
|
+
}
|
|
2185
|
+
}
|
|
2298
2186
|
});
|
|
2299
2187
|
|
|
2300
2188
|
/**
|
|
2301
2189
|
* Optimism Mainnet chain definition
|
|
2302
2190
|
* @remarks
|
|
2303
2191
|
* This represents the official production network for the Optimism blockchain.
|
|
2304
|
-
*/
|
|
2305
|
-
const Optimism = defineChain({
|
|
2192
|
+
*/ const Optimism = defineChain({
|
|
2306
2193
|
type: 'evm',
|
|
2307
2194
|
chain: Blockchain.Optimism,
|
|
2308
2195
|
name: 'Optimism',
|
|
@@ -2310,12 +2197,14 @@ const Optimism = defineChain({
|
|
|
2310
2197
|
nativeCurrency: {
|
|
2311
2198
|
name: 'Ether',
|
|
2312
2199
|
symbol: 'ETH',
|
|
2313
|
-
decimals: 18
|
|
2200
|
+
decimals: 18
|
|
2314
2201
|
},
|
|
2315
2202
|
chainId: 10,
|
|
2316
2203
|
isTestnet: false,
|
|
2317
2204
|
explorerUrl: 'https://optimistic.etherscan.io/tx/{hash}',
|
|
2318
|
-
rpcEndpoints: [
|
|
2205
|
+
rpcEndpoints: [
|
|
2206
|
+
'https://mainnet.optimism.io'
|
|
2207
|
+
],
|
|
2319
2208
|
eurcAddress: null,
|
|
2320
2209
|
usdcAddress: '0x0b2c639c533813f4aa9d7837caf62653d097ff85',
|
|
2321
2210
|
usdtAddress: null,
|
|
@@ -2326,46 +2215,45 @@ const Optimism = defineChain({
|
|
|
2326
2215
|
type: 'split',
|
|
2327
2216
|
tokenMessenger: '0x2B4069517957735bE00ceE0fadAE88a26365528f',
|
|
2328
2217
|
messageTransmitter: '0x0a992d191deec32afe36203ad87d7d289a738f81',
|
|
2329
|
-
confirmations: 65
|
|
2218
|
+
confirmations: 65
|
|
2330
2219
|
},
|
|
2331
2220
|
v2: {
|
|
2332
2221
|
type: 'split',
|
|
2333
2222
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
2334
2223
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
2335
2224
|
confirmations: 65,
|
|
2336
|
-
fastConfirmations: 1
|
|
2337
|
-
}
|
|
2225
|
+
fastConfirmations: 1
|
|
2226
|
+
}
|
|
2338
2227
|
},
|
|
2339
2228
|
forwarderSupported: {
|
|
2340
|
-
source:
|
|
2341
|
-
destination: true
|
|
2342
|
-
}
|
|
2229
|
+
source: false,
|
|
2230
|
+
destination: true
|
|
2231
|
+
}
|
|
2343
2232
|
},
|
|
2344
2233
|
kitContracts: {
|
|
2345
2234
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
2346
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
2235
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
2347
2236
|
},
|
|
2348
2237
|
gateway: {
|
|
2349
2238
|
domain: 2,
|
|
2350
2239
|
contracts: {
|
|
2351
2240
|
v1: {
|
|
2352
2241
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
2353
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
2354
|
-
}
|
|
2242
|
+
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
2243
|
+
}
|
|
2355
2244
|
},
|
|
2356
2245
|
forwarderSupported: {
|
|
2357
2246
|
source: true,
|
|
2358
|
-
destination: true
|
|
2359
|
-
}
|
|
2360
|
-
}
|
|
2247
|
+
destination: true
|
|
2248
|
+
}
|
|
2249
|
+
}
|
|
2361
2250
|
});
|
|
2362
2251
|
|
|
2363
2252
|
/**
|
|
2364
2253
|
* Optimism Sepolia Testnet chain definition
|
|
2365
2254
|
* @remarks
|
|
2366
2255
|
* This represents the official test network for the Optimism blockchain on Sepolia.
|
|
2367
|
-
*/
|
|
2368
|
-
const OptimismSepolia = defineChain({
|
|
2256
|
+
*/ const OptimismSepolia = defineChain({
|
|
2369
2257
|
type: 'evm',
|
|
2370
2258
|
chain: Blockchain.Optimism_Sepolia,
|
|
2371
2259
|
name: 'Optimism Sepolia',
|
|
@@ -2373,12 +2261,14 @@ const OptimismSepolia = defineChain({
|
|
|
2373
2261
|
nativeCurrency: {
|
|
2374
2262
|
name: 'Sepolia Ether',
|
|
2375
2263
|
symbol: 'ETH',
|
|
2376
|
-
decimals: 18
|
|
2264
|
+
decimals: 18
|
|
2377
2265
|
},
|
|
2378
2266
|
chainId: 11155420,
|
|
2379
2267
|
isTestnet: true,
|
|
2380
2268
|
explorerUrl: 'https://sepolia-optimistic.etherscan.io/tx/{hash}',
|
|
2381
|
-
rpcEndpoints: [
|
|
2269
|
+
rpcEndpoints: [
|
|
2270
|
+
'https://sepolia.optimism.io'
|
|
2271
|
+
],
|
|
2382
2272
|
eurcAddress: null,
|
|
2383
2273
|
usdcAddress: '0x5fd84259d66Cd46123540766Be93DFE6D43130D7',
|
|
2384
2274
|
usdtAddress: null,
|
|
@@ -2389,37 +2279,37 @@ const OptimismSepolia = defineChain({
|
|
|
2389
2279
|
type: 'split',
|
|
2390
2280
|
tokenMessenger: '0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5',
|
|
2391
2281
|
messageTransmitter: '0x7865fAfC2db2093669d92c0F33AeEF291086BEFD',
|
|
2392
|
-
confirmations: 65
|
|
2282
|
+
confirmations: 65
|
|
2393
2283
|
},
|
|
2394
2284
|
v2: {
|
|
2395
2285
|
type: 'split',
|
|
2396
2286
|
tokenMessenger: '0x8fe6b999dc680ccfdd5bf7eb0974218be2542daa',
|
|
2397
2287
|
messageTransmitter: '0xe737e5cebeeba77efe34d4aa090756590b1ce275',
|
|
2398
2288
|
confirmations: 65,
|
|
2399
|
-
fastConfirmations: 1
|
|
2400
|
-
}
|
|
2289
|
+
fastConfirmations: 1
|
|
2290
|
+
}
|
|
2401
2291
|
},
|
|
2402
2292
|
forwarderSupported: {
|
|
2403
|
-
source:
|
|
2404
|
-
destination: true
|
|
2405
|
-
}
|
|
2293
|
+
source: false,
|
|
2294
|
+
destination: true
|
|
2295
|
+
}
|
|
2406
2296
|
},
|
|
2407
2297
|
kitContracts: {
|
|
2408
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2298
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2409
2299
|
},
|
|
2410
2300
|
gateway: {
|
|
2411
2301
|
domain: 2,
|
|
2412
2302
|
contracts: {
|
|
2413
2303
|
v1: {
|
|
2414
2304
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
2415
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
2416
|
-
}
|
|
2305
|
+
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
2306
|
+
}
|
|
2417
2307
|
},
|
|
2418
2308
|
forwarderSupported: {
|
|
2419
2309
|
source: true,
|
|
2420
|
-
destination: true
|
|
2421
|
-
}
|
|
2422
|
-
}
|
|
2310
|
+
destination: true
|
|
2311
|
+
}
|
|
2312
|
+
}
|
|
2423
2313
|
});
|
|
2424
2314
|
|
|
2425
2315
|
/**
|
|
@@ -2428,8 +2318,7 @@ const OptimismSepolia = defineChain({
|
|
|
2428
2318
|
* This represents the official production network for the Pharos blockchain.
|
|
2429
2319
|
* Pharos is a modular, full-stack parallel Layer 1 blockchain with
|
|
2430
2320
|
* sub-second finality and EVM compatibility.
|
|
2431
|
-
*/
|
|
2432
|
-
defineChain({
|
|
2321
|
+
*/ defineChain({
|
|
2433
2322
|
type: 'evm',
|
|
2434
2323
|
chain: Blockchain.Pharos,
|
|
2435
2324
|
name: 'Pharos',
|
|
@@ -2437,12 +2326,14 @@ defineChain({
|
|
|
2437
2326
|
nativeCurrency: {
|
|
2438
2327
|
name: 'Pharos',
|
|
2439
2328
|
symbol: 'PHAROS',
|
|
2440
|
-
decimals: 18
|
|
2329
|
+
decimals: 18
|
|
2441
2330
|
},
|
|
2442
2331
|
chainId: 1672,
|
|
2443
2332
|
isTestnet: false,
|
|
2444
2333
|
explorerUrl: 'https://pharos.socialscan.io/tx/{hash}',
|
|
2445
|
-
rpcEndpoints: [
|
|
2334
|
+
rpcEndpoints: [
|
|
2335
|
+
'https://rpc.pharos.xyz'
|
|
2336
|
+
],
|
|
2446
2337
|
eurcAddress: null,
|
|
2447
2338
|
usdcAddress: '0xC879C018dB60520F4355C26eD1a6D572cdAC1815',
|
|
2448
2339
|
usdtAddress: null,
|
|
@@ -2454,17 +2345,17 @@ defineChain({
|
|
|
2454
2345
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
2455
2346
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
2456
2347
|
confirmations: 1,
|
|
2457
|
-
fastConfirmations: 1
|
|
2458
|
-
}
|
|
2348
|
+
fastConfirmations: 1
|
|
2349
|
+
}
|
|
2459
2350
|
},
|
|
2460
2351
|
forwarderSupported: {
|
|
2461
2352
|
source: false,
|
|
2462
|
-
destination: false
|
|
2463
|
-
}
|
|
2353
|
+
destination: false
|
|
2354
|
+
}
|
|
2464
2355
|
},
|
|
2465
2356
|
kitContracts: {
|
|
2466
|
-
bridge: BRIDGE_CONTRACT_EVM_MAINNET
|
|
2467
|
-
}
|
|
2357
|
+
bridge: BRIDGE_CONTRACT_EVM_MAINNET
|
|
2358
|
+
}
|
|
2468
2359
|
});
|
|
2469
2360
|
|
|
2470
2361
|
/**
|
|
@@ -2473,8 +2364,7 @@ defineChain({
|
|
|
2473
2364
|
* This represents the official test network for the Pharos blockchain.
|
|
2474
2365
|
* Pharos is a modular, full-stack parallel Layer 1 blockchain with
|
|
2475
2366
|
* sub-second finality and EVM compatibility.
|
|
2476
|
-
*/
|
|
2477
|
-
defineChain({
|
|
2367
|
+
*/ defineChain({
|
|
2478
2368
|
type: 'evm',
|
|
2479
2369
|
chain: Blockchain.Pharos_Testnet,
|
|
2480
2370
|
name: 'Pharos Atlantic',
|
|
@@ -2482,12 +2372,14 @@ defineChain({
|
|
|
2482
2372
|
nativeCurrency: {
|
|
2483
2373
|
name: 'Pharos',
|
|
2484
2374
|
symbol: 'PHAROS',
|
|
2485
|
-
decimals: 18
|
|
2375
|
+
decimals: 18
|
|
2486
2376
|
},
|
|
2487
2377
|
chainId: 688689,
|
|
2488
2378
|
isTestnet: true,
|
|
2489
2379
|
explorerUrl: 'https://atlantic.pharosscan.xyz/tx/{hash}',
|
|
2490
|
-
rpcEndpoints: [
|
|
2380
|
+
rpcEndpoints: [
|
|
2381
|
+
'https://atlantic.dplabs-internal.com'
|
|
2382
|
+
],
|
|
2491
2383
|
eurcAddress: null,
|
|
2492
2384
|
usdcAddress: '0xcfC8330f4BCAB529c625D12781b1C19466A9Fc8B',
|
|
2493
2385
|
usdtAddress: null,
|
|
@@ -2499,17 +2391,17 @@ defineChain({
|
|
|
2499
2391
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
2500
2392
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
2501
2393
|
confirmations: 1,
|
|
2502
|
-
fastConfirmations: 1
|
|
2503
|
-
}
|
|
2394
|
+
fastConfirmations: 1
|
|
2395
|
+
}
|
|
2504
2396
|
},
|
|
2505
2397
|
forwarderSupported: {
|
|
2506
2398
|
source: false,
|
|
2507
|
-
destination: false
|
|
2508
|
-
}
|
|
2399
|
+
destination: false
|
|
2400
|
+
}
|
|
2509
2401
|
},
|
|
2510
2402
|
kitContracts: {
|
|
2511
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2512
|
-
}
|
|
2403
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2404
|
+
}
|
|
2513
2405
|
});
|
|
2514
2406
|
|
|
2515
2407
|
/**
|
|
@@ -2518,8 +2410,7 @@ defineChain({
|
|
|
2518
2410
|
* This represents the official production network for the Plume blockchain.
|
|
2519
2411
|
* Plume is a Layer 1 blockchain specialized for DeFi and trading applications
|
|
2520
2412
|
* with native orderbook and matching engine.
|
|
2521
|
-
*/
|
|
2522
|
-
const Plume = defineChain({
|
|
2413
|
+
*/ const Plume = defineChain({
|
|
2523
2414
|
type: 'evm',
|
|
2524
2415
|
chain: Blockchain.Plume,
|
|
2525
2416
|
name: 'Plume',
|
|
@@ -2527,12 +2418,14 @@ const Plume = defineChain({
|
|
|
2527
2418
|
nativeCurrency: {
|
|
2528
2419
|
name: 'Plume',
|
|
2529
2420
|
symbol: 'PLUME',
|
|
2530
|
-
decimals: 18
|
|
2421
|
+
decimals: 18
|
|
2531
2422
|
},
|
|
2532
2423
|
chainId: 98866,
|
|
2533
2424
|
isTestnet: false,
|
|
2534
2425
|
explorerUrl: 'https://explorer.plume.org/tx/{hash}',
|
|
2535
|
-
rpcEndpoints: [
|
|
2426
|
+
rpcEndpoints: [
|
|
2427
|
+
'https://rpc.plume.org'
|
|
2428
|
+
],
|
|
2536
2429
|
eurcAddress: null,
|
|
2537
2430
|
usdcAddress: '0x222365EF19F7947e5484218551B56bb3965Aa7aF',
|
|
2538
2431
|
usdtAddress: null,
|
|
@@ -2544,18 +2437,18 @@ const Plume = defineChain({
|
|
|
2544
2437
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
2545
2438
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
2546
2439
|
confirmations: 65,
|
|
2547
|
-
fastConfirmations: 1
|
|
2548
|
-
}
|
|
2440
|
+
fastConfirmations: 1
|
|
2441
|
+
}
|
|
2549
2442
|
},
|
|
2550
2443
|
forwarderSupported: {
|
|
2551
|
-
source:
|
|
2552
|
-
destination: true
|
|
2553
|
-
}
|
|
2444
|
+
source: false,
|
|
2445
|
+
destination: true
|
|
2446
|
+
}
|
|
2554
2447
|
},
|
|
2555
2448
|
kitContracts: {
|
|
2556
2449
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
2557
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
2558
|
-
}
|
|
2450
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
2451
|
+
}
|
|
2559
2452
|
});
|
|
2560
2453
|
|
|
2561
2454
|
/**
|
|
@@ -2563,8 +2456,7 @@ const Plume = defineChain({
|
|
|
2563
2456
|
* @remarks
|
|
2564
2457
|
* This represents the official testnet for the Plume blockchain.
|
|
2565
2458
|
* Used for development and testing purposes before deploying to mainnet.
|
|
2566
|
-
*/
|
|
2567
|
-
const PlumeTestnet = defineChain({
|
|
2459
|
+
*/ const PlumeTestnet = defineChain({
|
|
2568
2460
|
type: 'evm',
|
|
2569
2461
|
chain: Blockchain.Plume_Testnet,
|
|
2570
2462
|
name: 'Plume Testnet',
|
|
@@ -2572,12 +2464,14 @@ const PlumeTestnet = defineChain({
|
|
|
2572
2464
|
nativeCurrency: {
|
|
2573
2465
|
name: 'Plume',
|
|
2574
2466
|
symbol: 'PLUME',
|
|
2575
|
-
decimals: 18
|
|
2467
|
+
decimals: 18
|
|
2576
2468
|
},
|
|
2577
2469
|
chainId: 98867,
|
|
2578
2470
|
isTestnet: true,
|
|
2579
2471
|
explorerUrl: 'https://testnet-explorer.plume.org/tx/{hash}',
|
|
2580
|
-
rpcEndpoints: [
|
|
2472
|
+
rpcEndpoints: [
|
|
2473
|
+
'https://testnet-rpc.plume.org'
|
|
2474
|
+
],
|
|
2581
2475
|
eurcAddress: null,
|
|
2582
2476
|
usdcAddress: '0xcB5f30e335672893c7eb944B374c196392C19D18',
|
|
2583
2477
|
usdtAddress: null,
|
|
@@ -2589,25 +2483,24 @@ const PlumeTestnet = defineChain({
|
|
|
2589
2483
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
2590
2484
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
2591
2485
|
confirmations: 65,
|
|
2592
|
-
fastConfirmations: 1
|
|
2593
|
-
}
|
|
2486
|
+
fastConfirmations: 1
|
|
2487
|
+
}
|
|
2594
2488
|
},
|
|
2595
2489
|
forwarderSupported: {
|
|
2596
|
-
source:
|
|
2597
|
-
destination: true
|
|
2598
|
-
}
|
|
2490
|
+
source: false,
|
|
2491
|
+
destination: true
|
|
2492
|
+
}
|
|
2599
2493
|
},
|
|
2600
2494
|
kitContracts: {
|
|
2601
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2602
|
-
}
|
|
2495
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2496
|
+
}
|
|
2603
2497
|
});
|
|
2604
2498
|
|
|
2605
2499
|
/**
|
|
2606
2500
|
* Polkadot Asset Hub chain definition
|
|
2607
2501
|
* @remarks
|
|
2608
2502
|
* This represents the official asset management parachain for the Polkadot blockchain.
|
|
2609
|
-
*/
|
|
2610
|
-
defineChain({
|
|
2503
|
+
*/ defineChain({
|
|
2611
2504
|
type: 'polkadot',
|
|
2612
2505
|
chain: Blockchain.Polkadot_Asset_Hub,
|
|
2613
2506
|
name: 'Polkadot Asset Hub',
|
|
@@ -2615,23 +2508,24 @@ defineChain({
|
|
|
2615
2508
|
nativeCurrency: {
|
|
2616
2509
|
name: 'Polkadot',
|
|
2617
2510
|
symbol: 'DOT',
|
|
2618
|
-
decimals: 10
|
|
2511
|
+
decimals: 10
|
|
2619
2512
|
},
|
|
2620
2513
|
isTestnet: false,
|
|
2621
2514
|
explorerUrl: 'https://polkadot.subscan.io/extrinsic/{hash}',
|
|
2622
|
-
rpcEndpoints: [
|
|
2515
|
+
rpcEndpoints: [
|
|
2516
|
+
'https://asset-hub-polkadot-rpc.n.dwellir.com'
|
|
2517
|
+
],
|
|
2623
2518
|
eurcAddress: null,
|
|
2624
2519
|
usdcAddress: '1337',
|
|
2625
2520
|
usdtAddress: '1984',
|
|
2626
|
-
cctp: null
|
|
2521
|
+
cctp: null
|
|
2627
2522
|
});
|
|
2628
2523
|
|
|
2629
2524
|
/**
|
|
2630
2525
|
* Polkadot Westmint chain definition
|
|
2631
2526
|
* @remarks
|
|
2632
2527
|
* This represents an asset management parachain in the Polkadot ecosystem.
|
|
2633
|
-
*/
|
|
2634
|
-
defineChain({
|
|
2528
|
+
*/ defineChain({
|
|
2635
2529
|
type: 'polkadot',
|
|
2636
2530
|
chain: Blockchain.Polkadot_Westmint,
|
|
2637
2531
|
name: 'Polkadot Westmint',
|
|
@@ -2639,23 +2533,24 @@ defineChain({
|
|
|
2639
2533
|
nativeCurrency: {
|
|
2640
2534
|
name: 'Polkadot',
|
|
2641
2535
|
symbol: 'DOT',
|
|
2642
|
-
decimals: 10
|
|
2536
|
+
decimals: 10
|
|
2643
2537
|
},
|
|
2644
2538
|
isTestnet: false,
|
|
2645
2539
|
explorerUrl: 'https://assethub-polkadot.subscan.io/extrinsic/{hash}',
|
|
2646
|
-
rpcEndpoints: [
|
|
2540
|
+
rpcEndpoints: [
|
|
2541
|
+
'https://westmint-rpc.polkadot.io'
|
|
2542
|
+
],
|
|
2647
2543
|
eurcAddress: null,
|
|
2648
2544
|
usdcAddress: 'Asset ID 31337',
|
|
2649
2545
|
usdtAddress: null,
|
|
2650
|
-
cctp: null
|
|
2546
|
+
cctp: null
|
|
2651
2547
|
});
|
|
2652
2548
|
|
|
2653
2549
|
/**
|
|
2654
2550
|
* Polygon Mainnet chain definition
|
|
2655
2551
|
* @remarks
|
|
2656
2552
|
* This represents the official production network for the Polygon blockchain.
|
|
2657
|
-
*/
|
|
2658
|
-
const Polygon = defineChain({
|
|
2553
|
+
*/ const Polygon = defineChain({
|
|
2659
2554
|
type: 'evm',
|
|
2660
2555
|
chain: Blockchain.Polygon,
|
|
2661
2556
|
name: 'Polygon',
|
|
@@ -2663,12 +2558,15 @@ const Polygon = defineChain({
|
|
|
2663
2558
|
nativeCurrency: {
|
|
2664
2559
|
name: 'POL',
|
|
2665
2560
|
symbol: 'POL',
|
|
2666
|
-
decimals: 18
|
|
2561
|
+
decimals: 18
|
|
2667
2562
|
},
|
|
2668
2563
|
chainId: 137,
|
|
2669
2564
|
isTestnet: false,
|
|
2670
2565
|
explorerUrl: 'https://polygonscan.com/tx/{hash}',
|
|
2671
|
-
rpcEndpoints: [
|
|
2566
|
+
rpcEndpoints: [
|
|
2567
|
+
'https://polygon.publicnode.com',
|
|
2568
|
+
'https://polygon.drpc.org'
|
|
2569
|
+
],
|
|
2672
2570
|
eurcAddress: null,
|
|
2673
2571
|
usdcAddress: '0x3c499c542cef5e3811e1192ce70d8cc03d5c3359',
|
|
2674
2572
|
usdtAddress: null,
|
|
@@ -2679,46 +2577,45 @@ const Polygon = defineChain({
|
|
|
2679
2577
|
type: 'split',
|
|
2680
2578
|
tokenMessenger: '0x9daF8c91AEFAE50b9c0E69629D3F6Ca40cA3B3FE',
|
|
2681
2579
|
messageTransmitter: '0xF3be9355363857F3e001be68856A2f96b4C39Ba9',
|
|
2682
|
-
confirmations: 200
|
|
2580
|
+
confirmations: 200
|
|
2683
2581
|
},
|
|
2684
2582
|
v2: {
|
|
2685
2583
|
type: 'split',
|
|
2686
2584
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
2687
2585
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
2688
2586
|
confirmations: 33,
|
|
2689
|
-
fastConfirmations: 13
|
|
2690
|
-
}
|
|
2587
|
+
fastConfirmations: 13
|
|
2588
|
+
}
|
|
2691
2589
|
},
|
|
2692
2590
|
forwarderSupported: {
|
|
2693
|
-
source:
|
|
2694
|
-
destination: true
|
|
2695
|
-
}
|
|
2591
|
+
source: false,
|
|
2592
|
+
destination: true
|
|
2593
|
+
}
|
|
2696
2594
|
},
|
|
2697
2595
|
kitContracts: {
|
|
2698
2596
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
2699
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
2597
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
2700
2598
|
},
|
|
2701
2599
|
gateway: {
|
|
2702
2600
|
domain: 7,
|
|
2703
2601
|
contracts: {
|
|
2704
2602
|
v1: {
|
|
2705
2603
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
2706
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
2707
|
-
}
|
|
2604
|
+
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
2605
|
+
}
|
|
2708
2606
|
},
|
|
2709
2607
|
forwarderSupported: {
|
|
2710
2608
|
source: true,
|
|
2711
|
-
destination: true
|
|
2712
|
-
}
|
|
2713
|
-
}
|
|
2609
|
+
destination: true
|
|
2610
|
+
}
|
|
2611
|
+
}
|
|
2714
2612
|
});
|
|
2715
2613
|
|
|
2716
2614
|
/**
|
|
2717
2615
|
* Polygon Amoy Testnet chain definition
|
|
2718
2616
|
* @remarks
|
|
2719
2617
|
* This represents the official test network for the Polygon blockchain.
|
|
2720
|
-
*/
|
|
2721
|
-
const PolygonAmoy = defineChain({
|
|
2618
|
+
*/ const PolygonAmoy = defineChain({
|
|
2722
2619
|
type: 'evm',
|
|
2723
2620
|
chain: Blockchain.Polygon_Amoy_Testnet,
|
|
2724
2621
|
name: 'Polygon Amoy',
|
|
@@ -2726,12 +2623,14 @@ const PolygonAmoy = defineChain({
|
|
|
2726
2623
|
nativeCurrency: {
|
|
2727
2624
|
name: 'POL',
|
|
2728
2625
|
symbol: 'POL',
|
|
2729
|
-
decimals: 18
|
|
2626
|
+
decimals: 18
|
|
2730
2627
|
},
|
|
2731
2628
|
chainId: 80002,
|
|
2732
2629
|
isTestnet: true,
|
|
2733
2630
|
explorerUrl: 'https://amoy.polygonscan.com/tx/{hash}',
|
|
2734
|
-
rpcEndpoints: [
|
|
2631
|
+
rpcEndpoints: [
|
|
2632
|
+
'https://rpc-amoy.polygon.technology'
|
|
2633
|
+
],
|
|
2735
2634
|
eurcAddress: null,
|
|
2736
2635
|
usdcAddress: '0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582',
|
|
2737
2636
|
usdtAddress: null,
|
|
@@ -2742,37 +2641,37 @@ const PolygonAmoy = defineChain({
|
|
|
2742
2641
|
type: 'split',
|
|
2743
2642
|
tokenMessenger: '0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5',
|
|
2744
2643
|
messageTransmitter: '0x7865fAfC2db2093669d92c0F33AeEF291086BEFD',
|
|
2745
|
-
confirmations: 200
|
|
2644
|
+
confirmations: 200
|
|
2746
2645
|
},
|
|
2747
2646
|
v2: {
|
|
2748
2647
|
type: 'split',
|
|
2749
2648
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
2750
2649
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
2751
2650
|
confirmations: 33,
|
|
2752
|
-
fastConfirmations: 13
|
|
2753
|
-
}
|
|
2651
|
+
fastConfirmations: 13
|
|
2652
|
+
}
|
|
2754
2653
|
},
|
|
2755
2654
|
forwarderSupported: {
|
|
2756
|
-
source:
|
|
2757
|
-
destination: true
|
|
2758
|
-
}
|
|
2655
|
+
source: false,
|
|
2656
|
+
destination: true
|
|
2657
|
+
}
|
|
2759
2658
|
},
|
|
2760
2659
|
kitContracts: {
|
|
2761
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2660
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2762
2661
|
},
|
|
2763
2662
|
gateway: {
|
|
2764
2663
|
domain: 7,
|
|
2765
2664
|
contracts: {
|
|
2766
2665
|
v1: {
|
|
2767
2666
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
2768
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
2769
|
-
}
|
|
2667
|
+
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
2668
|
+
}
|
|
2770
2669
|
},
|
|
2771
2670
|
forwarderSupported: {
|
|
2772
2671
|
source: true,
|
|
2773
|
-
destination: true
|
|
2774
|
-
}
|
|
2775
|
-
}
|
|
2672
|
+
destination: true
|
|
2673
|
+
}
|
|
2674
|
+
}
|
|
2776
2675
|
});
|
|
2777
2676
|
|
|
2778
2677
|
/**
|
|
@@ -2781,8 +2680,7 @@ const PolygonAmoy = defineChain({
|
|
|
2781
2680
|
* This represents the official production network for the Sei blockchain.
|
|
2782
2681
|
* Sei is a Layer 1 blockchain specialized for DeFi and trading applications
|
|
2783
2682
|
* with native orderbook and matching engine.
|
|
2784
|
-
*/
|
|
2785
|
-
const Sei = defineChain({
|
|
2683
|
+
*/ const Sei = defineChain({
|
|
2786
2684
|
type: 'evm',
|
|
2787
2685
|
chain: Blockchain.Sei,
|
|
2788
2686
|
name: 'Sei',
|
|
@@ -2790,12 +2688,14 @@ const Sei = defineChain({
|
|
|
2790
2688
|
nativeCurrency: {
|
|
2791
2689
|
name: 'Sei',
|
|
2792
2690
|
symbol: 'SEI',
|
|
2793
|
-
decimals: 18
|
|
2691
|
+
decimals: 18
|
|
2794
2692
|
},
|
|
2795
2693
|
chainId: 1329,
|
|
2796
2694
|
isTestnet: false,
|
|
2797
2695
|
explorerUrl: 'https://seiscan.io/tx/{hash}',
|
|
2798
|
-
rpcEndpoints: [
|
|
2696
|
+
rpcEndpoints: [
|
|
2697
|
+
'https://evm-rpc.sei-apis.com'
|
|
2698
|
+
],
|
|
2799
2699
|
eurcAddress: null,
|
|
2800
2700
|
usdcAddress: '0xe15fC38F6D8c56aF07bbCBe3BAf5708A2Bf42392',
|
|
2801
2701
|
usdtAddress: null,
|
|
@@ -2807,31 +2707,31 @@ const Sei = defineChain({
|
|
|
2807
2707
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
2808
2708
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
2809
2709
|
confirmations: 1,
|
|
2810
|
-
fastConfirmations: 1
|
|
2811
|
-
}
|
|
2710
|
+
fastConfirmations: 1
|
|
2711
|
+
}
|
|
2812
2712
|
},
|
|
2813
2713
|
forwarderSupported: {
|
|
2814
|
-
source:
|
|
2815
|
-
destination: true
|
|
2816
|
-
}
|
|
2714
|
+
source: false,
|
|
2715
|
+
destination: true
|
|
2716
|
+
}
|
|
2817
2717
|
},
|
|
2818
2718
|
kitContracts: {
|
|
2819
2719
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
2820
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
2720
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
2821
2721
|
},
|
|
2822
2722
|
gateway: {
|
|
2823
2723
|
domain: 16,
|
|
2824
2724
|
contracts: {
|
|
2825
2725
|
v1: {
|
|
2826
2726
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
2827
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
2828
|
-
}
|
|
2727
|
+
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
2728
|
+
}
|
|
2829
2729
|
},
|
|
2830
2730
|
forwarderSupported: {
|
|
2831
2731
|
source: true,
|
|
2832
|
-
destination: true
|
|
2833
|
-
}
|
|
2834
|
-
}
|
|
2732
|
+
destination: true
|
|
2733
|
+
}
|
|
2734
|
+
}
|
|
2835
2735
|
});
|
|
2836
2736
|
|
|
2837
2737
|
/**
|
|
@@ -2839,8 +2739,7 @@ const Sei = defineChain({
|
|
|
2839
2739
|
* @remarks
|
|
2840
2740
|
* This represents the official testnet for the Sei blockchain.
|
|
2841
2741
|
* Used for development and testing purposes before deploying to mainnet.
|
|
2842
|
-
*/
|
|
2843
|
-
const SeiTestnet = defineChain({
|
|
2742
|
+
*/ const SeiTestnet = defineChain({
|
|
2844
2743
|
type: 'evm',
|
|
2845
2744
|
chain: Blockchain.Sei_Testnet,
|
|
2846
2745
|
name: 'Sei Testnet',
|
|
@@ -2848,12 +2747,14 @@ const SeiTestnet = defineChain({
|
|
|
2848
2747
|
nativeCurrency: {
|
|
2849
2748
|
name: 'Sei',
|
|
2850
2749
|
symbol: 'SEI',
|
|
2851
|
-
decimals: 18
|
|
2750
|
+
decimals: 18
|
|
2852
2751
|
},
|
|
2853
2752
|
chainId: 1328,
|
|
2854
2753
|
isTestnet: true,
|
|
2855
2754
|
explorerUrl: 'https://testnet.seiscan.io/tx/{hash}',
|
|
2856
|
-
rpcEndpoints: [
|
|
2755
|
+
rpcEndpoints: [
|
|
2756
|
+
'https://evm-rpc-testnet.sei-apis.com'
|
|
2757
|
+
],
|
|
2857
2758
|
eurcAddress: null,
|
|
2858
2759
|
usdcAddress: '0x4fCF1784B31630811181f670Aea7A7bEF803eaED',
|
|
2859
2760
|
usdtAddress: null,
|
|
@@ -2865,38 +2766,37 @@ const SeiTestnet = defineChain({
|
|
|
2865
2766
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
2866
2767
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
2867
2768
|
confirmations: 1,
|
|
2868
|
-
fastConfirmations: 1
|
|
2869
|
-
}
|
|
2769
|
+
fastConfirmations: 1
|
|
2770
|
+
}
|
|
2870
2771
|
},
|
|
2871
2772
|
forwarderSupported: {
|
|
2872
|
-
source:
|
|
2873
|
-
destination: true
|
|
2874
|
-
}
|
|
2773
|
+
source: false,
|
|
2774
|
+
destination: true
|
|
2775
|
+
}
|
|
2875
2776
|
},
|
|
2876
2777
|
kitContracts: {
|
|
2877
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2778
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2878
2779
|
},
|
|
2879
2780
|
gateway: {
|
|
2880
2781
|
domain: 16,
|
|
2881
2782
|
contracts: {
|
|
2882
2783
|
v1: {
|
|
2883
2784
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
2884
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
2885
|
-
}
|
|
2785
|
+
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
2786
|
+
}
|
|
2886
2787
|
},
|
|
2887
2788
|
forwarderSupported: {
|
|
2888
2789
|
source: true,
|
|
2889
|
-
destination: true
|
|
2890
|
-
}
|
|
2891
|
-
}
|
|
2790
|
+
destination: true
|
|
2791
|
+
}
|
|
2792
|
+
}
|
|
2892
2793
|
});
|
|
2893
2794
|
|
|
2894
2795
|
/**
|
|
2895
2796
|
* Sonic Mainnet chain definition
|
|
2896
2797
|
* @remarks
|
|
2897
2798
|
* This represents the official production network for the Sonic blockchain.
|
|
2898
|
-
*/
|
|
2899
|
-
const Sonic = defineChain({
|
|
2799
|
+
*/ const Sonic = defineChain({
|
|
2900
2800
|
type: 'evm',
|
|
2901
2801
|
chain: Blockchain.Sonic,
|
|
2902
2802
|
name: 'Sonic',
|
|
@@ -2904,12 +2804,14 @@ const Sonic = defineChain({
|
|
|
2904
2804
|
nativeCurrency: {
|
|
2905
2805
|
name: 'Sonic',
|
|
2906
2806
|
symbol: 'S',
|
|
2907
|
-
decimals: 18
|
|
2807
|
+
decimals: 18
|
|
2908
2808
|
},
|
|
2909
2809
|
chainId: 146,
|
|
2910
2810
|
isTestnet: false,
|
|
2911
2811
|
explorerUrl: 'https://sonicscan.org/tx/{hash}',
|
|
2912
|
-
rpcEndpoints: [
|
|
2812
|
+
rpcEndpoints: [
|
|
2813
|
+
'https://rpc.soniclabs.com'
|
|
2814
|
+
],
|
|
2913
2815
|
eurcAddress: null,
|
|
2914
2816
|
usdcAddress: '0x29219dd400f2Bf60E5a23d13Be72B486D4038894',
|
|
2915
2817
|
usdtAddress: null,
|
|
@@ -2921,39 +2823,38 @@ const Sonic = defineChain({
|
|
|
2921
2823
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
2922
2824
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
2923
2825
|
confirmations: 1,
|
|
2924
|
-
fastConfirmations: 1
|
|
2925
|
-
}
|
|
2826
|
+
fastConfirmations: 1
|
|
2827
|
+
}
|
|
2926
2828
|
},
|
|
2927
2829
|
forwarderSupported: {
|
|
2928
|
-
source:
|
|
2929
|
-
destination: true
|
|
2930
|
-
}
|
|
2830
|
+
source: false,
|
|
2831
|
+
destination: true
|
|
2832
|
+
}
|
|
2931
2833
|
},
|
|
2932
2834
|
kitContracts: {
|
|
2933
2835
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
2934
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
2836
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
2935
2837
|
},
|
|
2936
2838
|
gateway: {
|
|
2937
2839
|
domain: 13,
|
|
2938
2840
|
contracts: {
|
|
2939
2841
|
v1: {
|
|
2940
2842
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
2941
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
2942
|
-
}
|
|
2843
|
+
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
2844
|
+
}
|
|
2943
2845
|
},
|
|
2944
2846
|
forwarderSupported: {
|
|
2945
2847
|
source: true,
|
|
2946
|
-
destination: true
|
|
2947
|
-
}
|
|
2948
|
-
}
|
|
2848
|
+
destination: true
|
|
2849
|
+
}
|
|
2850
|
+
}
|
|
2949
2851
|
});
|
|
2950
2852
|
|
|
2951
2853
|
/**
|
|
2952
2854
|
* Sonic Testnet chain definition
|
|
2953
2855
|
* @remarks
|
|
2954
2856
|
* This represents the official test network for the Sonic blockchain.
|
|
2955
|
-
*/
|
|
2956
|
-
const SonicTestnet = defineChain({
|
|
2857
|
+
*/ const SonicTestnet = defineChain({
|
|
2957
2858
|
type: 'evm',
|
|
2958
2859
|
chain: Blockchain.Sonic_Testnet,
|
|
2959
2860
|
name: 'Sonic Testnet',
|
|
@@ -2961,12 +2862,14 @@ const SonicTestnet = defineChain({
|
|
|
2961
2862
|
nativeCurrency: {
|
|
2962
2863
|
name: 'Sonic',
|
|
2963
2864
|
symbol: 'S',
|
|
2964
|
-
decimals: 18
|
|
2865
|
+
decimals: 18
|
|
2965
2866
|
},
|
|
2966
2867
|
chainId: 14601,
|
|
2967
2868
|
isTestnet: true,
|
|
2968
2869
|
explorerUrl: 'https://testnet.sonicscan.org/tx/{hash}',
|
|
2969
|
-
rpcEndpoints: [
|
|
2870
|
+
rpcEndpoints: [
|
|
2871
|
+
'https://rpc.testnet.soniclabs.com'
|
|
2872
|
+
],
|
|
2970
2873
|
eurcAddress: null,
|
|
2971
2874
|
usdcAddress: '0x0BA304580ee7c9a980CF72e55f5Ed2E9fd30Bc51',
|
|
2972
2875
|
usdtAddress: null,
|
|
@@ -2978,38 +2881,37 @@ const SonicTestnet = defineChain({
|
|
|
2978
2881
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
2979
2882
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
2980
2883
|
confirmations: 1,
|
|
2981
|
-
fastConfirmations: 1
|
|
2982
|
-
}
|
|
2884
|
+
fastConfirmations: 1
|
|
2885
|
+
}
|
|
2983
2886
|
},
|
|
2984
2887
|
forwarderSupported: {
|
|
2985
|
-
source:
|
|
2986
|
-
destination: true
|
|
2987
|
-
}
|
|
2888
|
+
source: false,
|
|
2889
|
+
destination: true
|
|
2890
|
+
}
|
|
2988
2891
|
},
|
|
2989
2892
|
kitContracts: {
|
|
2990
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2893
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2991
2894
|
},
|
|
2992
2895
|
gateway: {
|
|
2993
2896
|
domain: 13,
|
|
2994
2897
|
contracts: {
|
|
2995
2898
|
v1: {
|
|
2996
2899
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
2997
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
2998
|
-
}
|
|
2900
|
+
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
2901
|
+
}
|
|
2999
2902
|
},
|
|
3000
2903
|
forwarderSupported: {
|
|
3001
2904
|
source: true,
|
|
3002
|
-
destination: true
|
|
3003
|
-
}
|
|
3004
|
-
}
|
|
2905
|
+
destination: true
|
|
2906
|
+
}
|
|
2907
|
+
}
|
|
3005
2908
|
});
|
|
3006
2909
|
|
|
3007
2910
|
/**
|
|
3008
2911
|
* Solana Mainnet chain definition
|
|
3009
2912
|
* @remarks
|
|
3010
2913
|
* This represents the official production network for the Solana blockchain.
|
|
3011
|
-
*/
|
|
3012
|
-
const Solana = defineChain({
|
|
2914
|
+
*/ const Solana = defineChain({
|
|
3013
2915
|
type: 'solana',
|
|
3014
2916
|
chain: Blockchain.Solana,
|
|
3015
2917
|
name: 'Solana',
|
|
@@ -3017,11 +2919,13 @@ const Solana = defineChain({
|
|
|
3017
2919
|
nativeCurrency: {
|
|
3018
2920
|
name: 'Solana',
|
|
3019
2921
|
symbol: 'SOL',
|
|
3020
|
-
decimals: 9
|
|
2922
|
+
decimals: 9
|
|
3021
2923
|
},
|
|
3022
2924
|
isTestnet: false,
|
|
3023
2925
|
explorerUrl: 'https://solscan.io/tx/{hash}',
|
|
3024
|
-
rpcEndpoints: [
|
|
2926
|
+
rpcEndpoints: [
|
|
2927
|
+
'https://api.mainnet-beta.solana.com'
|
|
2928
|
+
],
|
|
3025
2929
|
eurcAddress: 'HzwqbKZw8HxMN6bF2yFZNrht3c2iXXzpKcFu7uBEDKtr',
|
|
3026
2930
|
usdcAddress: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
|
|
3027
2931
|
usdtAddress: 'Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB',
|
|
@@ -3032,45 +2936,44 @@ const Solana = defineChain({
|
|
|
3032
2936
|
type: 'split',
|
|
3033
2937
|
tokenMessenger: 'CCTPiPYPc6AsJuwueEnWgSgucamXDZwBd53dQ11YiKX3',
|
|
3034
2938
|
messageTransmitter: 'CCTPmbSD7gX1bxKPAmg77w8oFzNFpaQiQUWD43TKaecd',
|
|
3035
|
-
confirmations: 32
|
|
2939
|
+
confirmations: 32
|
|
3036
2940
|
},
|
|
3037
2941
|
v2: {
|
|
3038
2942
|
type: 'split',
|
|
3039
2943
|
tokenMessenger: 'CCTPV2vPZJS2u2BBsUoscuikbYjnpFmbFsvVuJdgUMQe',
|
|
3040
2944
|
messageTransmitter: 'CCTPV2Sm4AdWt5296sk4P66VBZ7bEhcARwFaaS9YPbeC',
|
|
3041
2945
|
confirmations: 32,
|
|
3042
|
-
fastConfirmations: 3
|
|
3043
|
-
}
|
|
2946
|
+
fastConfirmations: 3
|
|
2947
|
+
}
|
|
3044
2948
|
},
|
|
3045
2949
|
forwarderSupported: {
|
|
3046
|
-
source:
|
|
3047
|
-
destination: true
|
|
3048
|
-
}
|
|
2950
|
+
source: false,
|
|
2951
|
+
destination: true
|
|
2952
|
+
}
|
|
3049
2953
|
},
|
|
3050
2954
|
kitContracts: {
|
|
3051
|
-
bridge: 'DFaauJEjmiHkPs1JG89A4p95hDWi9m9SAEERY1LQJiC3'
|
|
2955
|
+
bridge: 'DFaauJEjmiHkPs1JG89A4p95hDWi9m9SAEERY1LQJiC3'
|
|
3052
2956
|
},
|
|
3053
2957
|
gateway: {
|
|
3054
2958
|
domain: 5,
|
|
3055
2959
|
contracts: {
|
|
3056
2960
|
v1: {
|
|
3057
2961
|
wallet: GATEWAY_WALLET_SOLANA_MAINNET,
|
|
3058
|
-
minter: GATEWAY_MINTER_SOLANA_MAINNET
|
|
3059
|
-
}
|
|
2962
|
+
minter: GATEWAY_MINTER_SOLANA_MAINNET
|
|
2963
|
+
}
|
|
3060
2964
|
},
|
|
3061
2965
|
forwarderSupported: {
|
|
3062
2966
|
source: true,
|
|
3063
|
-
destination:
|
|
3064
|
-
}
|
|
3065
|
-
}
|
|
2967
|
+
destination: true
|
|
2968
|
+
}
|
|
2969
|
+
}
|
|
3066
2970
|
});
|
|
3067
2971
|
|
|
3068
2972
|
/**
|
|
3069
2973
|
* Solana Devnet chain definition
|
|
3070
2974
|
* @remarks
|
|
3071
2975
|
* This represents the development test network for the Solana blockchain.
|
|
3072
|
-
*/
|
|
3073
|
-
const SolanaDevnet = defineChain({
|
|
2976
|
+
*/ const SolanaDevnet = defineChain({
|
|
3074
2977
|
type: 'solana',
|
|
3075
2978
|
chain: Blockchain.Solana_Devnet,
|
|
3076
2979
|
name: 'Solana Devnet',
|
|
@@ -3078,7 +2981,7 @@ const SolanaDevnet = defineChain({
|
|
|
3078
2981
|
nativeCurrency: {
|
|
3079
2982
|
name: 'Solana',
|
|
3080
2983
|
symbol: 'SOL',
|
|
3081
|
-
decimals: 9
|
|
2984
|
+
decimals: 9
|
|
3082
2985
|
},
|
|
3083
2986
|
isTestnet: true,
|
|
3084
2987
|
explorerUrl: 'https://solscan.io/tx/{hash}?cluster=devnet',
|
|
@@ -3092,46 +2995,47 @@ const SolanaDevnet = defineChain({
|
|
|
3092
2995
|
type: 'split',
|
|
3093
2996
|
tokenMessenger: 'CCTPiPYPc6AsJuwueEnWgSgucamXDZwBd53dQ11YiKX3',
|
|
3094
2997
|
messageTransmitter: 'CCTPmbSD7gX1bxKPAmg77w8oFzNFpaQiQUWD43TKaecd',
|
|
3095
|
-
confirmations: 32
|
|
2998
|
+
confirmations: 32
|
|
3096
2999
|
},
|
|
3097
3000
|
v2: {
|
|
3098
3001
|
type: 'split',
|
|
3099
3002
|
tokenMessenger: 'CCTPV2vPZJS2u2BBsUoscuikbYjnpFmbFsvVuJdgUMQe',
|
|
3100
3003
|
messageTransmitter: 'CCTPV2Sm4AdWt5296sk4P66VBZ7bEhcARwFaaS9YPbeC',
|
|
3101
3004
|
confirmations: 32,
|
|
3102
|
-
fastConfirmations: 3
|
|
3103
|
-
}
|
|
3005
|
+
fastConfirmations: 3
|
|
3006
|
+
}
|
|
3104
3007
|
},
|
|
3105
3008
|
forwarderSupported: {
|
|
3106
|
-
source:
|
|
3107
|
-
destination: true
|
|
3108
|
-
}
|
|
3009
|
+
source: false,
|
|
3010
|
+
destination: true
|
|
3011
|
+
}
|
|
3109
3012
|
},
|
|
3110
3013
|
kitContracts: {
|
|
3111
|
-
bridge: 'DFaauJEjmiHkPs1JG89A4p95hDWi9m9SAEERY1LQJiC3'
|
|
3014
|
+
bridge: 'DFaauJEjmiHkPs1JG89A4p95hDWi9m9SAEERY1LQJiC3'
|
|
3112
3015
|
},
|
|
3113
|
-
rpcEndpoints: [
|
|
3016
|
+
rpcEndpoints: [
|
|
3017
|
+
'https://api.devnet.solana.com'
|
|
3018
|
+
],
|
|
3114
3019
|
gateway: {
|
|
3115
3020
|
domain: 5,
|
|
3116
3021
|
contracts: {
|
|
3117
3022
|
v1: {
|
|
3118
3023
|
wallet: GATEWAY_WALLET_SOLANA_DEVNET,
|
|
3119
|
-
minter: GATEWAY_MINTER_SOLANA_DEVNET
|
|
3120
|
-
}
|
|
3024
|
+
minter: GATEWAY_MINTER_SOLANA_DEVNET
|
|
3025
|
+
}
|
|
3121
3026
|
},
|
|
3122
3027
|
forwarderSupported: {
|
|
3123
3028
|
source: true,
|
|
3124
|
-
destination:
|
|
3125
|
-
}
|
|
3126
|
-
}
|
|
3029
|
+
destination: true
|
|
3030
|
+
}
|
|
3031
|
+
}
|
|
3127
3032
|
});
|
|
3128
3033
|
|
|
3129
3034
|
/**
|
|
3130
3035
|
* Stellar Mainnet chain definition
|
|
3131
3036
|
* @remarks
|
|
3132
3037
|
* This represents the official production network for the Stellar blockchain.
|
|
3133
|
-
*/
|
|
3134
|
-
defineChain({
|
|
3038
|
+
*/ defineChain({
|
|
3135
3039
|
type: 'stellar',
|
|
3136
3040
|
chain: Blockchain.Stellar,
|
|
3137
3041
|
name: 'Stellar',
|
|
@@ -3139,23 +3043,24 @@ defineChain({
|
|
|
3139
3043
|
nativeCurrency: {
|
|
3140
3044
|
name: 'Stellar Lumens',
|
|
3141
3045
|
symbol: 'XLM',
|
|
3142
|
-
decimals: 7
|
|
3046
|
+
decimals: 7
|
|
3143
3047
|
},
|
|
3144
3048
|
isTestnet: false,
|
|
3145
3049
|
explorerUrl: 'https://stellar.expert/explorer/public/tx/{hash}',
|
|
3146
|
-
rpcEndpoints: [
|
|
3050
|
+
rpcEndpoints: [
|
|
3051
|
+
'https://horizon.stellar.org'
|
|
3052
|
+
],
|
|
3147
3053
|
eurcAddress: 'EURC-GDHU6WRG4IEQXM5NZ4BMPKOXHW76MZM4Y2IEMFDVXBSDP6SJY4ITNPP2',
|
|
3148
3054
|
usdcAddress: 'USDC-GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN',
|
|
3149
3055
|
usdtAddress: null,
|
|
3150
|
-
cctp: null
|
|
3056
|
+
cctp: null
|
|
3151
3057
|
});
|
|
3152
3058
|
|
|
3153
3059
|
/**
|
|
3154
3060
|
* Stellar Testnet chain definition
|
|
3155
3061
|
* @remarks
|
|
3156
3062
|
* This represents the official test network for the Stellar blockchain.
|
|
3157
|
-
*/
|
|
3158
|
-
defineChain({
|
|
3063
|
+
*/ defineChain({
|
|
3159
3064
|
type: 'stellar',
|
|
3160
3065
|
chain: Blockchain.Stellar_Testnet,
|
|
3161
3066
|
name: 'Stellar Testnet',
|
|
@@ -3163,23 +3068,24 @@ defineChain({
|
|
|
3163
3068
|
nativeCurrency: {
|
|
3164
3069
|
name: 'Stellar Lumens',
|
|
3165
3070
|
symbol: 'XLM',
|
|
3166
|
-
decimals: 7
|
|
3071
|
+
decimals: 7
|
|
3167
3072
|
},
|
|
3168
3073
|
isTestnet: true,
|
|
3169
3074
|
explorerUrl: 'https://stellar.expert/explorer/testnet/tx/{hash}',
|
|
3170
|
-
rpcEndpoints: [
|
|
3075
|
+
rpcEndpoints: [
|
|
3076
|
+
'https://horizon-testnet.stellar.org'
|
|
3077
|
+
],
|
|
3171
3078
|
eurcAddress: 'EURC-GB3Q6QDZYTHWT7E5PVS3W7FUT5GVAFC5KSZFFLPU25GO7VTC3NM2ZTVO',
|
|
3172
3079
|
usdcAddress: 'USDC-GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5',
|
|
3173
3080
|
usdtAddress: null,
|
|
3174
|
-
cctp: null
|
|
3081
|
+
cctp: null
|
|
3175
3082
|
});
|
|
3176
3083
|
|
|
3177
3084
|
/**
|
|
3178
3085
|
* Sui Mainnet chain definition
|
|
3179
3086
|
* @remarks
|
|
3180
3087
|
* This represents the official production network for the Sui blockchain.
|
|
3181
|
-
*/
|
|
3182
|
-
defineChain({
|
|
3088
|
+
*/ defineChain({
|
|
3183
3089
|
type: 'sui',
|
|
3184
3090
|
chain: Blockchain.Sui,
|
|
3185
3091
|
name: 'Sui',
|
|
@@ -3187,11 +3093,13 @@ defineChain({
|
|
|
3187
3093
|
nativeCurrency: {
|
|
3188
3094
|
name: 'Sui',
|
|
3189
3095
|
symbol: 'SUI',
|
|
3190
|
-
decimals: 9
|
|
3096
|
+
decimals: 9
|
|
3191
3097
|
},
|
|
3192
3098
|
isTestnet: false,
|
|
3193
3099
|
explorerUrl: 'https://suiscan.xyz/mainnet/tx/{hash}',
|
|
3194
|
-
rpcEndpoints: [
|
|
3100
|
+
rpcEndpoints: [
|
|
3101
|
+
'https://fullnode.mainnet.sui.io'
|
|
3102
|
+
],
|
|
3195
3103
|
eurcAddress: null,
|
|
3196
3104
|
usdcAddress: '0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC',
|
|
3197
3105
|
usdtAddress: null,
|
|
@@ -3202,22 +3110,21 @@ defineChain({
|
|
|
3202
3110
|
type: 'split',
|
|
3203
3111
|
tokenMessenger: '0x2aa6c5d56376c371f88a6cc42e852824994993cb9bab8d3e6450cbe3cb32b94e',
|
|
3204
3112
|
messageTransmitter: '0x08d87d37ba49e785dde270a83f8e979605b03dc552b5548f26fdf2f49bf7ed1b',
|
|
3205
|
-
confirmations: 1
|
|
3206
|
-
}
|
|
3113
|
+
confirmations: 1
|
|
3114
|
+
}
|
|
3207
3115
|
},
|
|
3208
3116
|
forwarderSupported: {
|
|
3209
3117
|
source: false,
|
|
3210
|
-
destination: false
|
|
3211
|
-
}
|
|
3212
|
-
}
|
|
3118
|
+
destination: false
|
|
3119
|
+
}
|
|
3120
|
+
}
|
|
3213
3121
|
});
|
|
3214
3122
|
|
|
3215
3123
|
/**
|
|
3216
3124
|
* Sui Testnet chain definition
|
|
3217
3125
|
* @remarks
|
|
3218
3126
|
* This represents the official test network for the Sui blockchain.
|
|
3219
|
-
*/
|
|
3220
|
-
defineChain({
|
|
3127
|
+
*/ defineChain({
|
|
3221
3128
|
type: 'sui',
|
|
3222
3129
|
chain: Blockchain.Sui_Testnet,
|
|
3223
3130
|
name: 'Sui Testnet',
|
|
@@ -3225,11 +3132,13 @@ defineChain({
|
|
|
3225
3132
|
nativeCurrency: {
|
|
3226
3133
|
name: 'Sui',
|
|
3227
3134
|
symbol: 'SUI',
|
|
3228
|
-
decimals: 9
|
|
3135
|
+
decimals: 9
|
|
3229
3136
|
},
|
|
3230
3137
|
isTestnet: true,
|
|
3231
3138
|
explorerUrl: 'https://suiscan.xyz/testnet/tx/{hash}',
|
|
3232
|
-
rpcEndpoints: [
|
|
3139
|
+
rpcEndpoints: [
|
|
3140
|
+
'https://fullnode.testnet.sui.io'
|
|
3141
|
+
],
|
|
3233
3142
|
eurcAddress: null,
|
|
3234
3143
|
usdcAddress: '0xa1ec7fc00a6f40db9693ad1415d0c193ad3906494428cf252621037bd7117e29::usdc::USDC',
|
|
3235
3144
|
usdtAddress: null,
|
|
@@ -3240,22 +3149,21 @@ defineChain({
|
|
|
3240
3149
|
type: 'split',
|
|
3241
3150
|
tokenMessenger: '0x31cc14d80c175ae39777c0238f20594c6d4869cfab199f40b69f3319956b8beb',
|
|
3242
3151
|
messageTransmitter: '0x4931e06dce648b3931f890035bd196920770e913e43e45990b383f6486fdd0a5',
|
|
3243
|
-
confirmations: 1
|
|
3244
|
-
}
|
|
3152
|
+
confirmations: 1
|
|
3153
|
+
}
|
|
3245
3154
|
},
|
|
3246
3155
|
forwarderSupported: {
|
|
3247
3156
|
source: false,
|
|
3248
|
-
destination: false
|
|
3249
|
-
}
|
|
3250
|
-
}
|
|
3157
|
+
destination: false
|
|
3158
|
+
}
|
|
3159
|
+
}
|
|
3251
3160
|
});
|
|
3252
3161
|
|
|
3253
3162
|
/**
|
|
3254
3163
|
* Unichain Mainnet chain definition
|
|
3255
3164
|
* @remarks
|
|
3256
3165
|
* This represents the official production network for the Unichain blockchain.
|
|
3257
|
-
*/
|
|
3258
|
-
const Unichain = defineChain({
|
|
3166
|
+
*/ const Unichain = defineChain({
|
|
3259
3167
|
type: 'evm',
|
|
3260
3168
|
chain: Blockchain.Unichain,
|
|
3261
3169
|
name: 'Unichain',
|
|
@@ -3263,12 +3171,14 @@ const Unichain = defineChain({
|
|
|
3263
3171
|
nativeCurrency: {
|
|
3264
3172
|
name: 'Uni',
|
|
3265
3173
|
symbol: 'UNI',
|
|
3266
|
-
decimals: 18
|
|
3174
|
+
decimals: 18
|
|
3267
3175
|
},
|
|
3268
3176
|
chainId: 130,
|
|
3269
3177
|
isTestnet: false,
|
|
3270
3178
|
explorerUrl: 'https://unichain.blockscout.com/tx/{hash}',
|
|
3271
|
-
rpcEndpoints: [
|
|
3179
|
+
rpcEndpoints: [
|
|
3180
|
+
'https://mainnet.unichain.org'
|
|
3181
|
+
],
|
|
3272
3182
|
eurcAddress: null,
|
|
3273
3183
|
usdcAddress: '0x078D782b760474a361dDA0AF3839290b0EF57AD6',
|
|
3274
3184
|
usdtAddress: null,
|
|
@@ -3279,46 +3189,45 @@ const Unichain = defineChain({
|
|
|
3279
3189
|
type: 'split',
|
|
3280
3190
|
tokenMessenger: '0x4e744b28E787c3aD0e810eD65A24461D4ac5a762',
|
|
3281
3191
|
messageTransmitter: '0x353bE9E2E38AB1D19104534e4edC21c643Df86f4',
|
|
3282
|
-
confirmations: 65
|
|
3192
|
+
confirmations: 65
|
|
3283
3193
|
},
|
|
3284
3194
|
v2: {
|
|
3285
3195
|
type: 'split',
|
|
3286
3196
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
3287
3197
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
3288
3198
|
confirmations: 65,
|
|
3289
|
-
fastConfirmations: 1
|
|
3290
|
-
}
|
|
3199
|
+
fastConfirmations: 1
|
|
3200
|
+
}
|
|
3291
3201
|
},
|
|
3292
3202
|
forwarderSupported: {
|
|
3293
|
-
source:
|
|
3294
|
-
destination: true
|
|
3295
|
-
}
|
|
3203
|
+
source: false,
|
|
3204
|
+
destination: true
|
|
3205
|
+
}
|
|
3296
3206
|
},
|
|
3297
3207
|
kitContracts: {
|
|
3298
3208
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
3299
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
3209
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
3300
3210
|
},
|
|
3301
3211
|
gateway: {
|
|
3302
3212
|
domain: 10,
|
|
3303
3213
|
contracts: {
|
|
3304
3214
|
v1: {
|
|
3305
3215
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
3306
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
3307
|
-
}
|
|
3216
|
+
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
3217
|
+
}
|
|
3308
3218
|
},
|
|
3309
3219
|
forwarderSupported: {
|
|
3310
3220
|
source: true,
|
|
3311
|
-
destination: true
|
|
3312
|
-
}
|
|
3313
|
-
}
|
|
3221
|
+
destination: true
|
|
3222
|
+
}
|
|
3223
|
+
}
|
|
3314
3224
|
});
|
|
3315
3225
|
|
|
3316
3226
|
/**
|
|
3317
3227
|
* Unichain Sepolia Testnet chain definition
|
|
3318
3228
|
* @remarks
|
|
3319
3229
|
* This represents the official test network for the Unichain blockchain.
|
|
3320
|
-
*/
|
|
3321
|
-
const UnichainSepolia = defineChain({
|
|
3230
|
+
*/ const UnichainSepolia = defineChain({
|
|
3322
3231
|
type: 'evm',
|
|
3323
3232
|
chain: Blockchain.Unichain_Sepolia,
|
|
3324
3233
|
name: 'Unichain Sepolia',
|
|
@@ -3326,12 +3235,14 @@ const UnichainSepolia = defineChain({
|
|
|
3326
3235
|
nativeCurrency: {
|
|
3327
3236
|
name: 'Sepolia Uni',
|
|
3328
3237
|
symbol: 'UNI',
|
|
3329
|
-
decimals: 18
|
|
3238
|
+
decimals: 18
|
|
3330
3239
|
},
|
|
3331
3240
|
chainId: 1301,
|
|
3332
3241
|
isTestnet: true,
|
|
3333
3242
|
explorerUrl: 'https://unichain-sepolia.blockscout.com/tx/{hash}',
|
|
3334
|
-
rpcEndpoints: [
|
|
3243
|
+
rpcEndpoints: [
|
|
3244
|
+
'https://sepolia.unichain.org'
|
|
3245
|
+
],
|
|
3335
3246
|
eurcAddress: null,
|
|
3336
3247
|
usdcAddress: '0x31d0220469e10c4E71834a79b1f276d740d3768F',
|
|
3337
3248
|
usdtAddress: null,
|
|
@@ -3342,45 +3253,44 @@ const UnichainSepolia = defineChain({
|
|
|
3342
3253
|
type: 'split',
|
|
3343
3254
|
tokenMessenger: '0x8ed94B8dAd2Dc5453862ea5e316A8e71AAed9782',
|
|
3344
3255
|
messageTransmitter: '0xbc498c326533d675cf571B90A2Ced265ACb7d086',
|
|
3345
|
-
confirmations: 65
|
|
3256
|
+
confirmations: 65
|
|
3346
3257
|
},
|
|
3347
3258
|
v2: {
|
|
3348
3259
|
type: 'split',
|
|
3349
3260
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
3350
3261
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
3351
3262
|
confirmations: 65,
|
|
3352
|
-
fastConfirmations: 1
|
|
3353
|
-
}
|
|
3263
|
+
fastConfirmations: 1
|
|
3264
|
+
}
|
|
3354
3265
|
},
|
|
3355
3266
|
forwarderSupported: {
|
|
3356
|
-
source:
|
|
3357
|
-
destination: true
|
|
3358
|
-
}
|
|
3267
|
+
source: false,
|
|
3268
|
+
destination: true
|
|
3269
|
+
}
|
|
3359
3270
|
},
|
|
3360
3271
|
kitContracts: {
|
|
3361
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
3272
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
3362
3273
|
},
|
|
3363
3274
|
gateway: {
|
|
3364
3275
|
domain: 10,
|
|
3365
3276
|
contracts: {
|
|
3366
3277
|
v1: {
|
|
3367
3278
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
3368
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
3369
|
-
}
|
|
3279
|
+
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
3280
|
+
}
|
|
3370
3281
|
},
|
|
3371
3282
|
forwarderSupported: {
|
|
3372
3283
|
source: true,
|
|
3373
|
-
destination: true
|
|
3374
|
-
}
|
|
3375
|
-
}
|
|
3284
|
+
destination: true
|
|
3285
|
+
}
|
|
3286
|
+
}
|
|
3376
3287
|
});
|
|
3377
3288
|
|
|
3378
3289
|
/**
|
|
3379
3290
|
* World Chain chain definition
|
|
3380
3291
|
* @remarks
|
|
3381
3292
|
* This represents the main network for the World Chain blockchain.
|
|
3382
|
-
*/
|
|
3383
|
-
const WorldChain = defineChain({
|
|
3293
|
+
*/ const WorldChain = defineChain({
|
|
3384
3294
|
type: 'evm',
|
|
3385
3295
|
chain: Blockchain.World_Chain,
|
|
3386
3296
|
name: 'World Chain',
|
|
@@ -3388,12 +3298,14 @@ const WorldChain = defineChain({
|
|
|
3388
3298
|
nativeCurrency: {
|
|
3389
3299
|
name: 'Ether',
|
|
3390
3300
|
symbol: 'ETH',
|
|
3391
|
-
decimals: 18
|
|
3301
|
+
decimals: 18
|
|
3392
3302
|
},
|
|
3393
3303
|
chainId: 480,
|
|
3394
3304
|
isTestnet: false,
|
|
3395
3305
|
explorerUrl: 'https://worldscan.org/tx/{hash}',
|
|
3396
|
-
rpcEndpoints: [
|
|
3306
|
+
rpcEndpoints: [
|
|
3307
|
+
'https://worldchain-mainnet.g.alchemy.com/public'
|
|
3308
|
+
],
|
|
3397
3309
|
eurcAddress: null,
|
|
3398
3310
|
usdcAddress: '0x79A02482A880bCE3F13e09Da970dC34db4CD24d1',
|
|
3399
3311
|
usdtAddress: null,
|
|
@@ -3405,39 +3317,38 @@ const WorldChain = defineChain({
|
|
|
3405
3317
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cF5d',
|
|
3406
3318
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
3407
3319
|
confirmations: 65,
|
|
3408
|
-
fastConfirmations: 1
|
|
3409
|
-
}
|
|
3320
|
+
fastConfirmations: 1
|
|
3321
|
+
}
|
|
3410
3322
|
},
|
|
3411
3323
|
forwarderSupported: {
|
|
3412
|
-
source:
|
|
3413
|
-
destination: true
|
|
3414
|
-
}
|
|
3324
|
+
source: false,
|
|
3325
|
+
destination: true
|
|
3326
|
+
}
|
|
3415
3327
|
},
|
|
3416
3328
|
kitContracts: {
|
|
3417
3329
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
3418
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
3330
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
3419
3331
|
},
|
|
3420
3332
|
gateway: {
|
|
3421
3333
|
domain: 14,
|
|
3422
3334
|
contracts: {
|
|
3423
3335
|
v1: {
|
|
3424
3336
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
3425
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
3426
|
-
}
|
|
3337
|
+
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
3338
|
+
}
|
|
3427
3339
|
},
|
|
3428
3340
|
forwarderSupported: {
|
|
3429
3341
|
source: true,
|
|
3430
|
-
destination: true
|
|
3431
|
-
}
|
|
3432
|
-
}
|
|
3342
|
+
destination: true
|
|
3343
|
+
}
|
|
3344
|
+
}
|
|
3433
3345
|
});
|
|
3434
3346
|
|
|
3435
3347
|
/**
|
|
3436
3348
|
* World Chain Sepolia chain definition
|
|
3437
3349
|
* @remarks
|
|
3438
3350
|
* This represents the test network for the World Chain blockchain.
|
|
3439
|
-
*/
|
|
3440
|
-
const WorldChainSepolia = defineChain({
|
|
3351
|
+
*/ const WorldChainSepolia = defineChain({
|
|
3441
3352
|
type: 'evm',
|
|
3442
3353
|
chain: Blockchain.World_Chain_Sepolia,
|
|
3443
3354
|
name: 'World Chain Sepolia',
|
|
@@ -3445,14 +3356,14 @@ const WorldChainSepolia = defineChain({
|
|
|
3445
3356
|
nativeCurrency: {
|
|
3446
3357
|
name: 'Ether',
|
|
3447
3358
|
symbol: 'ETH',
|
|
3448
|
-
decimals: 18
|
|
3359
|
+
decimals: 18
|
|
3449
3360
|
},
|
|
3450
3361
|
chainId: 4801,
|
|
3451
3362
|
isTestnet: true,
|
|
3452
3363
|
explorerUrl: 'https://sepolia.worldscan.org/tx/{hash}',
|
|
3453
3364
|
rpcEndpoints: [
|
|
3454
3365
|
'https://worldchain-sepolia.drpc.org',
|
|
3455
|
-
'https://worldchain-sepolia.g.alchemy.com/public'
|
|
3366
|
+
'https://worldchain-sepolia.g.alchemy.com/public'
|
|
3456
3367
|
],
|
|
3457
3368
|
eurcAddress: null,
|
|
3458
3369
|
usdcAddress: '0x66145f38cBAC35Ca6F1Dfb4914dF98F1614aeA88',
|
|
@@ -3465,30 +3376,30 @@ const WorldChainSepolia = defineChain({
|
|
|
3465
3376
|
tokenMessenger: '0x8fe6b999dc680ccfdd5bf7eb0974218be2542daa',
|
|
3466
3377
|
messageTransmitter: '0xe737e5cebeeba77efe34d4aa090756590b1ce275',
|
|
3467
3378
|
confirmations: 65,
|
|
3468
|
-
fastConfirmations: 1
|
|
3469
|
-
}
|
|
3379
|
+
fastConfirmations: 1
|
|
3380
|
+
}
|
|
3470
3381
|
},
|
|
3471
3382
|
forwarderSupported: {
|
|
3472
|
-
source:
|
|
3473
|
-
destination: true
|
|
3474
|
-
}
|
|
3383
|
+
source: false,
|
|
3384
|
+
destination: true
|
|
3385
|
+
}
|
|
3475
3386
|
},
|
|
3476
3387
|
kitContracts: {
|
|
3477
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
3388
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
3478
3389
|
},
|
|
3479
3390
|
gateway: {
|
|
3480
3391
|
domain: 14,
|
|
3481
3392
|
contracts: {
|
|
3482
3393
|
v1: {
|
|
3483
3394
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
3484
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
3485
|
-
}
|
|
3395
|
+
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
3396
|
+
}
|
|
3486
3397
|
},
|
|
3487
3398
|
forwarderSupported: {
|
|
3488
3399
|
source: true,
|
|
3489
|
-
destination: true
|
|
3490
|
-
}
|
|
3491
|
-
}
|
|
3400
|
+
destination: true
|
|
3401
|
+
}
|
|
3402
|
+
}
|
|
3492
3403
|
});
|
|
3493
3404
|
|
|
3494
3405
|
/**
|
|
@@ -3497,8 +3408,7 @@ const WorldChainSepolia = defineChain({
|
|
|
3497
3408
|
* This represents the official production network for the XDC blockchain.
|
|
3498
3409
|
* XDC is a Layer 1 blockchain specialized for DeFi and trading applications
|
|
3499
3410
|
* with native orderbook and matching engine.
|
|
3500
|
-
*/
|
|
3501
|
-
const XDC = defineChain({
|
|
3411
|
+
*/ const XDC = defineChain({
|
|
3502
3412
|
type: 'evm',
|
|
3503
3413
|
chain: Blockchain.XDC,
|
|
3504
3414
|
name: 'XDC',
|
|
@@ -3506,12 +3416,15 @@ const XDC = defineChain({
|
|
|
3506
3416
|
nativeCurrency: {
|
|
3507
3417
|
name: 'XDC',
|
|
3508
3418
|
symbol: 'XDC',
|
|
3509
|
-
decimals: 18
|
|
3419
|
+
decimals: 18
|
|
3510
3420
|
},
|
|
3511
3421
|
chainId: 50,
|
|
3512
3422
|
isTestnet: false,
|
|
3513
3423
|
explorerUrl: 'https://xdcscan.io/tx/{hash}',
|
|
3514
|
-
rpcEndpoints: [
|
|
3424
|
+
rpcEndpoints: [
|
|
3425
|
+
'https://erpc.xdcrpc.com',
|
|
3426
|
+
'https://erpc.xinfin.network'
|
|
3427
|
+
],
|
|
3515
3428
|
eurcAddress: null,
|
|
3516
3429
|
usdcAddress: '0xfA2958CB79b0491CC627c1557F441eF849Ca8eb1',
|
|
3517
3430
|
usdtAddress: null,
|
|
@@ -3523,26 +3436,25 @@ const XDC = defineChain({
|
|
|
3523
3436
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
3524
3437
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
3525
3438
|
confirmations: 3,
|
|
3526
|
-
fastConfirmations: 3
|
|
3527
|
-
}
|
|
3439
|
+
fastConfirmations: 3
|
|
3440
|
+
}
|
|
3528
3441
|
},
|
|
3529
3442
|
forwarderSupported: {
|
|
3530
|
-
source:
|
|
3531
|
-
destination: true
|
|
3532
|
-
}
|
|
3443
|
+
source: false,
|
|
3444
|
+
destination: true
|
|
3445
|
+
}
|
|
3533
3446
|
},
|
|
3534
3447
|
kitContracts: {
|
|
3535
3448
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
3536
|
-
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
3537
|
-
}
|
|
3449
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
3450
|
+
}
|
|
3538
3451
|
});
|
|
3539
3452
|
|
|
3540
3453
|
/**
|
|
3541
3454
|
* XDC Apothem Testnet chain definition
|
|
3542
3455
|
* @remarks
|
|
3543
3456
|
* This represents the official test network for the XDC Network, known as Apothem.
|
|
3544
|
-
*/
|
|
3545
|
-
const XDCApothem = defineChain({
|
|
3457
|
+
*/ const XDCApothem = defineChain({
|
|
3546
3458
|
type: 'evm',
|
|
3547
3459
|
chain: Blockchain.XDC_Apothem,
|
|
3548
3460
|
name: 'Apothem Network',
|
|
@@ -3550,12 +3462,14 @@ const XDCApothem = defineChain({
|
|
|
3550
3462
|
nativeCurrency: {
|
|
3551
3463
|
name: 'TXDC',
|
|
3552
3464
|
symbol: 'TXDC',
|
|
3553
|
-
decimals: 18
|
|
3465
|
+
decimals: 18
|
|
3554
3466
|
},
|
|
3555
3467
|
chainId: 51,
|
|
3556
3468
|
isTestnet: true,
|
|
3557
3469
|
explorerUrl: 'https://testnet.xdcscan.com/tx/{hash}',
|
|
3558
|
-
rpcEndpoints: [
|
|
3470
|
+
rpcEndpoints: [
|
|
3471
|
+
'https://erpc.apothem.network'
|
|
3472
|
+
],
|
|
3559
3473
|
eurcAddress: null,
|
|
3560
3474
|
usdcAddress: '0xb5AB69F7bBada22B28e79C8FFAECe55eF1c771D4',
|
|
3561
3475
|
usdtAddress: null,
|
|
@@ -3567,25 +3481,24 @@ const XDCApothem = defineChain({
|
|
|
3567
3481
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
3568
3482
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
3569
3483
|
confirmations: 3,
|
|
3570
|
-
fastConfirmations: 1
|
|
3571
|
-
}
|
|
3484
|
+
fastConfirmations: 1
|
|
3485
|
+
}
|
|
3572
3486
|
},
|
|
3573
3487
|
forwarderSupported: {
|
|
3574
|
-
source:
|
|
3575
|
-
destination: true
|
|
3576
|
-
}
|
|
3488
|
+
source: false,
|
|
3489
|
+
destination: true
|
|
3490
|
+
}
|
|
3577
3491
|
},
|
|
3578
3492
|
kitContracts: {
|
|
3579
|
-
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
3580
|
-
}
|
|
3493
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
3494
|
+
}
|
|
3581
3495
|
});
|
|
3582
3496
|
|
|
3583
3497
|
/**
|
|
3584
3498
|
* ZKSync Era Mainnet chain definition
|
|
3585
3499
|
* @remarks
|
|
3586
3500
|
* This represents the official production network for the ZKSync Era blockchain.
|
|
3587
|
-
*/
|
|
3588
|
-
defineChain({
|
|
3501
|
+
*/ defineChain({
|
|
3589
3502
|
type: 'evm',
|
|
3590
3503
|
chain: Blockchain.ZKSync_Era,
|
|
3591
3504
|
name: 'ZKSync Era',
|
|
@@ -3593,24 +3506,25 @@ defineChain({
|
|
|
3593
3506
|
nativeCurrency: {
|
|
3594
3507
|
name: 'Ether',
|
|
3595
3508
|
symbol: 'ETH',
|
|
3596
|
-
decimals: 18
|
|
3509
|
+
decimals: 18
|
|
3597
3510
|
},
|
|
3598
3511
|
chainId: 324,
|
|
3599
3512
|
isTestnet: false,
|
|
3600
3513
|
explorerUrl: 'https://explorer.zksync.io/tx/{hash}',
|
|
3601
|
-
rpcEndpoints: [
|
|
3514
|
+
rpcEndpoints: [
|
|
3515
|
+
'https://mainnet.era.zksync.io'
|
|
3516
|
+
],
|
|
3602
3517
|
eurcAddress: null,
|
|
3603
3518
|
usdcAddress: '0x1d17CBcF0D6D143135aE902365D2E5e2A16538D4',
|
|
3604
3519
|
usdtAddress: null,
|
|
3605
|
-
cctp: null
|
|
3520
|
+
cctp: null
|
|
3606
3521
|
});
|
|
3607
3522
|
|
|
3608
3523
|
/**
|
|
3609
3524
|
* ZKSync Era Sepolia Testnet chain definition
|
|
3610
3525
|
* @remarks
|
|
3611
3526
|
* This represents the official test network for the ZKSync Era blockchain on Sepolia.
|
|
3612
|
-
*/
|
|
3613
|
-
defineChain({
|
|
3527
|
+
*/ defineChain({
|
|
3614
3528
|
type: 'evm',
|
|
3615
3529
|
chain: Blockchain.ZKSync_Sepolia,
|
|
3616
3530
|
name: 'ZKSync Era Sepolia',
|
|
@@ -3618,16 +3532,18 @@ defineChain({
|
|
|
3618
3532
|
nativeCurrency: {
|
|
3619
3533
|
name: 'Sepolia Ether',
|
|
3620
3534
|
symbol: 'ETH',
|
|
3621
|
-
decimals: 18
|
|
3535
|
+
decimals: 18
|
|
3622
3536
|
},
|
|
3623
3537
|
chainId: 300,
|
|
3624
3538
|
isTestnet: true,
|
|
3625
3539
|
explorerUrl: 'https://sepolia.explorer.zksync.io/tx/{hash}',
|
|
3626
|
-
rpcEndpoints: [
|
|
3540
|
+
rpcEndpoints: [
|
|
3541
|
+
'https://sepolia.era.zksync.dev'
|
|
3542
|
+
],
|
|
3627
3543
|
eurcAddress: null,
|
|
3628
3544
|
usdcAddress: '0xAe045DE5638162fa134807Cb558E15A3F5A7F853',
|
|
3629
3545
|
usdtAddress: null,
|
|
3630
|
-
cctp: null
|
|
3546
|
+
cctp: null
|
|
3631
3547
|
});
|
|
3632
3548
|
|
|
3633
3549
|
/**
|
|
@@ -3640,23 +3556,17 @@ defineChain({
|
|
|
3640
3556
|
* minter: '0xabcdef1234567890abcdef1234567890abcdef12'
|
|
3641
3557
|
* })
|
|
3642
3558
|
* ```
|
|
3643
|
-
*/
|
|
3644
|
-
|
|
3645
|
-
.object({
|
|
3646
|
-
wallet: z
|
|
3647
|
-
.string({
|
|
3559
|
+
*/ const gatewayV1ContractsSchema = z.object({
|
|
3560
|
+
wallet: z.string({
|
|
3648
3561
|
required_error: 'Gateway wallet address is required. Please provide a valid contract address.',
|
|
3649
|
-
invalid_type_error: 'Gateway wallet address must be a string.'
|
|
3650
|
-
})
|
|
3651
|
-
|
|
3652
|
-
minter: z
|
|
3653
|
-
.string({
|
|
3562
|
+
invalid_type_error: 'Gateway wallet address must be a string.'
|
|
3563
|
+
}).min(1, 'Gateway wallet address cannot be empty.'),
|
|
3564
|
+
minter: z.string({
|
|
3654
3565
|
required_error: 'Gateway minter address is required. Please provide a valid contract address.',
|
|
3655
|
-
invalid_type_error: 'Gateway minter address must be a string.'
|
|
3656
|
-
})
|
|
3657
|
-
|
|
3658
|
-
|
|
3659
|
-
.strict(); // Reject any additional properties not defined in the schema
|
|
3566
|
+
invalid_type_error: 'Gateway minter address must be a string.'
|
|
3567
|
+
}).min(1, 'Gateway minter address cannot be empty.')
|
|
3568
|
+
}).strict() // Reject any additional properties not defined in the schema
|
|
3569
|
+
;
|
|
3660
3570
|
/**
|
|
3661
3571
|
* Zod schema for validating the versioned Gateway contracts map.
|
|
3662
3572
|
*
|
|
@@ -3673,12 +3583,10 @@ const gatewayV1ContractsSchema = z
|
|
|
3673
3583
|
* }
|
|
3674
3584
|
* })
|
|
3675
3585
|
* ```
|
|
3676
|
-
*/
|
|
3677
|
-
|
|
3678
|
-
|
|
3679
|
-
|
|
3680
|
-
})
|
|
3681
|
-
.strict(); // Reject any additional properties not defined in the schema
|
|
3586
|
+
*/ const gatewayContractsSchema = z.object({
|
|
3587
|
+
v1: gatewayV1ContractsSchema.optional()
|
|
3588
|
+
}).strict() // Reject any additional properties not defined in the schema
|
|
3589
|
+
;
|
|
3682
3590
|
/**
|
|
3683
3591
|
* Zod schema for validating the full Gateway configuration.
|
|
3684
3592
|
*
|
|
@@ -3697,59 +3605,54 @@ const gatewayContractsSchema = z
|
|
|
3697
3605
|
* }
|
|
3698
3606
|
* })
|
|
3699
3607
|
* ```
|
|
3700
|
-
*/
|
|
3701
|
-
const gatewayConfigSchema = z
|
|
3702
|
-
.object({
|
|
3608
|
+
*/ const gatewayConfigSchema = z.object({
|
|
3703
3609
|
domain: z.number({
|
|
3704
3610
|
required_error: 'Gateway domain is required. Please provide a valid domain number.',
|
|
3705
|
-
invalid_type_error: 'Gateway domain must be a number.'
|
|
3611
|
+
invalid_type_error: 'Gateway domain must be a number.'
|
|
3706
3612
|
}),
|
|
3707
3613
|
contracts: gatewayContractsSchema,
|
|
3708
3614
|
forwarderSupported: z.object({
|
|
3709
3615
|
source: z.boolean(),
|
|
3710
|
-
destination: z.boolean()
|
|
3711
|
-
})
|
|
3712
|
-
})
|
|
3713
|
-
|
|
3616
|
+
destination: z.boolean()
|
|
3617
|
+
})
|
|
3618
|
+
}).strict() // Reject any additional properties not defined in the schema
|
|
3619
|
+
;
|
|
3714
3620
|
/**
|
|
3715
3621
|
* Base schema for common chain definition properties.
|
|
3716
3622
|
* This contains all properties shared between EVM and non-EVM chains.
|
|
3717
|
-
*/
|
|
3718
|
-
const baseChainDefinitionSchema = z.object({
|
|
3623
|
+
*/ const baseChainDefinitionSchema = z.object({
|
|
3719
3624
|
chain: z.nativeEnum(Blockchain, {
|
|
3720
3625
|
required_error: 'Chain enum is required. Please provide a valid Blockchain enum value.',
|
|
3721
|
-
invalid_type_error: 'Chain must be a valid Blockchain enum value.'
|
|
3626
|
+
invalid_type_error: 'Chain must be a valid Blockchain enum value.'
|
|
3722
3627
|
}),
|
|
3723
3628
|
name: z.string({
|
|
3724
3629
|
required_error: 'Chain name is required. Please provide a valid chain name.',
|
|
3725
|
-
invalid_type_error: 'Chain name must be a string.'
|
|
3630
|
+
invalid_type_error: 'Chain name must be a string.'
|
|
3726
3631
|
}),
|
|
3727
3632
|
title: z.string().optional(),
|
|
3728
3633
|
nativeCurrency: z.object({
|
|
3729
3634
|
name: z.string(),
|
|
3730
3635
|
symbol: z.string(),
|
|
3731
|
-
decimals: z.number()
|
|
3636
|
+
decimals: z.number()
|
|
3732
3637
|
}),
|
|
3733
3638
|
isTestnet: z.boolean({
|
|
3734
3639
|
required_error: 'isTestnet is required. Please specify whether this is a testnet.',
|
|
3735
|
-
invalid_type_error: 'isTestnet must be a boolean.'
|
|
3640
|
+
invalid_type_error: 'isTestnet must be a boolean.'
|
|
3736
3641
|
}),
|
|
3737
3642
|
explorerUrl: z.string({
|
|
3738
3643
|
required_error: 'Explorer URL is required. Please provide a valid explorer URL.',
|
|
3739
|
-
invalid_type_error: 'Explorer URL must be a string.'
|
|
3644
|
+
invalid_type_error: 'Explorer URL must be a string.'
|
|
3740
3645
|
}),
|
|
3741
3646
|
rpcEndpoints: z.array(z.string()),
|
|
3742
3647
|
eurcAddress: z.string().nullable(),
|
|
3743
3648
|
usdcAddress: z.string().nullable(),
|
|
3744
3649
|
usdtAddress: z.string().nullable(),
|
|
3745
|
-
cctp: z.any().nullable(),
|
|
3746
|
-
kitContracts: z
|
|
3747
|
-
.object({
|
|
3650
|
+
cctp: z.any().nullable(),
|
|
3651
|
+
kitContracts: z.object({
|
|
3748
3652
|
bridge: z.string().optional(),
|
|
3749
|
-
adapter: z.string().optional()
|
|
3750
|
-
})
|
|
3751
|
-
|
|
3752
|
-
gateway: gatewayConfigSchema.optional(),
|
|
3653
|
+
adapter: z.string().optional()
|
|
3654
|
+
}).optional(),
|
|
3655
|
+
gateway: gatewayConfigSchema.optional()
|
|
3753
3656
|
});
|
|
3754
3657
|
/**
|
|
3755
3658
|
* Zod schema for validating EVM chain definitions specifically.
|
|
@@ -3780,22 +3683,18 @@ const baseChainDefinitionSchema = z.object({
|
|
|
3780
3683
|
* console.error('Validation failed:', result.error)
|
|
3781
3684
|
* }
|
|
3782
3685
|
* ```
|
|
3783
|
-
*/
|
|
3784
|
-
const evmChainDefinitionSchema = baseChainDefinitionSchema
|
|
3785
|
-
.extend({
|
|
3686
|
+
*/ const evmChainDefinitionSchema = baseChainDefinitionSchema.extend({
|
|
3786
3687
|
type: z.literal('evm'),
|
|
3787
3688
|
chainId: z.number({
|
|
3788
3689
|
required_error: 'EVM chains must have a chainId. Please provide a valid EVM chain ID.',
|
|
3789
|
-
invalid_type_error: 'EVM chain ID must be a number.'
|
|
3790
|
-
})
|
|
3791
|
-
})
|
|
3792
|
-
|
|
3690
|
+
invalid_type_error: 'EVM chain ID must be a number.'
|
|
3691
|
+
})
|
|
3692
|
+
}).strict() //// Reject any additional properties not defined in the schema
|
|
3693
|
+
;
|
|
3793
3694
|
/**
|
|
3794
3695
|
* Zod schema for validating non-EVM chain definitions.
|
|
3795
3696
|
* This schema extends the base schema with non-EVM specific properties.
|
|
3796
|
-
*/
|
|
3797
|
-
const nonEvmChainDefinitionSchema = baseChainDefinitionSchema
|
|
3798
|
-
.extend({
|
|
3697
|
+
*/ const nonEvmChainDefinitionSchema = baseChainDefinitionSchema.extend({
|
|
3799
3698
|
type: z.enum([
|
|
3800
3699
|
'algorand',
|
|
3801
3700
|
'avalanche',
|
|
@@ -3806,10 +3705,10 @@ const nonEvmChainDefinitionSchema = baseChainDefinitionSchema
|
|
|
3806
3705
|
'sui',
|
|
3807
3706
|
'hedera',
|
|
3808
3707
|
'noble',
|
|
3809
|
-
'polkadot'
|
|
3810
|
-
])
|
|
3811
|
-
})
|
|
3812
|
-
|
|
3708
|
+
'polkadot'
|
|
3709
|
+
])
|
|
3710
|
+
}).strict() // Reject any additional properties not defined in the schema
|
|
3711
|
+
;
|
|
3813
3712
|
/**
|
|
3814
3713
|
* Discriminated union schema for all chain definitions.
|
|
3815
3714
|
* This schema validates different chain types based on their 'type' field.
|
|
@@ -3834,10 +3733,9 @@ const nonEvmChainDefinitionSchema = baseChainDefinitionSchema
|
|
|
3834
3733
|
* // ... other properties (no chainId)
|
|
3835
3734
|
* })
|
|
3836
3735
|
* ```
|
|
3837
|
-
*/
|
|
3838
|
-
const chainDefinitionSchema = z.discriminatedUnion('type', [
|
|
3736
|
+
*/ const chainDefinitionSchema = z.discriminatedUnion('type', [
|
|
3839
3737
|
evmChainDefinitionSchema,
|
|
3840
|
-
nonEvmChainDefinitionSchema
|
|
3738
|
+
nonEvmChainDefinitionSchema
|
|
3841
3739
|
]);
|
|
3842
3740
|
/**
|
|
3843
3741
|
* Zod schema for validating chain identifiers.
|
|
@@ -3854,13 +3752,10 @@ const chainDefinitionSchema = z.discriminatedUnion('type', [
|
|
|
3854
3752
|
* chainIdentifierSchema.parse(Blockchain.Ethereum)
|
|
3855
3753
|
* chainIdentifierSchema.parse(Ethereum)
|
|
3856
3754
|
* ```
|
|
3857
|
-
*/
|
|
3858
|
-
z.
|
|
3859
|
-
z
|
|
3860
|
-
.string()
|
|
3861
|
-
.refine((val) => val in Blockchain, 'Must be a valid Blockchain enum value as string'),
|
|
3755
|
+
*/ z.union([
|
|
3756
|
+
z.string().refine((val)=>val in Blockchain, 'Must be a valid Blockchain enum value as string'),
|
|
3862
3757
|
z.nativeEnum(Blockchain),
|
|
3863
|
-
chainDefinitionSchema
|
|
3758
|
+
chainDefinitionSchema
|
|
3864
3759
|
]);
|
|
3865
3760
|
/**
|
|
3866
3761
|
* Zod schema for validating swap-specific chain identifiers.
|
|
@@ -3870,20 +3765,17 @@ z.union([
|
|
|
3870
3765
|
* - Mainnet only (no testnets)
|
|
3871
3766
|
* - At least one supported token available
|
|
3872
3767
|
*
|
|
3873
|
-
*/
|
|
3874
|
-
z.union([
|
|
3768
|
+
*/ z.union([
|
|
3875
3769
|
// String blockchain identifier (accepts SwapChain enum values)
|
|
3876
|
-
z.string().refine((val)
|
|
3877
|
-
|
|
3878
|
-
|
|
3879
|
-
})),
|
|
3770
|
+
z.string().refine((val)=>val in SwapChain, (val)=>({
|
|
3771
|
+
message: `"${val}" is not a supported swap chain. ` + `Supported chains: ${Object.values(SwapChain).join(', ')}`
|
|
3772
|
+
})),
|
|
3880
3773
|
// SwapChain enum
|
|
3881
3774
|
z.nativeEnum(SwapChain),
|
|
3882
3775
|
// ChainDefinition object (checks if chain.chain is in SwapChain)
|
|
3883
|
-
chainDefinitionSchema.refine((chain)
|
|
3884
|
-
|
|
3885
|
-
|
|
3886
|
-
})),
|
|
3776
|
+
chainDefinitionSchema.refine((chain)=>chain.chain in SwapChain, (chain)=>({
|
|
3777
|
+
message: `"${chain.chain}" is not a supported swap chain. ` + `Supported chains: ${Object.values(SwapChain).join(', ')}`
|
|
3778
|
+
}))
|
|
3887
3779
|
]);
|
|
3888
3780
|
/**
|
|
3889
3781
|
* Zod schema for validating bridge chain identifiers.
|
|
@@ -3914,14 +3806,13 @@ z.union([
|
|
|
3914
3806
|
* ```
|
|
3915
3807
|
*
|
|
3916
3808
|
* @see {@link BridgeChain} for the enum of supported chains.
|
|
3917
|
-
*/
|
|
3918
|
-
z.
|
|
3919
|
-
|
|
3920
|
-
|
|
3921
|
-
|
|
3922
|
-
|
|
3923
|
-
|
|
3924
|
-
})),
|
|
3809
|
+
*/ z.union([
|
|
3810
|
+
z.string().refine((val)=>val in BridgeChain, (val)=>({
|
|
3811
|
+
message: `Chain "${val}" is not supported for bridging. Only chains in the BridgeChain enum support CCTPv2 bridging.`
|
|
3812
|
+
})),
|
|
3813
|
+
chainDefinitionSchema.refine((chainDef)=>chainDef.chain in BridgeChain, (chainDef)=>({
|
|
3814
|
+
message: `Chain "${chainDef.name}" (${chainDef.chain}) is not supported for bridging. Only chains in the BridgeChain enum support CCTPv2 bridging.`
|
|
3815
|
+
}))
|
|
3925
3816
|
]);
|
|
3926
3817
|
/**
|
|
3927
3818
|
* Zod schema for validating earn-specific chain identifiers.
|
|
@@ -3946,17 +3837,68 @@ z.union([
|
|
|
3946
3837
|
* // Invalid (throws ZodError)
|
|
3947
3838
|
* earnChainIdentifierSchema.parse('Solana')
|
|
3948
3839
|
* ```
|
|
3949
|
-
*/
|
|
3950
|
-
z.
|
|
3951
|
-
|
|
3952
|
-
|
|
3953
|
-
`Supported chains: ${Object.values(EarnChain).join(', ')}`,
|
|
3954
|
-
})),
|
|
3840
|
+
*/ z.union([
|
|
3841
|
+
z.string().refine((val)=>val in EarnChain, (val)=>({
|
|
3842
|
+
message: `"${val}" is not a supported earn chain. ` + `Supported chains: ${Object.values(EarnChain).join(', ')}`
|
|
3843
|
+
})),
|
|
3955
3844
|
z.nativeEnum(EarnChain),
|
|
3956
|
-
chainDefinitionSchema.refine((chain)
|
|
3957
|
-
|
|
3958
|
-
|
|
3959
|
-
|
|
3845
|
+
chainDefinitionSchema.refine((chain)=>chain.chain in EarnChain, (chain)=>({
|
|
3846
|
+
message: `"${chain.chain}" is not a supported earn chain. ` + `Supported chains: ${Object.values(EarnChain).join(', ')}`
|
|
3847
|
+
}))
|
|
3848
|
+
]);
|
|
3849
|
+
// Widened views so `.includes()` accepts arbitrary strings under strict TS.
|
|
3850
|
+
const EARN_BRIDGE_SOURCE_CHAIN_VALUES = EARN_BRIDGE_SOURCE_BLOCKCHAINS;
|
|
3851
|
+
const EARN_BRIDGE_DESTINATION_CHAIN_VALUES = EARN_BRIDGE_DESTINATION_BLOCKCHAINS;
|
|
3852
|
+
/**
|
|
3853
|
+
* Zod schema for validating the source chain of a cross-chain Earn deposit.
|
|
3854
|
+
*
|
|
3855
|
+
* Accept a supported source Blockchain value, a matching string literal, or a
|
|
3856
|
+
* ChainDefinition for a supported source chain. Source chains are Ethereum
|
|
3857
|
+
* Sepolia, Arbitrum Sepolia, and Base Sepolia.
|
|
3858
|
+
*
|
|
3859
|
+
* @example
|
|
3860
|
+
* ```typescript
|
|
3861
|
+
* import { earnBridgeSourceChainIdentifierSchema } from '@core/chains'
|
|
3862
|
+
*
|
|
3863
|
+
* // Valid
|
|
3864
|
+
* earnBridgeSourceChainIdentifierSchema.parse('Ethereum_Sepolia')
|
|
3865
|
+
*
|
|
3866
|
+
* // Invalid (throws ZodError)
|
|
3867
|
+
* earnBridgeSourceChainIdentifierSchema.parse('Arc_Testnet')
|
|
3868
|
+
* ```
|
|
3869
|
+
*/ z.union([
|
|
3870
|
+
z.string().refine((val)=>EARN_BRIDGE_SOURCE_CHAIN_VALUES.includes(val), (val)=>({
|
|
3871
|
+
message: `"${val}" is not a supported cross-chain Earn source chain. ` + `Supported chains: ${EARN_BRIDGE_SOURCE_BLOCKCHAINS.join(', ')}`
|
|
3872
|
+
})),
|
|
3873
|
+
chainDefinitionSchema.refine((chain)=>EARN_BRIDGE_SOURCE_CHAIN_VALUES.includes(chain.chain), (chain)=>({
|
|
3874
|
+
message: `"${chain.chain}" is not a supported cross-chain Earn source chain. ` + `Supported chains: ${EARN_BRIDGE_SOURCE_BLOCKCHAINS.join(', ')}`
|
|
3875
|
+
}))
|
|
3876
|
+
]);
|
|
3877
|
+
/**
|
|
3878
|
+
* Zod schema for validating the destination chain of a cross-chain Earn
|
|
3879
|
+
* deposit.
|
|
3880
|
+
*
|
|
3881
|
+
* Accept a supported destination Blockchain value, a matching string literal,
|
|
3882
|
+
* or a ChainDefinition for a supported destination chain. Currently only Arc
|
|
3883
|
+
* Testnet is supported.
|
|
3884
|
+
*
|
|
3885
|
+
* @example
|
|
3886
|
+
* ```typescript
|
|
3887
|
+
* import { earnBridgeDestinationChainIdentifierSchema } from '@core/chains'
|
|
3888
|
+
*
|
|
3889
|
+
* // Valid
|
|
3890
|
+
* earnBridgeDestinationChainIdentifierSchema.parse('Arc_Testnet')
|
|
3891
|
+
*
|
|
3892
|
+
* // Invalid (throws ZodError)
|
|
3893
|
+
* earnBridgeDestinationChainIdentifierSchema.parse('Ethereum_Sepolia')
|
|
3894
|
+
* ```
|
|
3895
|
+
*/ z.union([
|
|
3896
|
+
z.string().refine((val)=>EARN_BRIDGE_DESTINATION_CHAIN_VALUES.includes(val), (val)=>({
|
|
3897
|
+
message: `"${val}" is not a supported cross-chain Earn destination chain. ` + `Supported chains: ${EARN_BRIDGE_DESTINATION_BLOCKCHAINS.join(', ')}`
|
|
3898
|
+
})),
|
|
3899
|
+
chainDefinitionSchema.refine((chain)=>EARN_BRIDGE_DESTINATION_CHAIN_VALUES.includes(chain.chain), (chain)=>({
|
|
3900
|
+
message: `"${chain.chain}" is not a supported cross-chain Earn destination chain. ` + `Supported chains: ${EARN_BRIDGE_DESTINATION_BLOCKCHAINS.join(', ')}`
|
|
3901
|
+
}))
|
|
3960
3902
|
]);
|
|
3961
3903
|
/**
|
|
3962
3904
|
* Zod schema for validating unified balance chain identifiers.
|
|
@@ -3984,27 +3926,20 @@ z.union([
|
|
|
3984
3926
|
* ```
|
|
3985
3927
|
*
|
|
3986
3928
|
* @see {@link UnifiedBalanceChain} for the enum of supported chains.
|
|
3987
|
-
*/
|
|
3988
|
-
const supportedUnifiedBalanceChains = Object.keys(UnifiedBalanceChain).join(', ');
|
|
3929
|
+
*/ const supportedUnifiedBalanceChains = Object.keys(UnifiedBalanceChain).join(', ');
|
|
3989
3930
|
z.union([
|
|
3990
|
-
z.string().refine((val)
|
|
3991
|
-
|
|
3992
|
-
|
|
3993
|
-
chainDefinitionSchema.refine((chainDef)
|
|
3994
|
-
|
|
3995
|
-
|
|
3931
|
+
z.string().refine((val)=>val in UnifiedBalanceChain, (val)=>({
|
|
3932
|
+
message: `Chain "${val}" is not supported for unified balance operations. Supported chains: ${supportedUnifiedBalanceChains}.`
|
|
3933
|
+
})),
|
|
3934
|
+
chainDefinitionSchema.refine((chainDef)=>chainDef.chain in UnifiedBalanceChain, (chainDef)=>({
|
|
3935
|
+
message: `Chain "${chainDef.name}" (${chainDef.chain}) is not supported for unified balance operations. Supported chains: ${supportedUnifiedBalanceChains}.`
|
|
3936
|
+
}))
|
|
3996
3937
|
]);
|
|
3997
3938
|
|
|
3998
|
-
/**
|
|
3999
|
-
* @packageDocumentation
|
|
4000
|
-
* @module SwapTokenSchemas
|
|
4001
|
-
*
|
|
4002
|
-
* Zod validation schemas for supported swap tokens.
|
|
4003
|
-
*/
|
|
4004
3939
|
// Internal enum used after input normalization.
|
|
4005
3940
|
const swapTokenEnumSchema = z.enum([
|
|
4006
3941
|
...Object.keys(SWAP_TOKEN_REGISTRY),
|
|
4007
|
-
NATIVE_TOKEN
|
|
3942
|
+
NATIVE_TOKEN
|
|
4008
3943
|
]);
|
|
4009
3944
|
/**
|
|
4010
3945
|
* Zod schema for validating supported swap token symbols.
|
|
@@ -4021,11 +3956,7 @@ const swapTokenEnumSchema = z.enum([
|
|
|
4021
3956
|
* console.log('Valid swap token:', result.data)
|
|
4022
3957
|
* }
|
|
4023
3958
|
* ```
|
|
4024
|
-
*/
|
|
4025
|
-
z
|
|
4026
|
-
.string()
|
|
4027
|
-
.transform((value) => value.toUpperCase())
|
|
4028
|
-
.pipe(swapTokenEnumSchema);
|
|
3959
|
+
*/ z.string().transform((value)=>value.toUpperCase()).pipe(swapTokenEnumSchema);
|
|
4029
3960
|
|
|
4030
3961
|
export { Arbitrum, ArbitrumSepolia, ArcTestnet, Avalanche, AvalancheFuji, Base, BaseSepolia, Codex, CodexTestnet, Ethereum, EthereumSepolia, HyperEVM, HyperEVMTestnet, Ink, InkTestnet, Linea, LineaSepolia, Optimism, OptimismSepolia, Plume, PlumeTestnet, Polygon, PolygonAmoy, Sei, SeiTestnet, Solana, SolanaDevnet, Sonic, SonicTestnet, Unichain, UnichainSepolia, WorldChain, WorldChainSepolia, XDC, XDCApothem };
|
|
4031
3962
|
//# sourceMappingURL=chains.mjs.map
|