@circle-fin/app-kit 1.13.0 → 1.15.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 +122 -0
- package/README.md +3 -3
- package/bridge.cjs +8388 -515
- package/bridge.d.cts +640 -61
- package/bridge.d.mts +640 -61
- package/bridge.d.ts +640 -61
- package/bridge.mjs +8389 -516
- package/chains.cjs +275 -15
- package/chains.d.cts +117 -2
- package/chains.d.mts +117 -2
- package/chains.d.ts +117 -2
- package/chains.mjs +275 -16
- package/context.d.cts +577 -57
- package/context.d.mts +577 -57
- package/context.d.ts +577 -57
- package/earn.cjs +973 -271
- package/earn.d.cts +577 -57
- package/earn.d.mts +577 -57
- package/earn.d.ts +577 -57
- package/earn.mjs +919 -221
- package/estimateBridge.cjs +8388 -518
- package/estimateBridge.d.cts +704 -82
- package/estimateBridge.d.mts +704 -82
- package/estimateBridge.d.ts +704 -82
- package/estimateBridge.mjs +8390 -520
- package/estimateSwap.cjs +982 -237
- package/estimateSwap.d.cts +577 -57
- package/estimateSwap.d.mts +577 -57
- package/estimateSwap.d.ts +577 -57
- package/estimateSwap.mjs +981 -237
- package/index.cjs +21401 -8522
- package/index.d.cts +6045 -2149
- package/index.d.mts +6045 -2149
- package/index.d.ts +6045 -2149
- package/index.mjs +21401 -8524
- package/package.json +17 -6
- package/server.cjs +10040 -0
- package/server.cjs.map +1 -0
- package/server.d.cts +2467 -0
- package/server.d.mts +2467 -0
- package/server.d.ts +2467 -0
- package/server.mjs +10028 -0
- package/server.mjs.map +1 -0
- package/swap.cjs +982 -237
- package/swap.d.cts +577 -57
- package/swap.d.mts +577 -57
- package/swap.d.ts +577 -57
- package/swap.mjs +981 -237
- package/unifiedBalance.cjs +20510 -7599
- package/unifiedBalance.d.cts +807 -201
- package/unifiedBalance.d.mts +807 -201
- package/unifiedBalance.d.ts +807 -201
- package/unifiedBalance.mjs +20513 -7603
package/chains.mjs
CHANGED
|
@@ -61,9 +61,10 @@ import { z } from 'zod';
|
|
|
61
61
|
Blockchain["Algorand_Testnet"] = "Algorand_Testnet";
|
|
62
62
|
Blockchain["Aptos"] = "Aptos";
|
|
63
63
|
Blockchain["Aptos_Testnet"] = "Aptos_Testnet";
|
|
64
|
-
Blockchain["Arc_Testnet"] = "Arc_Testnet";
|
|
65
64
|
Blockchain["Arbitrum"] = "Arbitrum";
|
|
66
65
|
Blockchain["Arbitrum_Sepolia"] = "Arbitrum_Sepolia";
|
|
66
|
+
Blockchain["Arc"] = "Arc";
|
|
67
|
+
Blockchain["Arc_Testnet"] = "Arc_Testnet";
|
|
67
68
|
Blockchain["Avalanche"] = "Avalanche";
|
|
68
69
|
Blockchain["Avalanche_Fuji"] = "Avalanche_Fuji";
|
|
69
70
|
Blockchain["Base"] = "Base";
|
|
@@ -150,6 +151,7 @@ var SwapChain;
|
|
|
150
151
|
SwapChain["XDC"] = "XDC";
|
|
151
152
|
SwapChain["HyperEVM"] = "HyperEVM";
|
|
152
153
|
SwapChain["Monad"] = "Monad";
|
|
154
|
+
SwapChain["Arc"] = "Arc";
|
|
153
155
|
// Testnet chains with swap support
|
|
154
156
|
SwapChain["Arc_Testnet"] = "Arc_Testnet";
|
|
155
157
|
})(SwapChain || (SwapChain = {}));
|
|
@@ -157,6 +159,7 @@ var BridgeChain;
|
|
|
157
159
|
(function(BridgeChain) {
|
|
158
160
|
// Mainnet chains with CCTPv2 support
|
|
159
161
|
BridgeChain["Arbitrum"] = "Arbitrum";
|
|
162
|
+
BridgeChain["Arc"] = "Arc";
|
|
160
163
|
BridgeChain["Avalanche"] = "Avalanche";
|
|
161
164
|
BridgeChain["Base"] = "Base";
|
|
162
165
|
BridgeChain["Codex"] = "Codex";
|
|
@@ -212,6 +215,7 @@ var BridgeChain;
|
|
|
212
215
|
var UnifiedBalanceChain;
|
|
213
216
|
(function(UnifiedBalanceChain) {
|
|
214
217
|
// Mainnet chains with Gateway V1 support
|
|
218
|
+
UnifiedBalanceChain["Arc"] = "Arc";
|
|
215
219
|
UnifiedBalanceChain["Arbitrum"] = "Arbitrum";
|
|
216
220
|
UnifiedBalanceChain["Avalanche"] = "Avalanche";
|
|
217
221
|
UnifiedBalanceChain["Base"] = "Base";
|
|
@@ -241,6 +245,7 @@ var UnifiedBalanceChain;
|
|
|
241
245
|
})(UnifiedBalanceChain || (UnifiedBalanceChain = {}));
|
|
242
246
|
var EarnChain;
|
|
243
247
|
(function(EarnChain) {
|
|
248
|
+
EarnChain["Arc"] = "Arc";
|
|
244
249
|
EarnChain["Arc_Testnet"] = "Arc_Testnet";
|
|
245
250
|
})(EarnChain || (EarnChain = {}));
|
|
246
251
|
/**
|
|
@@ -257,8 +262,11 @@ var EarnChain;
|
|
|
257
262
|
* console.log(EARN_BRIDGE_SOURCE_BLOCKCHAINS.join(', '))
|
|
258
263
|
* ```
|
|
259
264
|
*/ const EARN_BRIDGE_SOURCE_BLOCKCHAINS = [
|
|
265
|
+
"Arbitrum",
|
|
260
266
|
"Arbitrum_Sepolia",
|
|
267
|
+
"Base",
|
|
261
268
|
"Base_Sepolia",
|
|
269
|
+
"Ethereum",
|
|
262
270
|
"Ethereum_Sepolia"
|
|
263
271
|
];
|
|
264
272
|
/**
|
|
@@ -272,6 +280,7 @@ var EarnChain;
|
|
|
272
280
|
* console.log(EARN_BRIDGE_DESTINATION_BLOCKCHAINS.join(', '))
|
|
273
281
|
* ```
|
|
274
282
|
*/ const EARN_BRIDGE_DESTINATION_BLOCKCHAINS = [
|
|
283
|
+
"Arc",
|
|
275
284
|
"Arc_Testnet"
|
|
276
285
|
];
|
|
277
286
|
|
|
@@ -577,6 +586,25 @@ var EarnChain;
|
|
|
577
586
|
* EVM-compatible chains. Use this address when deploying or testing
|
|
578
587
|
* cross-chain USDC transfers on test networks.
|
|
579
588
|
*/ const BRIDGE_CONTRACT_EVM_TESTNET = '0xC5567a5E3370d4DBfB0540025078e283e36A363d';
|
|
589
|
+
/**
|
|
590
|
+
* The CrossChainTokenService (CCTPx) service address for EVM testnet networks.
|
|
591
|
+
*
|
|
592
|
+
* This service coordinates CCTPx cross-chain token operations on testnet
|
|
593
|
+
* environments and is shared by every EVM test network CCTPx supports. Read the
|
|
594
|
+
* chain definitions via `isCCTPXSupported` rather than trusting a list here,
|
|
595
|
+
* which goes stale as deployments land.
|
|
596
|
+
*/ const CCTPX_SERVICE_ADDRESS_EVM_TESTNET = '0x63753E722bd2C2A5DF6EE19C5106662208B81077';
|
|
597
|
+
/**
|
|
598
|
+
* CrossChainTokenService (CCTS) proxy address for CCTPx on EVM **mainnet**.
|
|
599
|
+
*
|
|
600
|
+
* @remarks
|
|
601
|
+
* A distinct deployment from {@link CCTPX_SERVICE_ADDRESS_EVM_TESTNET}, shared
|
|
602
|
+
* by every EVM mainnet chain that CCTPx supports. A chain becomes
|
|
603
|
+
* CCTPx-eligible only once its definition carries this as
|
|
604
|
+
* `cctpx.serviceAddress`, and a route additionally needs both of its endpoints
|
|
605
|
+
* eligible — so adding a chain here is the deliberate, reviewable step that
|
|
606
|
+
* opens mainnet CCTPx for it.
|
|
607
|
+
*/ const CCTPX_SERVICE_ADDRESS_EVM_MAINNET = '0x431871229103b780868f8C6BB820cd16ECf942BC';
|
|
580
608
|
/**
|
|
581
609
|
* The bridge contract address for EVM mainnet networks.
|
|
582
610
|
*
|
|
@@ -645,8 +673,115 @@ var EarnChain;
|
|
|
645
673
|
* This program handles minting operations for Gateway transactions
|
|
646
674
|
* on Solana devnet.
|
|
647
675
|
*/ const GATEWAY_MINTER_SOLANA_DEVNET = 'GATEmKK2ECL1brEngQZWCgMWPbvrEYqsV6u29dAaHavr';
|
|
648
|
-
/**
|
|
649
|
-
|
|
676
|
+
/**
|
|
677
|
+
* The `TokenMessengerWithFees` proxy contract address for EVM mainnet networks
|
|
678
|
+
* (all chains except Edge).
|
|
679
|
+
*
|
|
680
|
+
* Deployed at a CREATE3-derived address; identical across all mainnet EVM
|
|
681
|
+
* source chains. Present on any chain that supports the prepaid FORWARD path
|
|
682
|
+
* via `depositForBurnWithHookAndFees`.
|
|
683
|
+
*/ const TOKEN_MESSENGER_WITH_FEES_EVM_MAINNET = '0x71f54F818671cD0D7ea140Da213e5C8b5C92a408';
|
|
684
|
+
/**
|
|
685
|
+
* The `TokenMessengerWithFees` proxy contract address for EVM testnet networks.
|
|
686
|
+
*
|
|
687
|
+
* Identical across all testnet EVM source chains. Present on any testnet chain
|
|
688
|
+
* that supports the prepaid FORWARD path via `depositForBurnWithHookAndFees`.
|
|
689
|
+
*/ const TOKEN_MESSENGER_WITH_FEES_EVM_TESTNET = '0x8745D906D67C346E5eb1aEEED38Eb87F34DF0C0A';
|
|
690
|
+
/**
|
|
691
|
+
* The `DepositForHandler` proxy contract address for EVM mainnet networks.
|
|
692
|
+
*
|
|
693
|
+
* The handler the GenericExecutor calls on a fast-deposit destination chain to
|
|
694
|
+
* run a cross-chain deposit into the GatewayWallet. Deployed at the same
|
|
695
|
+
* address across all mainnet EVM destination chains.
|
|
696
|
+
*/ const DEPOSIT_FOR_HANDLER_EVM_MAINNET = '0x16529813203f77E036576666336554a1210dce4D';
|
|
697
|
+
/**
|
|
698
|
+
* The `DepositForHandler` proxy contract address for EVM testnet networks.
|
|
699
|
+
*
|
|
700
|
+
* Identical across all testnet EVM destination chains.
|
|
701
|
+
*/ const DEPOSIT_FOR_HANDLER_EVM_TESTNET = '0xD05E7D2E7d30b92c5F17d7d0fC575fce231F1A48';
|
|
702
|
+
/**
|
|
703
|
+
* The `GenericExecutor` proxy contract address for EVM mainnet networks.
|
|
704
|
+
*
|
|
705
|
+
* The GenericExecutor is the `mintRecipient` and `destinationCaller` on the
|
|
706
|
+
* destination chain for the CCTP v2 prepaid FORWARD path. It receives the CCTP
|
|
707
|
+
* mint and calls the `DepositForHandler` to complete the fast deposit.
|
|
708
|
+
* Deployed at the same address across all mainnet EVM destination chains.
|
|
709
|
+
*/ const GENERIC_EXECUTOR_EVM_MAINNET = '0xFa7be2f04F3Ad4ca969260729c6d45B5625984A7';
|
|
710
|
+
/**
|
|
711
|
+
* The `GenericExecutor` proxy contract address for EVM testnet networks.
|
|
712
|
+
*
|
|
713
|
+
* Identical across all testnet EVM destination chains.
|
|
714
|
+
*/ const GENERIC_EXECUTOR_EVM_TESTNET = '0xEdC81040756AcCfF070c21D37b265b9D0b5Ba45e';
|
|
715
|
+
|
|
716
|
+
/**
|
|
717
|
+
* Arc Mainnet chain definition
|
|
718
|
+
* @remarks
|
|
719
|
+
* This represents the official production network for the Arc blockchain,
|
|
720
|
+
* Circle's EVM-compatible Layer-1 designed for stablecoin finance
|
|
721
|
+
* and asset tokenization. Arc uses USDC as the native gas token and
|
|
722
|
+
* features the Malachite Byzantine Fault Tolerant (BFT) consensus
|
|
723
|
+
* engine for sub-second finality.
|
|
724
|
+
*/ const Arc = defineChain({
|
|
725
|
+
type: 'evm',
|
|
726
|
+
chain: Blockchain.Arc,
|
|
727
|
+
name: 'Arc',
|
|
728
|
+
title: 'Arc Mainnet',
|
|
729
|
+
nativeCurrency: {
|
|
730
|
+
name: 'USDC',
|
|
731
|
+
symbol: 'USDC',
|
|
732
|
+
// Arc uses native USDC with 18 decimals for gas payments (EVM standard).
|
|
733
|
+
// Note: The ERC-20 USDC contract at usdcAddress uses 6 decimals.
|
|
734
|
+
// See: https://docs.arc.network/arc/references/contract-addresses
|
|
735
|
+
decimals: 18
|
|
736
|
+
},
|
|
737
|
+
chainId: 5042,
|
|
738
|
+
isTestnet: false,
|
|
739
|
+
explorerUrl: 'https://explorer.arc.io/tx/{hash}',
|
|
740
|
+
rpcEndpoints: [
|
|
741
|
+
'https://rpc.mainnet.arc.io/'
|
|
742
|
+
],
|
|
743
|
+
eurcAddress: '0xbEf5f6d51CB62b58e6A8f77868681825C6fe21c1',
|
|
744
|
+
usdcAddress: '0x3600000000000000000000000000000000000000',
|
|
745
|
+
usdtAddress: null,
|
|
746
|
+
cctp: {
|
|
747
|
+
domain: 26,
|
|
748
|
+
contracts: {
|
|
749
|
+
v2: {
|
|
750
|
+
type: 'split',
|
|
751
|
+
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
752
|
+
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
753
|
+
confirmations: 1,
|
|
754
|
+
fastConfirmations: 1
|
|
755
|
+
}
|
|
756
|
+
},
|
|
757
|
+
forwarderSupported: {
|
|
758
|
+
source: false,
|
|
759
|
+
destination: true
|
|
760
|
+
}
|
|
761
|
+
},
|
|
762
|
+
cctpx: {
|
|
763
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_MAINNET
|
|
764
|
+
},
|
|
765
|
+
kitContracts: {
|
|
766
|
+
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
767
|
+
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
768
|
+
},
|
|
769
|
+
gateway: {
|
|
770
|
+
domain: 26,
|
|
771
|
+
contracts: {
|
|
772
|
+
v1: {
|
|
773
|
+
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
774
|
+
minter: GATEWAY_MINTER_EVM_MAINNET,
|
|
775
|
+
depositForHandler: DEPOSIT_FOR_HANDLER_EVM_MAINNET,
|
|
776
|
+
genericExecutor: GENERIC_EXECUTOR_EVM_MAINNET
|
|
777
|
+
}
|
|
778
|
+
},
|
|
779
|
+
forwarderSupported: {
|
|
780
|
+
source: true,
|
|
781
|
+
destination: true
|
|
782
|
+
}
|
|
783
|
+
}
|
|
784
|
+
});
|
|
650
785
|
|
|
651
786
|
/**
|
|
652
787
|
* Arc Testnet chain definition
|
|
@@ -695,6 +830,9 @@ var EarnChain;
|
|
|
695
830
|
destination: true
|
|
696
831
|
}
|
|
697
832
|
},
|
|
833
|
+
cctpx: {
|
|
834
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_TESTNET
|
|
835
|
+
},
|
|
698
836
|
kitContracts: {
|
|
699
837
|
bridge: BRIDGE_CONTRACT_EVM_TESTNET,
|
|
700
838
|
adapter: ADAPTER_CONTRACT_EVM_TESTNET
|
|
@@ -705,9 +843,8 @@ var EarnChain;
|
|
|
705
843
|
v1: {
|
|
706
844
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
707
845
|
minter: GATEWAY_MINTER_EVM_TESTNET,
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
depositForHandler: '0xD05E7D2E7d30b92c5F17d7d0fC575fce231F1A48'
|
|
846
|
+
depositForHandler: DEPOSIT_FOR_HANDLER_EVM_TESTNET,
|
|
847
|
+
genericExecutor: GENERIC_EXECUTOR_EVM_TESTNET
|
|
711
848
|
}
|
|
712
849
|
},
|
|
713
850
|
forwarderSupported: {
|
|
@@ -763,6 +900,9 @@ var EarnChain;
|
|
|
763
900
|
destination: true
|
|
764
901
|
}
|
|
765
902
|
},
|
|
903
|
+
cctpx: {
|
|
904
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_MAINNET
|
|
905
|
+
},
|
|
766
906
|
kitContracts: {
|
|
767
907
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
768
908
|
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
@@ -828,6 +968,9 @@ var EarnChain;
|
|
|
828
968
|
destination: true
|
|
829
969
|
}
|
|
830
970
|
},
|
|
971
|
+
cctpx: {
|
|
972
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_TESTNET
|
|
973
|
+
},
|
|
831
974
|
kitContracts: {
|
|
832
975
|
bridge: BRIDGE_CONTRACT_EVM_TESTNET,
|
|
833
976
|
adapter: ADAPTER_CONTRACT_EVM_TESTNET
|
|
@@ -893,6 +1036,9 @@ var EarnChain;
|
|
|
893
1036
|
destination: true
|
|
894
1037
|
}
|
|
895
1038
|
},
|
|
1039
|
+
cctpx: {
|
|
1040
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_MAINNET
|
|
1041
|
+
},
|
|
896
1042
|
kitContracts: {
|
|
897
1043
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
898
1044
|
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
@@ -902,7 +1048,9 @@ var EarnChain;
|
|
|
902
1048
|
contracts: {
|
|
903
1049
|
v1: {
|
|
904
1050
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
905
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
1051
|
+
minter: GATEWAY_MINTER_EVM_MAINNET,
|
|
1052
|
+
depositForHandler: DEPOSIT_FOR_HANDLER_EVM_MAINNET,
|
|
1053
|
+
genericExecutor: GENERIC_EXECUTOR_EVM_MAINNET
|
|
906
1054
|
}
|
|
907
1055
|
},
|
|
908
1056
|
forwarderSupported: {
|
|
@@ -958,6 +1106,9 @@ var EarnChain;
|
|
|
958
1106
|
rpcEndpoints: [
|
|
959
1107
|
'https://api.avax-test.network/ext/bc/C/rpc'
|
|
960
1108
|
],
|
|
1109
|
+
cctpx: {
|
|
1110
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_TESTNET
|
|
1111
|
+
},
|
|
961
1112
|
kitContracts: {
|
|
962
1113
|
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
963
1114
|
},
|
|
@@ -966,7 +1117,9 @@ var EarnChain;
|
|
|
966
1117
|
contracts: {
|
|
967
1118
|
v1: {
|
|
968
1119
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
969
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
1120
|
+
minter: GATEWAY_MINTER_EVM_TESTNET,
|
|
1121
|
+
depositForHandler: DEPOSIT_FOR_HANDLER_EVM_TESTNET,
|
|
1122
|
+
genericExecutor: GENERIC_EXECUTOR_EVM_TESTNET
|
|
970
1123
|
}
|
|
971
1124
|
},
|
|
972
1125
|
forwarderSupported: {
|
|
@@ -1023,6 +1176,9 @@ var EarnChain;
|
|
|
1023
1176
|
destination: true
|
|
1024
1177
|
}
|
|
1025
1178
|
},
|
|
1179
|
+
cctpx: {
|
|
1180
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_MAINNET
|
|
1181
|
+
},
|
|
1026
1182
|
kitContracts: {
|
|
1027
1183
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
1028
1184
|
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
@@ -1088,6 +1244,9 @@ var EarnChain;
|
|
|
1088
1244
|
destination: true
|
|
1089
1245
|
}
|
|
1090
1246
|
},
|
|
1247
|
+
cctpx: {
|
|
1248
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_TESTNET
|
|
1249
|
+
},
|
|
1091
1250
|
kitContracts: {
|
|
1092
1251
|
bridge: BRIDGE_CONTRACT_EVM_TESTNET,
|
|
1093
1252
|
adapter: ADAPTER_CONTRACT_EVM_TESTNET
|
|
@@ -1279,6 +1438,7 @@ var EarnChain;
|
|
|
1279
1438
|
v2: {
|
|
1280
1439
|
type: 'split',
|
|
1281
1440
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
1441
|
+
tokenMessengerWithFees: TOKEN_MESSENGER_WITH_FEES_EVM_MAINNET,
|
|
1282
1442
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
1283
1443
|
confirmations: 1,
|
|
1284
1444
|
fastConfirmations: 1
|
|
@@ -1324,6 +1484,7 @@ var EarnChain;
|
|
|
1324
1484
|
v2: {
|
|
1325
1485
|
type: 'split',
|
|
1326
1486
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
1487
|
+
tokenMessengerWithFees: TOKEN_MESSENGER_WITH_FEES_EVM_TESTNET,
|
|
1327
1488
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
1328
1489
|
confirmations: 1,
|
|
1329
1490
|
fastConfirmations: 1
|
|
@@ -1369,6 +1530,7 @@ var EarnChain;
|
|
|
1369
1530
|
v2: {
|
|
1370
1531
|
type: 'split',
|
|
1371
1532
|
tokenMessenger: '0x98706A006bc632Df31CAdFCBD43F38887ce2ca5c',
|
|
1533
|
+
tokenMessengerWithFees: '0x3Ac96675F9a3E6922713e041645D82f3561d3686',
|
|
1372
1534
|
messageTransmitter: '0x5b61381Fc9e58E70EfC13a4A97516997019198ee',
|
|
1373
1535
|
confirmations: 65,
|
|
1374
1536
|
fastConfirmations: 1
|
|
@@ -1414,6 +1576,7 @@ var EarnChain;
|
|
|
1414
1576
|
v2: {
|
|
1415
1577
|
type: 'split',
|
|
1416
1578
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
1579
|
+
tokenMessengerWithFees: TOKEN_MESSENGER_WITH_FEES_EVM_TESTNET,
|
|
1417
1580
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
1418
1581
|
confirmations: 65,
|
|
1419
1582
|
fastConfirmations: 1
|
|
@@ -1476,6 +1639,9 @@ var EarnChain;
|
|
|
1476
1639
|
destination: true
|
|
1477
1640
|
}
|
|
1478
1641
|
},
|
|
1642
|
+
cctpx: {
|
|
1643
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_MAINNET
|
|
1644
|
+
},
|
|
1479
1645
|
kitContracts: {
|
|
1480
1646
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
1481
1647
|
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
@@ -1541,6 +1707,9 @@ var EarnChain;
|
|
|
1541
1707
|
destination: true
|
|
1542
1708
|
}
|
|
1543
1709
|
},
|
|
1710
|
+
cctpx: {
|
|
1711
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_TESTNET
|
|
1712
|
+
},
|
|
1544
1713
|
kitContracts: {
|
|
1545
1714
|
bridge: BRIDGE_CONTRACT_EVM_TESTNET,
|
|
1546
1715
|
adapter: ADAPTER_CONTRACT_EVM_TESTNET
|
|
@@ -1762,6 +1931,7 @@ var EarnChain;
|
|
|
1762
1931
|
v2: {
|
|
1763
1932
|
type: 'split',
|
|
1764
1933
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
1934
|
+
tokenMessengerWithFees: TOKEN_MESSENGER_WITH_FEES_EVM_MAINNET,
|
|
1765
1935
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
1766
1936
|
confirmations: 1,
|
|
1767
1937
|
fastConfirmations: 1
|
|
@@ -1809,6 +1979,7 @@ var EarnChain;
|
|
|
1809
1979
|
v2: {
|
|
1810
1980
|
type: 'split',
|
|
1811
1981
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
1982
|
+
tokenMessengerWithFees: TOKEN_MESSENGER_WITH_FEES_EVM_TESTNET,
|
|
1812
1983
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
1813
1984
|
confirmations: 1,
|
|
1814
1985
|
fastConfirmations: 1
|
|
@@ -2090,6 +2261,7 @@ var EarnChain;
|
|
|
2090
2261
|
v2: {
|
|
2091
2262
|
type: 'split',
|
|
2092
2263
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
2264
|
+
tokenMessengerWithFees: TOKEN_MESSENGER_WITH_FEES_EVM_TESTNET,
|
|
2093
2265
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
2094
2266
|
confirmations: 1,
|
|
2095
2267
|
fastConfirmations: 1
|
|
@@ -2135,6 +2307,7 @@ var EarnChain;
|
|
|
2135
2307
|
v2: {
|
|
2136
2308
|
type: 'split',
|
|
2137
2309
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
2310
|
+
tokenMessengerWithFees: TOKEN_MESSENGER_WITH_FEES_EVM_MAINNET,
|
|
2138
2311
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
2139
2312
|
confirmations: 64,
|
|
2140
2313
|
fastConfirmations: 1
|
|
@@ -2180,6 +2353,7 @@ var EarnChain;
|
|
|
2180
2353
|
v2: {
|
|
2181
2354
|
type: 'split',
|
|
2182
2355
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
2356
|
+
tokenMessengerWithFees: TOKEN_MESSENGER_WITH_FEES_EVM_TESTNET,
|
|
2183
2357
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
2184
2358
|
confirmations: 64,
|
|
2185
2359
|
fastConfirmations: 1
|
|
@@ -2367,6 +2541,9 @@ var EarnChain;
|
|
|
2367
2541
|
destination: true
|
|
2368
2542
|
}
|
|
2369
2543
|
},
|
|
2544
|
+
cctpx: {
|
|
2545
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_MAINNET
|
|
2546
|
+
},
|
|
2370
2547
|
kitContracts: {
|
|
2371
2548
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
2372
2549
|
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
@@ -2432,6 +2609,9 @@ var EarnChain;
|
|
|
2432
2609
|
destination: true
|
|
2433
2610
|
}
|
|
2434
2611
|
},
|
|
2612
|
+
cctpx: {
|
|
2613
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_TESTNET
|
|
2614
|
+
},
|
|
2435
2615
|
kitContracts: {
|
|
2436
2616
|
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2437
2617
|
},
|
|
@@ -2481,6 +2661,7 @@ var EarnChain;
|
|
|
2481
2661
|
v2: {
|
|
2482
2662
|
type: 'split',
|
|
2483
2663
|
tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
|
|
2664
|
+
tokenMessengerWithFees: TOKEN_MESSENGER_WITH_FEES_EVM_MAINNET,
|
|
2484
2665
|
messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
|
|
2485
2666
|
confirmations: 1,
|
|
2486
2667
|
fastConfirmations: 1
|
|
@@ -2527,6 +2708,7 @@ var EarnChain;
|
|
|
2527
2708
|
v2: {
|
|
2528
2709
|
type: 'split',
|
|
2529
2710
|
tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
|
|
2711
|
+
tokenMessengerWithFees: TOKEN_MESSENGER_WITH_FEES_EVM_TESTNET,
|
|
2530
2712
|
messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
|
|
2531
2713
|
confirmations: 1,
|
|
2532
2714
|
fastConfirmations: 1
|
|
@@ -2825,6 +3007,9 @@ var EarnChain;
|
|
|
2825
3007
|
destination: true
|
|
2826
3008
|
}
|
|
2827
3009
|
},
|
|
3010
|
+
cctpx: {
|
|
3011
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_MAINNET
|
|
3012
|
+
},
|
|
2828
3013
|
kitContracts: {
|
|
2829
3014
|
bridge: BRIDGE_CONTRACT_EVM_MAINNET,
|
|
2830
3015
|
adapter: ADAPTER_CONTRACT_EVM_MAINNET
|
|
@@ -2834,7 +3019,9 @@ var EarnChain;
|
|
|
2834
3019
|
contracts: {
|
|
2835
3020
|
v1: {
|
|
2836
3021
|
wallet: GATEWAY_WALLET_EVM_MAINNET,
|
|
2837
|
-
minter: GATEWAY_MINTER_EVM_MAINNET
|
|
3022
|
+
minter: GATEWAY_MINTER_EVM_MAINNET,
|
|
3023
|
+
depositForHandler: DEPOSIT_FOR_HANDLER_EVM_MAINNET,
|
|
3024
|
+
genericExecutor: GENERIC_EXECUTOR_EVM_MAINNET
|
|
2838
3025
|
}
|
|
2839
3026
|
},
|
|
2840
3027
|
forwarderSupported: {
|
|
@@ -2891,6 +3078,9 @@ var EarnChain;
|
|
|
2891
3078
|
destination: true
|
|
2892
3079
|
}
|
|
2893
3080
|
},
|
|
3081
|
+
cctpx: {
|
|
3082
|
+
serviceAddress: CCTPX_SERVICE_ADDRESS_EVM_TESTNET
|
|
3083
|
+
},
|
|
2894
3084
|
kitContracts: {
|
|
2895
3085
|
bridge: BRIDGE_CONTRACT_EVM_TESTNET
|
|
2896
3086
|
},
|
|
@@ -2899,7 +3089,9 @@ var EarnChain;
|
|
|
2899
3089
|
contracts: {
|
|
2900
3090
|
v1: {
|
|
2901
3091
|
wallet: GATEWAY_WALLET_EVM_TESTNET,
|
|
2902
|
-
minter: GATEWAY_MINTER_EVM_TESTNET
|
|
3092
|
+
minter: GATEWAY_MINTER_EVM_TESTNET,
|
|
3093
|
+
depositForHandler: DEPOSIT_FOR_HANDLER_EVM_TESTNET,
|
|
3094
|
+
genericExecutor: GENERIC_EXECUTOR_EVM_TESTNET
|
|
2903
3095
|
}
|
|
2904
3096
|
},
|
|
2905
3097
|
forwarderSupported: {
|
|
@@ -3889,6 +4081,67 @@ var EarnChain;
|
|
|
3889
4081
|
cctp: null
|
|
3890
4082
|
});
|
|
3891
4083
|
|
|
4084
|
+
/**
|
|
4085
|
+
* Chains the Fee Service accepts as a SOURCE for source-paid ("receive-exact")
|
|
4086
|
+
* CCTP v2 fees. An explicit allowlist is required because the
|
|
4087
|
+
* `TokenMessengerWithFees` wrapper address is now shared with the fast-deposit
|
|
4088
|
+
* forwarder path, so wrapper presence no longer implies source-fee support.
|
|
4089
|
+
* Keep in sync with backend coverage.
|
|
4090
|
+
*/ new Set([
|
|
4091
|
+
// Mainnet
|
|
4092
|
+
Blockchain.Ethereum,
|
|
4093
|
+
Blockchain.Base,
|
|
4094
|
+
Blockchain.Arbitrum,
|
|
4095
|
+
Blockchain.Unichain,
|
|
4096
|
+
Blockchain.Optimism,
|
|
4097
|
+
Blockchain.Codex,
|
|
4098
|
+
Blockchain.Ink,
|
|
4099
|
+
Blockchain.Plume,
|
|
4100
|
+
Blockchain.Linea,
|
|
4101
|
+
Blockchain.World_Chain,
|
|
4102
|
+
// Testnet counterparts
|
|
4103
|
+
Blockchain.Ethereum_Sepolia,
|
|
4104
|
+
Blockchain.Base_Sepolia,
|
|
4105
|
+
Blockchain.Arbitrum_Sepolia,
|
|
4106
|
+
Blockchain.Unichain_Sepolia,
|
|
4107
|
+
Blockchain.Optimism_Sepolia,
|
|
4108
|
+
Blockchain.Codex_Testnet,
|
|
4109
|
+
Blockchain.Ink_Testnet,
|
|
4110
|
+
Blockchain.Plume_Testnet,
|
|
4111
|
+
Blockchain.Linea_Sepolia,
|
|
4112
|
+
Blockchain.World_Chain_Sepolia
|
|
4113
|
+
]);
|
|
4114
|
+
|
|
4115
|
+
/**
|
|
4116
|
+
* Temporary allowlist of chains permitted to initiate Gateway fast deposits.
|
|
4117
|
+
* Only chains keyed here are eligible; all others are rejected. Using the
|
|
4118
|
+
* {@link Blockchain} enum keeps entries type-safe and catches typos at compile
|
|
4119
|
+
* time. Remove this allowlist once roll-out is complete.
|
|
4120
|
+
*/ new Set([
|
|
4121
|
+
// Mainnet
|
|
4122
|
+
Blockchain.Ethereum,
|
|
4123
|
+
Blockchain.Base,
|
|
4124
|
+
Blockchain.Arbitrum,
|
|
4125
|
+
Blockchain.Unichain,
|
|
4126
|
+
Blockchain.Optimism,
|
|
4127
|
+
Blockchain.Codex,
|
|
4128
|
+
Blockchain.Ink,
|
|
4129
|
+
Blockchain.Plume,
|
|
4130
|
+
Blockchain.Linea,
|
|
4131
|
+
Blockchain.World_Chain,
|
|
4132
|
+
// Testnet counterparts
|
|
4133
|
+
Blockchain.Ethereum_Sepolia,
|
|
4134
|
+
Blockchain.Base_Sepolia,
|
|
4135
|
+
Blockchain.Arbitrum_Sepolia,
|
|
4136
|
+
Blockchain.Unichain_Sepolia,
|
|
4137
|
+
Blockchain.Optimism_Sepolia,
|
|
4138
|
+
Blockchain.Codex_Testnet,
|
|
4139
|
+
Blockchain.Ink_Testnet,
|
|
4140
|
+
Blockchain.Plume_Testnet,
|
|
4141
|
+
Blockchain.Linea_Sepolia,
|
|
4142
|
+
Blockchain.World_Chain_Sepolia
|
|
4143
|
+
]);
|
|
4144
|
+
|
|
3892
4145
|
/**
|
|
3893
4146
|
* Zod schema for validating Gateway v1 contract addresses.
|
|
3894
4147
|
*
|
|
@@ -3910,7 +4163,10 @@ var EarnChain;
|
|
|
3910
4163
|
}).min(1, 'Gateway minter address cannot be empty.'),
|
|
3911
4164
|
depositForHandler: z.string({
|
|
3912
4165
|
invalid_type_error: 'Gateway depositForHandler address must be a string.'
|
|
3913
|
-
}).min(1, 'Gateway depositForHandler address cannot be empty.').optional()
|
|
4166
|
+
}).min(1, 'Gateway depositForHandler address cannot be empty.').optional(),
|
|
4167
|
+
genericExecutor: z.string({
|
|
4168
|
+
invalid_type_error: 'Gateway genericExecutor address must be a string.'
|
|
4169
|
+
}).min(1, 'Gateway genericExecutor address cannot be empty.').optional()
|
|
3914
4170
|
}).strict() // Reject any additional properties not defined in the schema
|
|
3915
4171
|
;
|
|
3916
4172
|
/**
|
|
@@ -3994,6 +4250,7 @@ var EarnChain;
|
|
|
3994
4250
|
usdcAddress: z.string().nullable(),
|
|
3995
4251
|
usdtAddress: z.string().nullable(),
|
|
3996
4252
|
cctp: z.any().nullable(),
|
|
4253
|
+
cctpx: z.any().optional(),
|
|
3997
4254
|
kitContracts: z.object({
|
|
3998
4255
|
bridge: z.string().optional(),
|
|
3999
4256
|
adapter: z.string().optional()
|
|
@@ -4199,14 +4456,15 @@ const EARN_BRIDGE_DESTINATION_CHAIN_VALUES = EARN_BRIDGE_DESTINATION_BLOCKCHAINS
|
|
|
4199
4456
|
* Zod schema for validating the source chain of a cross-chain Earn deposit.
|
|
4200
4457
|
*
|
|
4201
4458
|
* Accept a supported source Blockchain value, a matching string literal, or a
|
|
4202
|
-
* ChainDefinition for a supported source chain. Source chains are Ethereum
|
|
4203
|
-
*
|
|
4459
|
+
* ChainDefinition for a supported source chain. Source chains are Ethereum,
|
|
4460
|
+
* Arbitrum, and Base (mainnet and testnet).
|
|
4204
4461
|
*
|
|
4205
4462
|
* @example
|
|
4206
4463
|
* ```typescript
|
|
4207
4464
|
* import { earnBridgeSourceChainIdentifierSchema } from '@core/chains'
|
|
4208
4465
|
*
|
|
4209
4466
|
* // Valid
|
|
4467
|
+
* earnBridgeSourceChainIdentifierSchema.parse('Ethereum')
|
|
4210
4468
|
* earnBridgeSourceChainIdentifierSchema.parse('Ethereum_Sepolia')
|
|
4211
4469
|
*
|
|
4212
4470
|
* // Invalid (throws ZodError)
|
|
@@ -4225,14 +4483,15 @@ const EARN_BRIDGE_DESTINATION_CHAIN_VALUES = EARN_BRIDGE_DESTINATION_BLOCKCHAINS
|
|
|
4225
4483
|
* deposit.
|
|
4226
4484
|
*
|
|
4227
4485
|
* Accept a supported destination Blockchain value, a matching string literal,
|
|
4228
|
-
* or a ChainDefinition for a supported destination chain.
|
|
4229
|
-
* Testnet
|
|
4486
|
+
* or a ChainDefinition for a supported destination chain. Arc (mainnet) and
|
|
4487
|
+
* Arc Testnet are supported.
|
|
4230
4488
|
*
|
|
4231
4489
|
* @example
|
|
4232
4490
|
* ```typescript
|
|
4233
4491
|
* import { earnBridgeDestinationChainIdentifierSchema } from '@core/chains'
|
|
4234
4492
|
*
|
|
4235
4493
|
* // Valid
|
|
4494
|
+
* earnBridgeDestinationChainIdentifierSchema.parse('Arc')
|
|
4236
4495
|
* earnBridgeDestinationChainIdentifierSchema.parse('Arc_Testnet')
|
|
4237
4496
|
*
|
|
4238
4497
|
* // Invalid (throws ZodError)
|
|
@@ -4304,5 +4563,5 @@ const swapTokenEnumSchema = z.enum([
|
|
|
4304
4563
|
* ```
|
|
4305
4564
|
*/ z.string().transform((value)=>value.toUpperCase()).pipe(swapTokenEnumSchema);
|
|
4306
4565
|
|
|
4307
|
-
export { Arbitrum, ArbitrumSepolia, ArcTestnet, Avalanche, AvalancheFuji, Base, BaseSepolia, Codex, CodexTestnet, Ethereum, EthereumSepolia, HyperEVM, HyperEVMTestnet, Ink, InkTestnet, Linea, LineaSepolia, Optimism, OptimismSepolia, Plasma, PlasmaTestnet, Plume, PlumeTestnet, Polygon, PolygonAmoy, Sei, SeiTestnet, Solana, SolanaDevnet, Sonic, SonicTestnet, Unichain, UnichainSepolia, WorldChain, WorldChainSepolia, XDC, XDCApothem, XLayer, XLayerTestnet };
|
|
4566
|
+
export { Arbitrum, ArbitrumSepolia, Arc, ArcTestnet, Avalanche, AvalancheFuji, Base, BaseSepolia, Codex, CodexTestnet, Ethereum, EthereumSepolia, HyperEVM, HyperEVMTestnet, Ink, InkTestnet, Linea, LineaSepolia, Optimism, OptimismSepolia, Plasma, PlasmaTestnet, Plume, PlumeTestnet, Polygon, PolygonAmoy, Sei, SeiTestnet, Solana, SolanaDevnet, Sonic, SonicTestnet, Unichain, UnichainSepolia, WorldChain, WorldChainSepolia, XDC, XDCApothem, XLayer, XLayerTestnet };
|
|
4308
4567
|
//# sourceMappingURL=chains.mjs.map
|