@instadapp/avocado-base 0.0.0-dev.d8050bd → 0.0.0-dev.dcb4af3
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/.github/workflows/npm-publish-dev.yml +2 -5
- package/.vscode/settings.json +67 -0
- package/abi/avoFactoryProxy.json +1 -1
- package/abi/forwarder.json +1 -1
- package/abi/multisigAgnosticForwarder.json +937 -0
- package/abi/multisigForwarder.json +680 -680
- package/app.vue +5 -5
- package/assets/images/icons/check.svg +3 -0
- package/assets/images/icons/copy.svg +9 -2
- package/assets/images/icons/stars.svg +4 -0
- package/components/ActionLogo.vue +33 -31
- package/components/ActionMetadata.vue +30 -20
- package/components/Address.vue +74 -0
- package/components/AuthorityAvatar.vue +4 -3
- package/components/ChainLogo.vue +22 -25
- package/components/CopyClipboard.vue +16 -38
- package/components/metadata/Bridge.vue +22 -23
- package/components/metadata/CrossTransfer.vue +29 -32
- package/components/metadata/GasTopup.vue +14 -15
- package/components/metadata/Permit2.vue +12 -13
- package/components/metadata/Signers.vue +11 -55
- package/components/metadata/Swap.vue +45 -53
- package/components/metadata/Transfer.vue +26 -27
- package/contracts/MultisigAgnosticForwarder.ts +1423 -0
- package/contracts/factories/MultisigAgnosticForwarder__factory.ts +2135 -0
- package/contracts/factories/index.ts +1 -0
- package/contracts/index.ts +2 -0
- package/eslint.config.mjs +34 -0
- package/nuxt.config.ts +21 -12
- package/package.json +14 -14
- package/server/utils/index.ts +4 -4
- package/utils/avocado.ts +17 -17
- package/utils/bignumber.ts +47 -36
- package/utils/formatter.ts +55 -61
- package/utils/helper.ts +33 -30
- package/utils/metadata.ts +408 -349
- package/utils/network.ts +508 -263
- package/utils/services.ts +11 -13
- package/utils/utils.d.ts +117 -103
package/utils/network.ts
CHANGED
|
@@ -1,484 +1,729 @@
|
|
|
1
|
-
import { ethers } from
|
|
1
|
+
import { ethers } from 'ethers'
|
|
2
|
+
import { defineChain } from 'viem'
|
|
3
|
+
import {
|
|
4
|
+
arbitrum,
|
|
5
|
+
aurora,
|
|
6
|
+
avalanche,
|
|
7
|
+
base,
|
|
8
|
+
blast,
|
|
9
|
+
bsc,
|
|
10
|
+
fantom,
|
|
11
|
+
fuse,
|
|
12
|
+
gnosis,
|
|
13
|
+
linea,
|
|
14
|
+
mainnet,
|
|
15
|
+
mode,
|
|
16
|
+
opBNB,
|
|
17
|
+
optimism,
|
|
18
|
+
polygon,
|
|
19
|
+
polygonZkEvm,
|
|
20
|
+
scroll,
|
|
21
|
+
} from 'viem/chains'
|
|
2
22
|
import {
|
|
3
|
-
AVO_PROD_CHAIN_NAME,
|
|
4
23
|
AVO_PROD_CHAIN_ID,
|
|
5
|
-
|
|
24
|
+
AVO_PROD_CHAIN_NAME,
|
|
6
25
|
AVO_PROD_EXPLORER_URL,
|
|
7
|
-
|
|
26
|
+
AVO_PROD_RPC_URL,
|
|
8
27
|
AVO_STAGING_CHAIN_ID,
|
|
9
|
-
|
|
28
|
+
AVO_STAGING_CHAIN_NAME,
|
|
10
29
|
AVO_STAGING_EXPLORER_URL,
|
|
11
|
-
|
|
30
|
+
AVO_STAGING_RPC_URL,
|
|
31
|
+
} from './avocado'
|
|
32
|
+
|
|
33
|
+
export const bridgeDisabledNetworks = []
|
|
34
|
+
|
|
35
|
+
export const networksSimulationNotSupported = [1313161554, 1101]
|
|
36
|
+
|
|
37
|
+
const plasma = defineChain({
|
|
38
|
+
id: 9745,
|
|
39
|
+
name: 'Plasma',
|
|
40
|
+
nativeCurrency: {
|
|
41
|
+
name: 'Plasma',
|
|
42
|
+
symbol: 'XPL',
|
|
43
|
+
decimals: 18,
|
|
44
|
+
},
|
|
45
|
+
rpcUrls: {
|
|
46
|
+
default: {
|
|
47
|
+
http: ['https://rpc.plasma.to'],
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
blockExplorers: {
|
|
51
|
+
default: {
|
|
52
|
+
name: 'PlasmaScan',
|
|
53
|
+
url: 'https://plasmascan.to',
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
contracts: {
|
|
57
|
+
multicall3: {
|
|
58
|
+
address: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
})
|
|
62
|
+
|
|
63
|
+
const avocado = defineChain({
|
|
64
|
+
id: AVO_PROD_CHAIN_ID,
|
|
65
|
+
name: AVO_PROD_CHAIN_NAME,
|
|
66
|
+
nativeCurrency: {
|
|
67
|
+
name: 'Avocado',
|
|
68
|
+
symbol: 'USDC',
|
|
69
|
+
decimals: 18,
|
|
70
|
+
},
|
|
71
|
+
rpcUrls: {
|
|
72
|
+
default: { http: [AVO_PROD_RPC_URL] },
|
|
73
|
+
},
|
|
74
|
+
blockExplorers: {
|
|
75
|
+
default: { name: 'Avoscan', url: AVO_PROD_EXPLORER_URL },
|
|
76
|
+
},
|
|
77
|
+
})
|
|
12
78
|
|
|
13
|
-
|
|
79
|
+
const avocadoStaging = defineChain({
|
|
80
|
+
id: AVO_STAGING_CHAIN_ID,
|
|
81
|
+
name: AVO_STAGING_CHAIN_NAME,
|
|
82
|
+
nativeCurrency: {
|
|
83
|
+
name: 'Avocado',
|
|
84
|
+
symbol: 'USDC',
|
|
85
|
+
decimals: 18,
|
|
86
|
+
},
|
|
87
|
+
rpcUrls: {
|
|
88
|
+
default: { http: [AVO_STAGING_RPC_URL] },
|
|
89
|
+
},
|
|
90
|
+
blockExplorers: {
|
|
91
|
+
default: { name: 'Avoscan', url: AVO_STAGING_EXPLORER_URL },
|
|
92
|
+
},
|
|
14
93
|
|
|
15
|
-
|
|
94
|
+
})
|
|
16
95
|
|
|
17
96
|
export const networks: Network[] = [
|
|
18
97
|
{
|
|
19
|
-
name:
|
|
20
|
-
debankName:
|
|
21
|
-
ankrName:
|
|
22
|
-
zerionName:
|
|
23
|
-
color:
|
|
98
|
+
name: 'Polygon',
|
|
99
|
+
debankName: 'matic',
|
|
100
|
+
ankrName: 'polygon',
|
|
101
|
+
zerionName: 'polygon',
|
|
102
|
+
color: '#7A4ADD',
|
|
24
103
|
chainId: 137,
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
104
|
+
legacySupported: true,
|
|
105
|
+
viemChain: polygon,
|
|
106
|
+
balanceResolverAddress: '0x58632D23120b20650262b8A629a14e4F4043E0D9',
|
|
107
|
+
usdcAddress: '0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174',
|
|
108
|
+
explorerUrl: 'https://polygonscan.com',
|
|
109
|
+
apiURL: 'https://api.polygonscan.com/api',
|
|
29
110
|
fakeTransactionHash:
|
|
30
|
-
|
|
111
|
+
'0x906c551abd5873a428505b6530ac14d91367820706c7ee525f6d7313265d1c92',
|
|
31
112
|
get serverRpcUrl() {
|
|
32
|
-
return process.env?.POLYGON_RPC_URL || this.params.rpcUrls[0]
|
|
113
|
+
return process.env?.POLYGON_RPC_URL || this.params.rpcUrls[0]
|
|
33
114
|
},
|
|
34
115
|
params: {
|
|
35
|
-
chainName:
|
|
116
|
+
chainName: 'Matic(Polygon) Mainnet',
|
|
36
117
|
nativeCurrency: {
|
|
37
|
-
name:
|
|
38
|
-
symbol:
|
|
118
|
+
name: 'POL (ex-MATIC)',
|
|
119
|
+
symbol: 'POL',
|
|
39
120
|
decimals: 18,
|
|
40
121
|
},
|
|
41
|
-
rpcUrls: [
|
|
122
|
+
rpcUrls: ['https://polygon-rpc.com'],
|
|
42
123
|
},
|
|
43
124
|
},
|
|
44
125
|
{
|
|
45
|
-
name:
|
|
46
|
-
debankName:
|
|
47
|
-
ankrName:
|
|
48
|
-
zerionName:
|
|
49
|
-
|
|
126
|
+
name: 'Arbitrum',
|
|
127
|
+
debankName: 'arb',
|
|
128
|
+
ankrName: 'arbitrum',
|
|
129
|
+
zerionName: 'arbitrum',
|
|
130
|
+
legacySupported: true,
|
|
131
|
+
viemChain: arbitrum,
|
|
132
|
+
color: '#2D374B',
|
|
50
133
|
chainId: 42161,
|
|
51
|
-
usdcAddress:
|
|
52
|
-
balanceResolverAddress:
|
|
134
|
+
usdcAddress: '0xff970a61a04b1ca14834a43f5de4533ebddb5cc8',
|
|
135
|
+
balanceResolverAddress: '0xca5f37e6D8bB24c5A7958d5eccE7Bd9Aacc944f2',
|
|
53
136
|
fakeTransactionHash:
|
|
54
|
-
|
|
55
|
-
explorerUrl:
|
|
56
|
-
apiURL:
|
|
137
|
+
'0x9fa291c3b09d31f19b1fa5dd05f30169d1364036d5f7c14b026410bc07bd8843',
|
|
138
|
+
explorerUrl: 'https://arbiscan.io',
|
|
139
|
+
apiURL: 'https://api.arbiscan.io/api',
|
|
57
140
|
get serverRpcUrl() {
|
|
58
|
-
return process.env?.ARBITRUM_RPC_URL || this.params.rpcUrls[0]
|
|
141
|
+
return process.env?.ARBITRUM_RPC_URL || this.params.rpcUrls[0]
|
|
59
142
|
},
|
|
60
143
|
params: {
|
|
61
|
-
chainName:
|
|
144
|
+
chainName: 'Arbitrum One',
|
|
62
145
|
nativeCurrency: {
|
|
63
|
-
name:
|
|
64
|
-
symbol:
|
|
146
|
+
name: 'Ethereum',
|
|
147
|
+
symbol: 'ETH',
|
|
65
148
|
decimals: 18,
|
|
66
149
|
},
|
|
67
|
-
rpcUrls: [
|
|
150
|
+
rpcUrls: ['https://arb1.arbitrum.io/rpc'],
|
|
68
151
|
},
|
|
69
152
|
},
|
|
70
153
|
{
|
|
71
|
-
name:
|
|
72
|
-
debankName:
|
|
73
|
-
ankrName:
|
|
74
|
-
zerionName:
|
|
154
|
+
name: 'Ethereum',
|
|
155
|
+
debankName: 'eth',
|
|
156
|
+
ankrName: 'eth',
|
|
157
|
+
zerionName: 'ethereum',
|
|
158
|
+
viemChain: mainnet,
|
|
75
159
|
chainId: 1,
|
|
76
|
-
explorerUrl:
|
|
160
|
+
explorerUrl: 'https://etherscan.io',
|
|
161
|
+
legacySupported: true,
|
|
77
162
|
fakeTransactionHash:
|
|
78
|
-
|
|
79
|
-
apiURL:
|
|
80
|
-
color:
|
|
163
|
+
'0x13232dd32cef2f641ead890a507710c96560c8c9c3d5fab6facb5ec563c49433',
|
|
164
|
+
apiURL: 'https://api.etherscan.io/api',
|
|
165
|
+
color: '#5D5FEF',
|
|
81
166
|
get serverRpcUrl() {
|
|
82
|
-
return process.env?.MAINNET_RPC_URL || this.params.rpcUrls[0]
|
|
167
|
+
return process.env?.MAINNET_RPC_URL || this.params.rpcUrls[0]
|
|
83
168
|
},
|
|
84
|
-
balanceResolverAddress:
|
|
85
|
-
usdcAddress:
|
|
169
|
+
balanceResolverAddress: '0x5b7D61b389D12e1f5873d0cCEe7E675915AB5F43',
|
|
170
|
+
usdcAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
|
|
86
171
|
params: {
|
|
87
|
-
rpcUrls: [
|
|
172
|
+
rpcUrls: ['https://rpc.ankr.com/eth'],
|
|
88
173
|
nativeCurrency: {
|
|
89
|
-
name:
|
|
90
|
-
symbol:
|
|
174
|
+
name: 'Ethereum',
|
|
175
|
+
symbol: 'ETH',
|
|
91
176
|
decimals: 18,
|
|
92
177
|
},
|
|
93
178
|
},
|
|
94
179
|
},
|
|
95
180
|
{
|
|
96
|
-
name:
|
|
181
|
+
name: 'Base',
|
|
97
182
|
chainId: 8453,
|
|
98
|
-
color:
|
|
99
|
-
ankrName:
|
|
100
|
-
|
|
183
|
+
color: '#1E2024',
|
|
184
|
+
ankrName: 'base',
|
|
185
|
+
viemChain: base,
|
|
186
|
+
explorerUrl: 'https://basescan.org',
|
|
187
|
+
legacySupported: true,
|
|
101
188
|
fakeTransactionHash:
|
|
102
|
-
|
|
103
|
-
apiURL:
|
|
189
|
+
'0xf7833d80da33730c4fc5d4c64151f0eaa64c0c0535be022af0228a44cc4e9c8e',
|
|
190
|
+
apiURL: 'https://api.basescan.org/api',
|
|
104
191
|
get serverRpcUrl() {
|
|
105
|
-
return process.env?.BASE_RPC_URL || this.params.rpcUrls[0]
|
|
192
|
+
return process.env?.BASE_RPC_URL || this.params.rpcUrls[0]
|
|
106
193
|
},
|
|
107
|
-
usdcAddress:
|
|
108
|
-
balanceResolverAddress:
|
|
194
|
+
usdcAddress: '0xd9aAEc86B65D86f6A7B5B1b0c42FFA531710b6CA',
|
|
195
|
+
balanceResolverAddress: '0x23c8EAb8a4373dD16b0947Ebe8bf76Ff7A49d13C',
|
|
109
196
|
params: {
|
|
110
|
-
rpcUrls: [
|
|
111
|
-
chainName:
|
|
197
|
+
rpcUrls: ['https://rpc.ankr.com/base'],
|
|
198
|
+
chainName: 'Base',
|
|
112
199
|
nativeCurrency: {
|
|
113
|
-
name:
|
|
114
|
-
symbol:
|
|
200
|
+
name: 'Ethereum',
|
|
201
|
+
symbol: 'ETH',
|
|
115
202
|
decimals: 18,
|
|
116
203
|
},
|
|
117
204
|
},
|
|
118
205
|
},
|
|
119
206
|
{
|
|
120
|
-
name:
|
|
121
|
-
debankName:
|
|
122
|
-
ankrName:
|
|
123
|
-
zerionName:
|
|
124
|
-
color:
|
|
207
|
+
name: 'Optimism',
|
|
208
|
+
debankName: 'op',
|
|
209
|
+
ankrName: 'optimism',
|
|
210
|
+
zerionName: 'optimism',
|
|
211
|
+
color: '#FF0420',
|
|
212
|
+
legacySupported: true,
|
|
213
|
+
viemChain: optimism,
|
|
125
214
|
chainId: 10,
|
|
126
|
-
apiURL:
|
|
127
|
-
usdcAddress:
|
|
128
|
-
balanceResolverAddress:
|
|
215
|
+
apiURL: 'https://api-optimistic.etherscan.io/api',
|
|
216
|
+
usdcAddress: '0x7f5c764cbc14f9669b88837ca1490cca17c31607',
|
|
217
|
+
balanceResolverAddress: '0xca5f37e6D8bB24c5A7958d5eccE7Bd9Aacc944f2',
|
|
129
218
|
fakeTransactionHash:
|
|
130
|
-
|
|
131
|
-
explorerUrl:
|
|
219
|
+
'0xee7311d68059732b05088f2144dfec6c7a4f5fd0433eb85306afcd6bdf17cebc',
|
|
220
|
+
explorerUrl: 'https://optimistic.etherscan.io',
|
|
132
221
|
get serverRpcUrl() {
|
|
133
|
-
return process.env?.OPTIMISM_RPC_URL || this.params.rpcUrls[0]
|
|
222
|
+
return process.env?.OPTIMISM_RPC_URL || this.params.rpcUrls[0]
|
|
134
223
|
},
|
|
135
224
|
params: {
|
|
136
|
-
chainName:
|
|
225
|
+
chainName: 'Optimistic Ethereum',
|
|
137
226
|
nativeCurrency: {
|
|
138
|
-
name:
|
|
139
|
-
symbol:
|
|
227
|
+
name: 'Ethereum',
|
|
228
|
+
symbol: 'ETH',
|
|
140
229
|
decimals: 18,
|
|
141
230
|
},
|
|
142
|
-
rpcUrls: [
|
|
231
|
+
rpcUrls: ['https://rpc.ankr.com/optimism'],
|
|
143
232
|
},
|
|
144
233
|
},
|
|
145
234
|
{
|
|
146
|
-
name:
|
|
235
|
+
name: 'Polygon zkEVM',
|
|
147
236
|
chainId: 1101,
|
|
148
|
-
color:
|
|
149
|
-
ankrName:
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
237
|
+
color: '#8544f6',
|
|
238
|
+
ankrName: 'polygon_zkevm',
|
|
239
|
+
viemChain: polygonZkEvm,
|
|
240
|
+
legacySupported: true,
|
|
241
|
+
explorerUrl: 'https://zkevm.polygonscan.com',
|
|
242
|
+
apiURL: 'https://api-zkevm.polygonscan.com/api',
|
|
243
|
+
balanceResolverAddress: '0x48D1Fa5Ee6691a1E0B45d2B515650997BEA27a01',
|
|
153
244
|
fakeTransactionHash:
|
|
154
|
-
|
|
155
|
-
usdcAddress:
|
|
245
|
+
'0x1077130463ade91ad4e9c43c3195298e26a99970975238128912490eea12bf41',
|
|
246
|
+
usdcAddress: '0xa8ce8aee21bc2a48a5ef670afcc9274c7bbbc035',
|
|
156
247
|
get serverRpcUrl() {
|
|
157
|
-
return process.env?.POLYGON_ZKEVM_RPC_URL || this.params.rpcUrls[0]
|
|
248
|
+
return process.env?.POLYGON_ZKEVM_RPC_URL || this.params.rpcUrls[0]
|
|
158
249
|
},
|
|
159
250
|
params: {
|
|
160
|
-
chainName:
|
|
161
|
-
rpcUrls: [
|
|
251
|
+
chainName: 'polygon zkEVM',
|
|
252
|
+
rpcUrls: ['https://zkevm-rpc.com'],
|
|
162
253
|
nativeCurrency: {
|
|
163
|
-
name:
|
|
164
|
-
symbol:
|
|
254
|
+
name: 'Ethereum',
|
|
255
|
+
symbol: 'ETH',
|
|
165
256
|
decimals: 18,
|
|
166
257
|
},
|
|
167
258
|
},
|
|
168
259
|
},
|
|
169
260
|
{
|
|
170
|
-
name:
|
|
171
|
-
debankName:
|
|
172
|
-
ankrName:
|
|
173
|
-
zerionName:
|
|
174
|
-
color:
|
|
261
|
+
name: 'BSC',
|
|
262
|
+
debankName: 'bsc',
|
|
263
|
+
ankrName: 'bsc',
|
|
264
|
+
zerionName: 'binance-smart-chain',
|
|
265
|
+
color: '#F3BA2F',
|
|
175
266
|
chainId: 56,
|
|
176
|
-
|
|
267
|
+
legacySupported: true,
|
|
268
|
+
explorerUrl: 'https://bscscan.com',
|
|
269
|
+
viemChain: bsc,
|
|
177
270
|
fakeTransactionHash:
|
|
178
|
-
|
|
179
|
-
apiURL:
|
|
180
|
-
usdcAddress:
|
|
181
|
-
balanceResolverAddress:
|
|
271
|
+
'0x897d54bf8e492f840bd4d8f1e743bfcab8226ab4d5a899e47ee433dcd6d6abf7',
|
|
272
|
+
apiURL: 'https://api.bscscan.com/api',
|
|
273
|
+
usdcAddress: '0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d',
|
|
274
|
+
balanceResolverAddress: '0xb808cff38706e267067b0af427726aa099f69f89',
|
|
182
275
|
get serverRpcUrl() {
|
|
183
|
-
return process.env?.BSC_RPC_URL || this.params.rpcUrls[0]
|
|
276
|
+
return process.env?.BSC_RPC_URL || this.params.rpcUrls[0]
|
|
184
277
|
},
|
|
185
278
|
params: {
|
|
186
|
-
chainName:
|
|
187
|
-
rpcUrls: [
|
|
279
|
+
chainName: 'Binance Smart Chain',
|
|
280
|
+
rpcUrls: ['https://rpc.ankr.com/bsc'],
|
|
188
281
|
nativeCurrency: {
|
|
189
|
-
name:
|
|
190
|
-
symbol:
|
|
282
|
+
name: 'Binance Coin',
|
|
283
|
+
symbol: 'BNB',
|
|
191
284
|
decimals: 18,
|
|
192
285
|
},
|
|
193
286
|
},
|
|
194
287
|
},
|
|
195
288
|
{
|
|
196
|
-
name:
|
|
197
|
-
debankName:
|
|
198
|
-
ankrName:
|
|
199
|
-
zerionName:
|
|
200
|
-
color:
|
|
289
|
+
name: 'Avalanche',
|
|
290
|
+
debankName: 'avax',
|
|
291
|
+
ankrName: 'avalanche',
|
|
292
|
+
zerionName: 'avalanche',
|
|
293
|
+
color: '#EB5757',
|
|
294
|
+
viemChain: avalanche,
|
|
295
|
+
legacySupported: true,
|
|
201
296
|
chainId: 43114,
|
|
202
|
-
usdcAddress:
|
|
203
|
-
balanceResolverAddress:
|
|
204
|
-
explorerUrl:
|
|
297
|
+
usdcAddress: '0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e',
|
|
298
|
+
balanceResolverAddress: '0x63009f31D054E0ac9F321Cf0D642375236A4Bf1E',
|
|
299
|
+
explorerUrl: 'https://snowtrace.io',
|
|
205
300
|
fakeTransactionHash:
|
|
206
|
-
|
|
207
|
-
apiURL:
|
|
301
|
+
'0x233aac7402558dd4e23f938a50f983e67f5c9604233981c7ac74e63737b8294e',
|
|
302
|
+
apiURL: 'https://api.routescan.io/v2/network/mainnet/evm/43114/etherscan/api',
|
|
208
303
|
get serverRpcUrl() {
|
|
209
|
-
return process.env?.AVALANCHE_RPC_URL || this.params.rpcUrls[0]
|
|
304
|
+
return process.env?.AVALANCHE_RPC_URL || this.params.rpcUrls[0]
|
|
210
305
|
},
|
|
211
306
|
params: {
|
|
212
|
-
chainName:
|
|
307
|
+
chainName: 'Avalanche Network',
|
|
213
308
|
nativeCurrency: {
|
|
214
|
-
name:
|
|
215
|
-
symbol:
|
|
309
|
+
name: 'Avalanche',
|
|
310
|
+
symbol: 'AVAX',
|
|
216
311
|
decimals: 18,
|
|
217
312
|
},
|
|
218
|
-
rpcUrls: [
|
|
313
|
+
rpcUrls: ['https://rpc.ankr.com/avalanche'],
|
|
219
314
|
},
|
|
220
315
|
},
|
|
221
316
|
{
|
|
222
|
-
name:
|
|
317
|
+
name: 'Fantom',
|
|
223
318
|
chainId: 250,
|
|
224
|
-
zerionName:
|
|
225
|
-
explorerUrl:
|
|
226
|
-
|
|
227
|
-
|
|
319
|
+
zerionName: 'fantom',
|
|
320
|
+
explorerUrl: 'https://ftmscan.com',
|
|
321
|
+
apiURL: 'https://api.ftmscan.com/api',
|
|
322
|
+
ankrName: 'fantom',
|
|
323
|
+
color: '#1969ff',
|
|
324
|
+
legacySupported: true,
|
|
325
|
+
viemChain: fantom,
|
|
228
326
|
get serverRpcUrl() {
|
|
229
|
-
return process.env?.FANTOM_RPC_URL || this.params.rpcUrls[0]
|
|
327
|
+
return process.env?.FANTOM_RPC_URL || this.params.rpcUrls[0]
|
|
230
328
|
},
|
|
231
|
-
usdcAddress:
|
|
232
|
-
balanceResolverAddress:
|
|
329
|
+
usdcAddress: '0x04068da6c83afcfa0e13ba15a6696662335d5b75',
|
|
330
|
+
balanceResolverAddress: '0x929376c77a2fb8152375a089a4fccf84ff481479',
|
|
233
331
|
fakeTransactionHash:
|
|
234
|
-
|
|
332
|
+
'0x1e9a8405d660172314124e06896212c0786d7fb1550b89410d4bc87e9e8054e4',
|
|
235
333
|
params: {
|
|
236
|
-
rpcUrls: [
|
|
237
|
-
chainName:
|
|
334
|
+
rpcUrls: ['https://rpc.ankr.com/fantom'],
|
|
335
|
+
chainName: 'Fantom',
|
|
238
336
|
nativeCurrency: {
|
|
239
|
-
name:
|
|
240
|
-
symbol:
|
|
337
|
+
name: 'Fantom',
|
|
338
|
+
symbol: 'FTM',
|
|
241
339
|
decimals: 18,
|
|
242
340
|
},
|
|
243
341
|
},
|
|
244
342
|
},
|
|
245
343
|
{
|
|
246
|
-
name:
|
|
247
|
-
debankName:
|
|
248
|
-
zerionName:
|
|
249
|
-
color:
|
|
250
|
-
ankrName:
|
|
344
|
+
name: 'Gnosis',
|
|
345
|
+
debankName: 'xdai',
|
|
346
|
+
zerionName: 'xdai',
|
|
347
|
+
color: '#04795C',
|
|
348
|
+
ankrName: 'gnosis',
|
|
349
|
+
viemChain: gnosis,
|
|
350
|
+
legacySupported: true,
|
|
251
351
|
chainId: 100,
|
|
252
|
-
balanceResolverAddress:
|
|
253
|
-
explorerUrl:
|
|
352
|
+
balanceResolverAddress: '0xfaa244e276b1597f663975ed007ee4ff70d27849',
|
|
353
|
+
explorerUrl: 'https://gnosisscan.io',
|
|
254
354
|
fakeTransactionHash:
|
|
255
|
-
|
|
256
|
-
apiURL:
|
|
257
|
-
usdcAddress:
|
|
355
|
+
'0x1513033806310a2c3b29f2276f8aa7388461b0ef9f8499c297e68c12187c179b',
|
|
356
|
+
apiURL: 'https://api.gnosisscan.io/api',
|
|
357
|
+
usdcAddress: '0xddafbb505ad214d7b80b1f830fccc89b60fb7a83',
|
|
258
358
|
get serverRpcUrl() {
|
|
259
|
-
return process.env?.GNOSIS_RPC_URL || this.params.rpcUrls[0]
|
|
359
|
+
return process.env?.GNOSIS_RPC_URL || this.params.rpcUrls[0]
|
|
260
360
|
},
|
|
261
361
|
params: {
|
|
262
|
-
chainName:
|
|
263
|
-
rpcUrls: [
|
|
362
|
+
chainName: 'Gnosis Safe',
|
|
363
|
+
rpcUrls: ['https://rpc.ankr.com/gnosis'],
|
|
264
364
|
nativeCurrency: {
|
|
265
|
-
name:
|
|
266
|
-
symbol:
|
|
365
|
+
name: 'xdaistable',
|
|
366
|
+
symbol: 'xDAI',
|
|
267
367
|
decimals: 18,
|
|
268
368
|
},
|
|
269
369
|
},
|
|
270
370
|
},
|
|
271
371
|
{
|
|
272
|
-
name:
|
|
372
|
+
name: 'Aurora',
|
|
273
373
|
chainId: 1313161554,
|
|
274
|
-
zerionName:
|
|
275
|
-
color:
|
|
276
|
-
|
|
374
|
+
zerionName: 'aurora',
|
|
375
|
+
color: '#78d64b',
|
|
376
|
+
viemChain: aurora,
|
|
377
|
+
legacySupported: true,
|
|
378
|
+
explorerUrl: 'https://explorer.mainnet.aurora.dev',
|
|
379
|
+
apiURL: 'https://explorer.mainnet.aurora.dev/api/v2',
|
|
277
380
|
fakeTransactionHash:
|
|
278
|
-
|
|
381
|
+
'0x0923401c5a80c39a5cd57c098a6c4729edbefd0db6894def7d349493f4ff3ec6',
|
|
279
382
|
get serverRpcUrl() {
|
|
280
|
-
return process.env?.AURORA_RPC_URL || this.params.rpcUrls[0]
|
|
383
|
+
return process.env?.AURORA_RPC_URL || this.params.rpcUrls[0]
|
|
281
384
|
},
|
|
282
|
-
usdcAddress:
|
|
283
|
-
balanceResolverAddress:
|
|
385
|
+
usdcAddress: '0xB12BFcA5A55806AaF64E99521918A4bf0fC40802',
|
|
386
|
+
balanceResolverAddress: '0xdF19Da523DA64bBE82eE0E4DFf00d676A8386474',
|
|
284
387
|
params: {
|
|
285
|
-
rpcUrls: [
|
|
286
|
-
chainName:
|
|
388
|
+
rpcUrls: ['https://mainnet.aurora.dev'],
|
|
389
|
+
chainName: 'Aurora',
|
|
287
390
|
nativeCurrency: {
|
|
288
391
|
decimals: 18,
|
|
289
|
-
name:
|
|
290
|
-
symbol:
|
|
392
|
+
name: 'Aurora ETH',
|
|
393
|
+
symbol: 'AETH',
|
|
291
394
|
},
|
|
292
395
|
},
|
|
293
396
|
},
|
|
294
397
|
{
|
|
295
|
-
name:
|
|
398
|
+
name: 'Fuse',
|
|
296
399
|
chainId: 122,
|
|
297
|
-
zerionName:
|
|
298
|
-
color:
|
|
299
|
-
explorerUrl:
|
|
400
|
+
zerionName: 'fuse',
|
|
401
|
+
color: '#78d64b',
|
|
402
|
+
explorerUrl: 'https://explorer.fuse.io',
|
|
403
|
+
apiURL: 'https://explorer.fuse.io/api/v2',
|
|
404
|
+
viemChain: fuse,
|
|
405
|
+
legacySupported: false,
|
|
300
406
|
fakeTransactionHash:
|
|
301
|
-
|
|
407
|
+
'0xf22a8031de9b978a57c728e18c6b54633356c39db4d0466e53b9b7c3ee7f8def',
|
|
302
408
|
get serverRpcUrl() {
|
|
303
|
-
return process.env?.FUSE_RPC_URL || this.params.rpcUrls[0]
|
|
409
|
+
return process.env?.FUSE_RPC_URL || this.params.rpcUrls[0]
|
|
304
410
|
},
|
|
305
|
-
usdcAddress:
|
|
306
|
-
balanceResolverAddress:
|
|
411
|
+
usdcAddress: '',
|
|
412
|
+
balanceResolverAddress: '0xdF19Da523DA64bBE82eE0E4DFf00d676A8386474',
|
|
307
413
|
params: {
|
|
308
|
-
rpcUrls: [
|
|
309
|
-
chainName:
|
|
414
|
+
rpcUrls: ['https://fuse-mainnet.chainstacklabs.com'],
|
|
415
|
+
chainName: 'Fuse',
|
|
310
416
|
nativeCurrency: {
|
|
311
417
|
decimals: 18,
|
|
312
|
-
name:
|
|
313
|
-
symbol:
|
|
418
|
+
name: 'Fuse',
|
|
419
|
+
symbol: 'fuse',
|
|
314
420
|
},
|
|
315
421
|
},
|
|
316
422
|
},
|
|
317
423
|
{
|
|
318
|
-
name:
|
|
424
|
+
name: 'Scroll',
|
|
319
425
|
chainId: 534352,
|
|
320
|
-
color:
|
|
321
|
-
|
|
426
|
+
color: '#78d64b',
|
|
427
|
+
ankrName: 'scroll',
|
|
428
|
+
legacySupported: false,
|
|
429
|
+
explorerUrl: 'https://scrollscan.com',
|
|
430
|
+
apiURL: 'https://api.scrollscan.com/api',
|
|
431
|
+
viemChain: scroll,
|
|
322
432
|
fakeTransactionHash:
|
|
323
|
-
|
|
433
|
+
'0x6bf297c414264fc8cddd47224632b4426a02138df2f50fe891eca87f6aefea01',
|
|
324
434
|
get serverRpcUrl() {
|
|
325
|
-
return process.env?.SCROLL_RPC_URL || this.params.rpcUrls[0]
|
|
435
|
+
return process.env?.SCROLL_RPC_URL || this.params.rpcUrls[0]
|
|
326
436
|
},
|
|
327
437
|
params: {
|
|
328
|
-
rpcUrls: [
|
|
329
|
-
chainName:
|
|
438
|
+
rpcUrls: ['https://rpc.scroll.io'],
|
|
439
|
+
chainName: 'Scroll',
|
|
330
440
|
nativeCurrency: {
|
|
331
|
-
name:
|
|
332
|
-
symbol:
|
|
441
|
+
name: 'Ethereum',
|
|
442
|
+
symbol: 'ETH',
|
|
333
443
|
decimals: 18,
|
|
334
444
|
},
|
|
335
445
|
},
|
|
336
446
|
},
|
|
337
447
|
{
|
|
338
|
-
name:
|
|
448
|
+
name: 'opBNB',
|
|
339
449
|
chainId: 204,
|
|
340
|
-
color:
|
|
341
|
-
explorerUrl:
|
|
450
|
+
color: '#78d64b',
|
|
451
|
+
explorerUrl: 'https://opbnbscan.com',
|
|
452
|
+
apiURL: null,
|
|
453
|
+
viemChain: opBNB,
|
|
454
|
+
legacySupported: false,
|
|
342
455
|
fakeTransactionHash:
|
|
343
|
-
|
|
456
|
+
'0xb9438a3eae61442bc7d419d79930370ce09ac0f46e0695025751e3bfe1a931e7',
|
|
344
457
|
get serverRpcUrl() {
|
|
345
|
-
return process.env?.OPBNB_RPC_URL || this.params.rpcUrls[0]
|
|
458
|
+
return process.env?.OPBNB_RPC_URL || this.params.rpcUrls[0]
|
|
346
459
|
},
|
|
347
460
|
params: {
|
|
348
|
-
rpcUrls: [
|
|
349
|
-
chainName:
|
|
461
|
+
rpcUrls: ['https://opbnb-mainnet-rpc.bnbchain.org'],
|
|
462
|
+
chainName: 'opBNB',
|
|
350
463
|
nativeCurrency: {
|
|
351
|
-
name:
|
|
352
|
-
symbol:
|
|
464
|
+
name: 'BNB',
|
|
465
|
+
symbol: 'BNB',
|
|
353
466
|
decimals: 18,
|
|
354
467
|
},
|
|
355
468
|
},
|
|
356
469
|
},
|
|
470
|
+
{
|
|
471
|
+
chainId: 34443,
|
|
472
|
+
name: 'Mode',
|
|
473
|
+
color: '#d7ff00',
|
|
474
|
+
explorerUrl: 'https://explorer.mode.network',
|
|
475
|
+
legacySupported: false,
|
|
476
|
+
fakeTransactionHash: '0xb58002db3481f2c51855a91280ec940d0bebec075c4b362b9f90c21a2b14edbe',
|
|
477
|
+
apiURL: 'https://explorer.mode.network/api/v2',
|
|
478
|
+
params: {
|
|
479
|
+
rpcUrls: ['https://1rpc.io/mode'],
|
|
480
|
+
chainName: 'Mode',
|
|
481
|
+
nativeCurrency: {
|
|
482
|
+
name: 'Ethereum',
|
|
483
|
+
symbol: 'ETH',
|
|
484
|
+
decimals: 18,
|
|
485
|
+
},
|
|
486
|
+
},
|
|
487
|
+
get serverRpcUrl() {
|
|
488
|
+
return process.env?.MODE_RPC_URL || this.params.rpcUrls[0]
|
|
489
|
+
},
|
|
490
|
+
viemChain: mode,
|
|
491
|
+
},
|
|
492
|
+
{
|
|
493
|
+
chainId: 81457,
|
|
494
|
+
name: 'Blast',
|
|
495
|
+
color: '#78d64b',
|
|
496
|
+
explorerUrl: 'https://blastscan.io',
|
|
497
|
+
apiURL: 'https://api.blastscan.io/api',
|
|
498
|
+
legacySupported: false,
|
|
499
|
+
fakeTransactionHash: '0x934ed8516242f8c08bb9e0e90bb1f989d92ceb6b0333e86ac2d555f25ac27e58',
|
|
500
|
+
params: {
|
|
501
|
+
rpcUrls: ['https://rpc.ankr.com/blast'],
|
|
502
|
+
chainName: 'Blast',
|
|
503
|
+
nativeCurrency: {
|
|
504
|
+
name: 'Ethereum',
|
|
505
|
+
symbol: 'ETH',
|
|
506
|
+
decimals: 18,
|
|
507
|
+
},
|
|
508
|
+
},
|
|
509
|
+
get serverRpcUrl() {
|
|
510
|
+
return process.env?.BLAST_RPC_URL || this.params.rpcUrls[0]
|
|
511
|
+
},
|
|
512
|
+
viemChain: blast,
|
|
513
|
+
},
|
|
514
|
+
{
|
|
515
|
+
chainId: 59144,
|
|
516
|
+
name: 'Linea',
|
|
517
|
+
apiURL: 'https://api.lineascan.build/api',
|
|
518
|
+
color: '#78d64b',
|
|
519
|
+
explorerUrl: 'https://lineascan.build',
|
|
520
|
+
legacySupported: false,
|
|
521
|
+
params: {
|
|
522
|
+
rpcUrls: ['https://linea-mainnet.public.blastapi.io'],
|
|
523
|
+
chainName: 'Linea',
|
|
524
|
+
nativeCurrency: {
|
|
525
|
+
name: 'Linea Ether',
|
|
526
|
+
symbol: 'ETH',
|
|
527
|
+
decimals: 18,
|
|
528
|
+
},
|
|
529
|
+
},
|
|
530
|
+
fakeTransactionHash: '0x62d068a66eb1515a09e993200e8a495c7fead512689ba78e50523c8e83bbf5b5',
|
|
531
|
+
get serverRpcUrl() {
|
|
532
|
+
return process.env?.LINEA_RPC_URL || this.params.rpcUrls[0]
|
|
533
|
+
},
|
|
534
|
+
viemChain: linea,
|
|
535
|
+
ankrName: 'linea',
|
|
536
|
+
},
|
|
537
|
+
{
|
|
538
|
+
chainId: plasma.id,
|
|
539
|
+
name: plasma.name,
|
|
540
|
+
apiURL: null,
|
|
541
|
+
color: '#78d64b',
|
|
542
|
+
explorerUrl: plasma.blockExplorers.default.url,
|
|
543
|
+
fakeTransactionHash: '0x3523aad6a790c81ef57e1afd4320760b7cea6dd3424ccd582e00ffc9bdc316e6',
|
|
544
|
+
legacySupported: false,
|
|
545
|
+
get serverRpcUrl() {
|
|
546
|
+
return process.env?.PLASMA_RPC_URL || this.params.rpcUrls[0]
|
|
547
|
+
},
|
|
548
|
+
viemChain: plasma,
|
|
549
|
+
params: {
|
|
550
|
+
rpcUrls: plasma.rpcUrls.default.http,
|
|
551
|
+
chainName: plasma.name,
|
|
552
|
+
nativeCurrency: {
|
|
553
|
+
name: plasma.nativeCurrency.name,
|
|
554
|
+
symbol: plasma.nativeCurrency.symbol,
|
|
555
|
+
decimals: plasma.nativeCurrency.decimals,
|
|
556
|
+
},
|
|
557
|
+
},
|
|
558
|
+
|
|
559
|
+
},
|
|
560
|
+
// {
|
|
561
|
+
// name: sonic.name,
|
|
562
|
+
// chainId: sonic.id,
|
|
563
|
+
// explorerUrl: sonic.blockExplorers.default.url,
|
|
564
|
+
// legacySupported: false,
|
|
565
|
+
// viemChain: sonic,
|
|
566
|
+
// color: '#78d64b',
|
|
567
|
+
// apiURL: null,
|
|
568
|
+
// fakeTransactionHash: '0xc8fe01a980987295c36e898b4681fa8c937eb8dfd48a3ae080956b36a66195ee',
|
|
569
|
+
// get serverRpcUrl() {
|
|
570
|
+
// return process.env?.SONIC_RPC_URL || this.params.rpcUrls[0]
|
|
571
|
+
// },
|
|
572
|
+
// params: {
|
|
573
|
+
// rpcUrls: sonic.rpcUrls.default.http as any,
|
|
574
|
+
// chainName: sonic.name,
|
|
575
|
+
// nativeCurrency: sonic.nativeCurrency,
|
|
576
|
+
// },
|
|
577
|
+
// },
|
|
578
|
+
// {
|
|
579
|
+
// name: "Manta Pacific",
|
|
580
|
+
// chainId: 169,
|
|
581
|
+
// explorerUrl: "https://pacific-explorer.manta.network",
|
|
582
|
+
// params: {
|
|
583
|
+
// rpcUrls: ["https://pacific-rpc.manta.network/http"],
|
|
584
|
+
// chainName: "Manta Pacific",
|
|
585
|
+
// nativeCurrency: {
|
|
586
|
+
// name: "Ethereum",
|
|
587
|
+
// symbol: "ETH",
|
|
588
|
+
// decimals: 18,
|
|
589
|
+
// },
|
|
590
|
+
// },
|
|
591
|
+
// color: "#78d64b",
|
|
592
|
+
// fakeTransactionHash: "0x3fB128aA5AC254C8539996B11C587E521AE0d3ab",
|
|
593
|
+
// get serverRpcUrl() {
|
|
594
|
+
// return process.env?.MANTA_RPC_URL || this.params.rpcUrls[0];
|
|
595
|
+
// },
|
|
596
|
+
// },
|
|
357
597
|
{
|
|
358
598
|
name: AVO_PROD_CHAIN_NAME,
|
|
359
599
|
chainId: AVO_PROD_CHAIN_ID,
|
|
600
|
+
apiURL: null,
|
|
360
601
|
isAvocado: true,
|
|
361
|
-
balanceResolverAddress:
|
|
362
|
-
fakeTransactionHash:
|
|
363
|
-
|
|
364
|
-
|
|
602
|
+
balanceResolverAddress: '',
|
|
603
|
+
fakeTransactionHash: '',
|
|
604
|
+
legacySupported: false,
|
|
605
|
+
viemChain: avocado,
|
|
606
|
+
color: '#16A34A',
|
|
607
|
+
usdcAddress: '',
|
|
365
608
|
serverRpcUrl: AVO_PROD_RPC_URL,
|
|
366
609
|
explorerUrl: AVO_PROD_EXPLORER_URL,
|
|
367
610
|
params: {
|
|
368
611
|
chainName: AVO_PROD_CHAIN_NAME,
|
|
369
612
|
nativeCurrency: {
|
|
370
|
-
name:
|
|
371
|
-
symbol:
|
|
613
|
+
name: 'Avocado',
|
|
614
|
+
symbol: 'USDC',
|
|
372
615
|
decimals: 18,
|
|
373
616
|
},
|
|
374
|
-
iconUrls: [
|
|
617
|
+
iconUrls: ['https://avocado.instadapp.io/logo.svg'],
|
|
375
618
|
rpcUrls: [AVO_PROD_RPC_URL],
|
|
376
619
|
},
|
|
377
620
|
},
|
|
378
621
|
{
|
|
379
622
|
name: AVO_STAGING_CHAIN_NAME,
|
|
623
|
+
apiURL: null,
|
|
380
624
|
chainId: AVO_STAGING_CHAIN_ID,
|
|
381
625
|
serverRpcUrl: AVO_STAGING_RPC_URL,
|
|
382
|
-
color:
|
|
626
|
+
color: '#16A34A',
|
|
383
627
|
explorerUrl: AVO_STAGING_EXPLORER_URL,
|
|
384
|
-
|
|
628
|
+
legacySupported: false,
|
|
629
|
+
viemChain: avocadoStaging,
|
|
630
|
+
fakeTransactionHash: '',
|
|
385
631
|
isAvocado: true,
|
|
386
|
-
balanceResolverAddress:
|
|
387
|
-
usdcAddress:
|
|
632
|
+
balanceResolverAddress: '',
|
|
633
|
+
usdcAddress: '',
|
|
388
634
|
params: {
|
|
389
635
|
chainName: AVO_STAGING_CHAIN_NAME,
|
|
390
636
|
nativeCurrency: {
|
|
391
|
-
name:
|
|
392
|
-
symbol:
|
|
637
|
+
name: 'Avocado',
|
|
638
|
+
symbol: 'USDC',
|
|
393
639
|
decimals: 18,
|
|
394
640
|
},
|
|
395
|
-
iconUrls: [
|
|
641
|
+
iconUrls: ['https://avocado.instadapp.io/logo.svg'],
|
|
396
642
|
rpcUrls: [AVO_STAGING_RPC_URL],
|
|
397
643
|
},
|
|
398
644
|
},
|
|
399
|
-
]
|
|
645
|
+
]
|
|
400
646
|
|
|
401
647
|
export const chainUsdcAddresses = [
|
|
402
|
-
{ chainId: 1, address:
|
|
403
|
-
{ chainId: 10, address:
|
|
404
|
-
{ chainId: 56, address:
|
|
405
|
-
{ chainId: 100, address:
|
|
406
|
-
{ chainId: 137, address:
|
|
407
|
-
{ chainId:
|
|
408
|
-
{ chainId:
|
|
409
|
-
{ chainId: 42161, address:
|
|
410
|
-
{ chainId:
|
|
411
|
-
{ chainId: 43114, address:
|
|
412
|
-
{ chainId:
|
|
648
|
+
{ chainId: 1, address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48' },
|
|
649
|
+
{ chainId: 10, address: '0x7f5c764cbc14f9669b88837ca1490cca17c31607' },
|
|
650
|
+
{ chainId: 56, address: '0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d' },
|
|
651
|
+
{ chainId: 100, address: '0xddafbb505ad214d7b80b1f830fccc89b60fb7a83' },
|
|
652
|
+
{ chainId: 137, address: '0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174' },
|
|
653
|
+
{ chainId: 137, address: '0x3c499c542cef5e3811e1192ce70d8cc03d5c3359' },
|
|
654
|
+
{ chainId: 250, address: '0x04068da6c83afcfa0e13ba15a6696662335d5b75' },
|
|
655
|
+
{ chainId: 42161, address: '0xff970a61a04b1ca14834a43f5de4533ebddb5cc8' },
|
|
656
|
+
{ chainId: 42161, address: '0xaf88d065e77c8cc2239327c5edb3a432268e5831' },
|
|
657
|
+
{ chainId: 43114, address: '0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e' },
|
|
658
|
+
{ chainId: 43114, address: '0xa7d7079b0fead91f3e65f86e8915cb59c1a4c664' },
|
|
659
|
+
{ chainId: 1101, address: '0xa8ce8aee21bc2a48a5ef670afcc9274c7bbbc035' },
|
|
413
660
|
{
|
|
414
661
|
chainId: 1313161554,
|
|
415
|
-
address:
|
|
662
|
+
address: '0xB12BFcA5A55806AaF64E99521918A4bf0fC40802',
|
|
416
663
|
},
|
|
417
|
-
{ chainId: 8453, address:
|
|
418
|
-
]
|
|
664
|
+
{ chainId: 8453, address: '0xd9aAEc86B65D86f6A7B5B1b0c42FFA531710b6CA' },
|
|
665
|
+
]
|
|
419
666
|
|
|
420
|
-
export
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
return networks.find((i) => i.chainId == chainId)!;
|
|
424
|
-
};
|
|
667
|
+
export function getNetworkByChainId(chainId: ChainId | number | string): Network {
|
|
668
|
+
return networks.find(i => i.chainId == chainId)!
|
|
669
|
+
}
|
|
425
670
|
|
|
426
671
|
export const availableNetworks = networks.filter(
|
|
427
|
-
|
|
428
|
-
)
|
|
672
|
+
network => !network.isAvocado,
|
|
673
|
+
)
|
|
429
674
|
|
|
430
|
-
export
|
|
431
|
-
const network = getNetworkByChainId(chainId)
|
|
432
|
-
return network?.name
|
|
433
|
-
}
|
|
675
|
+
export function chainIdToName(chainId: ChainId | number | string) {
|
|
676
|
+
const network = getNetworkByChainId(chainId)
|
|
677
|
+
return network?.name
|
|
678
|
+
}
|
|
434
679
|
|
|
435
|
-
export
|
|
680
|
+
export function getRpcURLByChainId(chainId: ChainId | number | string) {
|
|
436
681
|
try {
|
|
437
|
-
const network = getNetworkByChainId(chainId)
|
|
438
|
-
return network.params.rpcUrls[0]
|
|
439
|
-
}
|
|
440
|
-
|
|
682
|
+
const network = getNetworkByChainId(chainId)
|
|
683
|
+
return network.params.rpcUrls[0]
|
|
684
|
+
}
|
|
685
|
+
catch {
|
|
686
|
+
return ''
|
|
441
687
|
}
|
|
442
|
-
}
|
|
688
|
+
}
|
|
443
689
|
|
|
444
690
|
export const RPCMap = networks.reduce((acc, network) => {
|
|
445
|
-
acc[network.chainId] = network.params.rpcUrls[0]
|
|
446
|
-
return acc
|
|
447
|
-
}, {} as Record<number, string>)
|
|
691
|
+
acc[network.chainId] = network.params.rpcUrls[0]
|
|
692
|
+
return acc
|
|
693
|
+
}, {} as Record<number, string>)
|
|
448
694
|
|
|
449
|
-
export const networkIds = networks.map(
|
|
695
|
+
export const networkIds = networks.map(network => network.chainId)
|
|
450
696
|
|
|
451
|
-
const rpcInstances: Record<string, ethers.providers.StaticJsonRpcProvider> = {}
|
|
697
|
+
const rpcInstances: Record<string, ethers.providers.StaticJsonRpcProvider> = {}
|
|
452
698
|
const serverRpcInstances: Record<
|
|
453
699
|
string,
|
|
454
700
|
ethers.providers.StaticJsonRpcProvider
|
|
455
|
-
> = {}
|
|
701
|
+
> = {}
|
|
456
702
|
|
|
457
|
-
export
|
|
703
|
+
export function getServerRpcProvider(chainId: number | string) {
|
|
458
704
|
if (!rpcInstances[chainId]) {
|
|
459
|
-
const network = networks.find(
|
|
705
|
+
const network = networks.find(n => n.chainId == chainId)
|
|
460
706
|
serverRpcInstances[chainId] = new ethers.providers.StaticJsonRpcProvider(
|
|
461
|
-
network?.serverRpcUrl
|
|
462
|
-
)
|
|
707
|
+
network?.serverRpcUrl,
|
|
708
|
+
)
|
|
463
709
|
}
|
|
464
710
|
|
|
465
|
-
return serverRpcInstances[chainId]
|
|
466
|
-
}
|
|
711
|
+
return serverRpcInstances[chainId]
|
|
712
|
+
}
|
|
467
713
|
|
|
468
|
-
export
|
|
714
|
+
export function getRpcProvider(chainId: number | string) {
|
|
469
715
|
if (!rpcInstances[chainId]) {
|
|
470
716
|
rpcInstances[chainId] = new ethers.providers.StaticJsonRpcProvider(
|
|
471
|
-
getRpcURLByChainId(Number(chainId))
|
|
472
|
-
)
|
|
717
|
+
getRpcURLByChainId(Number(chainId)),
|
|
718
|
+
)
|
|
473
719
|
}
|
|
474
720
|
|
|
475
|
-
return rpcInstances[chainId]
|
|
476
|
-
}
|
|
721
|
+
return rpcInstances[chainId]
|
|
722
|
+
}
|
|
477
723
|
|
|
478
|
-
export
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
};
|
|
724
|
+
export function getExplorerUrl(chainId: ChainId | number | string, suffix: `/${string}` = '/') {
|
|
725
|
+
const network = getNetworkByChainId(chainId)
|
|
726
|
+
if (!network)
|
|
727
|
+
return ''
|
|
728
|
+
return `${network.explorerUrl}${suffix}`
|
|
729
|
+
}
|