1
1
import { ProtocolAction } from '@aave/contract-helpers' ;
2
2
import { ReserveIncentiveResponse } from '@aave/math-utils/dist/esm/formatters/incentive/calculate-reserve-incentives' ;
3
- import { AaveV3Avalanche , AaveV3Base , AaveV3Ethereum } from '@bgd-labs/aave-address-book' ;
3
+ import {
4
+ AaveV3Arbitrum ,
5
+ AaveV3Avalanche ,
6
+ AaveV3Base ,
7
+ AaveV3Ethereum ,
8
+ AaveV3EthereumLido ,
9
+ } from '@bgd-labs/aave-address-book' ;
4
10
import { useQuery } from '@tanstack/react-query' ;
5
11
import { CustomMarket } from 'src/ui-config/marketsConfig' ;
6
12
7
13
export enum MeritAction {
8
14
ETHEREUM_STKGHO = 'ethereum-stkgho' ,
9
15
ETHEREUM_SUPPLY_PYUSD = 'ethereum-supply-pyusd' ,
10
16
ETHEREUM_SUPPLY_ETHX = 'ethereum-supply-ethx' ,
17
+ ETHEREUM_PRIME_SUPPLY_ETH = 'ethereum-prime-supply-weth' ,
18
+ ETHEREUM_PRIME_SUPPLY_EZETH = 'ethereum-prime-supply-ezeth' ,
11
19
SUPPLY_CBBTC_BORROW_USDC = 'ethereum-supply-cbbtc-borrow-usdc' ,
12
20
SUPPLY_WBTC_BORROW_USDT = 'ethereum-supply-wbtc-borrow-usdt' ,
21
+ ARBITRUM_SUPPLY_ETH = 'arbitrum-supply-weth' ,
22
+ ARBITRUM_SUPPLY_WSTETH = 'arbitrum-supply-wsteth' ,
23
+ ARBITRUM_SUPPLY_EZETH = 'arbitrum-supply-ezeth' ,
13
24
BASE_SUPPLY_CBBTC = 'base-supply-cbbtc' ,
14
25
BASE_SUPPLY_USDC = 'base-supply-usdc' ,
26
+ BASE_SUPPLY_WSTETH = 'base-supply-wsteth' ,
27
+ BASE_SUPPLY_EZETH = 'base-supply-ezeth' ,
15
28
BASE_BORROW_USDC = 'base-borrow-usdc' ,
16
29
AVALANCHE_SUPPLY_BTCB = 'avalanche-supply-btcb' ,
17
30
AVALANCHE_SUPPLY_USDC = 'avalanche-supply-usdc' ,
@@ -44,6 +57,11 @@ export type MeritReserveIncentiveData = Omit<ReserveIncentiveResponse, 'incentiv
44
57
const getMeritData = ( market : string , symbol : string ) : MeritReserveIncentiveData [ ] | undefined =>
45
58
MERIT_DATA_MAP [ market ] ?. [ symbol ] ;
46
59
60
+ const antiLoopMessage =
61
+ 'Borrowing of some assets may impact the amount of rewards you are eligible for. Please check the forum post for the full eligibility criteria.' ;
62
+ const joinedEthCorrelatedIncentiveForumLink =
63
+ 'https://governance.aave.com/t/arfc-set-aci-as-emission-manager-for-liquidity-mining-programs/17898/56' ;
64
+
47
65
const MERIT_DATA_MAP : Record < string , Record < string , MeritReserveIncentiveData [ ] > > = {
48
66
[ CustomMarket . proto_mainnet_v3 ] : {
49
67
GHO : [
@@ -99,8 +117,7 @@ const MERIT_DATA_MAP: Record<string, Record<string, MeritReserveIncentiveData[]>
99
117
protocolAction : ProtocolAction . supply ,
100
118
customForumLink :
101
119
'https://governance.aave.com/t/arfc-pyusd-reserve-configuration-update-incentive-campaign/19573' ,
102
- customMessage :
103
- 'Borrowing of some assets may impact the amount of rewards you are eligible for. Please check the forum post for the full eligibility criteria.' ,
120
+ customMessage : antiLoopMessage ,
104
121
} ,
105
122
] ,
106
123
ETHx : [
@@ -112,6 +129,80 @@ const MERIT_DATA_MAP: Record<string, Record<string, MeritReserveIncentiveData[]>
112
129
} ,
113
130
] ,
114
131
} ,
132
+ [ CustomMarket . proto_lido_v3 ] : {
133
+ ETH : [
134
+ {
135
+ action : MeritAction . ETHEREUM_PRIME_SUPPLY_ETH ,
136
+ rewardTokenAddress : AaveV3EthereumLido . ASSETS . WETH . A_TOKEN ,
137
+ rewardTokenSymbol : 'aEthLidoWETH' ,
138
+ protocolAction : ProtocolAction . supply ,
139
+ customMessage : antiLoopMessage ,
140
+ customForumLink : joinedEthCorrelatedIncentiveForumLink ,
141
+ } ,
142
+ ] ,
143
+ WETH : [
144
+ {
145
+ action : MeritAction . ETHEREUM_PRIME_SUPPLY_ETH ,
146
+ rewardTokenAddress : AaveV3EthereumLido . ASSETS . WETH . A_TOKEN ,
147
+ rewardTokenSymbol : 'aEthLidoWETH' ,
148
+ protocolAction : ProtocolAction . supply ,
149
+ customMessage : antiLoopMessage ,
150
+ customForumLink : joinedEthCorrelatedIncentiveForumLink ,
151
+ } ,
152
+ ] ,
153
+ ezETH : [
154
+ {
155
+ action : MeritAction . ETHEREUM_PRIME_SUPPLY_EZETH ,
156
+ rewardTokenAddress : '0x3B50805453023a91a8bf641e279401a0b23FA6F9' , // Renzo (REZ)
157
+ rewardTokenSymbol : 'REZ' ,
158
+ protocolAction : ProtocolAction . supply ,
159
+ customMessage : antiLoopMessage ,
160
+ customForumLink : joinedEthCorrelatedIncentiveForumLink ,
161
+ } ,
162
+ ] ,
163
+ } ,
164
+ [ CustomMarket . proto_arbitrum_v3 ] : {
165
+ ETH : [
166
+ {
167
+ action : MeritAction . ARBITRUM_SUPPLY_ETH ,
168
+ rewardTokenAddress : AaveV3Arbitrum . ASSETS . WETH . A_TOKEN ,
169
+ rewardTokenSymbol : 'aArbWETH' ,
170
+ protocolAction : ProtocolAction . supply ,
171
+ customMessage : antiLoopMessage ,
172
+ customForumLink : joinedEthCorrelatedIncentiveForumLink ,
173
+ } ,
174
+ ] ,
175
+ WETH : [
176
+ {
177
+ action : MeritAction . ARBITRUM_SUPPLY_ETH ,
178
+ rewardTokenAddress : AaveV3Arbitrum . ASSETS . WETH . A_TOKEN ,
179
+ rewardTokenSymbol : 'aArbWETH' ,
180
+ protocolAction : ProtocolAction . supply ,
181
+ customMessage : antiLoopMessage ,
182
+ customForumLink : joinedEthCorrelatedIncentiveForumLink ,
183
+ } ,
184
+ ] ,
185
+ wstETH : [
186
+ {
187
+ action : MeritAction . ARBITRUM_SUPPLY_WSTETH ,
188
+ rewardTokenAddress : AaveV3Ethereum . ASSETS . wstETH . UNDERLYING ,
189
+ rewardTokenSymbol : 'aArbwstETH' ,
190
+ protocolAction : ProtocolAction . supply ,
191
+ customMessage : antiLoopMessage ,
192
+ customForumLink : joinedEthCorrelatedIncentiveForumLink ,
193
+ } ,
194
+ ] ,
195
+ ezETH : [
196
+ {
197
+ action : MeritAction . ARBITRUM_SUPPLY_EZETH ,
198
+ rewardTokenAddress : '0x3B50805453023a91a8bf641e279401a0b23FA6F9' , // Renzo (REZ)
199
+ rewardTokenSymbol : 'REZ' ,
200
+ protocolAction : ProtocolAction . supply ,
201
+ customMessage : antiLoopMessage ,
202
+ customForumLink : joinedEthCorrelatedIncentiveForumLink ,
203
+ } ,
204
+ ] ,
205
+ } ,
115
206
[ CustomMarket . proto_base_v3 ] : {
116
207
cbBTC : [
117
208
{
@@ -135,6 +226,26 @@ const MERIT_DATA_MAP: Record<string, Record<string, MeritReserveIncentiveData[]>
135
226
protocolAction : ProtocolAction . borrow ,
136
227
} ,
137
228
] ,
229
+ wstETH : [
230
+ {
231
+ action : MeritAction . BASE_SUPPLY_WSTETH ,
232
+ rewardTokenAddress : AaveV3Base . ASSETS . wstETH . UNDERLYING ,
233
+ rewardTokenSymbol : 'aBaswstETH' ,
234
+ protocolAction : ProtocolAction . supply ,
235
+ customMessage : antiLoopMessage ,
236
+ customForumLink : joinedEthCorrelatedIncentiveForumLink ,
237
+ } ,
238
+ ] ,
239
+ ezETH : [
240
+ {
241
+ action : MeritAction . BASE_SUPPLY_EZETH ,
242
+ rewardTokenAddress : '0x3B50805453023a91a8bf641e279401a0b23FA6F9' , // Renzo (REZ)
243
+ rewardTokenSymbol : 'REZ' ,
244
+ protocolAction : ProtocolAction . supply ,
245
+ customMessage : antiLoopMessage ,
246
+ customForumLink : joinedEthCorrelatedIncentiveForumLink ,
247
+ } ,
248
+ ] ,
138
249
} ,
139
250
[ CustomMarket . proto_avalanche_v3 ] : {
140
251
[ 'BTC.b' ] : [
0 commit comments