marketsConfig.tsx
1 import { ChainId } from '@aave/contract-helpers'; 2 import { 3 AaveV2Avalanche, 4 AaveV2Ethereum, 5 AaveV2Fuji, 6 AaveV2Polygon, 7 AaveV3Arbitrum, 8 AaveV3ArbitrumSepolia, 9 AaveV3Avalanche, 10 AaveV3Base, 11 AaveV3BNB, 12 AaveV3Celo, 13 AaveV3Ethereum, 14 AaveV3EthereumEtherFi, 15 AaveV3EthereumLido, 16 AaveV3Gnosis, 17 AaveV3Linea, 18 AaveV3Metis, 19 AaveV3Optimism, 20 AaveV3OptimismSepolia, 21 AaveV3Polygon, 22 AaveV3Scroll, 23 AaveV3ScrollSepolia, 24 AaveV3Sepolia, 25 AaveV3Sonic, 26 AaveV3ZkSync, 27 } from '@bgd-labs/aave-address-book'; 28 import { ReactNode } from 'react'; 29 30 // Enable for premissioned market 31 // import { PermissionView } from 'src/components/transactions/FlowCommons/PermissionView'; 32 export type MarketDataType = { 33 v3?: boolean; 34 marketTitle: string; 35 market: CustomMarket; 36 // the network the market operates on 37 chainId: ChainId; 38 enabledFeatures?: { 39 liquiditySwap?: boolean; 40 staking?: boolean; 41 governance?: boolean; 42 faucet?: boolean; 43 collateralRepay?: boolean; 44 incentives?: boolean; 45 permissions?: boolean; 46 debtSwitch?: boolean; 47 withdrawAndSwitch?: boolean; 48 switch?: boolean; 49 }; 50 permitDisabled?: boolean; // intended to be used for testnets 51 isFork?: boolean; 52 permissionComponent?: ReactNode; 53 disableCharts?: boolean; 54 subgraphUrl?: string; 55 logo?: string; 56 addresses: { 57 LENDING_POOL_ADDRESS_PROVIDER: string; 58 LENDING_POOL: string; 59 WETH_GATEWAY?: string; 60 SWAP_COLLATERAL_ADAPTER?: string; 61 REPAY_WITH_COLLATERAL_ADAPTER?: string; 62 DEBT_SWITCH_ADAPTER?: string; 63 WITHDRAW_SWITCH_ADAPTER?: string; 64 FAUCET?: string; 65 PERMISSION_MANAGER?: string; 66 WALLET_BALANCE_PROVIDER: string; 67 L2_ENCODER?: string; 68 UI_POOL_DATA_PROVIDER: string; 69 UI_INCENTIVE_DATA_PROVIDER?: string; 70 COLLECTOR?: string; 71 V3_MIGRATOR?: string; 72 GHO_TOKEN_ADDRESS?: string; 73 GHO_UI_DATA_PROVIDER?: string; 74 }; 75 }; 76 export enum CustomMarket { 77 // v3 test networks, all v3.0.1 78 proto_arbitrum_sepolia_v3 = 'proto_arbitrum_sepolia_v3', 79 proto_fuji_v3 = 'proto_fuji_v3', 80 proto_optimism_sepolia_v3 = 'proto_optimism_sepolia_v3', 81 proto_scroll_sepolia_v3 = 'proto_scroll_sepolia_v3', 82 proto_sepolia_v3 = 'proto_sepolia_v3', 83 proto_base_sepolia_v3 = 'proto_base_sepolia_v3', 84 // v3 mainnets 85 proto_mainnet_v3 = 'proto_mainnet_v3', 86 proto_optimism_v3 = 'proto_optimism_v3', 87 proto_avalanche_v3 = 'proto_avalanche_v3', 88 proto_polygon_v3 = 'proto_polygon_v3', 89 proto_arbitrum_v3 = 'proto_arbitrum_v3', 90 proto_metis_v3 = 'proto_metis_v3', 91 proto_base_v3 = 'proto_base_v3', 92 proto_gnosis_v3 = 'proto_gnosis_v3', 93 proto_bnb_v3 = 'proto_bnb_v3', 94 proto_scroll_v3 = 'proto_scroll_v3', 95 proto_lido_v3 = 'proto_lido_v3', 96 proto_zksync_v3 = 'proto_zksync_v3', 97 proto_etherfi_v3 = 'proto_etherfi_v3', 98 proto_linea_v3 = 'proto_linea_v3', 99 proto_sonic_v3 = 'proto_sonic_v3', 100 proto_celo_v3 = 'proto_celo_v3', 101 // v2 102 proto_mainnet = 'proto_mainnet', 103 proto_avalanche = 'proto_avalanche', 104 proto_fuji = 'proto_fuji', 105 proto_polygon = 'proto_polygon', 106 // external 107 // permissioned_market = 'permissioned_market', 108 } 109 110 const apiKey = process.env.NEXT_PUBLIC_SUBGRAPH_API_KEY; 111 112 export const marketsData: { 113 [key in keyof typeof CustomMarket]: MarketDataType; 114 } = { 115 [CustomMarket.proto_mainnet_v3]: { 116 marketTitle: 'Core', 117 market: CustomMarket.proto_mainnet_v3, 118 chainId: ChainId.mainnet, 119 v3: true, 120 enabledFeatures: { 121 governance: true, 122 staking: true, 123 liquiditySwap: true, 124 collateralRepay: true, 125 incentives: true, 126 withdrawAndSwitch: true, 127 debtSwitch: true, 128 switch: true, 129 }, 130 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/Cd2gEDVeqnjBn1hSeqFMitw8Q1iiyV9FYUZkLNRcL87g`, 131 addresses: { 132 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Ethereum.POOL_ADDRESSES_PROVIDER, 133 LENDING_POOL: AaveV3Ethereum.POOL, 134 WETH_GATEWAY: AaveV3Ethereum.WETH_GATEWAY, 135 REPAY_WITH_COLLATERAL_ADAPTER: AaveV3Ethereum.REPAY_WITH_COLLATERAL_ADAPTER, 136 SWAP_COLLATERAL_ADAPTER: AaveV3Ethereum.SWAP_COLLATERAL_ADAPTER, 137 WALLET_BALANCE_PROVIDER: AaveV3Ethereum.WALLET_BALANCE_PROVIDER, 138 UI_POOL_DATA_PROVIDER: AaveV3Ethereum.UI_POOL_DATA_PROVIDER, 139 UI_INCENTIVE_DATA_PROVIDER: AaveV3Ethereum.UI_INCENTIVE_DATA_PROVIDER, 140 COLLECTOR: AaveV3Ethereum.COLLECTOR, 141 GHO_TOKEN_ADDRESS: AaveV3Ethereum.ASSETS.GHO.UNDERLYING, 142 GHO_UI_DATA_PROVIDER: AaveV3Ethereum.UI_GHO_DATA_PROVIDER, 143 WITHDRAW_SWITCH_ADAPTER: AaveV3Ethereum.WITHDRAW_SWAP_ADAPTER, 144 DEBT_SWITCH_ADAPTER: AaveV3Ethereum.DEBT_SWAP_ADAPTER, 145 }, 146 }, 147 [CustomMarket.proto_lido_v3]: { 148 marketTitle: 'Prime', 149 market: CustomMarket.proto_lido_v3, 150 chainId: ChainId.mainnet, 151 v3: true, 152 logo: '/icons/markets/lido.svg', 153 enabledFeatures: { 154 governance: true, 155 staking: true, 156 liquiditySwap: true, 157 collateralRepay: true, 158 incentives: true, 159 withdrawAndSwitch: true, 160 debtSwitch: true, 161 switch: true, 162 }, 163 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/5vxMbXRhG1oQr55MWC5j6qg78waWujx1wjeuEWDA6j3`, 164 addresses: { 165 LENDING_POOL_ADDRESS_PROVIDER: AaveV3EthereumLido.POOL_ADDRESSES_PROVIDER, 166 LENDING_POOL: AaveV3EthereumLido.POOL, 167 WETH_GATEWAY: AaveV3EthereumLido.WETH_GATEWAY, 168 REPAY_WITH_COLLATERAL_ADAPTER: AaveV3EthereumLido.REPAY_WITH_COLLATERAL_ADAPTER, 169 SWAP_COLLATERAL_ADAPTER: AaveV3EthereumLido.SWAP_COLLATERAL_ADAPTER, 170 WALLET_BALANCE_PROVIDER: AaveV3EthereumLido.WALLET_BALANCE_PROVIDER, 171 UI_POOL_DATA_PROVIDER: AaveV3EthereumLido.UI_POOL_DATA_PROVIDER, 172 UI_INCENTIVE_DATA_PROVIDER: AaveV3EthereumLido.UI_INCENTIVE_DATA_PROVIDER, 173 COLLECTOR: AaveV3Ethereum.COLLECTOR, 174 WITHDRAW_SWITCH_ADAPTER: AaveV3EthereumLido.WITHDRAW_SWAP_ADAPTER, 175 DEBT_SWITCH_ADAPTER: AaveV3EthereumLido.DEBT_SWAP_ADAPTER, 176 }, 177 }, 178 [CustomMarket.proto_mainnet]: { 179 marketTitle: 'Ethereum', 180 market: CustomMarket.proto_mainnet, 181 chainId: ChainId.mainnet, 182 enabledFeatures: { 183 governance: true, 184 staking: true, 185 liquiditySwap: true, 186 collateralRepay: false, 187 incentives: true, 188 debtSwitch: true, 189 switch: true, 190 }, 191 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/8wR23o1zkS4gpLqLNU4kG3JHYVucqGyopL5utGxP2q1N`, 192 addresses: { 193 LENDING_POOL_ADDRESS_PROVIDER: AaveV2Ethereum.POOL_ADDRESSES_PROVIDER, 194 LENDING_POOL: AaveV2Ethereum.POOL, 195 WETH_GATEWAY: AaveV2Ethereum.WETH_GATEWAY, 196 REPAY_WITH_COLLATERAL_ADAPTER: AaveV2Ethereum.REPAY_WITH_COLLATERAL_ADAPTER, 197 SWAP_COLLATERAL_ADAPTER: AaveV2Ethereum.SWAP_COLLATERAL_ADAPTER, 198 WALLET_BALANCE_PROVIDER: AaveV2Ethereum.WALLET_BALANCE_PROVIDER, 199 UI_POOL_DATA_PROVIDER: AaveV2Ethereum.UI_POOL_DATA_PROVIDER, 200 UI_INCENTIVE_DATA_PROVIDER: AaveV2Ethereum.UI_INCENTIVE_DATA_PROVIDER, 201 COLLECTOR: AaveV2Ethereum.COLLECTOR, 202 V3_MIGRATOR: AaveV2Ethereum.MIGRATION_HELPER, 203 DEBT_SWITCH_ADAPTER: AaveV2Ethereum.DEBT_SWAP_ADAPTER, 204 }, 205 }, 206 // [CustomMarket.permissioned_market]: { 207 // marketTitle: 'Ethereum Permissioned Market example', 208 // chainId: ChainId.mainnet, 209 // enabledFeatures: { 210 // // liquiditySwap: true, 211 // // collateralRepay: false, 212 // // incentives: true, 213 // permissions: true, 214 // }, 215 // permissionComponent: <PermissionView />, 216 // addresses: { 217 // LENDING_POOL_ADDRESS_PROVIDER: markets..POOL_ADDRESSES_PROVIDER, 218 // LENDING_POOL: markets..POOL, 219 // WETH_GATEWAY: markets..WETH_GATEWAY, 220 // // REPAY_WITH_COLLATERAL_ADAPTER: markets..REPAY_WITH_COLLATERAL_ADAPTER, 221 // // SWAP_COLLATERAL_ADAPTER: markets..SWAP_COLLATERAL_ADAPTER, 222 // WALLET_BALANCE_PROVIDER: markets..WALLET_BALANCE_PROVIDER, 223 // UI_POOL_DATA_PROVIDER: markets..UI_POOL_DATA_PROVIDER, 224 // // UI_INCENTIVE_DATA_PROVIDER: markets..UI_INCENTIVE_DATA_PROVIDER, 225 // PERMISSION_MANAGER: '<address here>', 226 // }, 227 // }, 228 229 [CustomMarket.proto_polygon]: { 230 marketTitle: 'Polygon', 231 market: CustomMarket.proto_polygon, 232 chainId: ChainId.polygon, 233 enabledFeatures: { 234 liquiditySwap: true, 235 incentives: true, 236 collateralRepay: false, 237 debtSwitch: true, 238 }, 239 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/H1Et77RZh3XEf27vkAmJyzgCME2RSFLtDS2f4PPW6CGp`, 240 addresses: { 241 LENDING_POOL_ADDRESS_PROVIDER: AaveV2Polygon.POOL_ADDRESSES_PROVIDER, 242 LENDING_POOL: AaveV2Polygon.POOL, 243 WETH_GATEWAY: AaveV2Polygon.WETH_GATEWAY, 244 SWAP_COLLATERAL_ADAPTER: AaveV2Polygon.SWAP_COLLATERAL_ADAPTER, 245 REPAY_WITH_COLLATERAL_ADAPTER: AaveV2Polygon.REPAY_WITH_COLLATERAL_ADAPTER, 246 WALLET_BALANCE_PROVIDER: AaveV2Polygon.WALLET_BALANCE_PROVIDER, 247 UI_POOL_DATA_PROVIDER: AaveV2Polygon.UI_POOL_DATA_PROVIDER, 248 UI_INCENTIVE_DATA_PROVIDER: AaveV2Polygon.UI_INCENTIVE_DATA_PROVIDER, 249 COLLECTOR: AaveV2Polygon.COLLECTOR, 250 V3_MIGRATOR: AaveV2Polygon.MIGRATION_HELPER, 251 DEBT_SWITCH_ADAPTER: AaveV2Polygon.DEBT_SWAP_ADAPTER, 252 }, 253 }, 254 [CustomMarket.proto_avalanche]: { 255 marketTitle: 'Avalanche', 256 market: CustomMarket.proto_avalanche, 257 chainId: ChainId.avalanche, 258 enabledFeatures: { 259 liquiditySwap: true, 260 incentives: true, 261 collateralRepay: false, 262 debtSwitch: true, 263 switch: true, 264 }, 265 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/EZvK18pMhwiCjxwesRLTg81fP33WnR6BnZe5Cvma3H1C`, 266 addresses: { 267 LENDING_POOL_ADDRESS_PROVIDER: AaveV2Avalanche.POOL_ADDRESSES_PROVIDER, 268 LENDING_POOL: AaveV2Avalanche.POOL, 269 WETH_GATEWAY: AaveV2Avalanche.WETH_GATEWAY, 270 SWAP_COLLATERAL_ADAPTER: AaveV2Avalanche.SWAP_COLLATERAL_ADAPTER, 271 REPAY_WITH_COLLATERAL_ADAPTER: AaveV2Avalanche.REPAY_WITH_COLLATERAL_ADAPTER, 272 WALLET_BALANCE_PROVIDER: AaveV2Avalanche.WALLET_BALANCE_PROVIDER, 273 UI_POOL_DATA_PROVIDER: AaveV2Avalanche.UI_POOL_DATA_PROVIDER, 274 UI_INCENTIVE_DATA_PROVIDER: AaveV2Avalanche.UI_INCENTIVE_DATA_PROVIDER, 275 COLLECTOR: AaveV2Avalanche.COLLECTOR, 276 V3_MIGRATOR: AaveV2Avalanche.MIGRATION_HELPER, 277 DEBT_SWITCH_ADAPTER: AaveV2Avalanche.DEBT_SWAP_ADAPTER, 278 }, 279 }, 280 // v3 281 [CustomMarket.proto_sepolia_v3]: { 282 marketTitle: 'Ethereum Sepolia', 283 market: CustomMarket.proto_sepolia_v3, 284 v3: true, 285 chainId: ChainId.sepolia, 286 enabledFeatures: { 287 faucet: true, 288 }, 289 addresses: { 290 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Sepolia.POOL_ADDRESSES_PROVIDER, 291 LENDING_POOL: AaveV3Sepolia.POOL, 292 WETH_GATEWAY: AaveV3Sepolia.WETH_GATEWAY, 293 FAUCET: AaveV3Sepolia.FAUCET, 294 WALLET_BALANCE_PROVIDER: AaveV3Sepolia.WALLET_BALANCE_PROVIDER, 295 UI_POOL_DATA_PROVIDER: AaveV3Sepolia.UI_POOL_DATA_PROVIDER, 296 UI_INCENTIVE_DATA_PROVIDER: AaveV3Sepolia.UI_INCENTIVE_DATA_PROVIDER, 297 GHO_TOKEN_ADDRESS: '0xc4bF5CbDaBE595361438F8c6a187bDc330539c60', 298 GHO_UI_DATA_PROVIDER: '0x69B9843A16a6E9933125EBD97659BA3CCbE2Ef8A', 299 }, 300 }, 301 [CustomMarket.proto_base_v3]: { 302 marketTitle: 'Base', 303 market: CustomMarket.proto_base_v3, 304 v3: true, 305 chainId: ChainId.base, 306 enabledFeatures: { 307 incentives: true, 308 liquiditySwap: true, 309 withdrawAndSwitch: true, 310 collateralRepay: true, 311 debtSwitch: true, 312 switch: true, 313 }, 314 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/GQFbb95cE6d8mV989mL5figjaGaKCQB3xqYrr1bRyXqF`, 315 addresses: { 316 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Base.POOL_ADDRESSES_PROVIDER, 317 LENDING_POOL: AaveV3Base.POOL, 318 WETH_GATEWAY: AaveV3Base.WETH_GATEWAY, 319 WALLET_BALANCE_PROVIDER: AaveV3Base.WALLET_BALANCE_PROVIDER, 320 UI_POOL_DATA_PROVIDER: AaveV3Base.UI_POOL_DATA_PROVIDER, 321 UI_INCENTIVE_DATA_PROVIDER: AaveV3Base.UI_INCENTIVE_DATA_PROVIDER, 322 L2_ENCODER: AaveV3Base.L2_ENCODER, 323 COLLECTOR: AaveV3Base.COLLECTOR, 324 REPAY_WITH_COLLATERAL_ADAPTER: AaveV3Base.REPAY_WITH_COLLATERAL_ADAPTER, 325 SWAP_COLLATERAL_ADAPTER: AaveV3Base.SWAP_COLLATERAL_ADAPTER, 326 WITHDRAW_SWITCH_ADAPTER: AaveV3Base.WITHDRAW_SWAP_ADAPTER, 327 DEBT_SWITCH_ADAPTER: AaveV3Base.DEBT_SWAP_ADAPTER, 328 GHO_TOKEN_ADDRESS: '0x6bb7a212910682dcfdbd5bcbb3e28fb4e8da10ee', 329 }, 330 }, 331 [CustomMarket.proto_arbitrum_sepolia_v3]: { 332 marketTitle: 'Arbitrum Sepolia', 333 market: CustomMarket.proto_arbitrum_sepolia_v3, 334 v3: true, 335 permitDisabled: true, 336 chainId: ChainId.arbitrum_sepolia, 337 addresses: { 338 LENDING_POOL_ADDRESS_PROVIDER: AaveV3ArbitrumSepolia.POOL_ADDRESSES_PROVIDER, 339 LENDING_POOL: AaveV3ArbitrumSepolia.POOL, 340 WETH_GATEWAY: AaveV3ArbitrumSepolia.WETH_GATEWAY, 341 // FAUCET: AaveV3ArbitrumSepolia.FAUCET, 342 WALLET_BALANCE_PROVIDER: AaveV3ArbitrumSepolia.WALLET_BALANCE_PROVIDER, 343 UI_POOL_DATA_PROVIDER: AaveV3ArbitrumSepolia.UI_POOL_DATA_PROVIDER, 344 UI_INCENTIVE_DATA_PROVIDER: AaveV3ArbitrumSepolia.UI_INCENTIVE_DATA_PROVIDER, 345 L2_ENCODER: AaveV3ArbitrumSepolia.L2_ENCODER, 346 GHO_TOKEN_ADDRESS: '0xb13Cfa6f8B2Eed2C37fB00fF0c1A59807C585810', 347 }, 348 }, 349 [CustomMarket.proto_arbitrum_v3]: { 350 marketTitle: 'Arbitrum', 351 market: CustomMarket.proto_arbitrum_v3, 352 v3: true, 353 chainId: ChainId.arbitrum_one, 354 enabledFeatures: { 355 incentives: true, 356 liquiditySwap: true, 357 collateralRepay: true, 358 debtSwitch: true, 359 withdrawAndSwitch: true, 360 switch: true, 361 }, 362 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/DLuE98kEb5pQNXAcKFQGQgfSQ57Xdou4jnVbAEqMfy3B`, 363 addresses: { 364 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Arbitrum.POOL_ADDRESSES_PROVIDER, 365 LENDING_POOL: AaveV3Arbitrum.POOL, 366 WETH_GATEWAY: AaveV3Arbitrum.WETH_GATEWAY, 367 WALLET_BALANCE_PROVIDER: AaveV3Arbitrum.WALLET_BALANCE_PROVIDER, 368 UI_POOL_DATA_PROVIDER: AaveV3Arbitrum.UI_POOL_DATA_PROVIDER, 369 UI_INCENTIVE_DATA_PROVIDER: AaveV3Arbitrum.UI_INCENTIVE_DATA_PROVIDER, 370 L2_ENCODER: AaveV3Arbitrum.L2_ENCODER, 371 COLLECTOR: AaveV3Arbitrum.COLLECTOR, 372 SWAP_COLLATERAL_ADAPTER: AaveV3Arbitrum.SWAP_COLLATERAL_ADAPTER, 373 REPAY_WITH_COLLATERAL_ADAPTER: AaveV3Arbitrum.REPAY_WITH_COLLATERAL_ADAPTER, 374 DEBT_SWITCH_ADAPTER: AaveV3Arbitrum.DEBT_SWAP_ADAPTER, 375 WITHDRAW_SWITCH_ADAPTER: AaveV3Arbitrum.WITHDRAW_SWAP_ADAPTER, 376 GHO_TOKEN_ADDRESS: AaveV3Arbitrum.ASSETS.GHO.UNDERLYING, 377 }, 378 }, 379 [CustomMarket.proto_base_sepolia_v3]: { 380 marketTitle: 'Base Sepolia', 381 market: CustomMarket.proto_base_sepolia_v3, 382 v3: true, 383 permitDisabled: true, 384 chainId: ChainId.base_sepolia, 385 addresses: { 386 LENDING_POOL_ADDRESS_PROVIDER: '0xd449FeD49d9C443688d6816fE6872F21402e41de', // AaveV3BaseSepolia.POOL_ADDRESSES_PROVIDER, 387 LENDING_POOL: '0x07eA79F68B2B3df564D0A34F8e19D9B1e339814b', // AaveV3BaseSepolia.POOL, 388 WETH_GATEWAY: '0xF6Dac650dA5616Bc3206e969D7868e7c25805171', // AaveV3BaseSepolia.WETH_GATEWAY, 389 WALLET_BALANCE_PROVIDER: '0xdeB02056E277174566A1c425a8e60550142B70A2', // AaveV3BaseSepolia.WALLET_BALANCE_PROVIDER, 390 UI_POOL_DATA_PROVIDER: '0x884702E4b1d0a2900369E83d5765d537F469cAC9', // AaveV3BaseSepolia.UI_POOL_DATA_PROVIDER, 391 UI_INCENTIVE_DATA_PROVIDER: '0x52Cb5CDf732889be3fd5d5E3A5D589446e060C0D', // AaveV3BaseSepolia.UI_INCENTIVE_DATA_PROVIDER, 392 L2_ENCODER: '0x458d281bFFCE958E34571B33F1F26Bd42Aa27c44', // AaveV3BaseSepolia.L2_ENCODER, 393 }, 394 }, 395 [CustomMarket.proto_avalanche_v3]: { 396 marketTitle: 'Avalanche', 397 market: CustomMarket.proto_avalanche_v3, 398 v3: true, 399 chainId: ChainId.avalanche, 400 enabledFeatures: { 401 liquiditySwap: true, 402 incentives: true, 403 collateralRepay: true, 404 debtSwitch: true, 405 withdrawAndSwitch: true, 406 switch: true, 407 }, 408 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/2h9woxy8RTjHu1HJsCEnmzpPHFArU33avmUh4f71JpVn`, 409 addresses: { 410 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Avalanche.POOL_ADDRESSES_PROVIDER, 411 LENDING_POOL: AaveV3Avalanche.POOL, 412 WETH_GATEWAY: AaveV3Avalanche.WETH_GATEWAY, 413 REPAY_WITH_COLLATERAL_ADAPTER: AaveV3Avalanche.REPAY_WITH_COLLATERAL_ADAPTER, 414 SWAP_COLLATERAL_ADAPTER: AaveV3Avalanche.SWAP_COLLATERAL_ADAPTER, 415 WALLET_BALANCE_PROVIDER: AaveV3Avalanche.WALLET_BALANCE_PROVIDER, 416 UI_POOL_DATA_PROVIDER: AaveV3Avalanche.UI_POOL_DATA_PROVIDER, 417 UI_INCENTIVE_DATA_PROVIDER: AaveV3Avalanche.UI_INCENTIVE_DATA_PROVIDER, 418 COLLECTOR: AaveV3Avalanche.COLLECTOR, 419 DEBT_SWITCH_ADAPTER: AaveV3Avalanche.DEBT_SWAP_ADAPTER, 420 WITHDRAW_SWITCH_ADAPTER: AaveV3Avalanche.WITHDRAW_SWAP_ADAPTER, 421 }, 422 }, 423 [CustomMarket.proto_fuji_v3]: { 424 marketTitle: 'Avalanche Fuji', 425 market: CustomMarket.proto_fuji_v3, 426 v3: true, 427 chainId: ChainId.fuji, 428 enabledFeatures: { 429 faucet: true, 430 incentives: true, 431 }, 432 addresses: { 433 LENDING_POOL_ADDRESS_PROVIDER: '0xfb87056c0587923f15EB0aABc7d0572450Cc8003', // AaveV3Fuji.POOL_ADDRESSES_PROVIDER, 434 LENDING_POOL: '0xccEa5C65f6d4F465B71501418b88FBe4e7071283', // AaveV3Fuji.POOL, 435 WETH_GATEWAY: '0x8A007E495449ffeda4C2d65f14eE31f8Bcb022CF', // AaveV3Fuji.WETH_GATEWAY, 436 FAUCET: '0xBCcD21ae43139bEF545e72e20E78f039A3Ac1b96', // AaveV3Fuji.FAUCET, 437 WALLET_BALANCE_PROVIDER: '0xfFE3778c51e93EBf68f5d0a83c794E7f623024dd', // AaveV3Fuji.WALLET_BALANCE_PROVIDER, 438 UI_POOL_DATA_PROVIDER: '0x279c790Afcd547e2f20d896c5DDEe3846b9790B5', // AaveV3Fuji.UI_POOL_DATA_PROVIDER, 439 UI_INCENTIVE_DATA_PROVIDER: '0x1EFf285a4E34217495b5531151bffa222A94A4F9', // AaveV3Fuji.UI_INCENTIVE_DATA_PROVIDER, 440 }, 441 }, 442 [CustomMarket.proto_optimism_sepolia_v3]: { 443 marketTitle: 'Optimism Sepolia', 444 market: CustomMarket.proto_optimism_sepolia_v3, 445 v3: true, 446 permitDisabled: true, 447 chainId: ChainId.optimism_sepolia, 448 addresses: { 449 LENDING_POOL_ADDRESS_PROVIDER: AaveV3OptimismSepolia.POOL_ADDRESSES_PROVIDER, 450 LENDING_POOL: AaveV3OptimismSepolia.POOL, 451 WETH_GATEWAY: AaveV3OptimismSepolia.WETH_GATEWAY, 452 // FAUCET: AaveV3OptimismSepolia.FAUCET, 453 WALLET_BALANCE_PROVIDER: AaveV3OptimismSepolia.WALLET_BALANCE_PROVIDER, 454 UI_POOL_DATA_PROVIDER: AaveV3OptimismSepolia.UI_POOL_DATA_PROVIDER, 455 UI_INCENTIVE_DATA_PROVIDER: AaveV3OptimismSepolia.UI_INCENTIVE_DATA_PROVIDER, 456 L2_ENCODER: AaveV3OptimismSepolia.L2_ENCODER, 457 }, 458 }, 459 [CustomMarket.proto_scroll_sepolia_v3]: { 460 marketTitle: 'Scroll Sepolia', 461 market: CustomMarket.proto_scroll_sepolia_v3, 462 v3: true, 463 chainId: ChainId.scroll_sepolia, 464 enabledFeatures: { 465 faucet: true, 466 incentives: true, 467 }, 468 addresses: { 469 LENDING_POOL_ADDRESS_PROVIDER: AaveV3ScrollSepolia.POOL_ADDRESSES_PROVIDER, 470 LENDING_POOL: AaveV3ScrollSepolia.POOL, 471 WETH_GATEWAY: AaveV3ScrollSepolia.WETH_GATEWAY, 472 FAUCET: AaveV3ScrollSepolia.FAUCET, 473 WALLET_BALANCE_PROVIDER: AaveV3ScrollSepolia.WALLET_BALANCE_PROVIDER, 474 UI_POOL_DATA_PROVIDER: AaveV3ScrollSepolia.UI_POOL_DATA_PROVIDER, 475 UI_INCENTIVE_DATA_PROVIDER: AaveV3ScrollSepolia.UI_INCENTIVE_DATA_PROVIDER, 476 L2_ENCODER: AaveV3ScrollSepolia.L2_ENCODER, 477 }, 478 }, 479 [CustomMarket.proto_sonic_v3]: { 480 marketTitle: 'Sonic', 481 market: CustomMarket.proto_sonic_v3, 482 chainId: ChainId.sonic, 483 v3: true, 484 subgraphUrl: `https://gateway.thegraph.com/api/${apiKey}/subgraphs/id/FQcacc4ZJaQVS9euWb76nvpSq2GxavBnUM6DU6tmspbi`, 485 addresses: { 486 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Sonic.POOL_ADDRESSES_PROVIDER, 487 LENDING_POOL: AaveV3Sonic.POOL, 488 WETH_GATEWAY: AaveV3Sonic.WETH_GATEWAY, 489 WALLET_BALANCE_PROVIDER: AaveV3Sonic.WALLET_BALANCE_PROVIDER, 490 UI_POOL_DATA_PROVIDER: AaveV3Sonic.UI_POOL_DATA_PROVIDER, 491 UI_INCENTIVE_DATA_PROVIDER: AaveV3Sonic.UI_INCENTIVE_DATA_PROVIDER, 492 COLLECTOR: AaveV3Sonic.COLLECTOR, 493 }, 494 }, 495 [CustomMarket.proto_optimism_v3]: { 496 marketTitle: 'OP', 497 market: CustomMarket.proto_optimism_v3, 498 v3: true, 499 chainId: ChainId.optimism, 500 enabledFeatures: { 501 incentives: true, 502 collateralRepay: true, 503 liquiditySwap: true, 504 debtSwitch: true, 505 withdrawAndSwitch: true, 506 switch: true, 507 }, 508 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/DSfLz8oQBUeU5atALgUFQKMTSYV9mZAVYp4noLSXAfvb`, 509 addresses: { 510 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Optimism.POOL_ADDRESSES_PROVIDER, 511 LENDING_POOL: AaveV3Optimism.POOL, 512 WETH_GATEWAY: AaveV3Optimism.WETH_GATEWAY, 513 WALLET_BALANCE_PROVIDER: AaveV3Optimism.WALLET_BALANCE_PROVIDER, 514 UI_POOL_DATA_PROVIDER: AaveV3Optimism.UI_POOL_DATA_PROVIDER, 515 UI_INCENTIVE_DATA_PROVIDER: AaveV3Optimism.UI_INCENTIVE_DATA_PROVIDER, 516 L2_ENCODER: AaveV3Optimism.L2_ENCODER, 517 COLLECTOR: AaveV3Optimism.COLLECTOR, 518 SWAP_COLLATERAL_ADAPTER: AaveV3Optimism.SWAP_COLLATERAL_ADAPTER, 519 REPAY_WITH_COLLATERAL_ADAPTER: AaveV3Optimism.REPAY_WITH_COLLATERAL_ADAPTER, 520 DEBT_SWITCH_ADAPTER: AaveV3Optimism.DEBT_SWAP_ADAPTER, 521 WITHDRAW_SWITCH_ADAPTER: AaveV3Optimism.WITHDRAW_SWAP_ADAPTER, 522 }, 523 }, 524 [CustomMarket.proto_polygon_v3]: { 525 marketTitle: 'Polygon', 526 market: CustomMarket.proto_polygon_v3, 527 chainId: ChainId.polygon, 528 v3: true, 529 enabledFeatures: { 530 liquiditySwap: true, 531 incentives: true, 532 collateralRepay: true, 533 debtSwitch: true, 534 withdrawAndSwitch: true, 535 switch: true, 536 }, 537 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/Co2URyXjnxaw8WqxKyVHdirq9Ahhm5vcTs4dMedAq211`, 538 addresses: { 539 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Polygon.POOL_ADDRESSES_PROVIDER, 540 LENDING_POOL: AaveV3Polygon.POOL, 541 WETH_GATEWAY: AaveV3Polygon.WETH_GATEWAY, 542 REPAY_WITH_COLLATERAL_ADAPTER: AaveV3Polygon.REPAY_WITH_COLLATERAL_ADAPTER, 543 SWAP_COLLATERAL_ADAPTER: AaveV3Polygon.SWAP_COLLATERAL_ADAPTER, 544 WALLET_BALANCE_PROVIDER: AaveV3Polygon.WALLET_BALANCE_PROVIDER, 545 UI_POOL_DATA_PROVIDER: AaveV3Polygon.UI_POOL_DATA_PROVIDER, 546 UI_INCENTIVE_DATA_PROVIDER: AaveV3Polygon.UI_INCENTIVE_DATA_PROVIDER, 547 COLLECTOR: AaveV3Polygon.COLLECTOR, 548 DEBT_SWITCH_ADAPTER: AaveV3Polygon.DEBT_SWAP_ADAPTER, 549 WITHDRAW_SWITCH_ADAPTER: AaveV3Polygon.WITHDRAW_SWAP_ADAPTER, 550 }, 551 }, 552 553 [CustomMarket.proto_fuji]: { 554 marketTitle: 'Avalanche Fuji', 555 market: CustomMarket.proto_fuji, 556 chainId: ChainId.fuji, 557 enabledFeatures: { 558 faucet: true, 559 incentives: true, 560 }, 561 addresses: { 562 LENDING_POOL_ADDRESS_PROVIDER: AaveV2Fuji.POOL_ADDRESSES_PROVIDER, 563 LENDING_POOL: AaveV2Fuji.POOL, 564 WETH_GATEWAY: AaveV2Fuji.WETH_GATEWAY, 565 FAUCET: AaveV2Fuji.FAUCET, 566 WALLET_BALANCE_PROVIDER: AaveV2Fuji.WALLET_BALANCE_PROVIDER, 567 UI_POOL_DATA_PROVIDER: AaveV2Fuji.UI_POOL_DATA_PROVIDER, 568 UI_INCENTIVE_DATA_PROVIDER: AaveV2Fuji.UI_INCENTIVE_DATA_PROVIDER, 569 }, 570 }, 571 [CustomMarket.proto_metis_v3]: { 572 marketTitle: 'Metis', 573 market: CustomMarket.proto_metis_v3, 574 chainId: ChainId.metis_andromeda, 575 v3: true, 576 enabledFeatures: { 577 incentives: true, 578 }, 579 subgraphUrl: 'https://metisapi.0xgraph.xyz/subgraphs/name/aave/protocol-v3-metis', 580 addresses: { 581 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Metis.POOL_ADDRESSES_PROVIDER, 582 LENDING_POOL: AaveV3Metis.POOL, 583 WETH_GATEWAY: '0x0', // not applicable for Metis 584 WALLET_BALANCE_PROVIDER: AaveV3Metis.WALLET_BALANCE_PROVIDER, 585 UI_POOL_DATA_PROVIDER: AaveV3Metis.UI_POOL_DATA_PROVIDER, 586 UI_INCENTIVE_DATA_PROVIDER: AaveV3Metis.UI_INCENTIVE_DATA_PROVIDER, 587 COLLECTOR: AaveV3Metis.COLLECTOR, 588 }, 589 }, 590 [CustomMarket.proto_gnosis_v3]: { 591 marketTitle: 'Gnosis', 592 market: CustomMarket.proto_gnosis_v3, 593 chainId: ChainId.xdai, 594 v3: true, 595 enabledFeatures: { 596 liquiditySwap: true, 597 collateralRepay: true, 598 debtSwitch: true, 599 withdrawAndSwitch: true, 600 switch: false, 601 }, 602 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/HtcDaL8L8iZ2KQNNS44EBVmLruzxuNAz1RkBYdui1QUT`, 603 addresses: { 604 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Gnosis.POOL_ADDRESSES_PROVIDER, 605 LENDING_POOL: AaveV3Gnosis.POOL, 606 WETH_GATEWAY: AaveV3Gnosis.WETH_GATEWAY, 607 REPAY_WITH_COLLATERAL_ADAPTER: AaveV3Gnosis.REPAY_WITH_COLLATERAL_ADAPTER, 608 SWAP_COLLATERAL_ADAPTER: AaveV3Gnosis.SWAP_COLLATERAL_ADAPTER, 609 WALLET_BALANCE_PROVIDER: AaveV3Gnosis.WALLET_BALANCE_PROVIDER, 610 UI_POOL_DATA_PROVIDER: AaveV3Gnosis.UI_POOL_DATA_PROVIDER, 611 UI_INCENTIVE_DATA_PROVIDER: AaveV3Gnosis.UI_INCENTIVE_DATA_PROVIDER, 612 COLLECTOR: AaveV3Gnosis.COLLECTOR, 613 DEBT_SWITCH_ADAPTER: AaveV3Gnosis.DEBT_SWAP_ADAPTER, 614 WITHDRAW_SWITCH_ADAPTER: AaveV3Gnosis.WITHDRAW_SWAP_ADAPTER, 615 }, 616 }, 617 [CustomMarket.proto_bnb_v3]: { 618 marketTitle: 'BNB Chain', 619 market: CustomMarket.proto_bnb_v3, 620 chainId: ChainId.bnb, 621 v3: true, 622 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/7Jk85XgkV1MQ7u56hD8rr65rfASbayJXopugWkUoBMnZ`, 623 enabledFeatures: { 624 liquiditySwap: true, 625 collateralRepay: true, 626 debtSwitch: true, 627 withdrawAndSwitch: true, 628 switch: true, 629 }, 630 addresses: { 631 LENDING_POOL_ADDRESS_PROVIDER: AaveV3BNB.POOL_ADDRESSES_PROVIDER, 632 LENDING_POOL: AaveV3BNB.POOL, 633 WETH_GATEWAY: AaveV3BNB.WETH_GATEWAY, 634 REPAY_WITH_COLLATERAL_ADAPTER: AaveV3BNB.REPAY_WITH_COLLATERAL_ADAPTER, 635 SWAP_COLLATERAL_ADAPTER: AaveV3BNB.SWAP_COLLATERAL_ADAPTER, 636 WALLET_BALANCE_PROVIDER: AaveV3BNB.WALLET_BALANCE_PROVIDER, 637 UI_POOL_DATA_PROVIDER: AaveV3BNB.UI_POOL_DATA_PROVIDER, 638 UI_INCENTIVE_DATA_PROVIDER: AaveV3BNB.UI_INCENTIVE_DATA_PROVIDER, 639 COLLECTOR: AaveV3BNB.COLLECTOR, 640 DEBT_SWITCH_ADAPTER: AaveV3BNB.DEBT_SWAP_ADAPTER, 641 WITHDRAW_SWITCH_ADAPTER: AaveV3BNB.WITHDRAW_SWAP_ADAPTER, 642 }, 643 }, 644 [CustomMarket.proto_scroll_v3]: { 645 marketTitle: 'Scroll', 646 market: CustomMarket.proto_scroll_v3, 647 chainId: ChainId.scroll, 648 v3: true, 649 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/74JwenoHZb2aAYVGCCSdPWzi9mm745dyHyQQVoZ7Sbub`, 650 addresses: { 651 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Scroll.POOL_ADDRESSES_PROVIDER, 652 LENDING_POOL: AaveV3Scroll.POOL, 653 WETH_GATEWAY: AaveV3Scroll.WETH_GATEWAY, 654 WALLET_BALANCE_PROVIDER: AaveV3Scroll.WALLET_BALANCE_PROVIDER, 655 UI_POOL_DATA_PROVIDER: AaveV3Scroll.UI_POOL_DATA_PROVIDER, 656 UI_INCENTIVE_DATA_PROVIDER: AaveV3Scroll.UI_INCENTIVE_DATA_PROVIDER, 657 COLLECTOR: AaveV3Scroll.COLLECTOR, 658 }, 659 }, 660 [CustomMarket.proto_zksync_v3]: { 661 marketTitle: 'ZKsync', 662 market: CustomMarket.proto_zksync_v3, 663 chainId: ChainId.zksync, 664 v3: true, 665 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/ENYSc8G3WvrbhWH8UZHrqPWYRcuyCaNmaTmoVp7uzabM`, 666 addresses: { 667 LENDING_POOL_ADDRESS_PROVIDER: AaveV3ZkSync.POOL_ADDRESSES_PROVIDER, 668 LENDING_POOL: AaveV3ZkSync.POOL, 669 WETH_GATEWAY: AaveV3ZkSync.WETH_GATEWAY, 670 WALLET_BALANCE_PROVIDER: AaveV3ZkSync.WALLET_BALANCE_PROVIDER, 671 UI_POOL_DATA_PROVIDER: AaveV3ZkSync.UI_POOL_DATA_PROVIDER, 672 UI_INCENTIVE_DATA_PROVIDER: AaveV3ZkSync.UI_INCENTIVE_DATA_PROVIDER, 673 COLLECTOR: AaveV3ZkSync.COLLECTOR, 674 }, 675 }, 676 [CustomMarket.proto_linea_v3]: { 677 marketTitle: 'Linea', 678 market: CustomMarket.proto_linea_v3, 679 chainId: ChainId.linea, 680 v3: true, 681 subgraphUrl: `https://gateway.thegraph.com/api/${apiKey}/subgraphs/id/Gz2kjnmRV1fQj3R8cssoZa5y9VTanhrDo4Mh7nWW1wHa`, 682 addresses: { 683 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Linea.POOL_ADDRESSES_PROVIDER, 684 LENDING_POOL: AaveV3Linea.POOL, 685 WETH_GATEWAY: AaveV3Linea.WETH_GATEWAY, 686 WALLET_BALANCE_PROVIDER: AaveV3Linea.WALLET_BALANCE_PROVIDER, 687 UI_POOL_DATA_PROVIDER: AaveV3Linea.UI_POOL_DATA_PROVIDER, 688 UI_INCENTIVE_DATA_PROVIDER: AaveV3Linea.UI_INCENTIVE_DATA_PROVIDER, 689 COLLECTOR: AaveV3Linea.COLLECTOR, 690 }, 691 }, 692 693 [CustomMarket.proto_celo_v3]: { 694 marketTitle: 'Celo', 695 market: CustomMarket.proto_celo_v3, 696 chainId: ChainId.celo, 697 v3: true, 698 subgraphUrl: `https://gateway.thegraph.com/api/${apiKey}/subgraphs/id/GAVWZzGwQ6d6QbFojyFWxpZ2GB9Rf5hZgGyJHCEry8kn`, 699 addresses: { 700 LENDING_POOL_ADDRESS_PROVIDER: AaveV3Celo.POOL_ADDRESSES_PROVIDER, 701 LENDING_POOL: AaveV3Celo.POOL, 702 WALLET_BALANCE_PROVIDER: AaveV3Celo.WALLET_BALANCE_PROVIDER, 703 UI_POOL_DATA_PROVIDER: AaveV3Celo.UI_POOL_DATA_PROVIDER, 704 UI_INCENTIVE_DATA_PROVIDER: AaveV3Celo.UI_INCENTIVE_DATA_PROVIDER, 705 COLLECTOR: AaveV3Celo.COLLECTOR, 706 }, 707 }, 708 [CustomMarket.proto_etherfi_v3]: { 709 marketTitle: 'EtherFi', 710 market: CustomMarket.proto_etherfi_v3, 711 chainId: ChainId.mainnet, 712 v3: true, 713 logo: '/icons/markets/etherfi.svg', 714 enabledFeatures: { 715 governance: true, 716 staking: true, 717 liquiditySwap: true, 718 collateralRepay: true, 719 incentives: true, 720 withdrawAndSwitch: true, 721 debtSwitch: true, 722 switch: false, 723 }, 724 subgraphUrl: `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/subgraphs/id/8o4HGApJkAqnvxAHShG4w5xiXihHyL7HkeDdQdRUYmqZ`, 725 addresses: { 726 LENDING_POOL_ADDRESS_PROVIDER: AaveV3EthereumEtherFi.POOL_ADDRESSES_PROVIDER, 727 LENDING_POOL: AaveV3EthereumEtherFi.POOL, 728 WETH_GATEWAY: AaveV3EthereumEtherFi.WETH_GATEWAY, 729 REPAY_WITH_COLLATERAL_ADAPTER: AaveV3EthereumEtherFi.REPAY_WITH_COLLATERAL_ADAPTER, 730 SWAP_COLLATERAL_ADAPTER: AaveV3EthereumEtherFi.SWAP_COLLATERAL_ADAPTER, 731 WALLET_BALANCE_PROVIDER: AaveV3EthereumEtherFi.WALLET_BALANCE_PROVIDER, 732 UI_POOL_DATA_PROVIDER: AaveV3EthereumEtherFi.UI_POOL_DATA_PROVIDER, 733 UI_INCENTIVE_DATA_PROVIDER: AaveV3EthereumEtherFi.UI_INCENTIVE_DATA_PROVIDER, 734 COLLECTOR: AaveV3EthereumEtherFi.COLLECTOR, 735 WITHDRAW_SWITCH_ADAPTER: AaveV3EthereumEtherFi.WITHDRAW_SWAP_ADAPTER, 736 DEBT_SWITCH_ADAPTER: AaveV3EthereumEtherFi.DEBT_SWAP_ADAPTER, 737 }, 738 }, 739 } as const;