@circle-fin/provider-cctp-v2 1.4.1 → 1.5.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 +6 -0
- package/README.md +7 -7
- package/index.cjs +193 -1
- package/index.d.ts +4 -0
- package/index.mjs +193 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# @circle-fin/provider-cctp-v2
|
|
2
2
|
|
|
3
|
+
## 1.5.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- Add support for bridging USDC to and from Edge and Morph networks. Both mainnet and testnet chains are now available as source and destination options in Bridge Kit.
|
|
8
|
+
|
|
3
9
|
## 1.4.1
|
|
4
10
|
|
|
5
11
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
**Circle's Cross-Chain Transfer Protocol v2 provider for Bridge Kit**
|
|
11
11
|
|
|
12
|
-
_Native USDC bridging across
|
|
12
|
+
_Native USDC bridging across 41 chains using Circle's battle-tested protocols._
|
|
13
13
|
|
|
14
14
|
</div>
|
|
15
15
|
|
|
@@ -39,14 +39,14 @@ _Native USDC bridging across 35 chains using Circle's battle-tested protocols._
|
|
|
39
39
|
|
|
40
40
|
## Overview
|
|
41
41
|
|
|
42
|
-
The CCTPv2 Bridging Provider is a strongly-typed implementation of Circle's Cross-Chain Transfer Protocol (CCTP) version 2 that enables **native USDC bridging** between
|
|
42
|
+
The CCTPv2 Bridging Provider is a strongly-typed implementation of Circle's Cross-Chain Transfer Protocol (CCTP) version 2 that enables **native USDC bridging** between 41+ supported blockchain networks.
|
|
43
43
|
|
|
44
44
|
While primarily designed to power the [Bridge Kit](https://www.npmjs.com/package/@circle-fin/bridge-kit), this provider can also be used **directly in applications** that need fine-grained control over the CCTP transfer process or want to integrate CCTP without the full App Kits framework.
|
|
45
45
|
|
|
46
46
|
### Why CCTPv2 Provider?
|
|
47
47
|
|
|
48
48
|
- **🔒 Circle's official protocol**: Uses Circle's native CCTP infrastructure for maximum security
|
|
49
|
-
- **⚡
|
|
49
|
+
- **⚡ 41 chain support**: Enables bridging across all CCTPv2-supported networks
|
|
50
50
|
- **🎯 Native USDC**: Bridges actual USDC tokens, not wrapped or synthetic versions
|
|
51
51
|
- **🔧 Type-safe operations**: Built with TypeScript strict mode and comprehensive validation
|
|
52
52
|
- **🛠️ Direct integration**: Use standalone or with custom orchestration logic
|
|
@@ -130,7 +130,7 @@ const result = await provider.bridge({
|
|
|
130
130
|
- ✅ **Native USDC bridging** - Move real USDC between supported networks
|
|
131
131
|
- ✅ **CCTP v2 integration** - Direct integration with Circle's CCTP v2 protocol
|
|
132
132
|
- ✅ **Comprehensive validation** - Route validation and parameter checking
|
|
133
|
-
- ✅ **Multi-chain support** - Works across all
|
|
133
|
+
- ✅ **Multi-chain support** - Works across all 41 CCTPv2-supported chains
|
|
134
134
|
- ✅ **Type safety** - Full TypeScript support with detailed error handling
|
|
135
135
|
- ✅ **Bridge speeds** - Support for both FAST and SLOW bridge configurations
|
|
136
136
|
- ✅ **Forwarder integration** - Circle's Orbit relayer handles attestation and mint automatically
|
|
@@ -138,15 +138,15 @@ const result = await provider.bridge({
|
|
|
138
138
|
|
|
139
139
|
## Supported Chains & Routes
|
|
140
140
|
|
|
141
|
-
The provider supports **
|
|
141
|
+
The provider supports **800 total bridge routes** across these chains:
|
|
142
142
|
|
|
143
143
|
### Mainnet Chains
|
|
144
144
|
|
|
145
|
-
**Arbitrum**, **Avalanche**, **Base**, **Codex**, **Ethereum**, **HyperEVM**, **Ink**, **Linea**, **OP Mainnet**, **Plume**, **Polygon PoS**, **Sei**, **Solana**, **Sonic**, **Unichain**, **World Chain**, **XDC**
|
|
145
|
+
**Arbitrum**, **Avalanche**, **Base**, **Codex**, **Edge**, **Ethereum**, **HyperEVM**, **Ink**, **Linea**, **Monad**, **Morph**, **OP Mainnet**, **Plume**, **Polygon PoS**, **Sei**, **Solana**, **Sonic**, **Unichain**, **World Chain**, **XDC**
|
|
146
146
|
|
|
147
147
|
### Testnet Chains
|
|
148
148
|
|
|
149
|
-
**Arc Testnet**, **Arbitrum Sepolia**, **Avalanche Fuji**, **Base Sepolia**, **Codex Testnet**, **Ethereum Sepolia**, **HyperEVM Testnet**, **Ink Testnet**, **Linea Sepolia**, **OP Sepolia**, **Plume Testnet**, **Polygon PoS Amoy**, **Sei Testnet**, **Solana Devnet**, **Sonic Testnet**, **Unichain Sepolia**, **World Chain Sepolia**, **XDC Apothem**
|
|
149
|
+
**Arc Testnet**, **Arbitrum Sepolia**, **Avalanche Fuji**, **Base Sepolia**, **Codex Testnet**, **Edge Testnet**, **Ethereum Sepolia**, **HyperEVM Testnet**, **Ink Testnet**, **Linea Sepolia**, **Monad Testnet**, **Morph Testnet**, **OP Sepolia**, **Plume Testnet**, **Polygon PoS Amoy**, **Sei Testnet**, **Solana Devnet**, **Sonic Testnet**, **Unichain Sepolia**, **World Chain Sepolia**, **XDC Apothem**
|
|
150
150
|
|
|
151
151
|
## Error Handling
|
|
152
152
|
|
package/index.cjs
CHANGED
|
@@ -73,6 +73,8 @@ var Blockchain;
|
|
|
73
73
|
Blockchain["Celo_Alfajores_Testnet"] = "Celo_Alfajores_Testnet";
|
|
74
74
|
Blockchain["Codex"] = "Codex";
|
|
75
75
|
Blockchain["Codex_Testnet"] = "Codex_Testnet";
|
|
76
|
+
Blockchain["Edge"] = "Edge";
|
|
77
|
+
Blockchain["Edge_Testnet"] = "Edge_Testnet";
|
|
76
78
|
Blockchain["Ethereum"] = "Ethereum";
|
|
77
79
|
Blockchain["Ethereum_Sepolia"] = "Ethereum_Sepolia";
|
|
78
80
|
Blockchain["Hedera"] = "Hedera";
|
|
@@ -85,6 +87,8 @@ var Blockchain;
|
|
|
85
87
|
Blockchain["Linea_Sepolia"] = "Linea_Sepolia";
|
|
86
88
|
Blockchain["Monad"] = "Monad";
|
|
87
89
|
Blockchain["Monad_Testnet"] = "Monad_Testnet";
|
|
90
|
+
Blockchain["Morph"] = "Morph";
|
|
91
|
+
Blockchain["Morph_Testnet"] = "Morph_Testnet";
|
|
88
92
|
Blockchain["NEAR"] = "NEAR";
|
|
89
93
|
Blockchain["NEAR_Testnet"] = "NEAR_Testnet";
|
|
90
94
|
Blockchain["Noble"] = "Noble";
|
|
@@ -288,11 +292,13 @@ var BridgeChain;
|
|
|
288
292
|
BridgeChain["Avalanche"] = "Avalanche";
|
|
289
293
|
BridgeChain["Base"] = "Base";
|
|
290
294
|
BridgeChain["Codex"] = "Codex";
|
|
295
|
+
BridgeChain["Edge"] = "Edge";
|
|
291
296
|
BridgeChain["Ethereum"] = "Ethereum";
|
|
292
297
|
BridgeChain["HyperEVM"] = "HyperEVM";
|
|
293
298
|
BridgeChain["Ink"] = "Ink";
|
|
294
299
|
BridgeChain["Linea"] = "Linea";
|
|
295
300
|
BridgeChain["Monad"] = "Monad";
|
|
301
|
+
BridgeChain["Morph"] = "Morph";
|
|
296
302
|
BridgeChain["Optimism"] = "Optimism";
|
|
297
303
|
BridgeChain["Plume"] = "Plume";
|
|
298
304
|
BridgeChain["Polygon"] = "Polygon";
|
|
@@ -308,11 +314,13 @@ var BridgeChain;
|
|
|
308
314
|
BridgeChain["Avalanche_Fuji"] = "Avalanche_Fuji";
|
|
309
315
|
BridgeChain["Base_Sepolia"] = "Base_Sepolia";
|
|
310
316
|
BridgeChain["Codex_Testnet"] = "Codex_Testnet";
|
|
317
|
+
BridgeChain["Edge_Testnet"] = "Edge_Testnet";
|
|
311
318
|
BridgeChain["Ethereum_Sepolia"] = "Ethereum_Sepolia";
|
|
312
319
|
BridgeChain["HyperEVM_Testnet"] = "HyperEVM_Testnet";
|
|
313
320
|
BridgeChain["Ink_Testnet"] = "Ink_Testnet";
|
|
314
321
|
BridgeChain["Linea_Sepolia"] = "Linea_Sepolia";
|
|
315
322
|
BridgeChain["Monad_Testnet"] = "Monad_Testnet";
|
|
323
|
+
BridgeChain["Morph_Testnet"] = "Morph_Testnet";
|
|
316
324
|
BridgeChain["Optimism_Sepolia"] = "Optimism_Sepolia";
|
|
317
325
|
BridgeChain["Plume_Testnet"] = "Plume_Testnet";
|
|
318
326
|
BridgeChain["Polygon_Amoy_Testnet"] = "Polygon_Amoy_Testnet";
|
|
@@ -1109,6 +1117,94 @@ const CodexTestnet = defineChain({
|
|
|
1109
1117
|
},
|
|
1110
1118
|
});
|
|
1111
1119
|
|
|
1120
|
+
/**
|
|
1121
|
+
* Edge Mainnet chain definition
|
|
1122
|
+
* @remarks
|
|
1123
|
+
* This represents the official production network for the Edge blockchain.
|
|
1124
|
+
* Edge is an EVM-compatible blockchain.
|
|
1125
|
+
*/
|
|
1126
|
+
const Edge = defineChain({
|
|
1127
|
+
type: 'evm',
|
|
1128
|
+
chain: Blockchain.Edge,
|
|
1129
|
+
name: 'Edge',
|
|
1130
|
+
title: 'Edge Mainnet',
|
|
1131
|
+
nativeCurrency: {
|
|
1132
|
+
name: 'Ether',
|
|
1133
|
+
symbol: 'ETH',
|
|
1134
|
+
decimals: 18,
|
|
1135
|
+
},
|
|
1136
|
+
chainId: 3343,
|
|
1137
|
+
isTestnet: false,
|
|
1138
|
+
explorerUrl: 'https://pro.edgex.exchange/en-US/explorer/tx/{hash}',
|
|
1139
|
+
rpcEndpoints: ['https://edge-mainnet.g.alchemy.com/public'],
|
|
1140
|
+
eurcAddress: null,
|
|
1141
|
+
usdcAddress: '0x98d2919b9A214E6Fa5384AC81E6864bA686Ad74c',
|
|
1142
|
+
usdtAddress: null,
|
|
1143
|
+
cctp: {
|
|
1144
|
+
domain: 28,
|
|
1145
|
+
contracts: {
|
|
1146
|
+
v2: {
|
|
1147
|
+
type: 'split',
|
|
1148
|
+
tokenMessenger: '0x98706A006bc632Df31CAdFCBD43F38887ce2ca5c',
|
|
1149
|
+
messageTransmitter: '0x5b61381Fc9e58E70EfC13a4A97516997019198ee',
|
|
1150
|
+
confirmations: 65,
|
|
1151
|
+
fastConfirmations: 1,
|
|
1152
|
+
},
|
|
1153
|
+
},
|
|
1154
|
+
forwarderSupported: {
|
|
1155
|
+
source: true,
|
|
1156
|
+
destination: true,
|
|
1157
|
+
},
|
|
1158
|
+
},
|
|
1159
|
+
kitContracts: {
|
|
1160
|
+
bridge: '0x6D1AaE1c34Aeb582022916a67f2A655C6f4eDFF2', //Unique bridge address as CCTP address for Edge is also unique
|
|
1161
|
+
},
|
|
1162
|
+
});
|
|
1163
|
+
|
|
1164
|
+
/**
|
|
1165
|
+
* Edge Testnet chain definition
|
|
1166
|
+
* @remarks
|
|
1167
|
+
* This represents the official test network for the Edge blockchain.
|
|
1168
|
+
* Edge is an EVM-compatible blockchain.
|
|
1169
|
+
*/
|
|
1170
|
+
const EdgeTestnet = defineChain({
|
|
1171
|
+
type: 'evm',
|
|
1172
|
+
chain: Blockchain.Edge_Testnet,
|
|
1173
|
+
name: 'Edge Testnet',
|
|
1174
|
+
title: 'Edge Testnet',
|
|
1175
|
+
nativeCurrency: {
|
|
1176
|
+
name: 'Ether',
|
|
1177
|
+
symbol: 'ETH',
|
|
1178
|
+
decimals: 18,
|
|
1179
|
+
},
|
|
1180
|
+
chainId: 33431,
|
|
1181
|
+
isTestnet: true,
|
|
1182
|
+
explorerUrl: 'https://edge-testnet.explorer.alchemy.com/tx/{hash}',
|
|
1183
|
+
rpcEndpoints: ['https://edge-testnet.g.alchemy.com/public'],
|
|
1184
|
+
eurcAddress: null,
|
|
1185
|
+
usdcAddress: '0x2d9F7CAD728051AA35Ecdc472a14cf8cDF5CFD6B',
|
|
1186
|
+
usdtAddress: null,
|
|
1187
|
+
cctp: {
|
|
1188
|
+
domain: 28,
|
|
1189
|
+
contracts: {
|
|
1190
|
+
v2: {
|
|
1191
|
+
type: 'split',
|
|
1192
|
+
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
1193
|
+
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
1194
|
+
confirmations: 65,
|
|
1195
|
+
fastConfirmations: 1,
|
|
1196
|
+
},
|
|
1197
|
+
},
|
|
1198
|
+
forwarderSupported: {
|
|
1199
|
+
source: true,
|
|
1200
|
+
destination: true,
|
|
1201
|
+
},
|
|
1202
|
+
},
|
|
1203
|
+
kitContracts: {
|
|
1204
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET,
|
|
1205
|
+
},
|
|
1206
|
+
});
|
|
1207
|
+
|
|
1112
1208
|
/**
|
|
1113
1209
|
* Ethereum Mainnet chain definition
|
|
1114
1210
|
* @remarks
|
|
@@ -1620,6 +1716,94 @@ const MonadTestnet = defineChain({
|
|
|
1620
1716
|
},
|
|
1621
1717
|
});
|
|
1622
1718
|
|
|
1719
|
+
/**
|
|
1720
|
+
* Morph Mainnet chain definition
|
|
1721
|
+
* @remarks
|
|
1722
|
+
* This represents the official production network for the Morph blockchain.
|
|
1723
|
+
* Morph is an EVM-compatible Layer-2 blockchain built on the OP Stack.
|
|
1724
|
+
*/
|
|
1725
|
+
const Morph = defineChain({
|
|
1726
|
+
type: 'evm',
|
|
1727
|
+
chain: Blockchain.Morph,
|
|
1728
|
+
name: 'Morph',
|
|
1729
|
+
title: 'Morph Mainnet',
|
|
1730
|
+
nativeCurrency: {
|
|
1731
|
+
name: 'Ether',
|
|
1732
|
+
symbol: 'ETH',
|
|
1733
|
+
decimals: 18,
|
|
1734
|
+
},
|
|
1735
|
+
chainId: 2818,
|
|
1736
|
+
isTestnet: false,
|
|
1737
|
+
explorerUrl: 'https://explorer.morph.network/tx/{hash}',
|
|
1738
|
+
rpcEndpoints: ['https://rpc.morphl2.io'],
|
|
1739
|
+
eurcAddress: null,
|
|
1740
|
+
usdcAddress: '0xCfb1186F4e93D60E60a8bDd997427D1F33bc372B',
|
|
1741
|
+
usdtAddress: null,
|
|
1742
|
+
cctp: {
|
|
1743
|
+
domain: 30,
|
|
1744
|
+
contracts: {
|
|
1745
|
+
v2: {
|
|
1746
|
+
type: 'split',
|
|
1747
|
+
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
1748
|
+
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
1749
|
+
confirmations: 64,
|
|
1750
|
+
fastConfirmations: 1,
|
|
1751
|
+
},
|
|
1752
|
+
},
|
|
1753
|
+
forwarderSupported: {
|
|
1754
|
+
source: false,
|
|
1755
|
+
destination: false,
|
|
1756
|
+
},
|
|
1757
|
+
},
|
|
1758
|
+
kitContracts: {
|
|
1759
|
+
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
1760
|
+
},
|
|
1761
|
+
});
|
|
1762
|
+
|
|
1763
|
+
/**
|
|
1764
|
+
* Morph Hoodi Testnet chain definition
|
|
1765
|
+
* @remarks
|
|
1766
|
+
* This represents the official test network for the Morph blockchain.
|
|
1767
|
+
* Morph is an EVM-compatible Layer-2 blockchain built on the OP Stack.
|
|
1768
|
+
*/
|
|
1769
|
+
const MorphTestnet = defineChain({
|
|
1770
|
+
type: 'evm',
|
|
1771
|
+
chain: Blockchain.Morph_Testnet,
|
|
1772
|
+
name: 'Morph Hoodi',
|
|
1773
|
+
title: 'Morph Hoodi Testnet',
|
|
1774
|
+
nativeCurrency: {
|
|
1775
|
+
name: 'Ether',
|
|
1776
|
+
symbol: 'ETH',
|
|
1777
|
+
decimals: 18,
|
|
1778
|
+
},
|
|
1779
|
+
chainId: 2910,
|
|
1780
|
+
isTestnet: true,
|
|
1781
|
+
explorerUrl: 'https://explorer-hoodi.morphl2.io/tx/{hash}',
|
|
1782
|
+
rpcEndpoints: ['https://rpc-hoodi.morphl2.io'],
|
|
1783
|
+
eurcAddress: null,
|
|
1784
|
+
usdcAddress: '0x7433b41C6c5e1d58D4Da99483609520255ab661B',
|
|
1785
|
+
usdtAddress: null,
|
|
1786
|
+
cctp: {
|
|
1787
|
+
domain: 30,
|
|
1788
|
+
contracts: {
|
|
1789
|
+
v2: {
|
|
1790
|
+
type: 'split',
|
|
1791
|
+
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
1792
|
+
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
1793
|
+
confirmations: 64,
|
|
1794
|
+
fastConfirmations: 1,
|
|
1795
|
+
},
|
|
1796
|
+
},
|
|
1797
|
+
forwarderSupported: {
|
|
1798
|
+
source: false,
|
|
1799
|
+
destination: false,
|
|
1800
|
+
},
|
|
1801
|
+
},
|
|
1802
|
+
kitContracts: {
|
|
1803
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET,
|
|
1804
|
+
},
|
|
1805
|
+
});
|
|
1806
|
+
|
|
1623
1807
|
/**
|
|
1624
1808
|
* NEAR Protocol Mainnet chain definition
|
|
1625
1809
|
* @remarks
|
|
@@ -2820,6 +3004,8 @@ var Chains = {
|
|
|
2820
3004
|
CeloAlfajoresTestnet: CeloAlfajoresTestnet,
|
|
2821
3005
|
Codex: Codex,
|
|
2822
3006
|
CodexTestnet: CodexTestnet,
|
|
3007
|
+
Edge: Edge,
|
|
3008
|
+
EdgeTestnet: EdgeTestnet,
|
|
2823
3009
|
Ethereum: Ethereum,
|
|
2824
3010
|
EthereumSepolia: EthereumSepolia,
|
|
2825
3011
|
Hedera: Hedera,
|
|
@@ -2832,6 +3018,8 @@ var Chains = {
|
|
|
2832
3018
|
LineaSepolia: LineaSepolia,
|
|
2833
3019
|
Monad: Monad,
|
|
2834
3020
|
MonadTestnet: MonadTestnet,
|
|
3021
|
+
Morph: Morph,
|
|
3022
|
+
MorphTestnet: MorphTestnet,
|
|
2835
3023
|
NEAR: NEAR,
|
|
2836
3024
|
NEARTestnet: NEARTestnet,
|
|
2837
3025
|
Noble: Noble,
|
|
@@ -5423,12 +5611,14 @@ const USDC = {
|
|
|
5423
5611
|
[Blockchain.Base]: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913',
|
|
5424
5612
|
[Blockchain.Celo]: '0xcebA9300f2b948710d2653dD7B07f33A8B32118C',
|
|
5425
5613
|
[Blockchain.Codex]: '0xd996633a415985DBd7D6D12f4A4343E31f5037cf',
|
|
5614
|
+
[Blockchain.Edge]: '0x98d2919b9A214E6Fa5384AC81E6864bA686Ad74c',
|
|
5426
5615
|
[Blockchain.Ethereum]: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
|
|
5427
5616
|
[Blockchain.Hedera]: '0.0.456858',
|
|
5428
5617
|
[Blockchain.HyperEVM]: '0xb88339CB7199b77E23DB6E890353E22632Ba630f',
|
|
5429
5618
|
[Blockchain.Ink]: '0x2D270e6886d130D724215A266106e6832161EAEd',
|
|
5430
5619
|
[Blockchain.Linea]: '0x176211869ca2b568f2a7d4ee941e073a821ee1ff',
|
|
5431
5620
|
[Blockchain.Monad]: '0x754704Bc059F8C67012fEd69BC8A327a5aafb603',
|
|
5621
|
+
[Blockchain.Morph]: '0xCfb1186F4e93D60E60a8bDd997427D1F33bc372B',
|
|
5432
5622
|
[Blockchain.NEAR]: '17208628f84f5d6ad33f0da3bbbeb27ffcb398eac501a31bd6ad2011e36133a1',
|
|
5433
5623
|
[Blockchain.Noble]: 'uusdc',
|
|
5434
5624
|
[Blockchain.Optimism]: '0x0b2c639c533813f4aa9d7837caf62653d097ff85',
|
|
@@ -5451,12 +5641,14 @@ const USDC = {
|
|
|
5451
5641
|
[Blockchain.Avalanche_Fuji]: '0x5425890298aed601595a70AB815c96711a31Bc65',
|
|
5452
5642
|
[Blockchain.Base_Sepolia]: '0x036CbD53842c5426634e7929541eC2318f3dCF7e',
|
|
5453
5643
|
[Blockchain.Codex_Testnet]: '0x6d7f141b6819C2c9CC2f818e6ad549E7Ca090F8f',
|
|
5644
|
+
[Blockchain.Edge_Testnet]: '0x2d9F7CAD728051AA35Ecdc472a14cf8cDF5CFD6B',
|
|
5454
5645
|
[Blockchain.Ethereum_Sepolia]: '0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238',
|
|
5455
5646
|
[Blockchain.Hedera_Testnet]: '0.0.429274',
|
|
5456
5647
|
[Blockchain.HyperEVM_Testnet]: '0x2B3370eE501B4a559b57D449569354196457D8Ab',
|
|
5457
5648
|
[Blockchain.Ink_Testnet]: '0xFabab97dCE620294D2B0b0e46C68964e326300Ac',
|
|
5458
5649
|
[Blockchain.Linea_Sepolia]: '0xfece4462d57bd51a6a552365a011b95f0e16d9b7',
|
|
5459
5650
|
[Blockchain.Monad_Testnet]: '0x534b2f3A21130d7a60830c2Df862319e593943A3',
|
|
5651
|
+
[Blockchain.Morph_Testnet]: '0x7433b41C6c5e1d58D4Da99483609520255ab661B',
|
|
5460
5652
|
[Blockchain.NEAR_Testnet]: '3e2210e1184b45b64c8a434c0a7e7b23cc04ea7eb7a6c3c32520d03d4afcb8af',
|
|
5461
5653
|
[Blockchain.Noble_Testnet]: 'uusdc',
|
|
5462
5654
|
[Blockchain.Optimism_Sepolia]: '0x5fd84259d66Cd46123540766Be93DFE6D43130D7',
|
|
@@ -9317,7 +9509,7 @@ zod.z
|
|
|
9317
9509
|
})
|
|
9318
9510
|
.passthrough();
|
|
9319
9511
|
|
|
9320
|
-
var version = "1.
|
|
9512
|
+
var version = "1.5.0";
|
|
9321
9513
|
var pkg = {
|
|
9322
9514
|
version: version};
|
|
9323
9515
|
|
package/index.d.ts
CHANGED
|
@@ -499,6 +499,8 @@ declare enum Blockchain {
|
|
|
499
499
|
Celo_Alfajores_Testnet = "Celo_Alfajores_Testnet",
|
|
500
500
|
Codex = "Codex",
|
|
501
501
|
Codex_Testnet = "Codex_Testnet",
|
|
502
|
+
Edge = "Edge",
|
|
503
|
+
Edge_Testnet = "Edge_Testnet",
|
|
502
504
|
Ethereum = "Ethereum",
|
|
503
505
|
Ethereum_Sepolia = "Ethereum_Sepolia",
|
|
504
506
|
Hedera = "Hedera",
|
|
@@ -511,6 +513,8 @@ declare enum Blockchain {
|
|
|
511
513
|
Linea_Sepolia = "Linea_Sepolia",
|
|
512
514
|
Monad = "Monad",
|
|
513
515
|
Monad_Testnet = "Monad_Testnet",
|
|
516
|
+
Morph = "Morph",
|
|
517
|
+
Morph_Testnet = "Morph_Testnet",
|
|
514
518
|
NEAR = "NEAR",
|
|
515
519
|
NEAR_Testnet = "NEAR_Testnet",
|
|
516
520
|
Noble = "Noble",
|
package/index.mjs
CHANGED
|
@@ -66,6 +66,8 @@ var Blockchain;
|
|
|
66
66
|
Blockchain["Celo_Alfajores_Testnet"] = "Celo_Alfajores_Testnet";
|
|
67
67
|
Blockchain["Codex"] = "Codex";
|
|
68
68
|
Blockchain["Codex_Testnet"] = "Codex_Testnet";
|
|
69
|
+
Blockchain["Edge"] = "Edge";
|
|
70
|
+
Blockchain["Edge_Testnet"] = "Edge_Testnet";
|
|
69
71
|
Blockchain["Ethereum"] = "Ethereum";
|
|
70
72
|
Blockchain["Ethereum_Sepolia"] = "Ethereum_Sepolia";
|
|
71
73
|
Blockchain["Hedera"] = "Hedera";
|
|
@@ -78,6 +80,8 @@ var Blockchain;
|
|
|
78
80
|
Blockchain["Linea_Sepolia"] = "Linea_Sepolia";
|
|
79
81
|
Blockchain["Monad"] = "Monad";
|
|
80
82
|
Blockchain["Monad_Testnet"] = "Monad_Testnet";
|
|
83
|
+
Blockchain["Morph"] = "Morph";
|
|
84
|
+
Blockchain["Morph_Testnet"] = "Morph_Testnet";
|
|
81
85
|
Blockchain["NEAR"] = "NEAR";
|
|
82
86
|
Blockchain["NEAR_Testnet"] = "NEAR_Testnet";
|
|
83
87
|
Blockchain["Noble"] = "Noble";
|
|
@@ -281,11 +285,13 @@ var BridgeChain;
|
|
|
281
285
|
BridgeChain["Avalanche"] = "Avalanche";
|
|
282
286
|
BridgeChain["Base"] = "Base";
|
|
283
287
|
BridgeChain["Codex"] = "Codex";
|
|
288
|
+
BridgeChain["Edge"] = "Edge";
|
|
284
289
|
BridgeChain["Ethereum"] = "Ethereum";
|
|
285
290
|
BridgeChain["HyperEVM"] = "HyperEVM";
|
|
286
291
|
BridgeChain["Ink"] = "Ink";
|
|
287
292
|
BridgeChain["Linea"] = "Linea";
|
|
288
293
|
BridgeChain["Monad"] = "Monad";
|
|
294
|
+
BridgeChain["Morph"] = "Morph";
|
|
289
295
|
BridgeChain["Optimism"] = "Optimism";
|
|
290
296
|
BridgeChain["Plume"] = "Plume";
|
|
291
297
|
BridgeChain["Polygon"] = "Polygon";
|
|
@@ -301,11 +307,13 @@ var BridgeChain;
|
|
|
301
307
|
BridgeChain["Avalanche_Fuji"] = "Avalanche_Fuji";
|
|
302
308
|
BridgeChain["Base_Sepolia"] = "Base_Sepolia";
|
|
303
309
|
BridgeChain["Codex_Testnet"] = "Codex_Testnet";
|
|
310
|
+
BridgeChain["Edge_Testnet"] = "Edge_Testnet";
|
|
304
311
|
BridgeChain["Ethereum_Sepolia"] = "Ethereum_Sepolia";
|
|
305
312
|
BridgeChain["HyperEVM_Testnet"] = "HyperEVM_Testnet";
|
|
306
313
|
BridgeChain["Ink_Testnet"] = "Ink_Testnet";
|
|
307
314
|
BridgeChain["Linea_Sepolia"] = "Linea_Sepolia";
|
|
308
315
|
BridgeChain["Monad_Testnet"] = "Monad_Testnet";
|
|
316
|
+
BridgeChain["Morph_Testnet"] = "Morph_Testnet";
|
|
309
317
|
BridgeChain["Optimism_Sepolia"] = "Optimism_Sepolia";
|
|
310
318
|
BridgeChain["Plume_Testnet"] = "Plume_Testnet";
|
|
311
319
|
BridgeChain["Polygon_Amoy_Testnet"] = "Polygon_Amoy_Testnet";
|
|
@@ -1102,6 +1110,94 @@ const CodexTestnet = defineChain({
|
|
|
1102
1110
|
},
|
|
1103
1111
|
});
|
|
1104
1112
|
|
|
1113
|
+
/**
|
|
1114
|
+
* Edge Mainnet chain definition
|
|
1115
|
+
* @remarks
|
|
1116
|
+
* This represents the official production network for the Edge blockchain.
|
|
1117
|
+
* Edge is an EVM-compatible blockchain.
|
|
1118
|
+
*/
|
|
1119
|
+
const Edge = defineChain({
|
|
1120
|
+
type: 'evm',
|
|
1121
|
+
chain: Blockchain.Edge,
|
|
1122
|
+
name: 'Edge',
|
|
1123
|
+
title: 'Edge Mainnet',
|
|
1124
|
+
nativeCurrency: {
|
|
1125
|
+
name: 'Ether',
|
|
1126
|
+
symbol: 'ETH',
|
|
1127
|
+
decimals: 18,
|
|
1128
|
+
},
|
|
1129
|
+
chainId: 3343,
|
|
1130
|
+
isTestnet: false,
|
|
1131
|
+
explorerUrl: 'https://pro.edgex.exchange/en-US/explorer/tx/{hash}',
|
|
1132
|
+
rpcEndpoints: ['https://edge-mainnet.g.alchemy.com/public'],
|
|
1133
|
+
eurcAddress: null,
|
|
1134
|
+
usdcAddress: '0x98d2919b9A214E6Fa5384AC81E6864bA686Ad74c',
|
|
1135
|
+
usdtAddress: null,
|
|
1136
|
+
cctp: {
|
|
1137
|
+
domain: 28,
|
|
1138
|
+
contracts: {
|
|
1139
|
+
v2: {
|
|
1140
|
+
type: 'split',
|
|
1141
|
+
tokenMessenger: '0x98706A006bc632Df31CAdFCBD43F38887ce2ca5c',
|
|
1142
|
+
messageTransmitter: '0x5b61381Fc9e58E70EfC13a4A97516997019198ee',
|
|
1143
|
+
confirmations: 65,
|
|
1144
|
+
fastConfirmations: 1,
|
|
1145
|
+
},
|
|
1146
|
+
},
|
|
1147
|
+
forwarderSupported: {
|
|
1148
|
+
source: true,
|
|
1149
|
+
destination: true,
|
|
1150
|
+
},
|
|
1151
|
+
},
|
|
1152
|
+
kitContracts: {
|
|
1153
|
+
bridge: '0x6D1AaE1c34Aeb582022916a67f2A655C6f4eDFF2', //Unique bridge address as CCTP address for Edge is also unique
|
|
1154
|
+
},
|
|
1155
|
+
});
|
|
1156
|
+
|
|
1157
|
+
/**
|
|
1158
|
+
* Edge Testnet chain definition
|
|
1159
|
+
* @remarks
|
|
1160
|
+
* This represents the official test network for the Edge blockchain.
|
|
1161
|
+
* Edge is an EVM-compatible blockchain.
|
|
1162
|
+
*/
|
|
1163
|
+
const EdgeTestnet = defineChain({
|
|
1164
|
+
type: 'evm',
|
|
1165
|
+
chain: Blockchain.Edge_Testnet,
|
|
1166
|
+
name: 'Edge Testnet',
|
|
1167
|
+
title: 'Edge Testnet',
|
|
1168
|
+
nativeCurrency: {
|
|
1169
|
+
name: 'Ether',
|
|
1170
|
+
symbol: 'ETH',
|
|
1171
|
+
decimals: 18,
|
|
1172
|
+
},
|
|
1173
|
+
chainId: 33431,
|
|
1174
|
+
isTestnet: true,
|
|
1175
|
+
explorerUrl: 'https://edge-testnet.explorer.alchemy.com/tx/{hash}',
|
|
1176
|
+
rpcEndpoints: ['https://edge-testnet.g.alchemy.com/public'],
|
|
1177
|
+
eurcAddress: null,
|
|
1178
|
+
usdcAddress: '0x2d9F7CAD728051AA35Ecdc472a14cf8cDF5CFD6B',
|
|
1179
|
+
usdtAddress: null,
|
|
1180
|
+
cctp: {
|
|
1181
|
+
domain: 28,
|
|
1182
|
+
contracts: {
|
|
1183
|
+
v2: {
|
|
1184
|
+
type: 'split',
|
|
1185
|
+
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
1186
|
+
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
1187
|
+
confirmations: 65,
|
|
1188
|
+
fastConfirmations: 1,
|
|
1189
|
+
},
|
|
1190
|
+
},
|
|
1191
|
+
forwarderSupported: {
|
|
1192
|
+
source: true,
|
|
1193
|
+
destination: true,
|
|
1194
|
+
},
|
|
1195
|
+
},
|
|
1196
|
+
kitContracts: {
|
|
1197
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET,
|
|
1198
|
+
},
|
|
1199
|
+
});
|
|
1200
|
+
|
|
1105
1201
|
/**
|
|
1106
1202
|
* Ethereum Mainnet chain definition
|
|
1107
1203
|
* @remarks
|
|
@@ -1613,6 +1709,94 @@ const MonadTestnet = defineChain({
|
|
|
1613
1709
|
},
|
|
1614
1710
|
});
|
|
1615
1711
|
|
|
1712
|
+
/**
|
|
1713
|
+
* Morph Mainnet chain definition
|
|
1714
|
+
* @remarks
|
|
1715
|
+
* This represents the official production network for the Morph blockchain.
|
|
1716
|
+
* Morph is an EVM-compatible Layer-2 blockchain built on the OP Stack.
|
|
1717
|
+
*/
|
|
1718
|
+
const Morph = defineChain({
|
|
1719
|
+
type: 'evm',
|
|
1720
|
+
chain: Blockchain.Morph,
|
|
1721
|
+
name: 'Morph',
|
|
1722
|
+
title: 'Morph Mainnet',
|
|
1723
|
+
nativeCurrency: {
|
|
1724
|
+
name: 'Ether',
|
|
1725
|
+
symbol: 'ETH',
|
|
1726
|
+
decimals: 18,
|
|
1727
|
+
},
|
|
1728
|
+
chainId: 2818,
|
|
1729
|
+
isTestnet: false,
|
|
1730
|
+
explorerUrl: 'https://explorer.morph.network/tx/{hash}',
|
|
1731
|
+
rpcEndpoints: ['https://rpc.morphl2.io'],
|
|
1732
|
+
eurcAddress: null,
|
|
1733
|
+
usdcAddress: '0xCfb1186F4e93D60E60a8bDd997427D1F33bc372B',
|
|
1734
|
+
usdtAddress: null,
|
|
1735
|
+
cctp: {
|
|
1736
|
+
domain: 30,
|
|
1737
|
+
contracts: {
|
|
1738
|
+
v2: {
|
|
1739
|
+
type: 'split',
|
|
1740
|
+
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
1741
|
+
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
1742
|
+
confirmations: 64,
|
|
1743
|
+
fastConfirmations: 1,
|
|
1744
|
+
},
|
|
1745
|
+
},
|
|
1746
|
+
forwarderSupported: {
|
|
1747
|
+
source: false,
|
|
1748
|
+
destination: false,
|
|
1749
|
+
},
|
|
1750
|
+
},
|
|
1751
|
+
kitContracts: {
|
|
1752
|
+
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
1753
|
+
},
|
|
1754
|
+
});
|
|
1755
|
+
|
|
1756
|
+
/**
|
|
1757
|
+
* Morph Hoodi Testnet chain definition
|
|
1758
|
+
* @remarks
|
|
1759
|
+
* This represents the official test network for the Morph blockchain.
|
|
1760
|
+
* Morph is an EVM-compatible Layer-2 blockchain built on the OP Stack.
|
|
1761
|
+
*/
|
|
1762
|
+
const MorphTestnet = defineChain({
|
|
1763
|
+
type: 'evm',
|
|
1764
|
+
chain: Blockchain.Morph_Testnet,
|
|
1765
|
+
name: 'Morph Hoodi',
|
|
1766
|
+
title: 'Morph Hoodi Testnet',
|
|
1767
|
+
nativeCurrency: {
|
|
1768
|
+
name: 'Ether',
|
|
1769
|
+
symbol: 'ETH',
|
|
1770
|
+
decimals: 18,
|
|
1771
|
+
},
|
|
1772
|
+
chainId: 2910,
|
|
1773
|
+
isTestnet: true,
|
|
1774
|
+
explorerUrl: 'https://explorer-hoodi.morphl2.io/tx/{hash}',
|
|
1775
|
+
rpcEndpoints: ['https://rpc-hoodi.morphl2.io'],
|
|
1776
|
+
eurcAddress: null,
|
|
1777
|
+
usdcAddress: '0x7433b41C6c5e1d58D4Da99483609520255ab661B',
|
|
1778
|
+
usdtAddress: null,
|
|
1779
|
+
cctp: {
|
|
1780
|
+
domain: 30,
|
|
1781
|
+
contracts: {
|
|
1782
|
+
v2: {
|
|
1783
|
+
type: 'split',
|
|
1784
|
+
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
1785
|
+
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
1786
|
+
confirmations: 64,
|
|
1787
|
+
fastConfirmations: 1,
|
|
1788
|
+
},
|
|
1789
|
+
},
|
|
1790
|
+
forwarderSupported: {
|
|
1791
|
+
source: false,
|
|
1792
|
+
destination: false,
|
|
1793
|
+
},
|
|
1794
|
+
},
|
|
1795
|
+
kitContracts: {
|
|
1796
|
+
bridge: BRIDGE_CONTRACT_EVM_TESTNET,
|
|
1797
|
+
},
|
|
1798
|
+
});
|
|
1799
|
+
|
|
1616
1800
|
/**
|
|
1617
1801
|
* NEAR Protocol Mainnet chain definition
|
|
1618
1802
|
* @remarks
|
|
@@ -2813,6 +2997,8 @@ var Chains = /*#__PURE__*/Object.freeze({
|
|
|
2813
2997
|
CeloAlfajoresTestnet: CeloAlfajoresTestnet,
|
|
2814
2998
|
Codex: Codex,
|
|
2815
2999
|
CodexTestnet: CodexTestnet,
|
|
3000
|
+
Edge: Edge,
|
|
3001
|
+
EdgeTestnet: EdgeTestnet,
|
|
2816
3002
|
Ethereum: Ethereum,
|
|
2817
3003
|
EthereumSepolia: EthereumSepolia,
|
|
2818
3004
|
Hedera: Hedera,
|
|
@@ -2825,6 +3011,8 @@ var Chains = /*#__PURE__*/Object.freeze({
|
|
|
2825
3011
|
LineaSepolia: LineaSepolia,
|
|
2826
3012
|
Monad: Monad,
|
|
2827
3013
|
MonadTestnet: MonadTestnet,
|
|
3014
|
+
Morph: Morph,
|
|
3015
|
+
MorphTestnet: MorphTestnet,
|
|
2828
3016
|
NEAR: NEAR,
|
|
2829
3017
|
NEARTestnet: NEARTestnet,
|
|
2830
3018
|
Noble: Noble,
|
|
@@ -5416,12 +5604,14 @@ const USDC = {
|
|
|
5416
5604
|
[Blockchain.Base]: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913',
|
|
5417
5605
|
[Blockchain.Celo]: '0xcebA9300f2b948710d2653dD7B07f33A8B32118C',
|
|
5418
5606
|
[Blockchain.Codex]: '0xd996633a415985DBd7D6D12f4A4343E31f5037cf',
|
|
5607
|
+
[Blockchain.Edge]: '0x98d2919b9A214E6Fa5384AC81E6864bA686Ad74c',
|
|
5419
5608
|
[Blockchain.Ethereum]: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
|
|
5420
5609
|
[Blockchain.Hedera]: '0.0.456858',
|
|
5421
5610
|
[Blockchain.HyperEVM]: '0xb88339CB7199b77E23DB6E890353E22632Ba630f',
|
|
5422
5611
|
[Blockchain.Ink]: '0x2D270e6886d130D724215A266106e6832161EAEd',
|
|
5423
5612
|
[Blockchain.Linea]: '0x176211869ca2b568f2a7d4ee941e073a821ee1ff',
|
|
5424
5613
|
[Blockchain.Monad]: '0x754704Bc059F8C67012fEd69BC8A327a5aafb603',
|
|
5614
|
+
[Blockchain.Morph]: '0xCfb1186F4e93D60E60a8bDd997427D1F33bc372B',
|
|
5425
5615
|
[Blockchain.NEAR]: '17208628f84f5d6ad33f0da3bbbeb27ffcb398eac501a31bd6ad2011e36133a1',
|
|
5426
5616
|
[Blockchain.Noble]: 'uusdc',
|
|
5427
5617
|
[Blockchain.Optimism]: '0x0b2c639c533813f4aa9d7837caf62653d097ff85',
|
|
@@ -5444,12 +5634,14 @@ const USDC = {
|
|
|
5444
5634
|
[Blockchain.Avalanche_Fuji]: '0x5425890298aed601595a70AB815c96711a31Bc65',
|
|
5445
5635
|
[Blockchain.Base_Sepolia]: '0x036CbD53842c5426634e7929541eC2318f3dCF7e',
|
|
5446
5636
|
[Blockchain.Codex_Testnet]: '0x6d7f141b6819C2c9CC2f818e6ad549E7Ca090F8f',
|
|
5637
|
+
[Blockchain.Edge_Testnet]: '0x2d9F7CAD728051AA35Ecdc472a14cf8cDF5CFD6B',
|
|
5447
5638
|
[Blockchain.Ethereum_Sepolia]: '0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238',
|
|
5448
5639
|
[Blockchain.Hedera_Testnet]: '0.0.429274',
|
|
5449
5640
|
[Blockchain.HyperEVM_Testnet]: '0x2B3370eE501B4a559b57D449569354196457D8Ab',
|
|
5450
5641
|
[Blockchain.Ink_Testnet]: '0xFabab97dCE620294D2B0b0e46C68964e326300Ac',
|
|
5451
5642
|
[Blockchain.Linea_Sepolia]: '0xfece4462d57bd51a6a552365a011b95f0e16d9b7',
|
|
5452
5643
|
[Blockchain.Monad_Testnet]: '0x534b2f3A21130d7a60830c2Df862319e593943A3',
|
|
5644
|
+
[Blockchain.Morph_Testnet]: '0x7433b41C6c5e1d58D4Da99483609520255ab661B',
|
|
5453
5645
|
[Blockchain.NEAR_Testnet]: '3e2210e1184b45b64c8a434c0a7e7b23cc04ea7eb7a6c3c32520d03d4afcb8af',
|
|
5454
5646
|
[Blockchain.Noble_Testnet]: 'uusdc',
|
|
5455
5647
|
[Blockchain.Optimism_Sepolia]: '0x5fd84259d66Cd46123540766Be93DFE6D43130D7',
|
|
@@ -9310,7 +9502,7 @@ z
|
|
|
9310
9502
|
})
|
|
9311
9503
|
.passthrough();
|
|
9312
9504
|
|
|
9313
|
-
var version = "1.
|
|
9505
|
+
var version = "1.5.0";
|
|
9314
9506
|
var pkg = {
|
|
9315
9507
|
version: version};
|
|
9316
9508
|
|