impermax-sdk 2.1.270 → 2.1.272

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.
@@ -12,153 +12,26 @@ const types_1 = require("./types");
12
12
  exports.WHITELISTED_PAIRS = {
13
13
  [types_1.Networks.Ropsten]: {},
14
14
  [types_1.Networks.Mainnet]: {
15
- [types_1.Factory.V2V1]: [
16
- "0x3041cbd36888becc7bbcbc0045e3b1f144466f5f",
17
- "0xbb2b8038a1640196fbe3e38816f3e67cba72d940",
18
- "0xa478c2975ab1ea89e8196811f51a7b7ade33eb11",
19
- "0xd3d2e2692501a5c9ca623199d38826e513033a17",
20
- "0x4d5ef58aac27d99935e5b6b4a6778ff292059991",
21
- "0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc",
22
- "0x0d4a11d5eeaac28ec3f61d100daf4d40471f1852",
23
- "0xa2107fa5b38d9bbd2c461d6edf11b11a50f6b974",
24
- "0xdfc14d2af169b0d36c4eff567ada9b2e0cae044f",
25
- "0x819f3450da6f110ba6ea52195b3beafa246062de",
26
- "0xcffdded873554f362ac02f8fb1f02e5ada10516f",
27
- "0x43ae24960e5534731fc831386c07755a2dc33d47",
28
- "0x3da1313ae46132a397d90d95b1424a9a7e3e0fce",
29
- "0xa5e79baee540f000ef6f23d067cd3ac22c7d9fe6",
30
- "0x2fdbadf3c4d5a8666bc06645b8358ab803996e28", //YFI-ETH
31
- ],
15
+ [types_1.Factory.V2V1]: [],
32
16
  },
33
17
  [types_1.Networks.Polygon]: {
34
- [types_1.Factory.V2V1_1]: [
35
- // QuickSwap
36
- "0x8f7F8a534F6a7d57FbdA855Cf3588eB1eDc4508B",
37
- "0xc380e7FA325E1708e9E6eF4D9beD2CD806fcB328",
38
- "0x2912A338DF9877905e54c557e4d826f84365602e",
39
- "0x16AEd35D0c1f5500b73063b10C0dAd42B772ac23",
40
- "0x3e115a3aF5a58C73571586468B0f5d08BfE9dab1",
41
- "0xc3a4C0677b033BF6e9a4E22f930f1D60c5Cd2c86",
42
- "0x6D59C06a7f96a508310A76Da84dB397819E29c62",
43
- "0xc6c866c2C69FF093E14746E6F9dbc7A22E0e6522",
44
- "0x0c7fEaa175F62779be13cDD4Fe878e55Ee70179e",
45
- "0xb361E254dAe512A7bd37f72B926f625f4D39dB56",
46
- "0xb48E8C226facb7aDE62ab0CA8588789aAA1428aA",
47
- "0x205995421c72dc223f36bbfad78b66eea72d2677",
48
- "0xd83a3ddC19A651F79970291d71b41Be5509e7c66",
49
- "0xE1ad5D74f3fEdE7Ec63Fec63D4bAFe9afbF09eDB",
50
- // QuickSwap Dual Reward
51
- "0x1714f3d4C4654bd5afD0Ff2590d23b053e0BEA81",
52
- "0xe74189ce423345967Ef5A646316Ece52BB2fbFC9",
53
- "0x14a49B53B62f7037814d4F5cAb8C92F185d045B0",
54
- // SushiSwap
55
- "0xbb7cCc9c0f72Fb91DEE7053C652E961117DB4368",
56
- "0x9B2f10eAE09fAd574B3f76b977c06634a4Ec3a46",
57
- "0x542cCc962097B184Ca12A46030D967a735342cF8",
58
- "0x7DA257e84f233C9d05959F923c797585549bb3CB",
59
- "0x9039b60EeE1aDBD2697A0fFb558f879c0b5D87bb",
60
- "0xC2Eb7FC0C27B20400e9923a1f4066D8D4a9cd203",
61
- "0xCB8F6c44C85f4a55f243df1D1f339a52a452aCa5",
62
- "0xb5846453b67d0b4b4ce655930cf6e4129f4416d7",
63
- "0xa13C38e12B1d516634dCFeB80ABE620aEDFcf0D0",
64
- "0x3DF6b9fdDB088d0B367aCF32F2975B6613De87a9",
65
- "0x34310CE0a22A7e6142c66B5334CE3C91d3892313", //ETH-SX
66
- // TetuSwap
67
- //"0xCB9A1bf72BE38A9cE7ac781D2deab19eb7f0a03A", //TETU-USDC
68
- ],
69
- [types_1.Factory.V2V2]: [
70
- // for quickswap partnership
71
- // QuickSwap
72
- "0xe186dac06f75e7e2655db05a7c684289eaa19179",
73
- "0x1714f3d4C4654bd5afD0Ff2590d23b053e0BEA81",
74
- "0xe74189ce423345967ef5a646316ece52bb2fbfc9",
75
- "0x14a49B53B62f7037814d4F5cAb8C92F185d045B0",
76
- "0x59377dbd9f550568540cae0b21412bee1cc3f439",
77
- "0x2912a338df9877905e54c557e4d826f84365602e",
78
- "0xc380e7fa325e1708e9e6ef4d9bed2cd806fcb328",
79
- "0x3e115a3af5a58c73571586468b0f5d08bfe9dab1",
80
- "0x8f7f8a534f6a7d57fbda855cf3588eb1edc4508b",
81
- "0xc3a4c0677b033bf6e9a4e22f930f1d60c5cd2c86",
82
- "0x8ab6ea95C3c8d4d415D531c18ee3e6B14A1a3Cc2",
83
- "0xf189C676a837B973F83A55eAFD187E322F8E4Cfe",
84
- "0xf9221c5EDC736D26ffC4dDCcDDfA15A4B958862e", //GNS-DAI
85
- ],
18
+ [types_1.Factory.V2V1_1]: [],
19
+ [types_1.Factory.V2V2]: [],
86
20
  [types_1.Factory.SOLV2]: [],
87
21
  [types_1.Factory.SOL_STABLE]: [],
88
22
  },
89
23
  [types_1.Networks.Arbitrum]: {
90
- [types_1.Factory.V2V1_1]: [
91
- // SushiSwap
92
- "0xB0e7Ad5053414fDe098122B61fd34D816fd6D93f",
93
- "0x7532A8d8a12BDd871796a07aC90E510b1CC8f694",
94
- "0x95c9bF3f60Cbc2BE8e148FAe82f26930bFcD1839",
95
- "0xa6E69dD0C36F3b59539e2c7aFD274eF91b5c70F9",
96
- //"0xeF7Fa2D462dd5466AcFDe19D0143A1474bcC84b5", //ETH-LINK
97
- //"0x9cbA44088FeC97C14b850D067f94e38f274c27d5", //ETH-DPX
98
- //"0xaCacB091B65E8291A227afF563e023ee6E6dF219", //ETH-RDPX
99
- "0x6D94F7e67C6ae0B0257C35754e059FDfB249d998",
100
- "0x88a0B00BBE918eE00e3482F71962070Dc052984b", //ETH-MAGIC
101
- ],
102
- [types_1.Factory.V2V2]: [
103
- "0x6024C3e62D8e774A498f7911aE6874b1AFDA4364",
104
- // Arbidex
105
- "0x116852f076Fac0050De7E12aa0b7Ce86B33cC422",
106
- "0x82062777dC9ff32D9D2aC1242e76A9f122431A58",
107
- "0x478DE28185959cc5C553C0677ddC6e2e11629BC0",
108
- "0x5B4AeE12f8e6884E81661e360954420857448ae2",
109
- "0xfd99357DD35Fa2ed55103abc8b1bDA02E3E605F2",
110
- "0xd4406836f1511e86E91dC64Dd14FbFA682D69f0d", //USDC-ARB
111
- ],
112
- [types_1.Factory.SOLV2]: [
113
- // SolidLizard
114
- "0x699c5e23357aB1BF658bD0B38070d746E37671f3",
115
- "0x2d2ee5838838a1131995509346c9C9848b3367d8",
116
- "0x32FaA88478A0104154e9417C6F7b4Fa288f728Aa",
117
- "0x4B28550846405A7825247F54070b568C2ECe3eEB",
118
- // Auragi
119
- "0x2D658A6a569139f84d8c2f4e37Eed04F19EAB37D",
120
- // Chronos
121
- "0x350954bf706B296CBFDf58fBFEDe91Ac4A271BEa",
122
- "0xd4d45B476197b10da32ce58E669Bae8bdF0f7E16",
123
- "0x7cA9a0140EE27ed4dF141DEab53088a69CCC4Cf8",
124
- "0x21E885fe81731ae391717Afb0513Dd0dF364fe06",
125
- "0x06507308ef73937E96f33c9defb6BE7F65cbc13c",
126
- "0x8DC16595ac492056d9C59470685E3AB296E8322f",
127
- "0xA633615b835DBdF89C3f2B5420048B3201638E4a",
128
- "0x01a464e2BF76Bd4A3A50073026fF2335584D67d8",
129
- "0x7b4975F5C3BE5735714F597D7af6877bDD68Bf13",
130
- "0x3d5FCbEd1c9B6C9B0f6deA1DED55b161a6eFeF31",
131
- "0x4941007F424336a682B478993dBDAF0a444d82fc",
132
- "0x39680ed7d9267e3AFe7239D2930361CBee996207", //GNS-ETH
133
- ],
24
+ [types_1.Factory.V2V1_1]: [],
25
+ [types_1.Factory.V2V2]: [],
26
+ [types_1.Factory.SOLV2]: [],
134
27
  },
135
28
  [types_1.Networks.Avalanche]: {
136
- [types_1.Factory.V2V1_2]: [
137
- // Pangolin V2
138
- "0x6Ca300f7B764580e52889341E8941CcA7CfCA727",
139
- "0x7140D22AFC110741323ef29868c48b566a3295D4",
140
- "0xc532a2885027677c4BE61F710F7D41941dBaD1B1",
141
- "0x734ee20bBaD6d191432B34FbFd1493c16f065E9C",
142
- "0x5b588F4481035B0f765393FC9F4752615a6D0498",
143
- // Pangolin-BenQI
144
- "0x3e2a4Dcd46e0e339aEC603080D90Bd939a163062", //QI-AVAX
145
- ],
29
+ [types_1.Factory.V2V1_2]: [],
146
30
  [types_1.Factory.V2V2]: [],
147
31
  [types_1.Factory.SOLV2]: [],
148
32
  },
149
33
  [types_1.Networks.Moonriver]: {
150
- [types_1.Factory.V2V1_2]: [
151
- // // SolarBeam V2
152
- // "0x899CaAd2d29EFf3b628503A85DAE736B5c4d1671", //ETH-MOVR
153
- // "0x24e19bD8477077B80DE25Ee7FC9F7A67D89D8009", //WBTC-MOVR
154
- // "0x2748d9d4E7379D5D29CA8887aeFF929912fF06D8", //MIM-MOVR
155
- // "0x35e8f2D87821a5149d92833390880F65911AD4d0", //FRAX-MOVR
156
- // // SolarBeam V3
157
- // "0x4683e366aa2D3e7Cb1a776Db6c8efCbcb143cD17", //ETH-MOVR
158
- // "0xAce2a03b7937fDdf40B33F7229381575Abb99DB3", //USDC-MOVR
159
- // // SushiSwap
160
- // //"0xDB45ddcE0216F7920CfBcbE26804c6E50B667960", //ETH-MOVR
161
- ],
34
+ [types_1.Factory.V2V1_2]: [],
162
35
  },
163
36
  [types_1.Networks.Aurora]: {},
164
37
  [types_1.Networks.Cronos]: {},
@@ -189,41 +62,10 @@ exports.WHITELISTED_PAIRS = {
189
62
  ]
190
63
  },
