@instadapp/avocado-base 0.0.0-dev.261e34f → 0.0.0-dev.2671274
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/abi/forwarder.json +1253 -149
- package/abi/multisigForwarder.json +697 -0
- package/app.vue +7 -0
- package/assets/images/icons/arrow-left.svg +5 -0
- package/assets/images/icons/arrow-right.svg +5 -0
- package/assets/images/icons/avocado.svg +4 -0
- package/assets/images/icons/bridge-2.svg +3 -0
- package/assets/images/icons/bridge.svg +7 -0
- package/assets/images/icons/calendar.svg +8 -0
- package/assets/images/icons/change-threshold.svg +4 -0
- package/assets/images/icons/check-circle.svg +4 -0
- package/assets/images/icons/chevron-down.svg +4 -0
- package/assets/images/icons/clipboard.svg +7 -0
- package/assets/images/icons/clock-circle.svg +5 -0
- package/assets/images/icons/copy.svg +5 -0
- package/assets/images/icons/cross-transfer.svg +7 -0
- package/assets/images/icons/dapp.svg +4 -0
- package/assets/images/icons/deploy.svg +12 -0
- package/assets/images/icons/error-circle.svg +6 -0
- package/assets/images/icons/exclamation-circle.svg +13 -0
- package/assets/images/icons/exclamation-octagon.svg +13 -0
- package/assets/images/icons/exclamation-triangle.svg +5 -0
- package/assets/images/icons/external-link.svg +6 -0
- package/assets/images/icons/eye.svg +4 -0
- package/assets/images/icons/flowers.svg +8 -0
- package/assets/images/icons/gas-emoji.svg +193 -0
- package/assets/images/icons/gas.svg +14 -0
- package/assets/images/icons/gift.svg +153 -0
- package/assets/images/icons/globe.svg +110 -0
- package/assets/images/icons/hamburger.svg +6 -0
- package/assets/images/icons/hammer.svg +5 -0
- package/assets/images/icons/info-2.svg +12 -0
- package/assets/images/icons/instadapp-pro.svg +4 -0
- package/assets/images/icons/logout.svg +3 -0
- package/assets/images/icons/moon.svg +3 -0
- package/assets/images/icons/multi-send.svg +7 -0
- package/assets/images/icons/network.svg +13 -0
- package/assets/images/icons/options.svg +5 -0
- package/assets/images/icons/permit-sign.svg +11 -0
- package/assets/images/icons/plus-circle.svg +6 -0
- package/assets/images/icons/plus.svg +5 -0
- package/assets/images/icons/power-off-bg.svg +24 -0
- package/assets/images/icons/power-off.svg +19 -0
- package/assets/images/icons/power-on.svg +19 -0
- package/assets/images/icons/qr.svg +20 -0
- package/assets/images/icons/question-circle.svg +14 -0
- package/assets/images/icons/refresh.svg +6 -0
- package/assets/images/icons/reject-proposal.svg +6 -0
- package/assets/images/icons/search.svg +12 -0
- package/assets/images/icons/sun.svg +3 -0
- package/assets/images/icons/transfer.svg +5 -0
- package/assets/images/icons/trash-2.svg +8 -0
- package/assets/images/icons/upgrade.svg +4 -0
- package/assets/images/icons/wave.svg +214 -0
- package/assets/images/icons/x.svg +5 -0
- package/components/ActionLogo.vue +40 -0
- package/components/ActionMetadata.vue +78 -0
- package/components/AuthorityAvatar.vue +38 -0
- package/components/ChainLogo.vue +14 -556
- package/components/CopyClipboard.vue +64 -0
- package/components/metadata/Bridge.vue +59 -0
- package/components/metadata/CrossTransfer.vue +79 -0
- package/components/metadata/GasTopup.vue +39 -0
- package/components/metadata/Permit2.vue +42 -0
- package/components/metadata/Signers.vue +63 -0
- package/components/metadata/Swap.vue +74 -0
- package/components/metadata/Transfer.vue +50 -0
- package/components.d.ts +13 -0
- package/contracts/Forwarder.ts +856 -2
- package/contracts/MultisigForwarder.ts +859 -0
- package/contracts/factories/Forwarder__factory.ts +816 -16
- package/contracts/factories/MultisigForwarder__factory.ts +721 -0
- package/contracts/factories/index.ts +1 -0
- package/contracts/index.ts +2 -0
- package/nuxt.config.ts +17 -1
- package/package.json +9 -4
- package/utils/avocado.ts +2 -0
- package/utils/bignumber.ts +20 -0
- package/utils/formatter.ts +49 -6
- package/utils/helper.ts +8 -0
- package/utils/metadata.ts +406 -134
- package/utils/network.ts +250 -75
- package/utils/services.ts +21 -0
- package/utils/utils.d.ts +131 -96
package/utils/network.ts
CHANGED
|
@@ -1,36 +1,33 @@
|
|
|
1
1
|
import { ethers } from "ethers";
|
|
2
|
+
import {
|
|
3
|
+
AVO_PROD_CHAIN_NAME,
|
|
4
|
+
AVO_PROD_CHAIN_ID,
|
|
5
|
+
AVO_PROD_RPC_URL,
|
|
6
|
+
AVO_PROD_EXPLORER_URL,
|
|
7
|
+
AVO_STAGING_CHAIN_NAME,
|
|
8
|
+
AVO_STAGING_CHAIN_ID,
|
|
9
|
+
AVO_STAGING_RPC_URL,
|
|
10
|
+
AVO_STAGING_EXPLORER_URL,
|
|
11
|
+
} from "./avocado";
|
|
2
12
|
|
|
3
|
-
export const bridgeDisabledNetworks = [
|
|
13
|
+
export const bridgeDisabledNetworks = [];
|
|
14
|
+
|
|
15
|
+
export const networksSimulationNotSupported = [1313161554, 1101];
|
|
4
16
|
|
|
5
17
|
export const networks: Network[] = [
|
|
6
|
-
{
|
|
7
|
-
name: "Mainnet",
|
|
8
|
-
debankName: "eth",
|
|
9
|
-
ankrName: "eth",
|
|
10
|
-
chainId: 1,
|
|
11
|
-
explorerUrl: "https://etherscan.io",
|
|
12
|
-
get serverRpcUrl() {
|
|
13
|
-
return process.env?.MAINNET_RPC_URL || this.params.rpcUrls[0];
|
|
14
|
-
},
|
|
15
|
-
balanceResolverAddress: "0x5b7D61b389D12e1f5873d0cCEe7E675915AB5F43",
|
|
16
|
-
usdcAddress: "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
|
|
17
|
-
params: {
|
|
18
|
-
rpcUrls: ["https://rpc.ankr.com/eth"],
|
|
19
|
-
nativeCurrency: {
|
|
20
|
-
name: "Ethereum",
|
|
21
|
-
symbol: "ETH",
|
|
22
|
-
decimals: 18,
|
|
23
|
-
},
|
|
24
|
-
},
|
|
25
|
-
},
|
|
26
18
|
{
|
|
27
19
|
name: "Polygon",
|
|
28
20
|
debankName: "matic",
|
|
29
21
|
ankrName: "polygon",
|
|
22
|
+
zerionName: "polygon",
|
|
23
|
+
color: "#7A4ADD",
|
|
30
24
|
chainId: 137,
|
|
31
25
|
balanceResolverAddress: "0x58632D23120b20650262b8A629a14e4F4043E0D9",
|
|
32
26
|
usdcAddress: "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",
|
|
33
27
|
explorerUrl: "https://polygonscan.com",
|
|
28
|
+
apiURL: "https://api.polygonscan.com",
|
|
29
|
+
fakeTransactionHash:
|
|
30
|
+
"0x906c551abd5873a428505b6530ac14d91367820706c7ee525f6d7313265d1c92",
|
|
34
31
|
get serverRpcUrl() {
|
|
35
32
|
return process.env?.POLYGON_RPC_URL || this.params.rpcUrls[0];
|
|
36
33
|
},
|
|
@@ -48,10 +45,15 @@ export const networks: Network[] = [
|
|
|
48
45
|
name: "Arbitrum",
|
|
49
46
|
debankName: "arb",
|
|
50
47
|
ankrName: "arbitrum",
|
|
48
|
+
zerionName: "arbitrum",
|
|
49
|
+
color: "#2D374B",
|
|
51
50
|
chainId: 42161,
|
|
52
51
|
usdcAddress: "0xff970a61a04b1ca14834a43f5de4533ebddb5cc8",
|
|
53
52
|
balanceResolverAddress: "0xca5f37e6D8bB24c5A7958d5eccE7Bd9Aacc944f2",
|
|
53
|
+
fakeTransactionHash:
|
|
54
|
+
"0x9fa291c3b09d31f19b1fa5dd05f30169d1364036d5f7c14b026410bc07bd8843",
|
|
54
55
|
explorerUrl: "https://arbiscan.io",
|
|
56
|
+
apiURL: "https://api.arbiscan.io",
|
|
55
57
|
get serverRpcUrl() {
|
|
56
58
|
return process.env?.ARBITRUM_RPC_URL || this.params.rpcUrls[0];
|
|
57
59
|
},
|
|
@@ -65,13 +67,67 @@ export const networks: Network[] = [
|
|
|
65
67
|
rpcUrls: ["https://arb1.arbitrum.io/rpc"],
|
|
66
68
|
},
|
|
67
69
|
},
|
|
70
|
+
{
|
|
71
|
+
name: "Ethereum",
|
|
72
|
+
debankName: "eth",
|
|
73
|
+
ankrName: "eth",
|
|
74
|
+
zerionName: "ethereum",
|
|
75
|
+
chainId: 1,
|
|
76
|
+
explorerUrl: "https://etherscan.io",
|
|
77
|
+
fakeTransactionHash:
|
|
78
|
+
"0x13232dd32cef2f641ead890a507710c96560c8c9c3d5fab6facb5ec563c49433",
|
|
79
|
+
apiURL: "https://api.etherscan.io",
|
|
80
|
+
color: "#5D5FEF",
|
|
81
|
+
get serverRpcUrl() {
|
|
82
|
+
return process.env?.MAINNET_RPC_URL || this.params.rpcUrls[0];
|
|
83
|
+
},
|
|
84
|
+
balanceResolverAddress: "0x5b7D61b389D12e1f5873d0cCEe7E675915AB5F43",
|
|
85
|
+
usdcAddress: "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
|
|
86
|
+
params: {
|
|
87
|
+
rpcUrls: ["https://rpc.ankr.com/eth"],
|
|
88
|
+
nativeCurrency: {
|
|
89
|
+
name: "Ethereum",
|
|
90
|
+
symbol: "ETH",
|
|
91
|
+
decimals: 18,
|
|
92
|
+
},
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
name: "Base",
|
|
97
|
+
chainId: 8453,
|
|
98
|
+
color: "#1E2024",
|
|
99
|
+
ankrName: "base",
|
|
100
|
+
explorerUrl: "https://basescan.org",
|
|
101
|
+
fakeTransactionHash:
|
|
102
|
+
"0xf7833d80da33730c4fc5d4c64151f0eaa64c0c0535be022af0228a44cc4e9c8e",
|
|
103
|
+
apiURL: "https://api.basescan.org",
|
|
104
|
+
get serverRpcUrl() {
|
|
105
|
+
return process.env?.BASE_RPC_URL || this.params.rpcUrls[0];
|
|
106
|
+
},
|
|
107
|
+
usdcAddress: "0xd9aAEc86B65D86f6A7B5B1b0c42FFA531710b6CA",
|
|
108
|
+
balanceResolverAddress: "0x23c8EAb8a4373dD16b0947Ebe8bf76Ff7A49d13C",
|
|
109
|
+
params: {
|
|
110
|
+
rpcUrls: ["https://rpc.ankr.com/base"],
|
|
111
|
+
chainName: "Base",
|
|
112
|
+
nativeCurrency: {
|
|
113
|
+
name: "Ethereum",
|
|
114
|
+
symbol: "ETH",
|
|
115
|
+
decimals: 18,
|
|
116
|
+
},
|
|
117
|
+
},
|
|
118
|
+
},
|
|
68
119
|
{
|
|
69
120
|
name: "Optimism",
|
|
70
121
|
debankName: "op",
|
|
71
122
|
ankrName: "optimism",
|
|
123
|
+
zerionName: "optimism",
|
|
124
|
+
color: "#FF0420",
|
|
72
125
|
chainId: 10,
|
|
126
|
+
apiURL: "https://api-optimistic.etherscan.io",
|
|
73
127
|
usdcAddress: "0x7f5c764cbc14f9669b88837ca1490cca17c31607",
|
|
74
128
|
balanceResolverAddress: "0xca5f37e6D8bB24c5A7958d5eccE7Bd9Aacc944f2",
|
|
129
|
+
fakeTransactionHash:
|
|
130
|
+
"0xee7311d68059732b05088f2144dfec6c7a4f5fd0433eb85306afcd6bdf17cebc",
|
|
75
131
|
explorerUrl: "https://optimistic.etherscan.io",
|
|
76
132
|
get serverRpcUrl() {
|
|
77
133
|
return process.env?.OPTIMISM_RPC_URL || this.params.rpcUrls[0];
|
|
@@ -87,32 +143,40 @@ export const networks: Network[] = [
|
|
|
87
143
|
},
|
|
88
144
|
},
|
|
89
145
|
{
|
|
90
|
-
name: "
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
146
|
+
name: "Polygon zkEVM",
|
|
147
|
+
chainId: 1101,
|
|
148
|
+
color: "#8544f6",
|
|
149
|
+
ankrName: "polygon_zkevm",
|
|
150
|
+
explorerUrl: "https://zkevm.polygonscan.com",
|
|
151
|
+
apiURL: "https://api-zkevm.polygonscan.com",
|
|
152
|
+
balanceResolverAddress: "0x48D1Fa5Ee6691a1E0B45d2B515650997BEA27a01",
|
|
153
|
+
fakeTransactionHash:
|
|
154
|
+
"0x1077130463ade91ad4e9c43c3195298e26a99970975238128912490eea12bf41",
|
|
155
|
+
usdcAddress: "0xa8ce8aee21bc2a48a5ef670afcc9274c7bbbc035",
|
|
97
156
|
get serverRpcUrl() {
|
|
98
|
-
return process.env?.
|
|
157
|
+
return process.env?.POLYGON_ZKEVM_RPC_URL || this.params.rpcUrls[0];
|
|
99
158
|
},
|
|
100
159
|
params: {
|
|
101
|
-
chainName: "
|
|
160
|
+
chainName: "polygon zkEVM",
|
|
161
|
+
rpcUrls: ["https://zkevm-rpc.com"],
|
|
102
162
|
nativeCurrency: {
|
|
103
|
-
name: "
|
|
104
|
-
symbol: "
|
|
163
|
+
name: "Ethereum",
|
|
164
|
+
symbol: "ETH",
|
|
105
165
|
decimals: 18,
|
|
106
166
|
},
|
|
107
|
-
rpcUrls: ["https://api.avax.network/ext/bc/C/rpc"],
|
|
108
167
|
},
|
|
109
168
|
},
|
|
110
169
|
{
|
|
111
170
|
name: "BSC",
|
|
112
171
|
debankName: "bsc",
|
|
113
172
|
ankrName: "bsc",
|
|
173
|
+
zerionName: "binance-smart-chain",
|
|
174
|
+
color: "#F3BA2F",
|
|
114
175
|
chainId: 56,
|
|
115
176
|
explorerUrl: "https://bscscan.com",
|
|
177
|
+
fakeTransactionHash:
|
|
178
|
+
"0x897d54bf8e492f840bd4d8f1e743bfcab8226ab4d5a899e47ee433dcd6d6abf7",
|
|
179
|
+
apiURL: "https://api.bscscan.com",
|
|
116
180
|
usdcAddress: "0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d",
|
|
117
181
|
balanceResolverAddress: "0xb808cff38706e267067b0af427726aa099f69f89",
|
|
118
182
|
get serverRpcUrl() {
|
|
@@ -128,13 +192,68 @@ export const networks: Network[] = [
|
|
|
128
192
|
},
|
|
129
193
|
},
|
|
130
194
|
},
|
|
195
|
+
{
|
|
196
|
+
name: "Avalanche",
|
|
197
|
+
debankName: "avax",
|
|
198
|
+
ankrName: "avalanche",
|
|
199
|
+
zerionName: "avalanche",
|
|
200
|
+
color: "#EB5757",
|
|
201
|
+
chainId: 43114,
|
|
202
|
+
usdcAddress: "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e",
|
|
203
|
+
balanceResolverAddress: "0x63009f31D054E0ac9F321Cf0D642375236A4Bf1E",
|
|
204
|
+
explorerUrl: "https://snowtrace.io",
|
|
205
|
+
fakeTransactionHash:
|
|
206
|
+
"0x233aac7402558dd4e23f938a50f983e67f5c9604233981c7ac74e63737b8294e",
|
|
207
|
+
apiURL: "https://api.snowtrace.io",
|
|
208
|
+
get serverRpcUrl() {
|
|
209
|
+
return process.env?.AVALANCHE_RPC_URL || this.params.rpcUrls[0];
|
|
210
|
+
},
|
|
211
|
+
params: {
|
|
212
|
+
chainName: "Avalanche Network",
|
|
213
|
+
nativeCurrency: {
|
|
214
|
+
name: "Avalanche",
|
|
215
|
+
symbol: "AVAX",
|
|
216
|
+
decimals: 18,
|
|
217
|
+
},
|
|
218
|
+
rpcUrls: ["https://rpc.ankr.com/avalanche"],
|
|
219
|
+
},
|
|
220
|
+
},
|
|
221
|
+
{
|
|
222
|
+
name: "Fantom",
|
|
223
|
+
chainId: 250,
|
|
224
|
+
zerionName: "fantom",
|
|
225
|
+
explorerUrl: "https://ftmscan.com",
|
|
226
|
+
ankrName: "fantom",
|
|
227
|
+
color: "#1969ff",
|
|
228
|
+
get serverRpcUrl() {
|
|
229
|
+
return process.env?.FANTOM_RPC_URL || this.params.rpcUrls[0];
|
|
230
|
+
},
|
|
231
|
+
usdcAddress: "0x04068da6c83afcfa0e13ba15a6696662335d5b75",
|
|
232
|
+
balanceResolverAddress: "0x929376c77a2fb8152375a089a4fccf84ff481479",
|
|
233
|
+
fakeTransactionHash:
|
|
234
|
+
"0x1e9a8405d660172314124e06896212c0786d7fb1550b89410d4bc87e9e8054e4",
|
|
235
|
+
params: {
|
|
236
|
+
rpcUrls: ["https://rpc.ankr.com/fantom"],
|
|
237
|
+
chainName: "Fantom",
|
|
238
|
+
nativeCurrency: {
|
|
239
|
+
name: "Fantom",
|
|
240
|
+
symbol: "FTM",
|
|
241
|
+
decimals: 18,
|
|
242
|
+
},
|
|
243
|
+
},
|
|
244
|
+
},
|
|
131
245
|
{
|
|
132
246
|
name: "Gnosis",
|
|
133
247
|
debankName: "xdai",
|
|
248
|
+
zerionName: "xdai",
|
|
249
|
+
color: "#04795C",
|
|
134
250
|
ankrName: "gnosis",
|
|
135
251
|
chainId: 100,
|
|
136
252
|
balanceResolverAddress: "0xfaa244e276b1597f663975ed007ee4ff70d27849",
|
|
137
253
|
explorerUrl: "https://gnosisscan.io",
|
|
254
|
+
fakeTransactionHash:
|
|
255
|
+
"0x1513033806310a2c3b29f2276f8aa7388461b0ef9f8499c297e68c12187c179b",
|
|
256
|
+
apiURL: "https://api.gnosisscan.io",
|
|
138
257
|
usdcAddress: "0xddafbb505ad214d7b80b1f830fccc89b60fb7a83",
|
|
139
258
|
get serverRpcUrl() {
|
|
140
259
|
return process.env?.GNOSIS_RPC_URL || this.params.rpcUrls[0];
|
|
@@ -150,18 +269,64 @@ export const networks: Network[] = [
|
|
|
150
269
|
},
|
|
151
270
|
},
|
|
152
271
|
{
|
|
153
|
-
name: "
|
|
154
|
-
chainId:
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
272
|
+
name: "Aurora",
|
|
273
|
+
chainId: 1313161554,
|
|
274
|
+
zerionName: "aurora",
|
|
275
|
+
color: "#78d64b",
|
|
276
|
+
explorerUrl: "https://explorer.mainnet.aurora.dev",
|
|
277
|
+
fakeTransactionHash:
|
|
278
|
+
"0x0923401c5a80c39a5cd57c098a6c4729edbefd0db6894def7d349493f4ff3ec6",
|
|
158
279
|
get serverRpcUrl() {
|
|
159
|
-
return process.env?.
|
|
280
|
+
return process.env?.AURORA_RPC_URL || this.params.rpcUrls[0];
|
|
160
281
|
},
|
|
282
|
+
usdcAddress: "0xB12BFcA5A55806AaF64E99521918A4bf0fC40802",
|
|
283
|
+
balanceResolverAddress: "0xdF19Da523DA64bBE82eE0E4DFf00d676A8386474",
|
|
161
284
|
params: {
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
285
|
+
rpcUrls: ["https://mainnet.aurora.dev"],
|
|
286
|
+
chainName: "Aurora",
|
|
287
|
+
nativeCurrency: {
|
|
288
|
+
decimals: 18,
|
|
289
|
+
name: "Aurora ETH",
|
|
290
|
+
symbol: "AETH",
|
|
291
|
+
},
|
|
292
|
+
},
|
|
293
|
+
},
|
|
294
|
+
{
|
|
295
|
+
name: "Fuse",
|
|
296
|
+
chainId: 122,
|
|
297
|
+
zerionName: "fuse",
|
|
298
|
+
color: "#78d64b",
|
|
299
|
+
explorerUrl: "https://explorer.fuse.io",
|
|
300
|
+
fakeTransactionHash:
|
|
301
|
+
"0xf22a8031de9b978a57c728e18c6b54633356c39db4d0466e53b9b7c3ee7f8def",
|
|
302
|
+
get serverRpcUrl() {
|
|
303
|
+
return process.env?.FUSE_RPC_URL || this.params.rpcUrls[0];
|
|
304
|
+
},
|
|
305
|
+
usdcAddress: "",
|
|
306
|
+
balanceResolverAddress: "0xdF19Da523DA64bBE82eE0E4DFf00d676A8386474",
|
|
307
|
+
params: {
|
|
308
|
+
rpcUrls: ["https://fuse-mainnet.chainstacklabs.com"],
|
|
309
|
+
chainName: "Fuse",
|
|
310
|
+
nativeCurrency: {
|
|
311
|
+
decimals: 18,
|
|
312
|
+
name: "Fuse",
|
|
313
|
+
symbol: "fuse",
|
|
314
|
+
},
|
|
315
|
+
},
|
|
316
|
+
},
|
|
317
|
+
{
|
|
318
|
+
name: "Scroll",
|
|
319
|
+
chainId: 534352,
|
|
320
|
+
color: "#78d64b",
|
|
321
|
+
explorerUrl: "https://scrollscan.com",
|
|
322
|
+
fakeTransactionHash:
|
|
323
|
+
"0x6bf297c414264fc8cddd47224632b4426a02138df2f50fe891eca87f6aefea01",
|
|
324
|
+
get serverRpcUrl() {
|
|
325
|
+
return process.env?.SCROLL_RPC_URL || this.params.rpcUrls[0];
|
|
326
|
+
},
|
|
327
|
+
params: {
|
|
328
|
+
rpcUrls: ["https://rpc.scroll.io"],
|
|
329
|
+
chainName: "Scroll",
|
|
165
330
|
nativeCurrency: {
|
|
166
331
|
name: "Ethereum",
|
|
167
332
|
symbol: "ETH",
|
|
@@ -169,41 +334,22 @@ export const networks: Network[] = [
|
|
|
169
334
|
},
|
|
170
335
|
},
|
|
171
336
|
},
|
|
172
|
-
// {
|
|
173
|
-
// name: "Aurora",
|
|
174
|
-
// chainId: 1313161554,
|
|
175
|
-
// explorerUrl: "https://explorer.mainnet.aurora.dev",
|
|
176
|
-
// get serverRpcUrl() {
|
|
177
|
-
// return process.env?.AURORA_RPC_URL || this.params.rpcUrls[0];
|
|
178
|
-
// },
|
|
179
|
-
// usdcAddress: "0xB12BFcA5A55806AaF64E99521918A4bf0fC40802",
|
|
180
|
-
// balanceResolverAddress: "0xdF19Da523DA64bBE82eE0E4DFf00d676A8386474",
|
|
181
|
-
// params: {
|
|
182
|
-
// rpcUrls: ["https://mainnet.aurora.dev"],
|
|
183
|
-
// chainName: "Aurora",
|
|
184
|
-
// nativeCurrency: {
|
|
185
|
-
// decimals: 18,
|
|
186
|
-
// name: "Aurora ETH",
|
|
187
|
-
// symbol: "AETH",
|
|
188
|
-
// },
|
|
189
|
-
// },
|
|
190
|
-
// },
|
|
191
337
|
{
|
|
192
|
-
name: "
|
|
193
|
-
chainId:
|
|
194
|
-
|
|
195
|
-
|
|
338
|
+
name: "opBNB",
|
|
339
|
+
chainId: 204,
|
|
340
|
+
color: "#78d64b",
|
|
341
|
+
explorerUrl: "https://opbnbscan.com",
|
|
342
|
+
fakeTransactionHash:
|
|
343
|
+
"0xb9438a3eae61442bc7d419d79930370ce09ac0f46e0695025751e3bfe1a931e7",
|
|
196
344
|
get serverRpcUrl() {
|
|
197
|
-
return process.env?.
|
|
345
|
+
return process.env?.OPBNB_RPC_URL || this.params.rpcUrls[0];
|
|
198
346
|
},
|
|
199
|
-
usdcAddress: "0x04068da6c83afcfa0e13ba15a6696662335d5b75",
|
|
200
|
-
balanceResolverAddress: "0x929376c77a2fb8152375a089a4fccf84ff481479",
|
|
201
347
|
params: {
|
|
202
|
-
rpcUrls: ["https://rpc.
|
|
203
|
-
chainName: "
|
|
348
|
+
rpcUrls: ["https://opbnb-mainnet-rpc.bnbchain.org"],
|
|
349
|
+
chainName: "opBNB",
|
|
204
350
|
nativeCurrency: {
|
|
205
|
-
name: "
|
|
206
|
-
symbol: "
|
|
351
|
+
name: "BNB",
|
|
352
|
+
symbol: "BNB",
|
|
207
353
|
decimals: 18,
|
|
208
354
|
},
|
|
209
355
|
},
|
|
@@ -213,6 +359,8 @@ export const networks: Network[] = [
|
|
|
213
359
|
chainId: AVO_PROD_CHAIN_ID,
|
|
214
360
|
isAvocado: true,
|
|
215
361
|
balanceResolverAddress: "",
|
|
362
|
+
fakeTransactionHash: "",
|
|
363
|
+
color: "#16A34A",
|
|
216
364
|
usdcAddress: "",
|
|
217
365
|
serverRpcUrl: AVO_PROD_RPC_URL,
|
|
218
366
|
explorerUrl: AVO_PROD_EXPLORER_URL,
|
|
@@ -231,7 +379,9 @@ export const networks: Network[] = [
|
|
|
231
379
|
name: AVO_STAGING_CHAIN_NAME,
|
|
232
380
|
chainId: AVO_STAGING_CHAIN_ID,
|
|
233
381
|
serverRpcUrl: AVO_STAGING_RPC_URL,
|
|
382
|
+
color: "#16A34A",
|
|
234
383
|
explorerUrl: AVO_STAGING_EXPLORER_URL,
|
|
384
|
+
fakeTransactionHash: "",
|
|
235
385
|
isAvocado: true,
|
|
236
386
|
balanceResolverAddress: "",
|
|
237
387
|
usdcAddress: "",
|
|
@@ -248,6 +398,26 @@ export const networks: Network[] = [
|
|
|
248
398
|
},
|
|
249
399
|
];
|
|
250
400
|
|
|
401
|
+
export const chainUsdcAddresses = [
|
|
402
|
+
{ chainId: 1, address: "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" },
|
|
403
|
+
{ chainId: 10, address: "0x7f5c764cbc14f9669b88837ca1490cca17c31607" },
|
|
404
|
+
{ chainId: 56, address: "0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d" },
|
|
405
|
+
{ chainId: 100, address: "0xddafbb505ad214d7b80b1f830fccc89b60fb7a83" },
|
|
406
|
+
{ chainId: 137, address: "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174" },
|
|
407
|
+
{ chainId: 137, address: "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359" },
|
|
408
|
+
{ chainId: 250, address: "0x04068da6c83afcfa0e13ba15a6696662335d5b75" },
|
|
409
|
+
{ chainId: 42161, address: "0xff970a61a04b1ca14834a43f5de4533ebddb5cc8" },
|
|
410
|
+
{ chainId: 42161, address: "0xaf88d065e77c8cc2239327c5edb3a432268e5831" },
|
|
411
|
+
{ chainId: 43114, address: "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e" },
|
|
412
|
+
{ chainId: 43114, address: "0xa7d7079b0fead91f3e65f86e8915cb59c1a4c664" },
|
|
413
|
+
{ chainId: 1101, address: "0xa8ce8aee21bc2a48a5ef670afcc9274c7bbbc035" },
|
|
414
|
+
{
|
|
415
|
+
chainId: 1313161554,
|
|
416
|
+
address: "0xB12BFcA5A55806AaF64E99521918A4bf0fC40802",
|
|
417
|
+
},
|
|
418
|
+
{ chainId: 8453, address: "0xd9aAEc86B65D86f6A7B5B1b0c42FFA531710b6CA" },
|
|
419
|
+
];
|
|
420
|
+
|
|
251
421
|
export const getNetworkByChainId = (
|
|
252
422
|
chainId: ChainId | number | string
|
|
253
423
|
): Network => {
|
|
@@ -260,12 +430,16 @@ export const availableNetworks = networks.filter(
|
|
|
260
430
|
|
|
261
431
|
export const chainIdToName = (chainId: ChainId | number | string) => {
|
|
262
432
|
const network = getNetworkByChainId(chainId);
|
|
263
|
-
return network
|
|
433
|
+
return network?.name;
|
|
264
434
|
};
|
|
265
435
|
|
|
266
436
|
export const getRpcURLByChainId = (chainId: ChainId | number | string) => {
|
|
267
|
-
|
|
268
|
-
|
|
437
|
+
try {
|
|
438
|
+
const network = getNetworkByChainId(chainId);
|
|
439
|
+
return network.params.rpcUrls[0];
|
|
440
|
+
} catch (e) {
|
|
441
|
+
return "";
|
|
442
|
+
}
|
|
269
443
|
};
|
|
270
444
|
|
|
271
445
|
export const RPCMap = networks.reduce((acc, network) => {
|
|
@@ -307,5 +481,6 @@ export const getExplorerUrl = (
|
|
|
307
481
|
suffix: `/${string}` = "/"
|
|
308
482
|
) => {
|
|
309
483
|
const network = getNetworkByChainId(chainId);
|
|
484
|
+
if (!network) return "";
|
|
310
485
|
return `${network.explorerUrl}${suffix}`;
|
|
311
486
|
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export const fetchTokenByAddress = async (
|
|
2
|
+
address: string,
|
|
3
|
+
chainId: string | number,
|
|
4
|
+
tokens?: ITokenPrice[]
|
|
5
|
+
) => {
|
|
6
|
+
if (!address || !chainId) return null;
|
|
7
|
+
|
|
8
|
+
if (tokens?.length) {
|
|
9
|
+
const token = tokens.find((token) => token.address?.toLocaleLowerCase() === address?.toLocaleLowerCase() && token.chain_id == chainId);
|
|
10
|
+
if (token) return token;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
const [token] = (await $fetch(`${blockQueryURL}/${chainId}/tokens`, {
|
|
14
|
+
params: {
|
|
15
|
+
sparkline: false,
|
|
16
|
+
"addresses[]": [address],
|
|
17
|
+
},
|
|
18
|
+
})) as ITokenPrice[];
|
|
19
|
+
|
|
20
|
+
return token;
|
|
21
|
+
};
|