diff --git a/CHANGELOG.md b/CHANGELOG.md index fd11312a0..5e238649f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## Unreleased - added: (Solana) Add new tokens: BSOL, DRIFT, HAWK, JITOSOL, JSOL, JTO, JUP, MIMO, MNGO, MSOL, SOL, USDC.e, WBTC, and WETH +- added: (EVM) Add dRPC nodes ## 4.19.0 (2024-08-12) diff --git a/src/ethereum/ethereumTypes.ts b/src/ethereum/ethereumTypes.ts index b5e006230..e91eccf81 100644 --- a/src/ethereum/ethereumTypes.ts +++ b/src/ethereum/ethereumTypes.ts @@ -27,6 +27,7 @@ export interface EthereumInitOptions { amberdataApiKey?: string blockchairApiKey?: string blockcypherApiKey?: string + drpcApiKey?: string evmScanApiKey?: string | string[] gasStationApiKey?: string infuraProjectId?: string @@ -40,6 +41,7 @@ export const asEthereumInitOptions = asObject({ amberdataApiKey: asOptional(asString), blockchairApiKey: asOptional(asString), blockcypherApiKey: asOptional(asString), + drpcApiKey: asOptional(asString), evmScanApiKey: asOptional(asEither(asString, asArray(asString))), gasStationApiKey: asOptional(asString), infuraProjectId: asOptional(asString), diff --git a/src/ethereum/info/amoyInfo.ts b/src/ethereum/info/amoyInfo.ts index 70d0f3836..4863e88fb 100644 --- a/src/ethereum/info/amoyInfo.ts +++ b/src/ethereum/info/amoyInfo.ts @@ -50,7 +50,8 @@ const networkInfo: EthereumNetworkInfo = { 'https://polygon-amoy-bor-rpc.publicnode.com', 'https://rpc-amoy.polygon.technology', 'https://polygon-amoy.drpc.org', - 'https://api.tatum.io/v3/blockchain/node/polygon-amoy' + 'https://api.tatum.io/v3/blockchain/node/polygon-amoy', + 'https://lb.drpc.org/ogrpc?network=polygon-amoy&dkey={{drpcApiKey}}' ] }, { diff --git a/src/ethereum/info/arbitrumInfo.ts b/src/ethereum/info/arbitrumInfo.ts index 9fac94b4a..9f7ed4499 100644 --- a/src/ethereum/info/arbitrumInfo.ts +++ b/src/ethereum/info/arbitrumInfo.ts @@ -143,7 +143,8 @@ const networkInfo: EthereumNetworkInfo = { 'https://arb1.arbitrum.io/rpc', 'https://arbitrum-one.public.blastapi.io', 'https://rpc.ankr.com/arbitrum', - 'https://arbitrum-one.rpc.grove.city/v1/lb/{{poktPortalApiKey}}' + 'https://arbitrum-one.rpc.grove.city/v1/lb/{{poktPortalApiKey}}', + 'https://lb.drpc.org/ogrpc?network=arbitrum&dkey={{drpcApiKey}}' ], ethBalCheckerContract: '0x151E24A486D7258dd7C33Fb67E4bB01919B7B32c' }, diff --git a/src/ethereum/info/avalancheInfo.ts b/src/ethereum/info/avalancheInfo.ts index 614da2c02..99b0d62a9 100644 --- a/src/ethereum/info/avalancheInfo.ts +++ b/src/ethereum/info/avalancheInfo.ts @@ -189,7 +189,8 @@ const networkInfo: EthereumNetworkInfo = { type: 'rpc', servers: [ 'https://api.avax.network/ext/bc/C/rpc', - 'https://rpc.ankr.com/avalanche' + 'https://rpc.ankr.com/avalanche', + 'https://lb.drpc.org/ogrpc?network=avalanche&dkey={{drpcApiKey}}' ], ethBalCheckerContract: '0xd023d153a0dfa485130ecfde2faa7e612ef94818' }, diff --git a/src/ethereum/info/baseInfo.ts b/src/ethereum/info/baseInfo.ts index cb213c6a3..231328cf4 100644 --- a/src/ethereum/info/baseInfo.ts +++ b/src/ethereum/info/baseInfo.ts @@ -61,7 +61,8 @@ const networkInfo: EthereumNetworkInfo = { type: 'rpc', servers: [ 'https://base-mainnet.public.blastapi.io', - 'https://rpc.ankr.com/base' + 'https://rpc.ankr.com/base', + 'https://lb.drpc.org/ogrpc?network=base&dkey={{drpcApiKey}}' ], ethBalCheckerContract: '0x3ba5A41eA17fd4950a641a057dC0bEb8E8ff1521' }, diff --git a/src/ethereum/info/binancesmartchainInfo.ts b/src/ethereum/info/binancesmartchainInfo.ts index f9d22b342..fe70f28ba 100644 --- a/src/ethereum/info/binancesmartchainInfo.ts +++ b/src/ethereum/info/binancesmartchainInfo.ts @@ -145,7 +145,8 @@ const networkInfo: EthereumNetworkInfo = { 'https://rpc.ankr.com/bsc', 'https://bsc-dataseed.binance.org', 'https://bsc-dataseed1.defibit.io', - 'https://bsc-dataseed1.ninicoin.io' + 'https://bsc-dataseed1.ninicoin.io', + 'https://lb.drpc.org/ogrpc?network=bsc&dkey={{drpcApiKey}}' ], ethBalCheckerContract: '0x2352c63A83f9Fd126af8676146721Fa00924d7e4' }, diff --git a/src/ethereum/info/celoInfo.ts b/src/ethereum/info/celoInfo.ts index d4a18e124..437426a4a 100644 --- a/src/ethereum/info/celoInfo.ts +++ b/src/ethereum/info/celoInfo.ts @@ -70,7 +70,8 @@ const networkInfo: EthereumNetworkInfo = { servers: [ 'https://forno.celo.org', 'https://rpc.ankr.com/celo', - 'https://celo-mainnet-rpc.allthatnode.com' + 'https://celo-mainnet-rpc.allthatnode.com', + 'https://lb.drpc.org/ogrpc?network=celo&dkey={{drpcApiKey}}' ] }, { type: 'evmscan', servers: ['https://explorer.celo.org/mainnet'] } diff --git a/src/ethereum/info/ethereumInfo.ts b/src/ethereum/info/ethereumInfo.ts index beea778e9..5b90a1109 100644 --- a/src/ethereum/info/ethereumInfo.ts +++ b/src/ethereum/info/ethereumInfo.ts @@ -1131,7 +1131,8 @@ const networkInfo: EthereumNetworkInfo = { 'https://mainnet.infura.io/v3/{{infuraProjectId}}', 'https://rpc.ankr.com/eth', 'https://eth-mainnet.rpc.grove.city/v1/{{poktPortalApiKey}}', - 'https://cloudflare-eth.com' + 'https://cloudflare-eth.com', + 'https://lb.drpc.org/ogrpc?network=ethereum&dkey={{drpcApiKey}}' ], ethBalCheckerContract: '0xb1f8e55c7f64d203c1400b9d8555d050f94adf39' }, diff --git a/src/ethereum/info/fantomInfo.ts b/src/ethereum/info/fantomInfo.ts index be435d52e..15508e1db 100644 --- a/src/ethereum/info/fantomInfo.ts +++ b/src/ethereum/info/fantomInfo.ts @@ -290,7 +290,8 @@ const networkInfo: EthereumNetworkInfo = { 'https://fantom-mainnet.rpc.grove.city/v1/{{poktPortalApiKey}}', 'https://polished-empty-cloud.fantom.quiknode.pro/{{quiknodeApiKey}}/', 'https://rpc.ankr.com/fantom', - 'https://rpc.ftm.tools' + 'https://rpc.ftm.tools', + 'https://lb.drpc.org/ogrpc?network=fantom&dkey={{drpcApiKey}}' ], ethBalCheckerContract: '0x07f697424abe762bb808c109860c04ea488ff92b' }, diff --git a/src/ethereum/info/filecoinFevmCalibrationInfo.ts b/src/ethereum/info/filecoinFevmCalibrationInfo.ts index 21cd53d2f..b4c8b21ec 100644 --- a/src/ethereum/info/filecoinFevmCalibrationInfo.ts +++ b/src/ethereum/info/filecoinFevmCalibrationInfo.ts @@ -56,7 +56,10 @@ const networkInfo: EthereumNetworkInfo = { networkAdapterConfigs: [ { type: 'rpc', - servers: ['https://api.calibration.node.glif.io/rpc/v0'] + servers: [ + 'https://api.calibration.node.glif.io/rpc/v0', + 'https://lb.drpc.org/ogrpc?network=filecoin-calibration&dkey={{drpcApiKey}}' + ] }, { type: 'filfox', diff --git a/src/ethereum/info/filecoinFevmInfo.ts b/src/ethereum/info/filecoinFevmInfo.ts index 99f9fba28..f2ae4c9c0 100644 --- a/src/ethereum/info/filecoinFevmInfo.ts +++ b/src/ethereum/info/filecoinFevmInfo.ts @@ -56,7 +56,10 @@ const networkInfo: EthereumNetworkInfo = { networkAdapterConfigs: [ { type: 'rpc', - servers: ['https://api.node.glif.io/'] + servers: [ + 'https://api.node.glif.io/', + 'https://lb.drpc.org/ogrpc?network=filecoin&dkey={{drpcApiKey}}' + ] }, { type: 'filfox', diff --git a/src/ethereum/info/holeskyInfo.ts b/src/ethereum/info/holeskyInfo.ts index 8747fc736..599d7fe43 100644 --- a/src/ethereum/info/holeskyInfo.ts +++ b/src/ethereum/info/holeskyInfo.ts @@ -67,7 +67,8 @@ const networkInfo: EthereumNetworkInfo = { 'https://ethereum-holesky.blockpi.network/v1/rpc/public', 'https://holesky.drpc.org', 'https://rpc-holesky.rockx.com', - 'https://endpoints.omniatech.io/v1/eth/holesky/public' + 'https://endpoints.omniatech.io/v1/eth/holesky/public', + 'https://lb.drpc.org/ogrpc?network=holesky&dkey={{drpcApiKey}}' ], ethBalCheckerContract: '0xf4C055E8760C6e66301C2e2F12b85567a9A50841' }, diff --git a/src/ethereum/info/optimismInfo.ts b/src/ethereum/info/optimismInfo.ts index f20998a1f..fa53d384a 100644 --- a/src/ethereum/info/optimismInfo.ts +++ b/src/ethereum/info/optimismInfo.ts @@ -179,7 +179,11 @@ const networkInfo: EthereumNetworkInfo = { networkAdapterConfigs: [ { type: 'rpc', - servers: ['https://mainnet.optimism.io', 'https://rpc.ankr.com/optimism'], + servers: [ + 'https://mainnet.optimism.io', + 'https://rpc.ankr.com/optimism', + 'https://lb.drpc.org/ogrpc?network=optimism&dkey={{drpcApiKey}}' + ], ethBalCheckerContract: '0xb1c568e9c3e6bdaf755a60c7418c269eb11524fc' }, { diff --git a/src/ethereum/info/polygonInfo.ts b/src/ethereum/info/polygonInfo.ts index ff1691b6a..b8991fb8b 100644 --- a/src/ethereum/info/polygonInfo.ts +++ b/src/ethereum/info/polygonInfo.ts @@ -189,7 +189,8 @@ const networkInfo: EthereumNetworkInfo = { 'https://matic-mainnet.chainstacklabs.com', 'https://rpc.ankr.com/polygon', 'https://poly-mainnet.rpc.grove.city/v1/{{poktPortalApiKey}}', - 'https://rpc-mainnet.matic.quiknode.pro/{{quiknodeApiKey}}/' + 'https://rpc-mainnet.matic.quiknode.pro/{{quiknodeApiKey}}/', + 'https://lb.drpc.org/ogrpc?network=polygon&dkey={{drpcApiKey}}' ], ethBalCheckerContract: '0x2352c63A83f9Fd126af8676146721Fa00924d7e4' }, diff --git a/src/ethereum/info/rskInfo.ts b/src/ethereum/info/rskInfo.ts index 3aea806ac..18f419f4a 100644 --- a/src/ethereum/info/rskInfo.ts +++ b/src/ethereum/info/rskInfo.ts @@ -53,7 +53,10 @@ const networkInfo: EthereumNetworkInfo = { networkAdapterConfigs: [ { type: 'rpc', - servers: ['https://public-node.rsk.co'] + servers: [ + 'https://public-node.rsk.co', + 'https://lb.drpc.org/ogrpc?network=rootstock&dkey={{drpcApiKey}}' + ] }, { type: 'evmscan', diff --git a/src/ethereum/info/sepoliaInfo.ts b/src/ethereum/info/sepoliaInfo.ts index 2157b53f8..7595c9b20 100644 --- a/src/ethereum/info/sepoliaInfo.ts +++ b/src/ethereum/info/sepoliaInfo.ts @@ -65,7 +65,8 @@ const networkInfo: EthereumNetworkInfo = { 'https://api.zan.top/node/v1/eth/sepolia/public', 'https://endpoints.omniatech.io/v1/eth/sepolia/public', 'https://rpc.sepolia.org', - 'https://rpc2.sepolia.org' + 'https://rpc2.sepolia.org', + 'https://lb.drpc.org/ogrpc?network=sepolia&dkey={{drpcApiKey}}' ], ethBalCheckerContract: '0xBfbCed302deD369855fc5f7668356e123ca4B329' }, diff --git a/src/ethereum/info/zksyncInfo.ts b/src/ethereum/info/zksyncInfo.ts index e2412e530..ed88d7730 100644 --- a/src/ethereum/info/zksyncInfo.ts +++ b/src/ethereum/info/zksyncInfo.ts @@ -86,7 +86,10 @@ const networkInfo: EthereumNetworkInfo = { networkAdapterConfigs: [ { type: 'rpc', - servers: ['https://mainnet.era.zksync.io'] + servers: [ + 'https://mainnet.era.zksync.io', + 'https://lb.drpc.org/ogrpc?network=zksync&dkey={{drpcApiKey}}' + ] }, { type: 'evmscan',