191
64
  [types_1.Networks.Canto]: {
192
- [types_1.Factory.SOLV2]: [
193
- // // Velocimeter
194
- // "0x921c11519444231c84fDDAc2eCbCf7C84F25730A", //CANTO-FLOW
195
- // "0x5C32443985B599605a3c1C6Eb96b274BAe95062a", //CANTO-NOTE
196
- // "0x63c544591Ce03E097813422FD30e886A54ed540E", //CANTO-ETH
197
- // "0x2E33A768A2461Acce69e54102074737B91EDF7e3", //FLOW-NOTE
198
- // "0xAf4846A2d46562965fa008761790817D922834F6", //FLOW-ETH
199
- // "0xBd437c716da4a1A1c5BD004764300dFF72DfBCC0", //CANTO-ATOM
200
- // "0x22456D98a75fd0540418921372a85C2b54E57F2d", //IBEX-NOTE
201
- // "0x5BDf174963b1a8D7253a6Dff9788D3c619C31E96", //CBONK-CANTO
202
- // "0x528aCfc1C53C95d97f2540754C035c732EF291B7", //multiBTC-ETH
203
- // "0x91b7711b7f91B3B999A2a2B71fc00323cf381eAb", //multiBTC-NOTE
204
- // "0xc5a7Dab3897cb0f6f168d3F3b5f8335E50EEc661", //multiBTC-FLOW
205
- // "0x55E7b42aDE0D33A4720850c6Ccb940130767736d", //ETH-stETH
206
- ],
65
+ [types_1.Factory.SOLV2]: [],
207
66
  },
