@circle-fin/adapter-ethers-v6 1.6.5 → 1.7.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 CHANGED
@@ -1,5 +1,17 @@
1
1
  # @circle-fin/adapter-ethers-v6
2
2
 
3
+ ## 1.7.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Add support for bridging USDC to and from Injective (mainnet and testnet) via CCTP v2. Both networks are now available as source and destination options in Bridge Kit.
8
+
9
+ ## 1.6.6
10
+
11
+ ### Patch Changes
12
+
13
+ - Updated chain registry to include Pharos (mainnet and testnet) — see `@circle-fin/bridge-kit` for bridging support.
14
+
3
15
  ## 1.6.5
4
16
 
5
17
  ### Patch Changes
package/index.cjs CHANGED
@@ -1733,6 +1733,8 @@ exports.Blockchain = void 0;
1733
1733
  Blockchain["Hedera_Testnet"] = "Hedera_Testnet";
1734
1734
  Blockchain["HyperEVM"] = "HyperEVM";
1735
1735
  Blockchain["HyperEVM_Testnet"] = "HyperEVM_Testnet";
1736
+ Blockchain["Injective"] = "Injective";
1737
+ Blockchain["Injective_Testnet"] = "Injective_Testnet";
1736
1738
  Blockchain["Ink"] = "Ink";
1737
1739
  Blockchain["Ink_Testnet"] = "Ink_Testnet";
1738
1740
  Blockchain["Linea"] = "Linea";
@@ -1747,6 +1749,8 @@ exports.Blockchain = void 0;
1747
1749
  Blockchain["Noble_Testnet"] = "Noble_Testnet";
1748
1750
  Blockchain["Optimism"] = "Optimism";
1749
1751
  Blockchain["Optimism_Sepolia"] = "Optimism_Sepolia";
1752
+ Blockchain["Pharos"] = "Pharos";
1753
+ Blockchain["Pharos_Testnet"] = "Pharos_Testnet";
1750
1754
  Blockchain["Polkadot_Asset_Hub"] = "Polkadot_Asset_Hub";
1751
1755
  Blockchain["Polkadot_Westmint"] = "Polkadot_Westmint";
1752
1756
  Blockchain["Plume"] = "Plume";
@@ -1950,11 +1954,13 @@ var BridgeChain;
1950
1954
  BridgeChain["Edge"] = "Edge";
1951
1955
  BridgeChain["Ethereum"] = "Ethereum";
1952
1956
  BridgeChain["HyperEVM"] = "HyperEVM";
1957
+ BridgeChain["Injective"] = "Injective";
1953
1958
  BridgeChain["Ink"] = "Ink";
1954
1959
  BridgeChain["Linea"] = "Linea";
1955
1960
  BridgeChain["Monad"] = "Monad";
1956
1961
  BridgeChain["Morph"] = "Morph";
1957
1962
  BridgeChain["Optimism"] = "Optimism";
1963
+ BridgeChain["Pharos"] = "Pharos";
1958
1964
  BridgeChain["Plume"] = "Plume";
1959
1965
  BridgeChain["Polygon"] = "Polygon";
1960
1966
  BridgeChain["Sei"] = "Sei";
@@ -1972,11 +1978,13 @@ var BridgeChain;
1972
1978
  BridgeChain["Edge_Testnet"] = "Edge_Testnet";
1973
1979
  BridgeChain["Ethereum_Sepolia"] = "Ethereum_Sepolia";
1974
1980
  BridgeChain["HyperEVM_Testnet"] = "HyperEVM_Testnet";
1981
+ BridgeChain["Injective_Testnet"] = "Injective_Testnet";
1975
1982
  BridgeChain["Ink_Testnet"] = "Ink_Testnet";
1976
1983
  BridgeChain["Linea_Sepolia"] = "Linea_Sepolia";
1977
1984
  BridgeChain["Monad_Testnet"] = "Monad_Testnet";
1978
1985
  BridgeChain["Morph_Testnet"] = "Morph_Testnet";
1979
1986
  BridgeChain["Optimism_Sepolia"] = "Optimism_Sepolia";
1987
+ BridgeChain["Pharos_Testnet"] = "Pharos_Testnet";
1980
1988
  BridgeChain["Plume_Testnet"] = "Plume_Testnet";
1981
1989
  BridgeChain["Polygon_Amoy_Testnet"] = "Polygon_Amoy_Testnet";
1982
1990
  BridgeChain["Sei_Testnet"] = "Sei_Testnet";
@@ -2322,6 +2330,12 @@ const SWAP_TOKEN_REGISTRY = {
2322
2330
  category: 'wrapped',
2323
2331
  description: 'Wrapped Polygon',
2324
2332
  },
2333
+ CIRBTC: {
2334
+ symbol: 'CIRBTC',
2335
+ decimals: 8,
2336
+ category: 'wrapped',
2337
+ description: 'Circle Bitcoin',
2338
+ },
2325
2339
  };
