@shapeshiftoss/contracts 1.0.6 → 1.0.7

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.
Files changed (46) hide show
  1. package/LICENSE.md +21 -0
  2. package/dist/cjs/.tsbuildinfo +1 -1
  3. package/dist/cjs/abis/index.d.ts +0 -5
  4. package/dist/cjs/abis/index.js +0 -5
  5. package/dist/cjs/constants.d.ts +0 -1
  6. package/dist/cjs/constants.js +1 -5
  7. package/dist/cjs/ethersProviderSingleton.js +41 -32
  8. package/dist/cjs/index.d.ts +1 -0
  9. package/dist/cjs/index.js +1 -0
  10. package/dist/cjs/publicRpcUrls.d.ts +37 -0
  11. package/dist/cjs/publicRpcUrls.js +101 -0
  12. package/dist/cjs/viemClient.d.ts +20973 -4
  13. package/dist/cjs/viemClient.js +70 -47
  14. package/dist/esm/.tsbuildinfo +1 -1
  15. package/dist/esm/abis/index.d.ts +0 -5
  16. package/dist/esm/abis/index.js +0 -5
  17. package/dist/esm/constants.d.ts +0 -1
  18. package/dist/esm/constants.js +0 -4
  19. package/dist/esm/ethersProviderSingleton.js +41 -32
  20. package/dist/esm/index.d.ts +1 -0
  21. package/dist/esm/index.js +1 -0
  22. package/dist/esm/publicRpcUrls.d.ts +37 -0
  23. package/dist/esm/publicRpcUrls.js +98 -0
  24. package/dist/esm/viemClient.d.ts +20973 -4
  25. package/dist/esm/viemClient.js +70 -47
  26. package/package.json +13 -14
  27. package/dist/cjs/abis/foxy.d.ts +0 -519
  28. package/dist/cjs/abis/foxy.js +0 -678
  29. package/dist/cjs/abis/liquidityReserve.d.ts +0 -421
  30. package/dist/cjs/abis/liquidityReserve.js +0 -550
  31. package/dist/cjs/abis/tokeManager.d.ts +0 -774
  32. package/dist/cjs/abis/tokeManager.js +0 -511
  33. package/dist/cjs/abis/tokePool.d.ts +0 -502
  34. package/dist/cjs/abis/tokePool.js +0 -311
  35. package/dist/cjs/abis/tokeRewardHash.d.ts +0 -112
  36. package/dist/cjs/abis/tokeRewardHash.js +0 -74
  37. package/dist/esm/abis/foxy.d.ts +0 -519
  38. package/dist/esm/abis/foxy.js +0 -675
  39. package/dist/esm/abis/liquidityReserve.d.ts +0 -421
  40. package/dist/esm/abis/liquidityReserve.js +0 -547
  41. package/dist/esm/abis/tokeManager.d.ts +0 -774
  42. package/dist/esm/abis/tokeManager.js +0 -508
  43. package/dist/esm/abis/tokePool.d.ts +0 -502
  44. package/dist/esm/abis/tokePool.js +0 -308
  45. package/dist/esm/abis/tokeRewardHash.d.ts +0 -112
  46. package/dist/esm/abis/tokeRewardHash.js +0 -71
@@ -4,17 +4,12 @@ export * from './arbRetryableTx.js';
4
4
  export * from './arbSys.js';
5
5
  export * from './farming.js';
6
6
  export * from './evergreenFarming.js';
7
- export * from './foxy.js';
8
7
  export * from './foxyStaking.js';
9
8
  export * from './l1ArbitrumGateway.js';
10
9
  export * from './l1OrbitCustomGateway.js';
11
10
  export * from './l2ArbitrumGateway.js';
12
- export * from './liquidityReserve.js';
13
11
  export * from './rfox.js';
14
12
  export * from './thorchainRouter.js';
15
- export * from './tokeManager.js';
16
- export * from './tokePool.js';
17
- export * from './tokeRewardHash.js';
18
13
  export * from './iUniswapV2Pair.js';
19
14
  export * from './uniswapV2Router02.js';
20
15
  export * from './iUniswapV3Pool.js';
@@ -4,17 +4,12 @@ export * from './arbRetryableTx.js';
4
4
  export * from './arbSys.js';
5
5
  export * from './farming.js';
6
6
  export * from './evergreenFarming.js';
7
- export * from './foxy.js';
8
7
  export * from './foxyStaking.js';