208
67
  [types_1.Networks.ZksyncEra]: {
209
- [types_1.Factory.SOLV2]: [
210
- // Velocore
211
- "0x0C468E366B9ae76ca43acc90be049711c7E7B6d7",
212
- "0xE2f69aE6770d777A21fe3ffd781Dc640B4d36b18",
213
- "0x304847Ddbf68948655b0209c00E32A0923eF41B6",
214
- "0x1B5887722E9E8E74426c057a1fabb40395dCB1e5",
215
- "0x572261bc2F1652dC8B2C6Ea9d5bF7B3699DcB1bC",
216
- // VeSync
217
- "0xc9Fb969F3770387C0A634C9fa4656B268404A2Db",
218
- "0x1fD9e25a7D3FD1ba151Fb7C9353aBB45b908d5D2",
219
- "0x0d72322A1C86B1dF92711327a38a79a5679e478f",
220
- "0x8d535eFa82481CdefBe7801E562736017Bc59872",
221
- //"0x2907ab8286Bd0438064816f6CCf1bf688Ec70A56", //wTBT-USDC
222
- // Dracula
223
- "0xc73195F2B5D60A59F81f88A3ec77BBF4555faB57",
224
- "0xbaDde16f4ED28B3f2118942c521cA0eF6A2c6e01",
225
- "0xD2905ec6172A956f4E79C8DCee4e9470dA587Da3", //FANG-USDC
226
- ],
68
+ [types_1.Factory.SOLV2]: [],
227
69
  },
228
70
  [types_1.Networks.Harmony]: {},
229
71
  [types_1.Networks.Moonbeam]: {},
@@ -295,35 +137,17 @@ exports.WHITELISTED_PAIRS = {
295
137
  },
296
138
  [types_1.Networks.Mantle]: {
297
139
  [types_1.Factory.V2V2]: [
298
- "0xba5E281a7e0197a685534bae1606f650Cf4fbB55",
299
- "0x6fd0cB9b9DB27446F833807084Ea2FaDBcBe822A",
300
- "0x0Ae5F81eD785bd0a82FD7555181a3566D52cAFA2",
301
- "0x221972d1Ee7e3175200268F8a5c350B54fBE4745",
302
- "0x736f7D3bD6a2b829dFA5B9501b873675d0165d21",
140
+ // Mantle was never listed
141
+ //"0xba5E281a7e0197a685534bae1606f650Cf4fbB55",
142
+ //"0x6fd0cB9b9DB27446F833807084Ea2FaDBcBe822A",
143
+ //"0x0Ae5F81eD785bd0a82FD7555181a3566D52cAFA2",
144
+ //"0x221972d1Ee7e3175200268F8a5c350B54fBE4745",
145
+ //"0x736f7D3bD6a2b829dFA5B9501b873675d0165d21",
303
146
  ]
304
147
  },
305
148
  [types_1.Networks.Scroll]: {
306
- [types_1.Factory.SOLV2]: [
307
- "0xE3167f148F3C97dea3D42cb9d6848a7d28b3A296",
308
- "0xFA444f62379619BDa05842f70fE13c5469B238F6",
309
- "0x88b5068c4ED14d69C7093011149E7d5E93a0a98e",
310
- "0xC90073E1CaBCf5069E00c5a6cB10023c9e1D5c4f",
311
- "0xD30eDb2f0CA35cba70d10bd3fcCe5Bbb317C88C7",
312
- "0x8A16A1CA6c303122E5FA985150A2b742B3aA5FB7",
313
- "0x185060149a0fA57aa93AFEBFaD052029129903b2",
314
- "0x2072119D41ba1288cEEc5Cc8FD7b31A0fC9734fc",
315
- "0x0833C454fc94d32e03110081AC9b9AD2d54e18Fa",
316
- "0x432C27EfeD615033A7F0c6320E9831332685EB53",
317
- "0xbD4b6e9992BEF375A14793b18D2A1CC8d710D45b",
318
- "0xd398411A691C81e50a1216e287bbe6D5F54Fe2Cc",
319
- "0xDbbF2Fa67Cfa713b1Ab2376A0EEF1a34d6f9E8c6", // scr/weth stakedlp
320
- ],
321
- [types_1.Factory.SOL_STABLE]: [
322
- "0x354Df4F5925145409f76B044bf1E4BD3a5dCe74E",
323
- "0xB0a3410C7672CC0759fF6DA3540a9A26083507dc",
324
- "0x3E458C566e81869DCc1c84690441e29149Ee6D35",
325
- "0x471819fAFe0C6Bc919Ae1FF4e7DbE67371c4b467", // usdc/more stakedlp
326
- ]
149
+ [types_1.Factory.SOLV2]: [],
150
+ [types_1.Factory.SOL_STABLE]: []
327
151
  },