2326
2340
  /**
2327
2341
  * Special NATIVE token constant for swap operations.
@@ -3384,6 +3398,98 @@ const HyperEVMTestnet = defineChain({
3384
3398
  },
3385
3399
  });
3386
3400
 
3401
+ /**
3402
+ * Injective Mainnet chain definition
3403
+ * @remarks
3404
+ * This represents the official production network for the Injective blockchain.
3405
+ * Injective is a high-performance, interoperable Layer-1 blockchain built for
3406
+ * finance, with an EVM execution layer on top of a Cosmos SDK base and
3407
+ * sub-second block finality.
3408
+ */
3409
+ const Injective = defineChain({
3410
+ type: 'evm',
3411
+ chain: exports.Blockchain.Injective,
3412
+ name: 'Injective',
3413
+ title: 'Injective Mainnet',
3414
+ nativeCurrency: {
3415
+ name: 'Injective',
3416
+ symbol: 'INJ',
3417
+ decimals: 18,
3418
+ },
3419
+ chainId: 1776,
3420
+ isTestnet: false,
3421
+ explorerUrl: 'https://injscan.com/transaction/{hash}',
3422
+ rpcEndpoints: ['https://sentry.evm-rpc.injective.network'],
3423
+ eurcAddress: null,
3424
+ usdcAddress: '0xa00C59fF5a080D2b954d0c75e46E22a0c371235a',
3425
+ usdtAddress: null,
3426
+ cctp: {
3427
+ domain: 29,
3428
+ contracts: {
3429
+ v2: {
3430
+ type: 'split',
3431
+ tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
3432
+ messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
3433
+ confirmations: 1,
3434
+ fastConfirmations: 1,
3435
+ },
3436
+ },
3437
+ forwarderSupported: {
3438
+ source: false,
3439
+ destination: false,
3440
+ },
3441
+ },
3442
+ kitContracts: {
3443
+ bridge: BRIDGE_CONTRACT_EVM_MAINNET,
3444
+ },
3445
+ });
3446
+
3447
+ /**
3448
+ * Injective Testnet chain definition
3449
+ * @remarks
3450
+ * This represents the official test network for the Injective blockchain.
3451
+ * Injective is a high-performance, interoperable Layer-1 blockchain built for
3452
+ * finance, with an EVM execution layer on top of a Cosmos SDK base and
3453
+ * sub-second block finality.
3454
+ */
3455
+ const InjectiveTestnet = defineChain({
3456
+ type: 'evm',
3457
+ chain: exports.Blockchain.Injective_Testnet,
3458
+ name: 'Injective Testnet',
3459
+ title: 'Injective Testnet',
3460
+ nativeCurrency: {
3461
+ name: 'Injective',
3462
+ symbol: 'INJ',
3463
+ decimals: 18,
3464
+ },
3465
+ chainId: 1439,
3466
+ isTestnet: true,
3467
+ explorerUrl: 'https://testnet.explorer.injective.network/transaction/{hash}',
3468
+ rpcEndpoints: ['https://k8s.testnet.json-rpc.injective.network'],
3469
+ eurcAddress: null,
3470
+ usdcAddress: '0x0C382e685bbeeFE5d3d9C29e29E341fEE8E84C5d',
3471
+ usdtAddress: null,
3472
+ cctp: {
3473
+ domain: 29,
3474
+ contracts: {
3475
+ v2: {
3476
+ type: 'split',
3477
+ tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
3478
+ messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
3479
+ confirmations: 1,
3480
+ fastConfirmations: 1,
3481
+ },
3482
+ },
3483
+ forwarderSupported: {
3484
+ source: false,
3485
+ destination: false,
3486
+ },
3487
+ },
3488
+ kitContracts: {
3489
+ bridge: BRIDGE_CONTRACT_EVM_TESTNET,
3490
+ },
3491
+ });
3492
+
3387
3493
  /**
3388
3494
  * Ink Mainnet chain definition
3389
3495
  * @remarks
@@ -3993,6 +4099,96 @@ const OptimismSepolia = defineChain({
3993
4099
  },
3994
4100
  });
3995
4101
 
4102
+ /**
4103
+ * Pharos Mainnet chain definition
4104
+ * @remarks
4105
+ * This represents the official production network for the Pharos blockchain.
4106
+ * Pharos is a modular, full-stack parallel Layer 1 blockchain with
4107
+ * sub-second finality and EVM compatibility.
4108
+ */
4109
+ const Pharos = defineChain({
4110
+ type: 'evm',
4111
+ chain: exports.Blockchain.Pharos,
4112
+ name: 'Pharos',
4113
+ title: 'Pharos Mainnet',
4114
+ nativeCurrency: {
4115
+ name: 'Pharos',
4116
+ symbol: 'PHAROS',
4117
+ decimals: 18,
4118
+ },
4119
+ chainId: 1672,
4120
+ isTestnet: false,
4121
+ explorerUrl: 'https://pharos.socialscan.io/tx/{hash}',
4122
+ rpcEndpoints: ['https://rpc.pharos.xyz'],
4123
+ eurcAddress: null,
4124
+ usdcAddress: '0xC879C018dB60520F4355C26eD1a6D572cdAC1815',
4125
+ usdtAddress: null,
4126
+ cctp: {
4127
+ domain: 31,
4128
+ contracts: {
4129
+ v2: {
4130
+ type: 'split',
4131
+ tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
4132
+ messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
4133
+ confirmations: 1,
4134
+ fastConfirmations: 1,
4135
+ },
4136
+ },
4137
+ forwarderSupported: {
4138
+ source: false,
4139
+ destination: false,
4140
+ },
4141
+ },
4142
+ kitContracts: {
4143
+ bridge: BRIDGE_CONTRACT_EVM_MAINNET,
4144
+ },
4145
+ });
4146
+
4147
+ /**
4148
+ * Pharos Atlantic Testnet chain definition
4149
+ * @remarks
4150
+ * This represents the official test network for the Pharos blockchain.
4151
+ * Pharos is a modular, full-stack parallel Layer 1 blockchain with
4152
+ * sub-second finality and EVM compatibility.
4153
+ */
4154
+ const PharosTestnet = defineChain({
4155
+ type: 'evm',
4156
+ chain: exports.Blockchain.Pharos_Testnet,
4157
+ name: 'Pharos Atlantic',
4158
+ title: 'Pharos Atlantic Testnet',
4159
+ nativeCurrency: {
4160
+ name: 'Pharos',
4161
+ symbol: 'PHAROS',
4162
+ decimals: 18,
4163
+ },
4164
+ chainId: 688689,
4165
+ isTestnet: true,
4166
+ explorerUrl: 'https://atlantic.pharosscan.xyz/tx/{hash}',
4167
+ rpcEndpoints: ['https://atlantic.dplabs-internal.com'],
4168
+ eurcAddress: null,
4169
+ usdcAddress: '0xcfC8330f4BCAB529c625D12781b1C19466A9Fc8B',
4170
+ usdtAddress: null,
4171
+ cctp: {
4172
+ domain: 31,
4173
+ contracts: {
4174
+ v2: {
4175
+ type: 'split',
4176
+ tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
4177
+ messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
4178
+ confirmations: 1,
4179
+ fastConfirmations: 1,
4180
+ },
4181
+ },
4182
+ forwarderSupported: {
4183
+ source: false,
4184
+ destination: false,
4185
+ },
4186
+ },
4187
+ kitContracts: {
4188
+ bridge: BRIDGE_CONTRACT_EVM_TESTNET,
4189
+ },
4190
+ });
4191
+
3996
4192
  /**
3997
4193
  * Plume Mainnet chain definition
3998
4194
  * @remarks
@@ -4275,7 +4471,7 @@ const Sei = defineChain({
4275
4471
  },
4276
4472
  chainId: 1329,
4277
4473
  isTestnet: false,
4278
- explorerUrl: 'https://seitrace.com/tx/{hash}?chain=pacific-1',
4474
+ explorerUrl: 'https://seiscan.io/tx/{hash}',
4279
4475
  rpcEndpoints: ['https://evm-rpc.sei-apis.com'],
4280
4476
  eurcAddress: null,
4281
4477
  usdcAddress: '0xe15fC38F6D8c56aF07bbCBe3BAf5708A2Bf42392',
@@ -4333,7 +4529,7 @@ const SeiTestnet = defineChain({
4333
4529
  },
4334
4530
  chainId: 1328,
4335
4531
  isTestnet: true,
4336
- explorerUrl: 'https://seitrace.com/tx/{hash}?chain=atlantic-2',
4532
+ explorerUrl: 'https://testnet.seiscan.io/tx/{hash}',
4337
4533
  rpcEndpoints: ['https://evm-rpc-testnet.sei-apis.com'],
4338
4534
  eurcAddress: null,
4339
4535
  usdcAddress: '0x4fCF1784B31630811181f670Aea7A7bEF803eaED',
@@ -5136,6 +5332,8 @@ var Blockchains = {
5136
5332
  HederaTestnet: HederaTestnet,
5137
5333
  HyperEVM: HyperEVM,
5138
5334
  HyperEVMTestnet: HyperEVMTestnet,
5335
+ Injective: Injective,
5336
+ InjectiveTestnet: InjectiveTestnet,
5139
5337
  Ink: Ink,
5140
5338
  InkTestnet: InkTestnet,
5141
5339
  Linea: Linea,
@@ -5150,6 +5348,8 @@ var Blockchains = {
5150
5348
  NobleTestnet: NobleTestnet,
5151
5349
  Optimism: Optimism,
5152
5350
  OptimismSepolia: OptimismSepolia,
5351
+ Pharos: Pharos,
5352
+ PharosTestnet: PharosTestnet,
5153
5353
  Plume: Plume,
5154
5354
  PlumeTestnet: PlumeTestnet,
5155
5355
  PolkadotAssetHub: PolkadotAssetHub,
@@ -6704,6 +6904,7 @@ const USDC = {
6704
6904
  [exports.Blockchain.Ethereum]: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
6705
6905
  [exports.Blockchain.Hedera]: '0.0.456858',
6706
6906
  [exports.Blockchain.HyperEVM]: '0xb88339CB7199b77E23DB6E890353E22632Ba630f',
6907
+ [exports.Blockchain.Injective]: '0xa00C59fF5a080D2b954d0c75e46E22a0c371235a',
6707
6908
  [exports.Blockchain.Ink]: '0x2D270e6886d130D724215A266106e6832161EAEd',
6708
6909
  [exports.Blockchain.Linea]: '0x176211869ca2b568f2a7d4ee941e073a821ee1ff',
6709
6910
  [exports.Blockchain.Monad]: '0x754704Bc059F8C67012fEd69BC8A327a5aafb603',
@@ -6711,6 +6912,7 @@ const USDC = {
6711
6912
  [exports.Blockchain.NEAR]: '17208628f84f5d6ad33f0da3bbbeb27ffcb398eac501a31bd6ad2011e36133a1',
6712
6913
  [exports.Blockchain.Noble]: 'uusdc',
6713
6914
  [exports.Blockchain.Optimism]: '0x0b2c639c533813f4aa9d7837caf62653d097ff85',
6915
+ [exports.Blockchain.Pharos]: '0xC879C018dB60520F4355C26eD1a6D572cdAC1815',
6714
6916
  [exports.Blockchain.Plume]: '0x222365EF19F7947e5484218551B56bb3965Aa7aF',
6715
6917
  [exports.Blockchain.Polkadot_Asset_Hub]: '1337',
6716
6918
  [exports.Blockchain.Polygon]: '0x3c499c542cef5e3811e1192ce70d8cc03d5c3359',
@@ -6735,6 +6937,7 @@ const USDC = {
6735
6937
  [exports.Blockchain.Ethereum_Sepolia]: '0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238',
6736
6938
  [exports.Blockchain.Hedera_Testnet]: '0.0.429274',
6737
6939
  [exports.Blockchain.HyperEVM_Testnet]: '0x2B3370eE501B4a559b57D449569354196457D8Ab',
6940
+ [exports.Blockchain.Injective_Testnet]: '0x0C382e685bbeeFE5d3d9C29e29E341fEE8E84C5d',
6738
6941
  [exports.Blockchain.Ink_Testnet]: '0xFabab97dCE620294D2B0b0e46C68964e326300Ac',
6739
6942
  [exports.Blockchain.Linea_Sepolia]: '0xfece4462d57bd51a6a552365a011b95f0e16d9b7',
6740
6943
  [exports.Blockchain.Monad_Testnet]: '0x534b2f3A21130d7a60830c2Df862319e593943A3',
@@ -6742,6 +6945,7 @@ const USDC = {
6742
6945
  [exports.Blockchain.NEAR_Testnet]: '3e2210e1184b45b64c8a434c0a7e7b23cc04ea7eb7a6c3c32520d03d4afcb8af',
6743
6946
  [exports.Blockchain.Noble_Testnet]: 'uusdc',
6744
6947
  [exports.Blockchain.Optimism_Sepolia]: '0x5fd84259d66Cd46123540766Be93DFE6D43130D7',
6948
+ [exports.Blockchain.Pharos_Testnet]: '0xcfC8330f4BCAB529c625D12781b1C19466A9Fc8B',
6745
6949
  [exports.Blockchain.Plume_Testnet]: '0xcB5f30e335672893c7eb944B374c196392C19D18',
6746
6950
  [exports.Blockchain.Polkadot_Westmint]: '31337',
6747
6951
  [exports.Blockchain.Polygon_Amoy_Testnet]: '0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582',
@@ -7022,6 +7226,32 @@ const MON = {
7022
7226
  },
7023
7227
  };
7024
7228
 
7229
+ /**
7230
+ * cirBTC (Circle Bitcoin) token definition with addresses and metadata.
7231
+ *
7232
+ * @remarks
7233
+ * Built-in cirBTC definition for the TokenRegistry. Currently deployed
7234
+ * on Arc Testnet.
7235
+ *
7236
+ * @example
7237
+ * ```typescript
7238
+ * import { CIRBTC } from '@core/tokens'
7239
+ * import { Blockchain } from '@core/chains'
7240
+ *
7241
+ * console.log(CIRBTC.symbol) // 'cirBTC'
7242
+ * console.log(CIRBTC.decimals) // 8
7243
+ * console.log(CIRBTC.locators[Blockchain.Arc_Testnet])
7244
+ * // '0xf0C4a4CE82A5746AbAAd9425360Ab04fbBA432BF'
7245
+ * ```
7246
+ */
7247
+ const CIRBTC = {
7248
+ symbol: 'cirBTC',
7249
+ decimals: 8,
7250
+ locators: {
7251
+ [exports.Blockchain.Arc_Testnet]: '0xf0C4a4CE82A5746AbAAd9425360Ab04fbBA432BF',
7252
+ },
7253
+ };
7254
+
7025
7255
  // Re-export for consumers