9
8
  export * from './l1ArbitrumGateway.js';
10
9
  export * from './l1OrbitCustomGateway.js';
11
10
  export * from './l2ArbitrumGateway.js';
12
- export * from './liquidityReserve.js';
13
11
  export * from './rfox.js';
14
12
  export * from './thorchainRouter.js';
15
- export * from './tokeManager.js';
16
- export * from './tokePool.js';
17
- export * from './tokeRewardHash.js';
18
13
  export * from './iUniswapV2Pair.js';
19
14
  export * from './uniswapV2Router02.js';
20
15
  export * from './iUniswapV3Pool.js';
@@ -6638,4 +6638,3 @@ export declare const UNI_V2_FOX_STAKING_REWARDS_V4_CONTRACT = "0x24FD7FB95dc742e
6638
6638
  export declare const UNI_V2_FOX_STAKING_REWARDS_V5_CONTRACT = "0xC14eaA8284feFF79EDc118E06caDBf3813a7e555";
6639
6639
  export declare const UNI_V2_FOX_STAKING_REWARDS_CONTRACTS: readonly ["0xDd80E21669A664Bce83E3AD9a0d74f8Dad5D9E72", "0xc54B9F82C1c54E9D4d274d633c7523f2299c42A0", "0x212ebf9FD3c10F371557b08E993eAaB385c3932b", "0x24FD7FB95dc742e23Dc3829d3e656FEeb5f67fa0", "0xC14eaA8284feFF79EDc118E06caDBf3813a7e555"];
6640
6640
  export declare const PERMIT2_CONTRACT = "0x000000000022D473030F116dDEE9F6B43aC78BA3";