328
152
  [types_1.Networks.Optimism]: {
329
153
  [types_1.Factory.SOLV2]: [
@@ -339,13 +163,8 @@ exports.WHITELISTED_PAIRS = {
339
163
  ],
340
164
  },
341
165
  [types_1.Networks.Real]: {
342
- [types_1.Factory.SOL_STABLE]: [
343
- "0x1615D2418872b0D525cf42b37F8BeD345B66f018", // more/usdc stakedlp
344
- ],
345
- [types_1.Factory.SOLV2]: [
346
- "0xa5c272f3A299B0d69D002AeA694ed127c1b67bcD",
347
- "0x8628FB4Ff04E371fD2B75899E73cCB7f3d0f08F9", // cbbtc/usdc stakedlp
348
- ]
166
+ [types_1.Factory.SOL_STABLE]: [],
167
+ [types_1.Factory.SOLV2]: []
349
168
  },
350
169
  [types_1.Networks.Blast]: {
351
170
  [types_1.Factory.SOLV2]: [
@@ -417,7 +236,22 @@ exports.WHITELISTED_OLD = {
417
236
  [types_1.Factory.V2V1]: [
418
237
  "0xc5ed7350e0fb3f780c756ba7d5d8539dc242a414",
419
238
  "0x524ae259179691bd2d727cada0e1aa4e365824e9",
420
- "0xf91c12dae1313d0be5d7a27aa559b1171cc1eac5", //ETH2x-FLI-ETH
239
+ "0xf91c12dae1313d0be5d7a27aa559b1171cc1eac5",
240
+ "0x3041cbd36888becc7bbcbc0045e3b1f144466f5f",
241
+ "0xbb2b8038a1640196fbe3e38816f3e67cba72d940",
242
+ "0xa478c2975ab1ea89e8196811f51a7b7ade33eb11",
243
+ "0xd3d2e2692501a5c9ca623199d38826e513033a17",
244
+ "0x4d5ef58aac27d99935e5b6b4a6778ff292059991",
245
+ "0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc",
246
+ "0x0d4a11d5eeaac28ec3f61d100daf4d40471f1852",
247
+ "0xa2107fa5b38d9bbd2c461d6edf11b11a50f6b974",
248
+ "0xdfc14d2af169b0d36c4eff567ada9b2e0cae044f",
249
+ "0x819f3450da6f110ba6ea52195b3beafa246062de",
250
+ "0xcffdded873554f362ac02f8fb1f02e5ada10516f",
251
+ "0x43ae24960e5534731fc831386c07755a2dc33d47",
252
+ "0x3da1313ae46132a397d90d95b1424a9a7e3e0fce",
253
+ "0xa5e79baee540f000ef6f23d067cd3ac22c7d9fe6",
254
+ "0x2fdbadf3c4d5a8666bc06645b8358ab803996e28", //YFI-ETH
421
255
  ],
422
256
  },
423
257
  [types_1.Networks.Polygon]: {
@@ -454,13 +288,61 @@ exports.WHITELISTED_OLD = {
454
288
  // Sushiswap
455
289
  "0xBA8d0e69773c2f5D385968E42050f23B24b35E36",
456
290
  "0x44559353f8edB965294c1448333369ca84dF6298",
457
- "0xb343CC2378dcFf9A6F81b4eEe3d8ECdC88560f6A", //ETH-DATA
291
+ "0xb343CC2378dcFf9A6F81b4eEe3d8ECdC88560f6A",
292
+ // QuickSwap
293
+ "0x8f7F8a534F6a7d57FbdA855Cf3588eB1eDc4508B",
294
+ "0xc380e7FA325E1708e9E6eF4D9beD2CD806fcB328",
295
+ "0x2912A338DF9877905e54c557e4d826f84365602e",
296
+ "0x16AEd35D0c1f5500b73063b10C0dAd42B772ac23",
297
+ "0x3e115a3aF5a58C73571586468B0f5d08BfE9dab1",
298
+ "0xc3a4C0677b033BF6e9a4E22f930f1D60c5Cd2c86",
299
+ "0x6D59C06a7f96a508310A76Da84dB397819E29c62",
300
+ "0xc6c866c2C69FF093E14746E6F9dbc7A22E0e6522",
301
+ "0x0c7fEaa175F62779be13cDD4Fe878e55Ee70179e",
302
+ "0xb361E254dAe512A7bd37f72B926f625f4D39dB56",
303
+ "0xb48E8C226facb7aDE62ab0CA8588789aAA1428aA",
304
+ "0x205995421c72dc223f36bbfad78b66eea72d2677",
305
+ "0xd83a3ddC19A651F79970291d71b41Be5509e7c66",
306
+ "0xE1ad5D74f3fEdE7Ec63Fec63D4bAFe9afbF09eDB",
307
+ // QuickSwap Dual Reward
308
+ "0x1714f3d4C4654bd5afD0Ff2590d23b053e0BEA81",
309
+ "0xe74189ce423345967Ef5A646316Ece52BB2fbFC9",
310
+ "0x14a49B53B62f7037814d4F5cAb8C92F185d045B0",
311
+ // SushiSwap
312
+ "0xbb7cCc9c0f72Fb91DEE7053C652E961117DB4368",
313
+ "0x9B2f10eAE09fAd574B3f76b977c06634a4Ec3a46",
314
+ "0x542cCc962097B184Ca12A46030D967a735342cF8",
315
+ "0x7DA257e84f233C9d05959F923c797585549bb3CB",
316
+ "0x9039b60EeE1aDBD2697A0fFb558f879c0b5D87bb",
317
+ "0xC2Eb7FC0C27B20400e9923a1f4066D8D4a9cd203",
318
+ "0xCB8F6c44C85f4a55f243df1D1f339a52a452aCa5",
319
+ "0xb5846453b67d0b4b4ce655930cf6e4129f4416d7",
320
+ "0xa13C38e12B1d516634dCFeB80ABE620aEDFcf0D0",
321
+ "0x3DF6b9fdDB088d0B367aCF32F2975B6613De87a9",
322
+ "0x34310CE0a22A7e6142c66B5334CE3C91d3892313", //ETH-SX
323
+ // TetuSwap
324
+ //"0xCB9A1bf72BE38A9cE7ac781D2deab19eb7f0a03A", //TETU-USDC
458
325
  ],
459
326
  [types_1.Factory.V2V2]: [
460
327
  // QuickSwap Dual Reward
461
328
  "0x2bb779ce585a19A202ccC6e583968431b3F15eA8",
462
329
  "0x63489c42530234b8F5d1124d2e671129be32b3b5",
463
- "0x33DF8a72F92FB77b43f787cAC7A56697f2Ee54Ab", //cxETH-ETH
330
+ "0x33DF8a72F92FB77b43f787cAC7A56697f2Ee54Ab",
331
+ // for quickswap partnership
332
+ // QuickSwap
333
+ "0xe186dac06f75e7e2655db05a7c684289eaa19179",
334
+ "0x1714f3d4C4654bd5afD0Ff2590d23b053e0BEA81",
335
+ "0xe74189ce423345967ef5a646316ece52bb2fbfc9",
336
+ "0x14a49B53B62f7037814d4F5cAb8C92F185d045B0",
337
+ "0x59377dbd9f550568540cae0b21412bee1cc3f439",
338
+ "0x2912a338df9877905e54c557e4d826f84365602e",
339
+ "0xc380e7fa325e1708e9e6ef4d9bed2cd806fcb328",
340
+ "0x3e115a3af5a58c73571586468b0f5d08bfe9dab1",
341
+ "0x8f7f8a534f6a7d57fbda855cf3588eb1edc4508b",
342
+ "0xc3a4c0677b033bf6e9a4e22f930f1d60c5cd2c86",
343
+ "0x8ab6ea95C3c8d4d415D531c18ee3e6B14A1a3Cc2",
344
+ "0xf189C676a837B973F83A55eAFD187E322F8E4Cfe",
345
+ "0xf9221c5EDC736D26ffC4dDCcDDfA15A4B958862e", //GNS-DAI
464
346
  ],
465
347
  [types_1.Factory.SOLV2]: [
466
348
  // Satin
@@ -488,7 +370,17 @@ exports.WHITELISTED_OLD = {
488
370
  "0x4fefA59353636C64c5950Fd23c969CBaaB5E7BBa",
489
371
  "0x4062f4775BC001595838FBaAE38908b250Ee07cf",
490
372
  "0xb8942A1c1bBb90272190269D42C2F1Dff2Fde3A4",
491
- "0x82cDE182702841DaB46916738207123FE535909F", //USDC-ETH
373
+ "0x82cDE182702841DaB46916738207123FE535909F",
374
+ // SushiSwap
375
+ "0xB0e7Ad5053414fDe098122B61fd34D816fd6D93f",
376
+ "0x7532A8d8a12BDd871796a07aC90E510b1CC8f694",
377
+ "0x95c9bF3f60Cbc2BE8e148FAe82f26930bFcD1839",
378
+ "0xa6E69dD0C36F3b59539e2c7aFD274eF91b5c70F9",
379
+ //"0xeF7Fa2D462dd5466AcFDe19D0143A1474bcC84b5", //ETH-LINK
380
+ //"0x9cbA44088FeC97C14b850D067f94e38f274c27d5", //ETH-DPX
381
+ //"0xaCacB091B65E8291A227afF563e023ee6E6dF219", //ETH-RDPX
382
+ "0x6D94F7e67C6ae0B0257C35754e059FDfB249d998",
383
+ "0x88a0B00BBE918eE00e3482F71962070Dc052984b", //ETH-MAGIC
492
384
  ],
493
385
  [types_1.Factory.V2V2]: [
494
386
  "0xFb468ad210d427D65c9a765a480649d5754cA325",
@@ -512,7 +404,15 @@ exports.WHITELISTED_OLD = {
512
404
  "0xa860865558F7bA5d1FfB08801E263930f37f817F",
513
405
  // Arbidex
514
406
  "0x2f624bB98613b3B986Fc75A181c4bd6982E79027",
515
- "0x4C83b11E6740d013992Ad68a09E918df3fbB96f9", //USDC-USDT
407
+ "0x4C83b11E6740d013992Ad68a09E918df3fbB96f9",
408
+ "0x6024C3e62D8e774A498f7911aE6874b1AFDA4364",
409
+ // Arbidex
410
+ "0x116852f076Fac0050De7E12aa0b7Ce86B33cC422",
411
+ "0x82062777dC9ff32D9D2aC1242e76A9f122431A58",
412
+ "0x478DE28185959cc5C553C0677ddC6e2e11629BC0",
413
+ "0x5B4AeE12f8e6884E81661e360954420857448ae2",
414
+ "0xfd99357DD35Fa2ed55103abc8b1bDA02E3E605F2",
415
+ "0xd4406836f1511e86E91dC64Dd14FbFA682D69f0d", //USDC-ARB
516
416
  ],
517
417
  [types_1.Factory.SOLV2]: [
518
418
  // SolidLizard
@@ -547,7 +447,27 @@ exports.WHITELISTED_OLD = {
547
447
  // Solunea
548
448
  "0xee4fb41Ccb1dFA6E2cDE242FeBF96148FB82C6Ca",
549
449
  "0xfb34d0a9cEc3526e46b44f4d9d5d00dAA3C8C53e",
550
- "0x08f218D943970a1B77acA743ceB08429dF65F67e", //IBEX-ETH
450
+ "0x08f218D943970a1B77acA743ceB08429dF65F67e",
451
+ // SolidLizard
452
+ "0x699c5e23357aB1BF658bD0B38070d746E37671f3",
453
+ "0x2d2ee5838838a1131995509346c9C9848b3367d8",
454
+ "0x32FaA88478A0104154e9417C6F7b4Fa288f728Aa",
455
+ "0x4B28550846405A7825247F54070b568C2ECe3eEB",
456
+ // Auragi
457
+ "0x2D658A6a569139f84d8c2f4e37Eed04F19EAB37D",
458
+ // Chronos
459
+ "0x350954bf706B296CBFDf58fBFEDe91Ac4A271BEa",
460
+ "0xd4d45B476197b10da32ce58E669Bae8bdF0f7E16",
461
+ "0x7cA9a0140EE27ed4dF141DEab53088a69CCC4Cf8",
462
+ "0x21E885fe81731ae391717Afb0513Dd0dF364fe06",
463
+ "0x06507308ef73937E96f33c9defb6BE7F65cbc13c",
464
+ "0x8DC16595ac492056d9C59470685E3AB296E8322f",
465
+ "0xA633615b835DBdF89C3f2B5420048B3201638E4a",
466
+ "0x01a464e2BF76Bd4A3A50073026fF2335584D67d8",
467
+ "0x7b4975F5C3BE5735714F597D7af6877bDD68Bf13",
468
+ "0x3d5FCbEd1c9B6C9B0f6deA1DED55b161a6eFeF31",
469
+ "0x4941007F424336a682B478993dBDAF0a444d82fc",
470
+ "0x39680ed7d9267e3AFe7239D2930361CBee996207", //GNS-ETH
551
471
  ],
552
472
  },
553
473
  [types_1.Networks.Avalanche]: {
@@ -559,6 +479,13 @@ exports.WHITELISTED_OLD = {
559
479
  "0x888300Be13b8875FeEF00C421d1C4aa7B8eae8Db",
560
480
  // Pangolin V2
561
481
  "0x677dCE0683e6Db30325cD97e8d04D138F34821A6",
482
+ "0x6Ca300f7B764580e52889341E8941CcA7CfCA727",
483
+ "0x7140D22AFC110741323ef29868c48b566a3295D4",
484
+ "0xc532a2885027677c4BE61F710F7D41941dBaD1B1",
485
+ "0x734ee20bBaD6d191432B34FbFd1493c16f065E9C",
486
+ "0x5b588F4481035B0f765393FC9F4752615a6D0498",
487
+ // Pangolin-BenQI
488
+ "0x3e2a4Dcd46e0e339aEC603080D90Bd939a163062",
562
489
  // TraderJoe
563
490
  "0x6b9E2B2bBd70229E967322F0EdB2d3049990d56D",
564
491
  "0x3739A0d58b0B0aED4B50046a866bd2B9d79b4596",
@@ -618,7 +545,24 @@ exports.WHITELISTED_OLD = {
618
545
  [types_1.Factory.SOLV2]: [],
619
546
  },
620
547
  [types_1.Networks.ZksyncEra]: {
621
- [types_1.Factory.SOLV2]: [],
548
+ [types_1.Factory.SOLV2]: [
549
+ // Velocore
550
+ "0x0C468E366B9ae76ca43acc90be049711c7E7B6d7",
551
+ "0xE2f69aE6770d777A21fe3ffd781Dc640B4d36b18",
552
+ "0x304847Ddbf68948655b0209c00E32A0923eF41B6",
553
+ "0x1B5887722E9E8E74426c057a1fabb40395dCB1e5",
554
+ "0x572261bc2F1652dC8B2C6Ea9d5bF7B3699DcB1bC",
555
+ // VeSync
556
+ "0xc9Fb969F3770387C0A634C9fa4656B268404A2Db",
557
+ "0x1fD9e25a7D3FD1ba151Fb7C9353aBB45b908d5D2",
558
+ "0x0d72322A1C86B1dF92711327a38a79a5679e478f",
559
+ "0x8d535eFa82481CdefBe7801E562736017Bc59872",
560
+ //"0x2907ab8286Bd0438064816f6CCf1bf688Ec70A56", //wTBT-USDC
561
+ // Dracula
562
+ "0xc73195F2B5D60A59F81f88A3ec77BBF4555faB57",
563
+ "0xbaDde16f4ED28B3f2118942c521cA0eF6A2c6e01",
564
+ "0xD2905ec6172A956f4E79C8DCee4e9470dA587Da3", //FANG-USDC
565
+ ],
622
566
  },
623
567
  [types_1.Networks.Aurora]: {},
624
568
  [types_1.Networks.Cronos]: {},
@@ -674,15 +618,37 @@ exports.WHITELISTED_OLD = {
674
618
  },
675
619
  [types_1.Networks.Scroll]: {
676
620
  [types_1.Factory.SOLV2]: [
677
- "0xDA4ca9030d4c037203F4cA2a1A191EfA209FA6f1", // fbomb/wsteth stakedlp
678
- ]
621
+ "0xDA4ca9030d4c037203F4cA2a1A191EfA209FA6f1",
622
+ "0xE3167f148F3C97dea3D42cb9d6848a7d28b3A296",
623
+ "0xFA444f62379619BDa05842f70fE13c5469B238F6",
624
+ "0x88b5068c4ED14d69C7093011149E7d5E93a0a98e",
625
+ "0xC90073E1CaBCf5069E00c5a6cB10023c9e1D5c4f",
626
+ "0xD30eDb2f0CA35cba70d10bd3fcCe5Bbb317C88C7",
627
+ "0x8A16A1CA6c303122E5FA985150A2b742B3aA5FB7",
628
+ "0x185060149a0fA57aa93AFEBFaD052029129903b2",
629
+ "0x2072119D41ba1288cEEc5Cc8FD7b31A0fC9734fc",
630
+ "0x0833C454fc94d32e03110081AC9b9AD2d54e18Fa",
631
+ "0x432C27EfeD615033A7F0c6320E9831332685EB53",
632
+ "0xbD4b6e9992BEF375A14793b18D2A1CC8d710D45b",
633
+ "0xd398411A691C81e50a1216e287bbe6D5F54Fe2Cc",
634
+ "0xDbbF2Fa67Cfa713b1Ab2376A0EEF1a34d6f9E8c6", // scr/weth stakedlp
635
+ ],
636
+ [types_1.Factory.SOL_STABLE]: [
637
+ "0x354Df4F5925145409f76B044bf1E4BD3a5dCe74E",
638
+ "0xB0a3410C7672CC0759fF6DA3540a9A26083507dc",
639
+ "0x3E458C566e81869DCc1c84690441e29149Ee6D35",
640
+ "0x471819fAFe0C6Bc919Ae1FF4e7DbE67371c4b467", // usdc/more stakedlp
641
+ ],
679
642
  },
680
643
  [types_1.Networks.Real]: {
681
644
  [types_1.Factory.SOL_STABLE]: [
682
- "0xd24F497f0e877203d716eE147FE96858121E437a", // more/usdc stakedlp
645
+ "0xd24F497f0e877203d716eE147FE96858121E437a",
646
+ "0x1615D2418872b0D525cf42b37F8BeD345B66f018", // more/usdc stakedlp
683
647
  ],
684
648
  [types_1.Factory.SOLV2]: [
685
- "0x1f0bc333c535838CA1020c87a6a043D89577c563", // usdc/pearl stakedlp
649
+ "0x1f0bc333c535838CA1020c87a6a043D89577c563",
650
+ "0xa5c272f3A299B0d69D002AeA694ed127c1b67bcD",
651
+ "0x8628FB4Ff04E371fD2B75899E73cCB7f3d0f08F9", // cbbtc/usdc stakedlp
686
652
  ]
687
653
  },
688
654
  [types_1.Networks.Optimism]: {
@@ -49,16 +49,23 @@ class OffchainCollateralV2 extends offchainPoolToken_1.default {
49
49
  }
50
50
  //
51
51
  // Pricing
52
+ // TODO deprecate this
52
53
  //
53
54
  async getTokenPriceFast(fallback = true) {
54
- throw new Error("USD price conversion for collateral is deprecated");
55
+ const tokenPrice = await this.lendingPool.getCollateralPrice(false);
56
+ if (tokenPrice > 0)
57
+ return tokenPrice;
58
+ return super.getTokenPriceFast(fallback);
59
+ //throw new Error("USD price conversion for collateral is deprecated");
55
60
  }
56
61
  async getTokenPriceAccurate() {
57
- throw new Error("USD price conversion for collateral is deprecated");
62
+ return this.lendingPool.getCollateralPrice(false);
63
+ //throw new Error("USD price conversion for collateral is deprecated");
58
64
  }
59
- // TODO
60
65
  async getTotalBalanceUSD() {
61
- return 0;
66
+ const totalBalance = await this.getTotalBalance();
67
+ const price = await this.getTokenPriceAccurate();
68
+ return totalBalance * price;
62
69
  }
63
70
  }
64
71
  exports.default = OffchainCollateralV2;
@@ -13,9 +13,9 @@ export declare enum LendingPoolVersion {
13
13
  V3 = "V3"
14
14
  }
15
15
  export default abstract class OffchainLendingPool {
16
- private readonly offchain;
17
- private readonly factory;
18
- private readonly pairAddress;
16
+ protected readonly offchain: Offchain;
17
+ protected readonly factory: Factory;
18
+ protected readonly pairAddress: Address;
19
19
  protected readonly collateral: OffchainCollateral;
20
20
  protected readonly borrowables: {
21
21
  [Borrowable.A]: OffchainBorrowable;
@@ -14,4 +14,14 @@ export default class OffchainLendingPoolV2 extends OffchainLendingPool {
14
14
  protected getNewBorrowableObject(borrowable: Borrowable): OffchainBorrowableV2;
15
15
  getNewAccountLendingPoolObject(account: OffchainAccount): OffchainAccountLendingPoolV2;
16
16
  getUniswapV2PairAddress(): Promise<Address>;
17
+ getUniswapAPR(): Promise<number>;
18
+ getStakingRewards(): Promise<Array<{
19
+ APR: number;
20
+ symbol: string;
21
+ }>>;
22
+ getStakingAPR(): Promise<number>;
23
+ private calculateCollateralPrice;
24
+ getCollateralPrice(fast?: boolean): Promise<number>;
25
+ getUnderlyingLPPrice(fast?: boolean): Promise<number>;
26
+ getTotalAPR(): Promise<number>;
17
27
  }
@@ -8,6 +8,8 @@ const offchainLendingPool_1 = __importDefault(require("./offchainLendingPool"));
8
8
  const offchainCollateralV2_1 = __importDefault(require("./offchainCollateralV2"));
9
9
  const offchainBorrowableV2_1 = __importDefault(require("./offchainBorrowableV2"));
10
10
  const offchainAccountLendingPoolV2_1 = __importDefault(require("../account/lendingPool/offchainAccountLendingPoolV2"));
11
+ const farms_1 = require("../../config/farms");
12
+ const utils_1 = require("../../utils");
11
13
  class OffchainLendingPoolV2 extends offchainLendingPool_1.default {
12
14
  getNewCollateralObject() {
13
15
  return new offchainCollateralV2_1.default(this);
@@ -22,5 +24,103 @@ class OffchainLendingPoolV2 extends offchainLendingPool_1.default {
22
24
  const lendingPoolData = await this.getLendingPoolData();
23
25
  return lendingPoolData.pair.uniswapV2PairAddress;
24
26
  }
27
+ // Uniswap APR
28
+ async getUniswapAPR() {
29
+ const lendingPoolData = await this.getLendingPoolData();
30
+ return lendingPoolData.pair.uniswapAPR;
31
+ }
32
+ async getStakingRewards() {
33
+ const farm = await this.getFarm();
34
+ const lendingPoolData = await this.getLendingPoolData();
35
+ if (farm === farms_1.Farms.solidex ||
36
+ farm === farms_1.Farms.solidexB ||
37
+ farm === farms_1.Farms.solidexUSDC ||
38
+ farm === farms_1.Farms.solidexUSDCB) {
39
+ const solidexLPDetails = await this.offchain
40
+ .getSolidexHelper()
41
+ .getSolidexLPDetails();
42
+ const result = solidexLPDetails[lendingPoolData.pair.uniswapV2PairAddress];
43
+ if (result)
44
+ return result;
45
+ }
46
+ const FINISH_DELAY = 3600 * 24 * 1;
47
+ const rewards = [];
48
+ const stakedTotalSupply = parseFloat(lendingPoolData.pair.stakedTotalSupply);
49
+ const underlyingLPPrice = await this.getUnderlyingLPPrice(true);
50
+ if (!lendingPoolData.pair.rewards)
51
+ return rewards;
52
+ for (const reward of lendingPoolData.pair.rewards) {
53
+ const multiplier = farm === farms_1.Farms.traderJoeV2 ? 0.5 : 1;
54
+ const periodFinish = parseInt(reward.periodFinish);
55
+ if (new Date().getTime() / 1000 - FINISH_DELAY > periodFinish &&
56
+ periodFinish !== 0)
57
+ continue;
58
+ let rewardRate = parseFloat(reward.rewardRate);
59
+ if (farm == farms_1.Farms.traderJoeV4)
60
+ rewardRate = rewardRate * 0.45;
61
+ const rewardPrice = await this.offchain
62
+ .getPriceHelper()
63
+ .getDebankTokenPrice(this.offchain.network, reward.rewardsToken.id);
64
+ rewards.push({
65
+ APR: (0, utils_1.toAPR)(((rewardPrice * rewardRate) /
66
+ (stakedTotalSupply * underlyingLPPrice)) *
67
+ multiplier),
68
+ symbol: reward.rewardsToken.symbol,
69
+ });
70
+ }
71
+ return rewards;
72
+ }
73
+ async getStakingAPR() {
74
+ const rewards = await this.getStakingRewards();
75
+ let APR = 0;
76
+ for (const reward of rewards) {
77
+ APR += reward.APR;
78
+ }
79
+ return APR;
80
+ }
81
+ // getCollateralPrice -> returns the price of the collateral, not necessarily of the underlying LP
82
+ calculateCollateralPrice(reserve0, reserve1, totalSupply, price0, price1) {
83
+ if (totalSupply === 0)
84
+ return 0;
85
+ const reserve0USD = reserve0 * price0;
86
+ const reserve1USD = reserve1 * price1;
87
+ // adjust reserves taking the latest price passed as parameters
88
+ const adjustedReserveUSD = Math.sqrt(reserve0USD * reserve1USD) * 2;
89
+ return adjustedReserveUSD / totalSupply;
90
+ }
91
+ async getCollateralPrice(fast = true) {
92
+ const lendingPoolData = await this.getLendingPoolData();
93
+ return this.calculateCollateralPrice(parseFloat(lendingPoolData.pair.reserve0), parseFloat(lendingPoolData.pair.reserve1), parseFloat(lendingPoolData.pair.totalSupply), fast
94
+ ? await this.getBorrowableA().getTokenPriceFast()
95
+ : await this.getBorrowableA().getTokenPriceAccurate(), fast
96
+ ? await this.getBorrowableB().getTokenPriceFast()
97
+ : await this.getBorrowableB().getTokenPriceAccurate());
98
+ }
99
+ async getUnderlyingLPPrice(fast = true) {
100
+ return ((await this.getCollateralPrice(fast)) /
101
+ (await this.getStakedLPExchangeRate()));
102
+ }
103
+ async getTotalAPR() {
104
+ const uniswapV2Pair = await this.getUniswapV2PairAddress();
105
+ // If llama fails/apr is 0 we get the uniswapAPR and stakingAPR through subgraph
106
+ const apr = await this.offchain
107
+ .getAPRHelper()
108
+ .getLlamaAPR(uniswapV2Pair, this.offchain.network);
109
+ if (apr > 0)
110
+ return apr;
111
+ // Try shadow on Sonic network
112
+ if (this.offchain.network === types_1.Networks.Sonic) {
113
+ const shadowAPR = await this.offchain
114
+ .getAPRHelper()
115
+ .getShadowAPR(uniswapV2Pair, this.offchain.network);
116
+ if (shadowAPR > 0)
117
+ return shadowAPR;
118
+ }
119
+ const [uniswapAPR, stakingAPR] = await Promise.all([
120
+ this.getUniswapAPR(),
121
+ this.getStakingAPR(),
122
+ ]);
123
+ return uniswapAPR + stakingAPR;
124
+ }
25
125
  }
26
126
  exports.default = OffchainLendingPoolV2;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "impermax-sdk",
3
- "version": "2.1.270",
3
+ "version": "2.1.272",
4
4
  "description": "",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./lib/index.js",