@@ -6,10 +6,11 @@ interface ExplorerData {
66 networkExplorerApiUrl : string
77 safeTransactionApi : string
88 safeUrl : string
9- explorerApiKey ?: string
109 verifyContractUrl : string
1110}
1211
12+ const ETHERSCAN_API_KEY = '6RJ8KT4B1S9V7E3CIYECNY7HFW8IPWQ3C4'
13+
1314export const EXPLORERS_CONFIG : Record < NETWORK , ExplorerData > = {
1415 [ NETWORK . MAINNET ] : {
1516 networkExplorerName : 'Etherscan' ,
@@ -18,7 +19,6 @@ export const EXPLORERS_CONFIG: Record<NETWORK, ExplorerData> = {
1819 safeTransactionApi : 'https://safe-transaction-mainnet.safe.global/' ,
1920 safeUrl : 'https://app.safe.global/eth:' ,
2021 verifyContractUrl : 'https://etherscan.io/verifyContract' ,
21- explorerApiKey : '6RJ8KT4B1S9V7E3CIYECNY7HFW8IPWQ3C4' ,
2222 } ,
2323 [ NETWORK . GNOSIS_CHAIN ] : {
2424 networkExplorerName : 'GnosisScan' ,
@@ -27,7 +27,30 @@ export const EXPLORERS_CONFIG: Record<NETWORK, ExplorerData> = {
2727 safeUrl : 'https://app.safe.global/gno:' ,
2828 safeTransactionApi : 'https://safe-transaction-gnosis-chain.safe.global/' ,
2929 verifyContractUrl : 'https://gnosisscan.io/verifyContract' ,
30- explorerApiKey : 'ZWZWSHX4X7K8G1ZFRETI4DERP2ZI5Y2QGF' ,
30+ } ,
31+ [ NETWORK . GOERLI ] : {
32+ networkExplorerName : 'Etherscan' ,
33+ networkExplorerUrl : 'https://goerli.etherscan.io' ,
34+ networkExplorerApiUrl : 'https://api-goerli.etherscan.io/api' ,
35+ safeTransactionApi : 'https://safe-transaction-goerli.safe.global/' ,
36+ safeUrl : 'https://app.safe.global/gor:' ,
37+ verifyContractUrl : 'https://goerli.etherscan.io/verifyContract' ,
38+ } ,
39+ [ NETWORK . ARBITRUM ] : {
40+ networkExplorerName : 'Arbiscan' ,
41+ networkExplorerUrl : 'https://arbiscan.io/' ,
42+ networkExplorerApiUrl : 'https://api.arbiscan.io/api' ,
43+ safeTransactionApi : 'https://safe-transaction-arbitrum.safe.global/' ,
44+ safeUrl : 'https://app.safe.global/arb1:' ,
45+ verifyContractUrl : 'https://arbiscan.io/verifyContract' ,
46+ } ,
47+ [ NETWORK . OPTIMISM ] : {
48+ networkExplorerName : 'Optimism' ,
49+ networkExplorerUrl : 'https://optimistic.etherscan.io/' ,
50+ networkExplorerApiUrl : 'https://api-optimistic.etherscan.io/api' ,
51+ safeTransactionApi : 'https://safe-transaction-optimism.safe.global/' ,
52+ safeUrl : 'https://app.safe.global/oeth:' ,
53+ verifyContractUrl : 'https://optimistic.etherscan.io/verifyContract' ,
3154 } ,
3255 [ NETWORK . POLYGON ] : {
3356 networkExplorerName : 'Polygonscan' ,
@@ -36,7 +59,6 @@ export const EXPLORERS_CONFIG: Record<NETWORK, ExplorerData> = {
3659 safeUrl : 'https://app.safe.global/matic:' ,
3760 safeTransactionApi : 'https://safe-transaction-polygon.safe.global/' ,
3861 verifyContractUrl : 'https://polygonscan.com/verifyContract' ,
39- explorerApiKey : 'NM937M1IZXVQ6QVDXS73XMF8JSAB677JWQ' ,
4062 } ,
4163 [ NETWORK . ZKEVM ] : {
4264 networkExplorerName : 'Polygonscan' ,
@@ -45,7 +67,14 @@ export const EXPLORERS_CONFIG: Record<NETWORK, ExplorerData> = {
4567 safeTransactionApi : 'https://safe-transaction-zkevm.safe.global/' ,
4668 safeUrl : 'https://app.safe.global/zkevm:' ,
4769 verifyContractUrl : 'https://zkevm.polygonscan.com/verifyContract' ,
48- explorerApiKey : 'NM937M1IZXVQ6QVDXS73XMF8JSAB677JWQ' ,
70+ } ,
71+ [ NETWORK . AVALANCHE ] : {
72+ networkExplorerName : 'Snowtrace' ,
73+ networkExplorerUrl : 'https://snowtrace.io/' ,
74+ networkExplorerApiUrl : 'https://api.snowtrace.io/api' ,
75+ safeTransactionApi : 'https://safe-transaction-avalanche.safe.global/' ,
76+ safeUrl : 'https://app.safe.global/avax:' ,
77+ verifyContractUrl : 'https://snowtrace.io/verifyContract' ,
4978 } ,
5079 [ NETWORK . BSC ] : {
5180 networkExplorerName : 'BscScan' ,
@@ -54,34 +83,30 @@ export const EXPLORERS_CONFIG: Record<NETWORK, ExplorerData> = {
5483 safeUrl : 'https://app.safe.global/bsc:' ,
5584 safeTransactionApi : 'https://safe-transaction-bsc.safe.global/' ,
5685 verifyContractUrl : 'https://bscscan.com/verifyContract' ,
57- explorerApiKey : 'AMXEAU3N9P7RJHFSZ7KAJDRY5MFJ1N29D6' ,
5886 } ,
59- [ NETWORK . OPTIMISM ] : {
60- networkExplorerName : 'Optimism' ,
61- networkExplorerUrl : 'https://optimistic.etherscan.io/' ,
62- networkExplorerApiUrl : 'https://api-optimistic.etherscan.io/api' ,
63- safeTransactionApi : 'https://safe-transaction-optimism.safe.global/' ,
64- safeUrl : 'https://app.safe.global/oeth:' ,
65- verifyContractUrl : 'https://optimistic.etherscan.io/verifyContract' ,
66- explorerApiKey : 'IG8IW3N3CKCZPV5U14HQ56K9TEPX9SWXX4' ,
87+ [ NETWORK . HARDHAT_NETWORK ] : {
88+ networkExplorerName : 'Hardhat' ,
89+ networkExplorerUrl : 'http://localhost:8545' ,
90+ networkExplorerApiUrl : 'http://localhost:8545' ,
91+ safeTransactionApi : 'http://localhost:8545' ,
92+ safeUrl : 'http://localhost:8545' ,
93+ verifyContractUrl : 'http://localhost:8545' ,
6794 } ,
68- [ NETWORK . ARBITRUM ] : {
69- networkExplorerName : 'Arbiscan' ,
70- networkExplorerUrl : 'https://arbiscan.io/' ,
71- networkExplorerApiUrl : 'https://api.arbiscan.io/api' ,
72- safeTransactionApi : 'https://safe-transaction-arbitrum.safe.global/' ,
73- safeUrl : 'https://app.safe.global/arb1:' ,
74- verifyContractUrl : 'https://arbiscan.io/verifyContract' ,
75- explorerApiKey : 'CSITWCYI9UDAJ7QS92FNVJ2XQP5B23P4J9' ,
95+ [ NETWORK . LINEA ] : {
96+ networkExplorerName : 'Lineascan' ,
97+ networkExplorerUrl : 'https://lineascan.build' ,
98+ networkExplorerApiUrl : 'https://api.lineascan.build/api' ,
99+ safeTransactionApi : 'https://safe-transaction-linea.safe.global/' ,
100+ safeUrl : 'https://app.safe.global/linea:' ,
101+ verifyContractUrl : 'https://lineascan.build/verifyContract' ,
76102 } ,
77- [ NETWORK . AVALANCHE ] : {
78- networkExplorerName : 'Snowtrace' ,
79- networkExplorerUrl : 'https://snowtrace.io/' ,
80- networkExplorerApiUrl : 'https://api.snowtrace.io/api' ,
81- safeTransactionApi : 'https://safe-transaction-avalanche.safe.global/' ,
82- safeUrl : 'https://app.safe.global/avax:' ,
83- verifyContractUrl : 'https://snowtrace.io/verifyContract' ,
84- explorerApiKey : 'IAST9REKWMIW1QSE2M7K2IKKAZVNQPHC1U' ,
103+ [ NETWORK . LINEA_GOERLI ] : {
104+ networkExplorerName : 'Lineascan' ,
105+ networkExplorerUrl : 'https://goerli.lineascan.build' ,
106+ networkExplorerApiUrl : 'https://api-testnet.lineascan.build/api' ,
107+ safeTransactionApi : 'https://safe-transaction-linea-goerli.safe.global/' ,
108+ safeUrl : 'https://app.safe.global/linea-goerli:' ,
109+ verifyContractUrl : 'https://goerli.lineascan.build/verifyContract' ,
85110 } ,
86111 [ NETWORK . SEPOLIA ] : {
87112 networkExplorerName : 'Etherscan' ,
@@ -90,7 +115,14 @@ export const EXPLORERS_CONFIG: Record<NETWORK, ExplorerData> = {
90115 safeTransactionApi : 'https://safe-transaction-sepolia.safe.global/' ,
91116 safeUrl : 'https://app.safe.global/sep:' ,
92117 verifyContractUrl : 'https://sepolia.etherscan.io/verifyContract' ,
93- explorerApiKey : '6RJ8KT4B1S9V7E3CIYECNY7HFW8IPWQ3C4' ,
118+ } ,
119+ [ NETWORK . BASE ] : {
120+ networkExplorerName : 'Basescan' ,
121+ networkExplorerUrl : 'https://basescan.org' ,
122+ networkExplorerApiUrl : 'https://api.basescan.org/api' ,
123+ safeTransactionApi : 'https://safe-transaction-base.safe.global' ,
124+ safeUrl : 'https://app.safe.global/base:' ,
125+ verifyContractUrl : 'https://basescan.org/verifyContract' ,
94126 } ,
95127 [ NETWORK . BASE_SEPOLIA ] : {
96128 networkExplorerName : 'BaseScan' ,
@@ -99,43 +131,30 @@ export const EXPLORERS_CONFIG: Record<NETWORK, ExplorerData> = {
99131 safeTransactionApi : 'https://safe-transaction-base-sepolia.safe.global/' ,
100132 safeUrl : 'https://app.safe.global/basesep:' ,
101133 verifyContractUrl : 'https://sepolia.basescan.org/verifyContract' ,
102- explorerApiKey : 'ZSBW5JZVFZIB19V7YBG14KQFTUXFT8BDNS' ,
103134 } ,
104- [ NETWORK . BASE ] : {
105- networkExplorerName : 'Basescan' ,
106- networkExplorerUrl : 'https://basescan.org' ,
107- networkExplorerApiUrl : 'https://api.basescan.org/api' ,
108- safeTransactionApi : 'https://safe-transaction-base.safe.global' ,
109- safeUrl : 'https://app.safe.global/base:' ,
110- verifyContractUrl : 'https://basescan.org/verifyContract' ,
111- explorerApiKey : 'ZSBW5JZVFZIB19V7YBG14KQFTUXFT8BDNS' ,
112- } ,
113- // [NETWORK.MANTLE]: {
114- // networkExplorerName: 'Mantlescan',
115- // networkExplorerUrl: 'https://mantlescan.xyz',
116- // networkExplorerApiUrl: 'https://api.mantlescan.xyz/api',
117- // safeTransactionApi: 'https://safe-transaction-mantle.safe.global/',
118- // safeUrl: 'https://app.safe.global/mantle:',
119- // verifyContractUrl: 'https://mantlescan.xyz/verifyContract',
120- // explorerApiKey: 'XGKTSFD523UP64KEFWD5EDA5W1N6BBXZFT',
121- // },
135+ [ NETWORK . MANTLE ] : {
136+ networkExplorerName : 'Mantlescan' ,
137+ networkExplorerUrl : 'https://mantlescan.xyz' ,
138+ networkExplorerApiUrl : 'https://api.mantlescan.xyz/api' ,
139+ safeTransactionApi : 'https://safe-transaction-mantle.safe.global/' ,
140+ safeUrl : 'https://app.safe.global/mantle:' ,
141+ verifyContractUrl : 'https://mantlescan.xyz/verifyContract' ,
142+ } ,
122143 [ NETWORK . BERACHAIN ] : {
123144 networkExplorerName : 'Berascan' ,
124145 networkExplorerUrl : 'https://berascan.com' ,
125146 networkExplorerApiUrl : 'https://api.berascan.com/api' ,
126147 safeTransactionApi : 'https://safe-transaction-berachain.safe.global/' ,
127148 safeUrl : 'https://app.safe.global/berachain:' ,
128149 verifyContractUrl : 'https://berascan.com/verifyContract' ,
129- explorerApiKey : 'X39RQV6MWGUB3W4NC4VI6YM4MTYMCFN8Y9' ,
130150 } ,
131151 [ NETWORK . SONIC ] : {
132152 networkExplorerName : 'Sonicscan' ,
133- networkExplorerUrl : 'https://sonicscan.org ' ,
153+ networkExplorerUrl : 'https://explorer.soniclabs.com ' ,
134154 networkExplorerApiUrl : 'https://api.sonicscan.org/api' ,
135155 safeTransactionApi : 'https://safe-transaction-sonic.safe.global/' ,
136156 safeUrl : 'https://app.safe.global/sonic:' ,
137- verifyContractUrl : 'https://sonicscan.org/verifyContract' ,
138- explorerApiKey : '4PKXQYT2DGQXHSINRFY4UM8RUFJHR9V1TX' ,
157+ verifyContractUrl : 'https://explorer.soniclabs.com/verifyContract' ,
139158 } ,
140159 [ NETWORK . CELO ] : {
141160 networkExplorerName : 'Celoscan' ,
@@ -144,7 +163,118 @@ export const EXPLORERS_CONFIG: Record<NETWORK, ExplorerData> = {
144163 safeTransactionApi : 'https://safe-transaction-celo.safe.global/' ,
145164 safeUrl : 'https://app.safe.global/celo:' ,
146165 verifyContractUrl : 'https://celoscan.io/verifyContract' ,
147- explorerApiKey : '8ME8R1XQAGXK15UXPAFI46JTPP5NQ7WEMC' ,
166+ } ,
167+ [ NETWORK . BOB ] : {
168+ networkExplorerName : 'Bobscout' ,
169+ networkExplorerUrl : 'https://explorer.gobob.xyz' ,
170+ networkExplorerApiUrl : 'https://api.gobob.xyz/api' ,
171+ safeTransactionApi : 'https://safe-transaction-bob.safe.global/' ,
172+ safeUrl : 'https://app.safe.global/bob:' ,
173+ verifyContractUrl : 'https://explorer.gobob.xyz/verifyContract' ,
174+ } ,
175+ [ NETWORK . HYPER_EVM ] : {
176+ networkExplorerName : 'Wanscan' ,
177+ networkExplorerUrl : 'https://purrsec.com' ,
178+ networkExplorerApiUrl : 'https://api.purrsec.com/api' ,
179+ safeTransactionApi : 'https://safe-transaction-hyper-evm.safe.global/' ,
180+ safeUrl : 'https://app.safe.global/hyperevm:' ,
181+ verifyContractUrl : '' ,
182+ } ,
183+ [ NETWORK . WORLD_CHAIN ] : {
184+ networkExplorerName : 'Worldscan' ,
185+ networkExplorerUrl : 'https://explorer.worldcoin.org' ,
186+ networkExplorerApiUrl : 'https://api.worldcoin.org/api' ,
187+ safeTransactionApi : 'https://safe-transaction-world-chain.safe.global/' ,
188+ safeUrl : 'https://app.safe.global/wc:' ,
189+ verifyContractUrl : 'https://explorer.worldcoin.org/verifyContract' ,
190+ } ,
191+ [ NETWORK . FLARE ] : {
192+ networkExplorerName : 'Flare Explorer' ,
193+ networkExplorerUrl : 'https://flare-explorer.flare.network' ,
194+ networkExplorerApiUrl : 'https://api.flare.network/api' ,
195+ safeTransactionApi : 'https://safe-transaction-flare.safe.global/' ,
196+ safeUrl : 'https://app.safe.global/flr:' ,
197+ verifyContractUrl : 'https://flare-explorer.flare.network/verifyContract' ,
198+ } ,
199+ [ NETWORK . INK ] : {
200+ networkExplorerName : 'Ink Explorer' ,
201+ networkExplorerUrl : 'https://explorer.ink' ,
202+ networkExplorerApiUrl : 'https://api.ink/api' ,
203+ safeTransactionApi : 'https://safe-transaction-ink.safe.global/' ,
204+ safeUrl : 'https://app.safe.global/ink:' ,
205+ verifyContractUrl : 'https://explorer.ink/verifyContract' ,
206+ } ,
207+ [ NETWORK . HEMI ] : {
208+ networkExplorerName : 'Hemi Explorer' ,
209+ networkExplorerUrl : 'https://explorer.hemi.network' ,
210+ networkExplorerApiUrl : 'https://api.hemi.network/api' ,
211+ safeTransactionApi : 'https://safe-transaction-hemi.safe.global/' ,
212+ safeUrl : 'https://app.safe.global/hemi:' ,
213+ verifyContractUrl : 'https://explorer.hemi.network/verifyContract' ,
214+ } ,
215+ [ NETWORK . KATANA ] : {
216+ networkExplorerName : 'Katana Explorer' ,
217+ networkExplorerUrl : 'https://explorer.katana.network' ,
218+ networkExplorerApiUrl : 'https://api.katana.network/api' ,
219+ safeTransactionApi : 'https://safe-transaction-katana.safe.global/' ,
220+ safeUrl : 'https://app.safe.global/katana:' ,
221+ verifyContractUrl : 'https://explorer.katana.network/verifyContract' ,
222+ } ,
223+ [ NETWORK . LENS ] : {
224+ networkExplorerName : 'Lens Explorer' ,
225+ networkExplorerUrl : 'https://explorer.lens.xyz' ,
226+ networkExplorerApiUrl : 'https://api.lens.xyz/api' ,
227+ safeTransactionApi : 'https://safe-transaction-lens.safe.global/' ,
228+ safeUrl : 'https://app.safe.global/lens:' ,
229+ verifyContractUrl : 'https://explorer.lens.xyz/verifyContract' ,
230+ } ,
231+ [ NETWORK . PEAQ ] : {
232+ networkExplorerName : 'Peaq Explorer' ,
233+ networkExplorerUrl : 'https://explorer.peaq.network' ,
234+ networkExplorerApiUrl : 'https://api.peaq.network/api' ,
235+ safeTransactionApi : 'https://safe-transaction-peaq.safe.global/' ,
236+ safeUrl : 'https://app.safe.global/PEAQ:' ,
237+ verifyContractUrl : 'https://explorer.peaq.network/verifyContract' ,
238+ } ,
239+ [ NETWORK . UNICHAIN ] : {
240+ networkExplorerName : 'Unichain Explorer' ,
241+ networkExplorerUrl : 'https://explorer.unichain.world' ,
242+ networkExplorerApiUrl : 'https://api.unichain.world/api' ,
243+ safeTransactionApi : 'https://safe-transaction-unichain.safe.global/' ,
244+ safeUrl : 'https://app.safe.global/unichain:' ,
245+ verifyContractUrl : 'https://explorer.unichain.world/verifyContract' ,
246+ } ,
247+ [ NETWORK . ZKSYNC ] : {
248+ networkExplorerName : 'zkScan' ,
249+ networkExplorerUrl : 'https://explorer.zksync.io' ,
250+ networkExplorerApiUrl : 'https://api.zksync.io/api' ,
251+ safeTransactionApi : 'https://safe-transaction-zksync.safe.global/' ,
252+ safeUrl : 'https://app.safe.global/zksync:' ,
253+ verifyContractUrl : 'https://explorer.zksync.io/verifyContract' ,
254+ } ,
255+ [ NETWORK . SCROLL ] : {
256+ networkExplorerName : 'Scrollscan' ,
257+ networkExplorerUrl : 'https://scrollscan.com' ,
258+ networkExplorerApiUrl : 'https://api.scrollscan.com/api' ,
259+ safeTransactionApi : 'https://safe-transaction-scroll.safe.global/' ,
260+ safeUrl : 'https://app.safe.global/scroll:' ,
261+ verifyContractUrl : 'https://scrollscan.com/verifyContract' ,
262+ } ,
263+ [ NETWORK . AURORA ] : {
264+ networkExplorerName : 'Aurorascan' ,
265+ networkExplorerUrl : 'https://aurorascan.dev' ,
266+ networkExplorerApiUrl : 'https://api.aurorascan.dev/api' ,
267+ safeTransactionApi : 'https://safe-transaction-aurora.safe.global/' ,
268+ safeUrl : 'https://app.safe.global/aurora:' ,
269+ verifyContractUrl : 'https://aurorascan.dev/verifyContract' ,
270+ } ,
271+ [ NETWORK . GNOSIS_CHIADO ] : {
272+ networkExplorerName : 'Chiado Explorer' ,
273+ networkExplorerUrl : 'https://blockscout.chiadochain.net' ,
274+ networkExplorerApiUrl : 'https://blockscout.chiadochain.net/api' ,
275+ safeTransactionApi : 'https://safe-transaction-gnosis-chiado.safe.global/' ,
276+ safeUrl : 'https://app.safe.global/chi:' ,
277+ verifyContractUrl : 'https://blockscout.chiadochain.net/verifyContract' ,
148278 } ,
149279}
150280
@@ -155,7 +285,7 @@ export const getNetworkExplorerInfo = (chainId: number) => {
155285 name : networkBaseConfig . networkExplorerName ,
156286 url : networkBaseConfig . networkExplorerUrl ,
157287 apiUrl : networkBaseConfig . networkExplorerApiUrl ,
158- apiKey : networkBaseConfig . explorerApiKey ,
288+ apiKey : ETHERSCAN_API_KEY ,
159289 safeTransactionApi : networkBaseConfig . safeTransactionApi ,
160290 safeUrl : networkBaseConfig . safeUrl ,
161291 verifyUrl : networkBaseConfig . verifyContractUrl ,
0 commit comments