6641
- export declare const MULTICALL3_CONTRACT = "0xcA11bde05977b3631167028862bE2a173976CA11";
@@ -103,7 +103,3 @@ export const UNI_V2_FOX_STAKING_REWARDS_CONTRACTS = [
103
103
  // Permit2 is deployed here across all chains.
104
104
  // https://0x.org/docs/introduction/0x-cheat-sheet#permit2-contract
105
105
  export const PERMIT2_CONTRACT = '0x000000000022D473030F116dDEE9F6B43aC78BA3';
106
- // Multicall3 is deployed at the same address across all EVM chains
107
- // See: https://www.multicall3.com/deployments
108
- // GitHub: https://github.com/mds1/multicall3
109
- export const MULTICALL3_CONTRACT = '0xcA11bde05977b3631167028862bE2a173976CA11';
@@ -2,73 +2,82 @@ import { KnownChainIds } from '@shapeshiftoss/types';
2
2
  import { assertUnreachable } from '@shapeshiftoss/utils';
3
3
  import { JsonRpcProvider } from 'ethers';
4
4
  import { ethers as ethersV5 } from 'ethers5';
5
+ import { PUBLIC_RPC_URLS } from './publicRpcUrls.js';
5
6
  export const rpcUrlByChainId = (chainId) => {
6
7
  const url = (() => {
7
8
  switch (chainId) {
9
+ // First-class chains: env-driven with public fallback
8
10
  case KnownChainIds.AvalancheMainnet:
9
- return process.env.VITE_AVALANCHE_NODE_URL;
11
+ return process.env.VITE_AVALANCHE_NODE_URL ?? PUBLIC_RPC_URLS.avalanche[0];
10
12
  case KnownChainIds.OptimismMainnet:
11
- return process.env.VITE_OPTIMISM_NODE_URL;
13
+ return process.env.VITE_OPTIMISM_NODE_URL ?? PUBLIC_RPC_URLS.optimism[0];
12
14
  case KnownChainIds.BnbSmartChainMainnet:
13
- return process.env.VITE_BNBSMARTCHAIN_NODE_URL;
15
+ return process.env.VITE_BNBSMARTCHAIN_NODE_URL ?? PUBLIC_RPC_URLS.bsc[0];
14
16
  case KnownChainIds.PolygonMainnet:
15
- return process.env.VITE_POLYGON_NODE_URL;
17
+ return process.env.VITE_POLYGON_NODE_URL ?? PUBLIC_RPC_URLS.polygon[0];
16
18
  case KnownChainIds.GnosisMainnet:
17
- return process.env.VITE_GNOSIS_NODE_URL;
19
+ return process.env.VITE_GNOSIS_NODE_URL ?? PUBLIC_RPC_URLS.gnosis[0];
18
20
  case KnownChainIds.EthereumMainnet:
19
- return process.env.VITE_ETHEREUM_NODE_URL;
21
+ return process.env.VITE_ETHEREUM_NODE_URL ?? PUBLIC_RPC_URLS.ethereum[0];
20
22
  case KnownChainIds.ArbitrumMainnet:
21
- return process.env.VITE_ARBITRUM_NODE_URL;
23
+ return process.env.VITE_ARBITRUM_NODE_URL ?? PUBLIC_RPC_URLS.arbitrum[0];
22
24
  case KnownChainIds.BaseMainnet:
23
- return process.env.VITE_BASE_NODE_URL;
25
+ return process.env.VITE_BASE_NODE_URL ?? PUBLIC_RPC_URLS.base[0];
26
+ // Second-class chains: fallback-only
24
27
  case KnownChainIds.MonadMainnet:
25
- return process.env.VITE_MONAD_NODE_URL;
28
+ return PUBLIC_RPC_URLS.monad[0];
26
29
  case KnownChainIds.HyperEvmMainnet:
27
- return process.env.VITE_HYPEREVM_NODE_URL;
30
+ return PUBLIC_RPC_URLS.hyperEvm[0];
28
31
  case KnownChainIds.PlasmaMainnet:
29
- return process.env.VITE_PLASMA_NODE_URL;
32
+ return PUBLIC_RPC_URLS.plasma[0];
30
33
  case KnownChainIds.MantleMainnet:
31
- return process.env.VITE_MANTLE_NODE_URL;
34
+ return PUBLIC_RPC_URLS.mantle[0];
32
35
  case KnownChainIds.InkMainnet:
33
- return process.env.VITE_INK_NODE_URL;
36
+ return PUBLIC_RPC_URLS.ink[0];
34
37
  case KnownChainIds.MegaEthMainnet:
35
- return process.env.VITE_MEGAETH_NODE_URL;
38
+ return PUBLIC_RPC_URLS.megaEth[0];
36
39
  case KnownChainIds.BerachainMainnet:
37
- return process.env.VITE_BERACHAIN_NODE_URL;
40
+ return PUBLIC_RPC_URLS.berachain[0];
38
41
  case KnownChainIds.CronosMainnet:
39
- return process.env.VITE_CRONOS_NODE_URL;
42
+ return PUBLIC_RPC_URLS.cronos[0];
40
43
  case KnownChainIds.KatanaMainnet:
41
- return process.env.VITE_KATANA_NODE_URL;
44
+ return PUBLIC_RPC_URLS.katana[0];
45
+ case KnownChainIds.EtherealMainnet:
46
+ return PUBLIC_RPC_URLS.ethereal[0];
42
47
  case KnownChainIds.FlowEvmMainnet:
43
- return process.env.VITE_FLOWEVM_NODE_URL;
48
+ return PUBLIC_RPC_URLS.flowEvm[0];
44
49
  case KnownChainIds.CeloMainnet:
45
- return process.env.VITE_CELO_NODE_URL;
50
+ return PUBLIC_RPC_URLS.celo[0];
46
51
  case KnownChainIds.PlumeMainnet:
47
- return process.env.VITE_PLUME_NODE_URL;
52
+ return PUBLIC_RPC_URLS.plume[0];
48
53
  case KnownChainIds.StoryMainnet:
49
- return process.env.VITE_STORY_NODE_URL;
54
+ return PUBLIC_RPC_URLS.story[0];
50
55
  case KnownChainIds.ZkSyncEraMainnet:
51
- return process.env.VITE_ZKSYNC_ERA_NODE_URL;
56
+ return PUBLIC_RPC_URLS.zkSyncEra[0];
52
57
  case KnownChainIds.BlastMainnet:
53
- return process.env.VITE_BLAST_NODE_URL;
58
+ return PUBLIC_RPC_URLS.blast[0];
54
59
  case KnownChainIds.WorldChainMainnet:
55
- return process.env.VITE_WORLDCHAIN_NODE_URL;
60
+ return PUBLIC_RPC_URLS.worldChain[0];
56
61
  case KnownChainIds.HemiMainnet:
57
- return process.env.VITE_HEMI_NODE_URL;
62
+ return PUBLIC_RPC_URLS.hemi[0];
58
63
  case KnownChainIds.LineaMainnet:
59
- return process.env.VITE_LINEA_NODE_URL;
64
+ return PUBLIC_RPC_URLS.linea[0];
60
65
  case KnownChainIds.ScrollMainnet:
61
- return process.env.VITE_SCROLL_NODE_URL;
66
+ return PUBLIC_RPC_URLS.scroll[0];
62
67
  case KnownChainIds.SonicMainnet:
63
- return process.env.VITE_SONIC_NODE_URL;
68
+ return PUBLIC_RPC_URLS.sonic[0];
64
69
  case KnownChainIds.UnichainMainnet:
65
- return process.env.VITE_UNICHAIN_NODE_URL;
70
+ return PUBLIC_RPC_URLS.unichain[0];
66
71
  case KnownChainIds.BobMainnet:
67
- return process.env.VITE_BOB_NODE_URL;
72
+ return PUBLIC_RPC_URLS.bob[0];
68
73
  case KnownChainIds.ModeMainnet:
69
- return process.env.VITE_MODE_NODE_URL;
74
+ return PUBLIC_RPC_URLS.mode[0];
70
75
  case KnownChainIds.SoneiumMainnet:
71
- return process.env.VITE_SONEIUM_NODE_URL;
76
+ return PUBLIC_RPC_URLS.soneium[0];
77
+ case KnownChainIds.SeiMainnet:
78
+ return PUBLIC_RPC_URLS.sei[0];
79
+ case KnownChainIds.AbstractMainnet:
80
+ return PUBLIC_RPC_URLS.abstract[0];
72
81
  default:
73
82
  return assertUnreachable(chainId);
74
83
  }
@@ -1,4 +1,5 @@
1
1
  export * from './constants.js';
2
+ export * from './publicRpcUrls.js';
2
3
  export * from './types.js';
3
4
  export * from './contractManager.js';
4
5
  export * from './ethersProviderSingleton.js';
package/dist/esm/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from './constants.js';
2
+ export * from './publicRpcUrls.js';
2
3
  export * from './types.js';
3
4
  export * from './contractManager.js';
4
5
  export * from './ethersProviderSingleton.js';
@@ -0,0 +1,37 @@
1
+ export declare const PUBLIC_RPC_URLS: {
2
+ readonly ethereum: readonly ["https://ethereum-rpc.publicnode.com", "https://eth.drpc.org"];
3
+ readonly bsc: readonly ["https://bsc-rpc.publicnode.com", "https://bsc.drpc.org"];
4
+ readonly avalanche: readonly ["https://avalanche-c-chain-rpc.publicnode.com", "https://avalanche.drpc.org"];
5
+ readonly arbitrum: readonly ["https://arbitrum-one-rpc.publicnode.com", "https://arbitrum.drpc.org"];
6
+ readonly optimism: readonly ["https://optimism-rpc.publicnode.com", "https://optimism.drpc.org"];
7
+ readonly gnosis: readonly ["https://gnosis-rpc.publicnode.com", "https://gnosis.drpc.org"];
8
+ readonly polygon: readonly ["https://polygon-bor-rpc.publicnode.com", "https://polygon.drpc.org"];
9
+ readonly base: readonly ["https://base-rpc.publicnode.com", "https://base.drpc.org"];
10
+ readonly abstract: readonly ["https://api.mainnet.abs.xyz", "https://abstract.drpc.org", "https://abstract.api.onfinality.io/public", "https://abstract-mainnet.gateway.tatum.io"];
11
+ readonly berachain: readonly ["https://rpc.berachain.com", "https://berachain-rpc.publicnode.com", "https://berachain.drpc.org", "https://berachain-mainnet.gateway.tatum.io"];
12
+ readonly blast: readonly ["https://rpc.blast.io", "https://blast-rpc.publicnode.com", "https://blast.drpc.org"];
13
+ readonly bob: readonly ["https://rpc.gobob.xyz", "https://bob.drpc.org"];
14
+ readonly celo: readonly ["https://forno.celo.org", "https://celo.drpc.org", "https://celo.api.onfinality.io/public", "https://celo-mainnet.gateway.tatum.io"];
15
+ readonly cronos: readonly ["https://evm.cronos.org", "https://cronos-evm-rpc.publicnode.com", "https://cronos.drpc.org", "https://cro-mainnet.gateway.tatum.io"];
16
+ readonly ethereal: readonly ["https://rpc.ethereal.trade"];
17
+ readonly flowEvm: readonly ["https://mainnet.evm.nodes.onflow.org", "https://flow-mainnet.gateway.tatum.io"];
18
+ readonly hemi: readonly ["https://rpc.hemi.network/rpc", "https://hemi.drpc.org"];
19
+ readonly hyperEvm: readonly ["https://rpc.hyperliquid.xyz/evm", "https://hyperliquid.drpc.org"];
20
+ readonly ink: readonly ["https://rpc-gel.inkonchain.com", "https://rpc-qnd.inkonchain.com", "https://ink.drpc.org"];
21
+ readonly katana: readonly ["https://rpc.katana.network", "https://rpc.katanarpc.com", "https://katana.drpc.org"];
22
+ readonly linea: readonly ["https://rpc.linea.build", "https://linea-rpc.publicnode.com", "https://linea.drpc.org"];
23
+ readonly mantle: readonly ["https://rpc.mantle.xyz", "https://mantle-rpc.publicnode.com", "https://mantle.drpc.org", "https://mantle.api.onfinality.io/public"];
24
+ readonly megaEth: readonly ["https://mainnet.megaeth.com/rpc", "https://megaeth.drpc.org"];
25
+ readonly mode: readonly ["https://mainnet.mode.network", "https://mode.drpc.org"];
26
+ readonly monad: readonly ["https://rpc.monad.xyz", "https://monad-mainnet.drpc.org", "https://rpc-mainnet.monadinfra.com", "https://rpc1.monad.xyz", "https://rpc3.monad.xyz"];
27
+ readonly plasma: readonly ["https://rpc.plasma.to", "https://plasma.drpc.org", "https://plasma.api.onfinality.io/public"];
28
+ readonly plume: readonly ["https://rpc.plume.org", "https://plume.drpc.org", "https://plume-mainnet.gateway.tatum.io"];
29
+ readonly scroll: readonly ["https://rpc.scroll.io", "https://scroll-rpc.publicnode.com", "https://scroll.drpc.org", "https://scroll.api.onfinality.io/public"];
30
+ readonly sei: readonly ["https://evm-rpc.sei-apis.com", "https://sei.drpc.org"];
31
+ readonly soneium: readonly ["https://rpc.soneium.org", "https://soneium.drpc.org"];
32
+ readonly sonic: readonly ["https://rpc.soniclabs.com", "https://sonic-rpc.publicnode.com", "https://sonic.drpc.org", "https://sonic.api.onfinality.io/public"];
33
+ readonly story: readonly ["https://mainnet.storyrpc.io"];
34
+ readonly unichain: readonly ["https://mainnet.unichain.org", "https://unichain-rpc.publicnode.com", "https://unichain.drpc.org", "https://unichain.api.onfinality.io/public", "https://unichain-mainnet.gateway.tatum.io"];
35
+ readonly worldChain: readonly ["https://worldchain-mainnet.g.alchemy.com/public", "https://worldchain.drpc.org"];
36
+ readonly zkSyncEra: readonly ["https://mainnet.era.zksync.io", "https://zksync.drpc.org", "https://zksync.api.onfinality.io/public"];
37
+ };
@@ -0,0 +1,98 @@
1
+ export const PUBLIC_RPC_URLS = {
2
+ // first class chains
3
+ ethereum: ['https://ethereum-rpc.publicnode.com', 'https://eth.drpc.org'],
4
+ bsc: ['https://bsc-rpc.publicnode.com', 'https://bsc.drpc.org'],
5
+ avalanche: ['https://avalanche-c-chain-rpc.publicnode.com', 'https://avalanche.drpc.org'],
6
+ arbitrum: ['https://arbitrum-one-rpc.publicnode.com', 'https://arbitrum.drpc.org'],
7
+ optimism: ['https://optimism-rpc.publicnode.com', 'https://optimism.drpc.org'],
8
+ gnosis: ['https://gnosis-rpc.publicnode.com', 'https://gnosis.drpc.org'],
9
+ polygon: ['https://polygon-bor-rpc.publicnode.com', 'https://polygon.drpc.org'],
10
+ base: ['https://base-rpc.publicnode.com', 'https://base.drpc.org'],
11
+ // second class chains
12
+ abstract: [
13
+ 'https://api.mainnet.abs.xyz',
14
+ 'https://abstract.drpc.org',
15
+ 'https://abstract.api.onfinality.io/public',
16
+ 'https://abstract-mainnet.gateway.tatum.io',
17
+ ],
18
+ berachain: [
19
+ 'https://rpc.berachain.com',
20
+ 'https://berachain-rpc.publicnode.com',
21
+ 'https://berachain.drpc.org',
22
+ 'https://berachain-mainnet.gateway.tatum.io',
23
+ ],
24
+ blast: ['https://rpc.blast.io', 'https://blast-rpc.publicnode.com', 'https://blast.drpc.org'],
25
+ bob: ['https://rpc.gobob.xyz', 'https://bob.drpc.org'],
26
+ celo: [
27
+ 'https://forno.celo.org',
28
+ 'https://celo.drpc.org',
29
+ 'https://celo.api.onfinality.io/public',
30
+ 'https://celo-mainnet.gateway.tatum.io',
31
+ ],
32
+ cronos: [
33
+ 'https://evm.cronos.org',
34
+ 'https://cronos-evm-rpc.publicnode.com',
35
+ 'https://cronos.drpc.org',
36
+ 'https://cro-mainnet.gateway.tatum.io',
37
+ ],
38
+ ethereal: ['https://rpc.ethereal.trade'],
39
+ flowEvm: ['https://mainnet.evm.nodes.onflow.org', 'https://flow-mainnet.gateway.tatum.io'],
40
+ hemi: ['https://rpc.hemi.network/rpc', 'https://hemi.drpc.org'],
41
+ hyperEvm: ['https://rpc.hyperliquid.xyz/evm', 'https://hyperliquid.drpc.org'],
42
+ ink: ['https://rpc-gel.inkonchain.com', 'https://rpc-qnd.inkonchain.com', 'https://ink.drpc.org'],
43
+ katana: ['https://rpc.katana.network', 'https://rpc.katanarpc.com', 'https://katana.drpc.org'],
44
+ linea: ['https://rpc.linea.build', 'https://linea-rpc.publicnode.com', 'https://linea.drpc.org'],
45
+ mantle: [
46
+ 'https://rpc.mantle.xyz',
47
+ 'https://mantle-rpc.publicnode.com',
48
+ 'https://mantle.drpc.org',
49
+ 'https://mantle.api.onfinality.io/public',
50
+ ],
51
+ megaEth: ['https://mainnet.megaeth.com/rpc', 'https://megaeth.drpc.org'],
52
+ mode: ['https://mainnet.mode.network', 'https://mode.drpc.org'],
53
+ monad: [
54
+ 'https://rpc.monad.xyz',
55
+ 'https://monad-mainnet.drpc.org',
56
+ 'https://rpc-mainnet.monadinfra.com',
57
+ 'https://rpc1.monad.xyz',
58
+ 'https://rpc3.monad.xyz',
59
+ ],
60
+ plasma: [
61
+ 'https://rpc.plasma.to',
62
+ 'https://plasma.drpc.org',
63
+ 'https://plasma.api.onfinality.io/public',
64
+ ],
65
+ plume: [
66
+ 'https://rpc.plume.org',
67
+ 'https://plume.drpc.org',
68
+ 'https://plume-mainnet.gateway.tatum.io',
69
+ ],
70
+ scroll: [
71
+ 'https://rpc.scroll.io',
72
+ 'https://scroll-rpc.publicnode.com',
73
+ 'https://scroll.drpc.org',
74
+ 'https://scroll.api.onfinality.io/public',
75
+ ],
76
+ sei: ['https://evm-rpc.sei-apis.com', 'https://sei.drpc.org'],
77
+ soneium: ['https://rpc.soneium.org', 'https://soneium.drpc.org'],
78
+ sonic: [
79
+ 'https://rpc.soniclabs.com',
80
+ 'https://sonic-rpc.publicnode.com',
81
+ 'https://sonic.drpc.org',
82
+ 'https://sonic.api.onfinality.io/public',
83
+ ],
84
+ story: ['https://mainnet.storyrpc.io'],
85
+ unichain: [
86
+ 'https://mainnet.unichain.org',
87
+ 'https://unichain-rpc.publicnode.com',
88
+ 'https://unichain.drpc.org',
89
+ 'https://unichain.api.onfinality.io/public',
90
+ 'https://unichain-mainnet.gateway.tatum.io',
91
+ ],
92
+ worldChain: ['https://worldchain-mainnet.g.alchemy.com/public', 'https://worldchain.drpc.org'],
93
+ zkSyncEra: [
94
+ 'https://mainnet.era.zksync.io',
95
+ 'https://zksync.drpc.org',
96
+ 'https://zksync.api.onfinality.io/public',
97
+ ],
98
+ };