7026
7256
  /**
7027
7257
  * All default token definitions.
@@ -7030,7 +7260,7 @@ const MON = {
7030
7260
  * These tokens are automatically included in the TokenRegistry when created
7031
7261
  * without explicit defaults. Extensions can override these definitions.
7032
7262
  * Includes USDC, USDT, EURC, DAI, USDE, PYUSD, WETH, WBTC, WSOL, WAVAX,
7033
- * WPOL, ETH, POL, PLUME, and MON.
7263
+ * WPOL, ETH, POL, PLUME, MON, and cirBTC.
7034
7264
  *
7035
7265
  * @example
7036
7266
  * ```typescript
@@ -7061,6 +7291,7 @@ const DEFAULT_TOKENS = [
7061
7291
  POL,
7062
7292
  PLUME,
7063
7293
  MON,
7294
+ CIRBTC,
7064
7295
  ];
7065
7296
  /**
7066
7297
  * Uppercased token symbols approved for swap fee collection.
package/index.d.ts CHANGED
@@ -668,6 +668,8 @@ declare enum Blockchain {
668
668
  Hedera_Testnet = "Hedera_Testnet",
669
669
  HyperEVM = "HyperEVM",
670
670
  HyperEVM_Testnet = "HyperEVM_Testnet",
671
+ Injective = "Injective",
672
+ Injective_Testnet = "Injective_Testnet",
671
673
  Ink = "Ink",
672
674
  Ink_Testnet = "Ink_Testnet",
673
675
  Linea = "Linea",
@@ -682,6 +684,8 @@ declare enum Blockchain {
682
684
  Noble_Testnet = "Noble_Testnet",
683
685
  Optimism = "Optimism",
684
686
  Optimism_Sepolia = "Optimism_Sepolia",
687
+ Pharos = "Pharos",
688
+ Pharos_Testnet = "Pharos_Testnet",
685
689
  Polkadot_Asset_Hub = "Polkadot_Asset_Hub",
686
690
  Polkadot_Westmint = "Polkadot_Westmint",
687
691
  Plume = "Plume",
@@ -3541,6 +3545,7 @@ declare module './types' {
3541
3545
  POL: true;
3542
3546
  PLUME: true;
3543
3547
  MON: true;
3548
+ cirBTC: true;
3544
3549
  }
3545
3550
  }
3546
3551
 
package/index.mjs CHANGED
@@ -1728,6 +1728,8 @@ var Blockchain;
1728
1728
  Blockchain["Hedera_Testnet"] = "Hedera_Testnet";
1729
1729
  Blockchain["HyperEVM"] = "HyperEVM";
1730
1730
  Blockchain["HyperEVM_Testnet"] = "HyperEVM_Testnet";
1731
+ Blockchain["Injective"] = "Injective";
1732
+ Blockchain["Injective_Testnet"] = "Injective_Testnet";
1731
1733
  Blockchain["Ink"] = "Ink";
1732
1734
  Blockchain["Ink_Testnet"] = "Ink_Testnet";
1733
1735
  Blockchain["Linea"] = "Linea";
@@ -1742,6 +1744,8 @@ var Blockchain;
1742
1744
  Blockchain["Noble_Testnet"] = "Noble_Testnet";
1743
1745
  Blockchain["Optimism"] = "Optimism";
1744
1746
  Blockchain["Optimism_Sepolia"] = "Optimism_Sepolia";
1747
+ Blockchain["Pharos"] = "Pharos";
1748
+ Blockchain["Pharos_Testnet"] = "Pharos_Testnet";
1745
1749
  Blockchain["Polkadot_Asset_Hub"] = "Polkadot_Asset_Hub";
1746
1750
  Blockchain["Polkadot_Westmint"] = "Polkadot_Westmint";
1747
1751
  Blockchain["Plume"] = "Plume";
@@ -1945,11 +1949,13 @@ var BridgeChain;
1945
1949
  BridgeChain["Edge"] = "Edge";
1946
1950
  BridgeChain["Ethereum"] = "Ethereum";
1947
1951
  BridgeChain["HyperEVM"] = "HyperEVM";
1952
+ BridgeChain["Injective"] = "Injective";
1948
1953
  BridgeChain["Ink"] = "Ink";
1949
1954
  BridgeChain["Linea"] = "Linea";
1950
1955
  BridgeChain["Monad"] = "Monad";
1951
1956
  BridgeChain["Morph"] = "Morph";
1952
1957
  BridgeChain["Optimism"] = "Optimism";
1958
+ BridgeChain["Pharos"] = "Pharos";
1953
1959
  BridgeChain["Plume"] = "Plume";
1954
1960
  BridgeChain["Polygon"] = "Polygon";
1955
1961
  BridgeChain["Sei"] = "Sei";
@@ -1967,11 +1973,13 @@ var BridgeChain;
1967
1973
  BridgeChain["Edge_Testnet"] = "Edge_Testnet";
1968
1974
  BridgeChain["Ethereum_Sepolia"] = "Ethereum_Sepolia";
1969
1975
  BridgeChain["HyperEVM_Testnet"] = "HyperEVM_Testnet";
1976
+ BridgeChain["Injective_Testnet"] = "Injective_Testnet";
1970
1977
  BridgeChain["Ink_Testnet"] = "Ink_Testnet";
1971
1978
  BridgeChain["Linea_Sepolia"] = "Linea_Sepolia";
1972
1979
  BridgeChain["Monad_Testnet"] = "Monad_Testnet";
1973
1980
  BridgeChain["Morph_Testnet"] = "Morph_Testnet";
1974
1981
  BridgeChain["Optimism_Sepolia"] = "Optimism_Sepolia";
1982
+ BridgeChain["Pharos_Testnet"] = "Pharos_Testnet";
1975
1983
  BridgeChain["Plume_Testnet"] = "Plume_Testnet";
1976
1984
  BridgeChain["Polygon_Amoy_Testnet"] = "Polygon_Amoy_Testnet";
1977
1985
  BridgeChain["Sei_Testnet"] = "Sei_Testnet";
@@ -2317,6 +2325,12 @@ const SWAP_TOKEN_REGISTRY = {
2317
2325
  category: 'wrapped',
2318
2326
  description: 'Wrapped Polygon',
2319
2327
  },
2328
+ CIRBTC: {
2329
+ symbol: 'CIRBTC',
2330
+ decimals: 8,
2331
+ category: 'wrapped',
2332
+ description: 'Circle Bitcoin',
2333
+ },
2320
2334
  };
2321
2335
  /**
2322
2336
  * Special NATIVE token constant for swap operations.
@@ -3379,6 +3393,98 @@ const HyperEVMTestnet = defineChain({
3379
3393
  },
3380
3394
  });
3381
3395
 
3396
+ /**
3397
+ * Injective Mainnet chain definition
3398
+ * @remarks
3399
+ * This represents the official production network for the Injective blockchain.
3400
+ * Injective is a high-performance, interoperable Layer-1 blockchain built for
3401
+ * finance, with an EVM execution layer on top of a Cosmos SDK base and
3402
+ * sub-second block finality.
3403
+ */
3404
+ const Injective = defineChain({
3405
+ type: 'evm',
3406
+ chain: Blockchain.Injective,
3407
+ name: 'Injective',
3408
+ title: 'Injective Mainnet',
3409
+ nativeCurrency: {
3410
+ name: 'Injective',
3411
+ symbol: 'INJ',
3412
+ decimals: 18,
3413
+ },
3414
+ chainId: 1776,
3415
+ isTestnet: false,
3416
+ explorerUrl: 'https://injscan.com/transaction/{hash}',
3417
+ rpcEndpoints: ['https://sentry.evm-rpc.injective.network'],
3418
+ eurcAddress: null,
3419
+ usdcAddress: '0xa00C59fF5a080D2b954d0c75e46E22a0c371235a',
3420
+ usdtAddress: null,
3421
+ cctp: {
3422
+ domain: 29,
3423
+ contracts: {
3424
+ v2: {
3425
+ type: 'split',
3426
+ tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
3427
+ messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
3428
+ confirmations: 1,
3429
+ fastConfirmations: 1,
3430
+ },
3431
+ },
3432
+ forwarderSupported: {
3433
+ source: false,
3434
+ destination: false,
3435
+ },
3436
+ },
3437
+ kitContracts: {
3438
+ bridge: BRIDGE_CONTRACT_EVM_MAINNET,
3439
+ },
3440
+ });
3441
+
3442
+ /**
3443
+ * Injective Testnet chain definition
3444
+ * @remarks
3445
+ * This represents the official test network for the Injective blockchain.
3446
+ * Injective is a high-performance, interoperable Layer-1 blockchain built for
3447
+ * finance, with an EVM execution layer on top of a Cosmos SDK base and
3448
+ * sub-second block finality.
3449
+ */
3450
+ const InjectiveTestnet = defineChain({
3451
+ type: 'evm',
3452
+ chain: Blockchain.Injective_Testnet,
3453
+ name: 'Injective Testnet',
3454
+ title: 'Injective Testnet',
3455
+ nativeCurrency: {
3456
+ name: 'Injective',
3457
+ symbol: 'INJ',
3458
+ decimals: 18,
3459
+ },
3460
+ chainId: 1439,
3461
+ isTestnet: true,
3462
+ explorerUrl: 'https://testnet.explorer.injective.network/transaction/{hash}',
3463
+ rpcEndpoints: ['https://k8s.testnet.json-rpc.injective.network'],
3464
+ eurcAddress: null,
3465
+ usdcAddress: '0x0C382e685bbeeFE5d3d9C29e29E341fEE8E84C5d',
3466
+ usdtAddress: null,
3467
+ cctp: {
3468
+ domain: 29,
3469
+ contracts: {
3470
+ v2: {
3471
+ type: 'split',
3472
+ tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
3473
+ messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
3474
+ confirmations: 1,
3475
+ fastConfirmations: 1,
3476
+ },
3477
+ },
3478
+ forwarderSupported: {
3479
+ source: false,
3480
+ destination: false,
3481
+ },
3482
+ },
3483
+ kitContracts: {
3484
+ bridge: BRIDGE_CONTRACT_EVM_TESTNET,
3485
+ },
3486
+ });
3487
+
3382
3488
  /**
3383
3489
  * Ink Mainnet chain definition
3384
3490
  * @remarks
@@ -3988,6 +4094,96 @@ const OptimismSepolia = defineChain({
3988
4094
  },
3989
4095
  });
3990
4096
 
4097
+ /**
4098
+ * Pharos Mainnet chain definition
4099
+ * @remarks
4100
+ * This represents the official production network for the Pharos blockchain.
4101
+ * Pharos is a modular, full-stack parallel Layer 1 blockchain with
4102
+ * sub-second finality and EVM compatibility.
4103
+ */
4104
+ const Pharos = defineChain({
4105
+ type: 'evm',
4106
+ chain: Blockchain.Pharos,
4107
+ name: 'Pharos',
4108
+ title: 'Pharos Mainnet',
4109
+ nativeCurrency: {
4110
+ name: 'Pharos',
4111
+ symbol: 'PHAROS',
4112
+ decimals: 18,
4113
+ },
4114
+ chainId: 1672,
4115
+ isTestnet: false,
4116
+ explorerUrl: 'https://pharos.socialscan.io/tx/{hash}',
4117
+ rpcEndpoints: ['https://rpc.pharos.xyz'],
4118
+ eurcAddress: null,
4119
+ usdcAddress: '0xC879C018dB60520F4355C26eD1a6D572cdAC1815',
4120
+ usdtAddress: null,
4121
+ cctp: {
4122
+ domain: 31,
4123
+ contracts: {
4124
+ v2: {
4125
+ type: 'split',
4126
+ tokenMessenger: '0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d',
4127
+ messageTransmitter: '0x81D40F21F12A8F0E3252Bccb954D722d4c464B64',
4128
+ confirmations: 1,
4129
+ fastConfirmations: 1,
4130
+ },
4131
+ },
4132
+ forwarderSupported: {
4133
+ source: false,
4134
+ destination: false,
4135
+ },
4136
+ },
4137
+ kitContracts: {
4138
+ bridge: BRIDGE_CONTRACT_EVM_MAINNET,
4139
+ },
4140
+ });
4141
+
4142
+ /**
4143
+ * Pharos Atlantic Testnet chain definition
4144
+ * @remarks
4145
+ * This represents the official test network for the Pharos blockchain.
4146
+ * Pharos is a modular, full-stack parallel Layer 1 blockchain with
4147
+ * sub-second finality and EVM compatibility.
4148
+ */
4149
+ const PharosTestnet = defineChain({
4150
+ type: 'evm',
4151
+ chain: Blockchain.Pharos_Testnet,
4152
+ name: 'Pharos Atlantic',
4153
+ title: 'Pharos Atlantic Testnet',
4154
+ nativeCurrency: {
4155
+ name: 'Pharos',
4156
+ symbol: 'PHAROS',
4157
+ decimals: 18,
4158
+ },
4159
+ chainId: 688689,
4160
+ isTestnet: true,
4161
+ explorerUrl: 'https://atlantic.pharosscan.xyz/tx/{hash}',
4162
+ rpcEndpoints: ['https://atlantic.dplabs-internal.com'],
4163
+ eurcAddress: null,
4164
+ usdcAddress: '0xcfC8330f4BCAB529c625D12781b1C19466A9Fc8B',
4165
+ usdtAddress: null,
4166
+ cctp: {
4167
+ domain: 31,
4168
+ contracts: {
4169
+ v2: {
4170
+ type: 'split',
4171
+ tokenMessenger: '0x8FE6B999Dc680CcFDD5Bf7EB0974218be2542DAA',
4172
+ messageTransmitter: '0xE737e5cEBEEBa77EFE34D4aa090756590b1CE275',
4173
+ confirmations: 1,
4174
+ fastConfirmations: 1,
4175
+ },
4176
+ },
4177
+ forwarderSupported: {
4178
+ source: false,
4179
+ destination: false,
4180
+ },
4181
+ },
4182
+ kitContracts: {
4183
+ bridge: BRIDGE_CONTRACT_EVM_TESTNET,
4184
+ },
4185
+ });
4186
+
3991
4187
  /**
3992
4188
  * Plume Mainnet chain definition
3993
4189
  * @remarks
@@ -4270,7 +4466,7 @@ const Sei = defineChain({
4270
4466
  },
4271
4467
  chainId: 1329,
4272
4468
  isTestnet: false,
4273
- explorerUrl: 'https://seitrace.com/tx/{hash}?chain=pacific-1',
4469
+ explorerUrl: 'https://seiscan.io/tx/{hash}',
4274
4470
  rpcEndpoints: ['https://evm-rpc.sei-apis.com'],
4275
4471
  eurcAddress: null,
4276
4472
  usdcAddress: '0xe15fC38F6D8c56aF07bbCBe3BAf5708A2Bf42392',
@@ -4328,7 +4524,7 @@ const SeiTestnet = defineChain({
4328
4524
  },
4329
4525
  chainId: 1328,
4330
4526
  isTestnet: true,
4331
- explorerUrl: 'https://seitrace.com/tx/{hash}?chain=atlantic-2',
4527
+ explorerUrl: 'https://testnet.seiscan.io/tx/{hash}',
4332
4528
  rpcEndpoints: ['https://evm-rpc-testnet.sei-apis.com'],
4333
4529
  eurcAddress: null,
4334
4530
  usdcAddress: '0x4fCF1784B31630811181f670Aea7A7bEF803eaED',
@@ -5131,6 +5327,8 @@ var Blockchains = /*#__PURE__*/Object.freeze({
5131
5327
  HederaTestnet: HederaTestnet,
5132
5328
  HyperEVM: HyperEVM,
5133
5329
  HyperEVMTestnet: HyperEVMTestnet,
5330
+ Injective: Injective,
5331
+ InjectiveTestnet: InjectiveTestnet,
5134
5332
  Ink: Ink,
5135
5333
  InkTestnet: InkTestnet,
5136
5334
  Linea: Linea,
@@ -5145,6 +5343,8 @@ var Blockchains = /*#__PURE__*/Object.freeze({
5145
5343
  NobleTestnet: NobleTestnet,
5146
5344
  Optimism: Optimism,
5147
5345
  OptimismSepolia: OptimismSepolia,
5346
+ Pharos: Pharos,
5347
+ PharosTestnet: PharosTestnet,
5148
5348
  Plume: Plume,
5149
5349
  PlumeTestnet: PlumeTestnet,
5150
5350
  PolkadotAssetHub: PolkadotAssetHub,
@@ -6699,6 +6899,7 @@ const USDC = {
6699
6899
  [Blockchain.Ethereum]: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
6700
6900
  [Blockchain.Hedera]: '0.0.456858',
6701
6901
  [Blockchain.HyperEVM]: '0xb88339CB7199b77E23DB6E890353E22632Ba630f',
6902
+ [Blockchain.Injective]: '0xa00C59fF5a080D2b954d0c75e46E22a0c371235a',
6702
6903
  [Blockchain.Ink]: '0x2D270e6886d130D724215A266106e6832161EAEd',
6703
6904
  [Blockchain.Linea]: '0x176211869ca2b568f2a7d4ee941e073a821ee1ff',
6704
6905
  [Blockchain.Monad]: '0x754704Bc059F8C67012fEd69BC8A327a5aafb603',
@@ -6706,6 +6907,7 @@ const USDC = {
6706
6907
  [Blockchain.NEAR]: '17208628f84f5d6ad33f0da3bbbeb27ffcb398eac501a31bd6ad2011e36133a1',
6707
6908
  [Blockchain.Noble]: 'uusdc',
6708
6909
  [Blockchain.Optimism]: '0x0b2c639c533813f4aa9d7837caf62653d097ff85',
6910
+ [Blockchain.Pharos]: '0xC879C018dB60520F4355C26eD1a6D572cdAC1815',
6709
6911
  [Blockchain.Plume]: '0x222365EF19F7947e5484218551B56bb3965Aa7aF',
6710
6912
  [Blockchain.Polkadot_Asset_Hub]: '1337',
6711
6913
  [Blockchain.Polygon]: '0x3c499c542cef5e3811e1192ce70d8cc03d5c3359',
@@ -6730,6 +6932,7 @@ const USDC = {
6730
6932
  [Blockchain.Ethereum_Sepolia]: '0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238',
6731
6933
  [Blockchain.Hedera_Testnet]: '0.0.429274',
6732
6934
  [Blockchain.HyperEVM_Testnet]: '0x2B3370eE501B4a559b57D449569354196457D8Ab',
6935
+ [Blockchain.Injective_Testnet]: '0x0C382e685bbeeFE5d3d9C29e29E341fEE8E84C5d',
6733
6936
  [Blockchain.Ink_Testnet]: '0xFabab97dCE620294D2B0b0e46C68964e326300Ac',
6734
6937
  [Blockchain.Linea_Sepolia]: '0xfece4462d57bd51a6a552365a011b95f0e16d9b7',
6735
6938
  [Blockchain.Monad_Testnet]: '0x534b2f3A21130d7a60830c2Df862319e593943A3',
@@ -6737,6 +6940,7 @@ const USDC = {
6737
6940
  [Blockchain.NEAR_Testnet]: '3e2210e1184b45b64c8a434c0a7e7b23cc04ea7eb7a6c3c32520d03d4afcb8af',
6738
6941
  [Blockchain.Noble_Testnet]: 'uusdc',
6739
6942
  [Blockchain.Optimism_Sepolia]: '0x5fd84259d66Cd46123540766Be93DFE6D43130D7',
6943
+ [Blockchain.Pharos_Testnet]: '0xcfC8330f4BCAB529c625D12781b1C19466A9Fc8B',
6740
6944
  [Blockchain.Plume_Testnet]: '0xcB5f30e335672893c7eb944B374c196392C19D18',
6741
6945
  [Blockchain.Polkadot_Westmint]: '31337',
6742
6946
  [Blockchain.Polygon_Amoy_Testnet]: '0x41e94eb019c0762f9bfcf9fb1e58725bfb0e7582',
@@ -7017,6 +7221,32 @@ const MON = {
7017
7221
  },
7018
7222
  };
7019
7223
 
7224
+ /**
7225
+ * cirBTC (Circle Bitcoin) token definition with addresses and metadata.
7226
+ *
7227
+ * @remarks
7228
+ * Built-in cirBTC definition for the TokenRegistry. Currently deployed
7229
+ * on Arc Testnet.
7230
+ *
7231
+ * @example
7232
+ * ```typescript
7233
+ * import { CIRBTC } from '@core/tokens'
7234
+ * import { Blockchain } from '@core/chains'
7235
+ *
7236
+ * console.log(CIRBTC.symbol) // 'cirBTC'
7237
+ * console.log(CIRBTC.decimals) // 8
7238
+ * console.log(CIRBTC.locators[Blockchain.Arc_Testnet])
7239
+ * // '0xf0C4a4CE82A5746AbAAd9425360Ab04fbBA432BF'
7240
+ * ```
7241
+ */
7242
+ const CIRBTC = {
7243
+ symbol: 'cirBTC',
7244
+ decimals: 8,
7245
+ locators: {
7246
+ [Blockchain.Arc_Testnet]: '0xf0C4a4CE82A5746AbAAd9425360Ab04fbBA432BF',
7247
+ },
7248
+ };
7249
+
7020
7250
  // Re-export for consumers
7021
7251
  /**
7022
7252
  * All default token definitions.
@@ -7025,7 +7255,7 @@ const MON = {
7025
7255
  * These tokens are automatically included in the TokenRegistry when created
7026
7256
  * without explicit defaults. Extensions can override these definitions.
7027
7257
  * Includes USDC, USDT, EURC, DAI, USDE, PYUSD, WETH, WBTC, WSOL, WAVAX,
7028
- * WPOL, ETH, POL, PLUME, and MON.
7258
+ * WPOL, ETH, POL, PLUME, MON, and cirBTC.
7029
7259
  *
7030
7260
  * @example
7031
7261
  * ```typescript
@@ -7056,6 +7286,7 @@ const DEFAULT_TOKENS = [
7056
7286
  POL,
7057
7287
  PLUME,
7058
7288
  MON,
7289
+ CIRBTC,
7059
7290
  ];
7060
7291
  /**
7061
7292
  * Uppercased token symbols approved for swap fee collection.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@circle-fin/adapter-ethers-v6",
3
- "version": "1.6.5",
3
+ "version": "1.7.0",
4
4
  "description": "EVM blockchain adapter powered by Ethers v6",
5
5
  "keywords": [
6
6
  "circle",