@defisaver/automation-sdk 3.3.17 → 3.3.18-spark-eoa-dev

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.
Files changed (38) hide show
  1. package/cjs/constants/index.js +170 -0
  2. package/cjs/index.d.ts +2 -2
  3. package/cjs/index.js +5 -2
  4. package/cjs/services/ethereumService.test.js +4 -7
  5. package/cjs/services/strategiesService.js +195 -15
  6. package/cjs/services/strategySubService.d.ts +22 -17
  7. package/cjs/services/strategySubService.js +92 -28
  8. package/cjs/services/strategySubService.test.js +297 -40
  9. package/cjs/services/subDataService.d.ts +108 -20
  10. package/cjs/services/subDataService.js +97 -79
  11. package/cjs/services/subDataService.test.js +479 -174
  12. package/cjs/types/enums.d.ts +44 -6
  13. package/cjs/types/enums.js +38 -0
  14. package/esm/constants/index.js +170 -0
  15. package/esm/index.d.ts +2 -2
  16. package/esm/index.js +5 -2
  17. package/esm/services/ethereumService.test.js +4 -7
  18. package/esm/services/strategiesService.js +195 -15
  19. package/esm/services/strategySubService.d.ts +22 -17
  20. package/esm/services/strategySubService.js +91 -27
  21. package/esm/services/strategySubService.test.js +298 -38
  22. package/esm/services/subDataService.d.ts +108 -20
  23. package/esm/services/subDataService.js +95 -77
  24. package/esm/services/subDataService.test.js +480 -172
  25. package/esm/types/enums.d.ts +44 -6
  26. package/esm/types/enums.js +38 -0
  27. package/package.json +1 -1
  28. package/src/constants/index.ts +172 -1
  29. package/src/index.ts +22 -6
  30. package/src/services/ethereumService.test.ts +5 -8
  31. package/src/services/strategiesService.ts +262 -16
  32. package/src/services/strategySubService.test.ts +384 -46
  33. package/src/services/strategySubService.ts +251 -40
  34. package/src/services/subDataService.test.ts +639 -231
  35. package/src/services/subDataService.ts +149 -106
  36. package/src/services/utils.test.ts +1 -1
  37. package/src/services/utils.ts +3 -1
  38. package/src/types/enums.ts +38 -2
@@ -90,7 +90,8 @@ export declare namespace Strategies {
90
90
  AAVE_V3_COLLATERAL_SWITCH = 135,
91
91
  AAVE_V4_COLLATERAL_SWITCH = 154,
92
92
  AAVE_V4_COLLATERAL_SWITCH_EOA = 155,
93
- SPARK_COLLATERAL_SWITCH = 156
93
+ SPARK_COLLATERAL_SWITCH = 156,
94
+ SPARK_GENERIC_FL_COLLATERAL_SWITCH = 167
94
95
  }
95
96
  enum OptimismIds {
96
97
  EXCHANGE_DCA = 8,
@@ -138,7 +139,9 @@ export declare namespace Strategies {
138
139
  EoaBoostOnPrice = "eoa-boost-on-price",
139
140
  EoaRepayOnPrice = "eoa-repay-on-price",
140
141
  CollateralSwitch = "collateral-switch",
141
- EoaCollateralSwitch = "eoa-collateral-switch"
142
+ EoaCollateralSwitch = "eoa-collateral-switch",
143
+ LiquidationProtection = "liquidation-protection",
144
+ EoaLiquidationProtection = "liquidation-protection-eoa"
142
145
  }
143
146
  enum IdOverrides {
144
147
  TakeProfit = "take-profit",
@@ -149,7 +152,9 @@ export declare namespace Strategies {
149
152
  LeverageManagement = "leverage-management",
150
153
  EoaLeverageManagement = "leverage-management-eoa",
151
154
  LeverageManagementOnPrice = "leverage-management-on-price",
152
- EoaLeverageManagementOnPrice = "leverage-management-on-price-eoa"
155
+ EoaLeverageManagementOnPrice = "leverage-management-on-price-eoa",
156
+ LiquidationProtection = "liquidation-protection",
157
+ EoaLiquidationProtection = "liquidation-protection-eoa"
153
158
  }
154
159
  }
155
160
  export declare namespace Bundles {
@@ -225,10 +230,27 @@ export declare namespace Bundles {
225
230
  AAVE_V4_EOA_REPAY_ON_PRICE = 68,
226
231
  AAVE_V4_EOA_BOOST_ON_PRICE = 69,
227
232
  AAVE_V4_EOA_CLOSE = 70,
233
+ AAVE_V3_SW_LIQUIDATION_PROTECTION = 71,
234
+ SPARK_SW_LIQUIDATION_PROTECTION = 72,
235
+ MAKER_SW_LIQUIDATION_PROTECTION = 75,
236
+ FLUID_T1_SW_LIQUIDATION_PROTECTION = 76,
237
+ AAVE_V4_SW_LIQUIDATION_PROTECTION = 77,
238
+ MORPHO_BLUE_SW_LIQUIDATION_PROTECTION = 78,
239
+ AAVE_V3_EOA_LIQUIDATION_PROTECTION = 79,
240
+ AAVE_V4_EOA_LIQUIDATION_PROTECTION = 80,
241
+ MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION = 81,
242
+ COMP_V3_SW_LIQUIDATION_PROTECTION = 82,
243
+ COMP_V3_EOA_LIQUIDATION_PROTECTION = 83,
228
244
  MORPHO_BLUE_REPAY_ON_PRICE = 84,
229
245
  MORPHO_BLUE_EOA_BOOST_ON_PRICE = 85,
230
246
  MORPHO_BLUE_EOA_REPAY_ON_PRICE = 86,
231
- MORPHO_BLUE_EOA_CLOSE = 87
247
+ MORPHO_BLUE_EOA_CLOSE = 87,
248
+ SPARK_EOA_REPAY = 88,
249
+ SPARK_EOA_BOOST = 89,
250
+ SPARK_EOA_REPAY_ON_PRICE = 90,
251
+ SPARK_EOA_BOOST_ON_PRICE = 91,
252
+ SPARK_EOA_CLOSE = 92,
253
+ SPARK_EOA_LIQUIDATION_PROTECTION = 93
232
254
  }
233
255
  enum OptimismIds {
234
256
  AAVE_V3_REPAY = 0,
@@ -241,7 +263,9 @@ export declare namespace Bundles {
241
263
  AAVE_V3_EOA_BOOST = 7,
242
264
  AAVE_V3_EOA_REPAY_ON_PRICE = 8,
243
265
  AAVE_V3_EOA_BOOST_ON_PRICE = 9,
244
- AAVE_V3_EOA_CLOSE = 10
266
+ AAVE_V3_EOA_CLOSE = 10,
267
+ AAVE_V3_SW_LIQUIDATION_PROTECTION = 11,
268
+ AAVE_V3_EOA_LIQUIDATION_PROTECTION = 12
245
269
  }
246
270
  enum BaseIds {
247
271
  AAVE_V3_REPAY = 0,
@@ -271,12 +295,19 @@ export declare namespace Bundles {
271
295
  AAVE_V3_EOA_BOOST_ON_PRICE = 26,
272
296
  AAVE_V3_EOA_CLOSE = 27,
273
297
  MORPHO_BLUE_CLOSE = 28,
298
+ AAVE_V3_SW_LIQUIDATION_PROTECTION = 29,
299
+ FLUID_T1_SW_LIQUIDATION_PROTECTION = 30,
300
+ COMP_V3_SW_LIQUIDATION_PROTECTION = 32,
301
+ COMP_V3_EOA_LIQUIDATION_PROTECTION = 33,
302
+ AAVE_V3_EOA_LIQUIDATION_PROTECTION = 34,
303
+ MORPHO_BLUE_SW_LIQUIDATION_PROTECTION = 35,
274
304
  MORPHO_BLUE_REPAY_ON_PRICE = 36,
275
305
  MORPHO_BLUE_EOA_REPAY = 37,
276
306
  MORPHO_BLUE_EOA_BOOST = 38,
277
307
  MORPHO_BLUE_EOA_BOOST_ON_PRICE = 39,
278
308
  MORPHO_BLUE_EOA_REPAY_ON_PRICE = 40,
279
- MORPHO_BLUE_EOA_CLOSE = 41
309
+ MORPHO_BLUE_EOA_CLOSE = 41,
310
+ MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION = 42
280
311
  }
281
312
  enum ArbitrumIds {
282
313
  AAVE_V3_REPAY = 0,
@@ -308,6 +339,13 @@ export declare namespace Bundles {
308
339
  MORPHO_BLUE_EOA_REPAY = 26,
309
340
  MORPHO_BLUE_EOA_BOOST = 27,
310
341
  MORPHO_BLUE_CLOSE = 28,
342
+ AAVE_V3_SW_LIQUIDATION_PROTECTION = 29,
343
+ FLUID_T1_SW_LIQUIDATION_PROTECTION = 30,
344
+ MORPHO_BLUE_SW_LIQUIDATION_PROTECTION = 31,
345
+ COMP_V3_SW_LIQUIDATION_PROTECTION = 32,
346
+ COMP_V3_EOA_LIQUIDATION_PROTECTION = 33,
347
+ AAVE_V3_EOA_LIQUIDATION_PROTECTION = 34,
348
+ MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION = 35,
311
349
  MORPHO_BLUE_REPAY_ON_PRICE = 36,
312
350
  MORPHO_BLUE_EOA_BOOST_ON_PRICE = 37,
313
351
  MORPHO_BLUE_EOA_REPAY_ON_PRICE = 38,
@@ -104,6 +104,7 @@ export var Strategies;
104
104
  MainnetIds[MainnetIds["AAVE_V4_COLLATERAL_SWITCH"] = 154] = "AAVE_V4_COLLATERAL_SWITCH";
105
105
  MainnetIds[MainnetIds["AAVE_V4_COLLATERAL_SWITCH_EOA"] = 155] = "AAVE_V4_COLLATERAL_SWITCH_EOA";
106
106
  MainnetIds[MainnetIds["SPARK_COLLATERAL_SWITCH"] = 156] = "SPARK_COLLATERAL_SWITCH";
107
+ MainnetIds[MainnetIds["SPARK_GENERIC_FL_COLLATERAL_SWITCH"] = 167] = "SPARK_GENERIC_FL_COLLATERAL_SWITCH";
107
108
  })(MainnetIds = Strategies.MainnetIds || (Strategies.MainnetIds = {}));
108
109
  let OptimismIds;
109
110
  (function (OptimismIds) {
@@ -156,6 +157,8 @@ export var Strategies;
156
157
  Identifiers["EoaRepayOnPrice"] = "eoa-repay-on-price";
157
158
  Identifiers["CollateralSwitch"] = "collateral-switch";
158
159
  Identifiers["EoaCollateralSwitch"] = "eoa-collateral-switch";
160
+ Identifiers["LiquidationProtection"] = "liquidation-protection";
161
+ Identifiers["EoaLiquidationProtection"] = "liquidation-protection-eoa";
159
162
  })(Identifiers = Strategies.Identifiers || (Strategies.Identifiers = {}));
160
163
  let IdOverrides;
161
164
  (function (IdOverrides) {
@@ -168,6 +171,8 @@ export var Strategies;
168
171
  IdOverrides["EoaLeverageManagement"] = "leverage-management-eoa";
169
172
  IdOverrides["LeverageManagementOnPrice"] = "leverage-management-on-price";
170
173
  IdOverrides["EoaLeverageManagementOnPrice"] = "leverage-management-on-price-eoa";
174
+ IdOverrides["LiquidationProtection"] = "liquidation-protection";
175
+ IdOverrides["EoaLiquidationProtection"] = "liquidation-protection-eoa";
171
176
  })(IdOverrides = Strategies.IdOverrides || (Strategies.IdOverrides = {}));
172
177
  })(Strategies || (Strategies = {}));
173
178
  export var Bundles;
@@ -245,10 +250,27 @@ export var Bundles;
245
250
  MainnetIds[MainnetIds["AAVE_V4_EOA_REPAY_ON_PRICE"] = 68] = "AAVE_V4_EOA_REPAY_ON_PRICE";
246
251
  MainnetIds[MainnetIds["AAVE_V4_EOA_BOOST_ON_PRICE"] = 69] = "AAVE_V4_EOA_BOOST_ON_PRICE";
247
252
  MainnetIds[MainnetIds["AAVE_V4_EOA_CLOSE"] = 70] = "AAVE_V4_EOA_CLOSE";
253
+ MainnetIds[MainnetIds["AAVE_V3_SW_LIQUIDATION_PROTECTION"] = 71] = "AAVE_V3_SW_LIQUIDATION_PROTECTION";
254
+ MainnetIds[MainnetIds["SPARK_SW_LIQUIDATION_PROTECTION"] = 72] = "SPARK_SW_LIQUIDATION_PROTECTION";
255
+ MainnetIds[MainnetIds["MAKER_SW_LIQUIDATION_PROTECTION"] = 75] = "MAKER_SW_LIQUIDATION_PROTECTION";
256
+ MainnetIds[MainnetIds["FLUID_T1_SW_LIQUIDATION_PROTECTION"] = 76] = "FLUID_T1_SW_LIQUIDATION_PROTECTION";
257
+ MainnetIds[MainnetIds["AAVE_V4_SW_LIQUIDATION_PROTECTION"] = 77] = "AAVE_V4_SW_LIQUIDATION_PROTECTION";
258
+ MainnetIds[MainnetIds["MORPHO_BLUE_SW_LIQUIDATION_PROTECTION"] = 78] = "MORPHO_BLUE_SW_LIQUIDATION_PROTECTION";
259
+ MainnetIds[MainnetIds["AAVE_V3_EOA_LIQUIDATION_PROTECTION"] = 79] = "AAVE_V3_EOA_LIQUIDATION_PROTECTION";
260
+ MainnetIds[MainnetIds["AAVE_V4_EOA_LIQUIDATION_PROTECTION"] = 80] = "AAVE_V4_EOA_LIQUIDATION_PROTECTION";
261
+ MainnetIds[MainnetIds["MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION"] = 81] = "MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION";
262
+ MainnetIds[MainnetIds["COMP_V3_SW_LIQUIDATION_PROTECTION"] = 82] = "COMP_V3_SW_LIQUIDATION_PROTECTION";
263
+ MainnetIds[MainnetIds["COMP_V3_EOA_LIQUIDATION_PROTECTION"] = 83] = "COMP_V3_EOA_LIQUIDATION_PROTECTION";
248
264
  MainnetIds[MainnetIds["MORPHO_BLUE_REPAY_ON_PRICE"] = 84] = "MORPHO_BLUE_REPAY_ON_PRICE";
249
265
  MainnetIds[MainnetIds["MORPHO_BLUE_EOA_BOOST_ON_PRICE"] = 85] = "MORPHO_BLUE_EOA_BOOST_ON_PRICE";
250
266
  MainnetIds[MainnetIds["MORPHO_BLUE_EOA_REPAY_ON_PRICE"] = 86] = "MORPHO_BLUE_EOA_REPAY_ON_PRICE";
251
267
  MainnetIds[MainnetIds["MORPHO_BLUE_EOA_CLOSE"] = 87] = "MORPHO_BLUE_EOA_CLOSE";
268
+ MainnetIds[MainnetIds["SPARK_EOA_REPAY"] = 88] = "SPARK_EOA_REPAY";
269
+ MainnetIds[MainnetIds["SPARK_EOA_BOOST"] = 89] = "SPARK_EOA_BOOST";
270
+ MainnetIds[MainnetIds["SPARK_EOA_REPAY_ON_PRICE"] = 90] = "SPARK_EOA_REPAY_ON_PRICE";
271
+ MainnetIds[MainnetIds["SPARK_EOA_BOOST_ON_PRICE"] = 91] = "SPARK_EOA_BOOST_ON_PRICE";
272
+ MainnetIds[MainnetIds["SPARK_EOA_CLOSE"] = 92] = "SPARK_EOA_CLOSE";
273
+ MainnetIds[MainnetIds["SPARK_EOA_LIQUIDATION_PROTECTION"] = 93] = "SPARK_EOA_LIQUIDATION_PROTECTION";
252
274
  })(MainnetIds = Bundles.MainnetIds || (Bundles.MainnetIds = {}));
253
275
  let OptimismIds;
254
276
  (function (OptimismIds) {
@@ -263,6 +285,8 @@ export var Bundles;
263
285
  OptimismIds[OptimismIds["AAVE_V3_EOA_REPAY_ON_PRICE"] = 8] = "AAVE_V3_EOA_REPAY_ON_PRICE";
264
286
  OptimismIds[OptimismIds["AAVE_V3_EOA_BOOST_ON_PRICE"] = 9] = "AAVE_V3_EOA_BOOST_ON_PRICE";
265
287
  OptimismIds[OptimismIds["AAVE_V3_EOA_CLOSE"] = 10] = "AAVE_V3_EOA_CLOSE";
288
+ OptimismIds[OptimismIds["AAVE_V3_SW_LIQUIDATION_PROTECTION"] = 11] = "AAVE_V3_SW_LIQUIDATION_PROTECTION";
289
+ OptimismIds[OptimismIds["AAVE_V3_EOA_LIQUIDATION_PROTECTION"] = 12] = "AAVE_V3_EOA_LIQUIDATION_PROTECTION";
266
290
  })(OptimismIds = Bundles.OptimismIds || (Bundles.OptimismIds = {}));
267
291
  let BaseIds;
268
292
  (function (BaseIds) {
@@ -293,12 +317,19 @@ export var Bundles;
293
317
  BaseIds[BaseIds["AAVE_V3_EOA_BOOST_ON_PRICE"] = 26] = "AAVE_V3_EOA_BOOST_ON_PRICE";
294
318
  BaseIds[BaseIds["AAVE_V3_EOA_CLOSE"] = 27] = "AAVE_V3_EOA_CLOSE";
295
319
  BaseIds[BaseIds["MORPHO_BLUE_CLOSE"] = 28] = "MORPHO_BLUE_CLOSE";
320
+ BaseIds[BaseIds["AAVE_V3_SW_LIQUIDATION_PROTECTION"] = 29] = "AAVE_V3_SW_LIQUIDATION_PROTECTION";
321
+ BaseIds[BaseIds["FLUID_T1_SW_LIQUIDATION_PROTECTION"] = 30] = "FLUID_T1_SW_LIQUIDATION_PROTECTION";
322
+ BaseIds[BaseIds["COMP_V3_SW_LIQUIDATION_PROTECTION"] = 32] = "COMP_V3_SW_LIQUIDATION_PROTECTION";
323
+ BaseIds[BaseIds["COMP_V3_EOA_LIQUIDATION_PROTECTION"] = 33] = "COMP_V3_EOA_LIQUIDATION_PROTECTION";
324
+ BaseIds[BaseIds["AAVE_V3_EOA_LIQUIDATION_PROTECTION"] = 34] = "AAVE_V3_EOA_LIQUIDATION_PROTECTION";
325
+ BaseIds[BaseIds["MORPHO_BLUE_SW_LIQUIDATION_PROTECTION"] = 35] = "MORPHO_BLUE_SW_LIQUIDATION_PROTECTION";
296
326
  BaseIds[BaseIds["MORPHO_BLUE_REPAY_ON_PRICE"] = 36] = "MORPHO_BLUE_REPAY_ON_PRICE";
297
327
  BaseIds[BaseIds["MORPHO_BLUE_EOA_REPAY"] = 37] = "MORPHO_BLUE_EOA_REPAY";
298
328
  BaseIds[BaseIds["MORPHO_BLUE_EOA_BOOST"] = 38] = "MORPHO_BLUE_EOA_BOOST";
299
329
  BaseIds[BaseIds["MORPHO_BLUE_EOA_BOOST_ON_PRICE"] = 39] = "MORPHO_BLUE_EOA_BOOST_ON_PRICE";
300
330
  BaseIds[BaseIds["MORPHO_BLUE_EOA_REPAY_ON_PRICE"] = 40] = "MORPHO_BLUE_EOA_REPAY_ON_PRICE";
301
331
  BaseIds[BaseIds["MORPHO_BLUE_EOA_CLOSE"] = 41] = "MORPHO_BLUE_EOA_CLOSE";
332
+ BaseIds[BaseIds["MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION"] = 42] = "MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION";
302
333
  })(BaseIds = Bundles.BaseIds || (Bundles.BaseIds = {}));
303
334
  let ArbitrumIds;
304
335
  (function (ArbitrumIds) {
@@ -331,6 +362,13 @@ export var Bundles;
331
362
  ArbitrumIds[ArbitrumIds["MORPHO_BLUE_EOA_REPAY"] = 26] = "MORPHO_BLUE_EOA_REPAY";
332
363
  ArbitrumIds[ArbitrumIds["MORPHO_BLUE_EOA_BOOST"] = 27] = "MORPHO_BLUE_EOA_BOOST";
333
364
  ArbitrumIds[ArbitrumIds["MORPHO_BLUE_CLOSE"] = 28] = "MORPHO_BLUE_CLOSE";
365
+ ArbitrumIds[ArbitrumIds["AAVE_V3_SW_LIQUIDATION_PROTECTION"] = 29] = "AAVE_V3_SW_LIQUIDATION_PROTECTION";
366
+ ArbitrumIds[ArbitrumIds["FLUID_T1_SW_LIQUIDATION_PROTECTION"] = 30] = "FLUID_T1_SW_LIQUIDATION_PROTECTION";
367
+ ArbitrumIds[ArbitrumIds["MORPHO_BLUE_SW_LIQUIDATION_PROTECTION"] = 31] = "MORPHO_BLUE_SW_LIQUIDATION_PROTECTION";
368
+ ArbitrumIds[ArbitrumIds["COMP_V3_SW_LIQUIDATION_PROTECTION"] = 32] = "COMP_V3_SW_LIQUIDATION_PROTECTION";
369
+ ArbitrumIds[ArbitrumIds["COMP_V3_EOA_LIQUIDATION_PROTECTION"] = 33] = "COMP_V3_EOA_LIQUIDATION_PROTECTION";
370
+ ArbitrumIds[ArbitrumIds["AAVE_V3_EOA_LIQUIDATION_PROTECTION"] = 34] = "AAVE_V3_EOA_LIQUIDATION_PROTECTION";
371
+ ArbitrumIds[ArbitrumIds["MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION"] = 35] = "MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION";
334
372
  ArbitrumIds[ArbitrumIds["MORPHO_BLUE_REPAY_ON_PRICE"] = 36] = "MORPHO_BLUE_REPAY_ON_PRICE";
335
373
  ArbitrumIds[ArbitrumIds["MORPHO_BLUE_EOA_BOOST_ON_PRICE"] = 37] = "MORPHO_BLUE_EOA_BOOST_ON_PRICE";
336
374
  ArbitrumIds[ArbitrumIds["MORPHO_BLUE_EOA_REPAY_ON_PRICE"] = 38] = "MORPHO_BLUE_EOA_REPAY_ON_PRICE";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defisaver/automation-sdk",
3
- "version": "3.3.17",
3
+ "version": "3.3.18-spark-eoa-dev",
4
4
  "description": "",
5
5
  "main": "./cjs/index.js",
6
6
  "module": "./esm/index.js",
@@ -140,6 +140,11 @@ export const MAINNET_STRATEGIES_INFO: MainnetStrategiesInfo = {
140
140
  strategyId: Strategies.Identifiers.CollateralSwitch,
141
141
  protocol: PROTOCOLS.Spark,
142
142
  },
143
+ [Strategies.MainnetIds.SPARK_GENERIC_FL_COLLATERAL_SWITCH]: {
144
+ strategyOrBundleId: Strategies.MainnetIds.SPARK_GENERIC_FL_COLLATERAL_SWITCH,
145
+ strategyId: Strategies.Identifiers.EoaCollateralSwitch,
146
+ protocol: PROTOCOLS.Spark,
147
+ },
143
148
  };
144
149
 
145
150
  export const OPTIMISM_STRATEGIES_INFO: OptimismStrategiesInfo = {
@@ -573,6 +578,87 @@ export const MAINNET_BUNDLES_INFO: MainnetBundleInfo = {
573
578
  strategyId: Strategies.Identifiers.EoaCloseOnPrice,
574
579
  protocol: PROTOCOLS.AaveV4,
575
580
  },
581
+ [Bundles.MainnetIds.SPARK_EOA_REPAY]: {
582
+ strategyOrBundleId: Bundles.MainnetIds.SPARK_EOA_REPAY,
583
+ strategyId: Strategies.Identifiers.EoaRepay,
584
+ protocol: PROTOCOLS.Spark,
585
+ },
586
+ [Bundles.MainnetIds.SPARK_EOA_BOOST]: {
587
+ strategyOrBundleId: Bundles.MainnetIds.SPARK_EOA_BOOST,
588
+ strategyId: Strategies.Identifiers.EoaBoost,
589
+ protocol: PROTOCOLS.Spark,
590
+ },
591
+ [Bundles.MainnetIds.SPARK_EOA_CLOSE]: {
592
+ strategyOrBundleId: Bundles.MainnetIds.SPARK_EOA_CLOSE,
593
+ strategyId: Strategies.Identifiers.EoaCloseOnPrice,
594
+ protocol: PROTOCOLS.Spark,
595
+ },
596
+ [Bundles.MainnetIds.SPARK_EOA_REPAY_ON_PRICE]: {
597
+ strategyOrBundleId: Bundles.MainnetIds.SPARK_EOA_REPAY_ON_PRICE,
598
+ strategyId: Strategies.Identifiers.EoaRepayOnPrice,
599
+ protocol: PROTOCOLS.Spark,
600
+ },
601
+ [Bundles.MainnetIds.SPARK_EOA_BOOST_ON_PRICE]: {
602
+ strategyOrBundleId: Bundles.MainnetIds.SPARK_EOA_BOOST_ON_PRICE,
603
+ strategyId: Strategies.Identifiers.EoaBoostOnPrice,
604
+ protocol: PROTOCOLS.Spark,
605
+ },
606
+ [Bundles.MainnetIds.MAKER_SW_LIQUIDATION_PROTECTION]: {
607
+ strategyOrBundleId: Bundles.MainnetIds.MAKER_SW_LIQUIDATION_PROTECTION,
608
+ strategyId: Strategies.Identifiers.LiquidationProtection,
609
+ protocol: PROTOCOLS.MakerDAO,
610
+ },
611
+ [Bundles.MainnetIds.AAVE_V3_SW_LIQUIDATION_PROTECTION]: {
612
+ strategyOrBundleId: Bundles.MainnetIds.AAVE_V3_SW_LIQUIDATION_PROTECTION,
613
+ strategyId: Strategies.Identifiers.LiquidationProtection,
614
+ protocol: PROTOCOLS.AaveV3,
615
+ },
616
+ [Bundles.MainnetIds.AAVE_V4_SW_LIQUIDATION_PROTECTION]: {
617
+ strategyOrBundleId: Bundles.MainnetIds.AAVE_V4_SW_LIQUIDATION_PROTECTION,
618
+ strategyId: Strategies.Identifiers.LiquidationProtection,
619
+ protocol: PROTOCOLS.AaveV4,
620
+ },
621
+ [Bundles.MainnetIds.SPARK_SW_LIQUIDATION_PROTECTION]: {
622
+ strategyOrBundleId: Bundles.MainnetIds.SPARK_SW_LIQUIDATION_PROTECTION,
623
+ strategyId: Strategies.Identifiers.LiquidationProtection,
624
+ protocol: PROTOCOLS.Spark,
625
+ },
626
+ [Bundles.MainnetIds.COMP_V3_SW_LIQUIDATION_PROTECTION]: {
627
+ strategyOrBundleId: Bundles.MainnetIds.COMP_V3_SW_LIQUIDATION_PROTECTION,
628
+ strategyId: Strategies.Identifiers.LiquidationProtection,
629
+ protocol: PROTOCOLS.CompoundV3,
630
+ },
631
+ [Bundles.MainnetIds.COMP_V3_EOA_LIQUIDATION_PROTECTION]: {
632
+ strategyOrBundleId: Bundles.MainnetIds.COMP_V3_EOA_LIQUIDATION_PROTECTION,
633
+ strategyId: Strategies.Identifiers.EoaLiquidationProtection,
634
+ protocol: PROTOCOLS.CompoundV3,
635
+ },
636
+ [Bundles.MainnetIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION]: {
637
+ strategyOrBundleId:
638
+ Bundles.MainnetIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION,
639
+ strategyId: Strategies.Identifiers.LiquidationProtection,
640
+ protocol: PROTOCOLS.MorphoBlue,
641
+ },
642
+ [Bundles.MainnetIds.FLUID_T1_SW_LIQUIDATION_PROTECTION]: {
643
+ strategyOrBundleId: Bundles.MainnetIds.FLUID_T1_SW_LIQUIDATION_PROTECTION,
644
+ strategyId: Strategies.Identifiers.LiquidationProtection,
645
+ protocol: PROTOCOLS.FluidT1,
646
+ },
647
+ [Bundles.MainnetIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION]: {
648
+ strategyOrBundleId: Bundles.MainnetIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION,
649
+ strategyId: Strategies.Identifiers.EoaLiquidationProtection,
650
+ protocol: PROTOCOLS.AaveV3,
651
+ },
652
+ [Bundles.MainnetIds.AAVE_V4_EOA_LIQUIDATION_PROTECTION]: {
653
+ strategyOrBundleId: Bundles.MainnetIds.AAVE_V4_EOA_LIQUIDATION_PROTECTION,
654
+ strategyId: Strategies.Identifiers.EoaLiquidationProtection,
655
+ protocol: PROTOCOLS.AaveV4,
656
+ },
657
+ [Bundles.MainnetIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION]: {
658
+ strategyOrBundleId: Bundles.MainnetIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION,
659
+ strategyId: Strategies.Identifiers.EoaLiquidationProtection,
660
+ protocol: PROTOCOLS.MorphoBlue,
661
+ },
576
662
  [Bundles.MainnetIds.MORPHO_BLUE_REPAY_ON_PRICE]: {
577
663
  strategyOrBundleId: Bundles.MainnetIds.MORPHO_BLUE_REPAY_ON_PRICE,
578
664
  strategyId: Strategies.Identifiers.RepayOnPrice,
@@ -593,6 +679,11 @@ export const MAINNET_BUNDLES_INFO: MainnetBundleInfo = {
593
679
  strategyId: Strategies.Identifiers.EoaCloseOnPrice,
594
680
  protocol: PROTOCOLS.MorphoBlue,
595
681
  },
682
+ [Bundles.MainnetIds.SPARK_EOA_LIQUIDATION_PROTECTION]: {
683
+ strategyOrBundleId: Bundles.MainnetIds.SPARK_EOA_LIQUIDATION_PROTECTION,
684
+ strategyId: Strategies.Identifiers.EoaLiquidationProtection,
685
+ protocol: PROTOCOLS.Spark,
686
+ },
596
687
  };
597
688
 
598
689
  export const OPTIMISM_BUNDLES_INFO: OptimismBundleInfo = {
@@ -651,7 +742,16 @@ export const OPTIMISM_BUNDLES_INFO: OptimismBundleInfo = {
651
742
  strategyId: Strategies.Identifiers.EoaCloseOnPrice,
652
743
  protocol: PROTOCOLS.AaveV3,
653
744
  },
654
-
745
+ [Bundles.OptimismIds.AAVE_V3_SW_LIQUIDATION_PROTECTION]: {
746
+ strategyOrBundleId: Bundles.OptimismIds.AAVE_V3_SW_LIQUIDATION_PROTECTION,
747
+ strategyId: Strategies.Identifiers.LiquidationProtection,
748
+ protocol: PROTOCOLS.AaveV3,
749
+ },
750
+ [Bundles.OptimismIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION]: {
751
+ strategyOrBundleId: Bundles.OptimismIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION,
752
+ strategyId: Strategies.Identifiers.EoaLiquidationProtection,
753
+ protocol: PROTOCOLS.AaveV3,
754
+ },
655
755
  };
656
756
 
657
757
  export const BASE_BUNDLES_INFO: BaseBundleInfo = {
@@ -795,6 +895,41 @@ export const BASE_BUNDLES_INFO: BaseBundleInfo = {
795
895
  strategyId: Strategies.Identifiers.RepayOnPrice,
796
896
  protocol: PROTOCOLS.MorphoBlue,
797
897
  },
898
+ [Bundles.BaseIds.AAVE_V3_SW_LIQUIDATION_PROTECTION]: {
899
+ strategyOrBundleId: Bundles.BaseIds.AAVE_V3_SW_LIQUIDATION_PROTECTION,
900
+ strategyId: Strategies.Identifiers.LiquidationProtection,
901
+ protocol: PROTOCOLS.AaveV3,
902
+ },
903
+ [Bundles.BaseIds.COMP_V3_SW_LIQUIDATION_PROTECTION]: {
904
+ strategyOrBundleId: Bundles.BaseIds.COMP_V3_SW_LIQUIDATION_PROTECTION,
905
+ strategyId: Strategies.Identifiers.LiquidationProtection,
906
+ protocol: PROTOCOLS.CompoundV3,
907
+ },
908
+ [Bundles.BaseIds.COMP_V3_EOA_LIQUIDATION_PROTECTION]: {
909
+ strategyOrBundleId: Bundles.BaseIds.COMP_V3_EOA_LIQUIDATION_PROTECTION,
910
+ strategyId: Strategies.Identifiers.EoaLiquidationProtection,
911
+ protocol: PROTOCOLS.CompoundV3,
912
+ },
913
+ [Bundles.BaseIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION]: {
914
+ strategyOrBundleId: Bundles.BaseIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION,
915
+ strategyId: Strategies.Identifiers.LiquidationProtection,
916
+ protocol: PROTOCOLS.MorphoBlue,
917
+ },
918
+ [Bundles.BaseIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION]: {
919
+ strategyOrBundleId: Bundles.BaseIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION,
920
+ strategyId: Strategies.Identifiers.EoaLiquidationProtection,
921
+ protocol: PROTOCOLS.MorphoBlue,
922
+ },
923
+ [Bundles.BaseIds.FLUID_T1_SW_LIQUIDATION_PROTECTION]: {
924
+ strategyOrBundleId: Bundles.BaseIds.FLUID_T1_SW_LIQUIDATION_PROTECTION,
925
+ strategyId: Strategies.Identifiers.LiquidationProtection,
926
+ protocol: PROTOCOLS.FluidT1,
927
+ },
928
+ [Bundles.BaseIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION]: {
929
+ strategyOrBundleId: Bundles.BaseIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION,
930
+ strategyId: Strategies.Identifiers.EoaLiquidationProtection,
931
+ protocol: PROTOCOLS.AaveV3,
932
+ },
798
933
  [Bundles.BaseIds.MORPHO_BLUE_EOA_REPAY]: {
799
934
  strategyOrBundleId: Bundles.BaseIds.MORPHO_BLUE_EOA_REPAY,
800
935
  strategyId: Strategies.Identifiers.EoaRepay,
@@ -973,6 +1108,42 @@ export const ARBITRUM_BUNDLES_INFO: ArbitrumBundleInfo = {
973
1108
  strategyId: Strategies.Identifiers.RepayOnPrice,
974
1109
  protocol: PROTOCOLS.MorphoBlue,
975
1110
  },
1111
+ [Bundles.ArbitrumIds.AAVE_V3_SW_LIQUIDATION_PROTECTION]: {
1112
+ strategyOrBundleId: Bundles.ArbitrumIds.AAVE_V3_SW_LIQUIDATION_PROTECTION,
1113
+ strategyId: Strategies.Identifiers.LiquidationProtection,
1114
+ protocol: PROTOCOLS.AaveV3,
1115
+ },
1116
+ [Bundles.ArbitrumIds.COMP_V3_SW_LIQUIDATION_PROTECTION]: {
1117
+ strategyOrBundleId: Bundles.ArbitrumIds.COMP_V3_SW_LIQUIDATION_PROTECTION,
1118
+ strategyId: Strategies.Identifiers.LiquidationProtection,
1119
+ protocol: PROTOCOLS.CompoundV3,
1120
+ },
1121
+ [Bundles.ArbitrumIds.COMP_V3_EOA_LIQUIDATION_PROTECTION]: {
1122
+ strategyOrBundleId: Bundles.ArbitrumIds.COMP_V3_EOA_LIQUIDATION_PROTECTION,
1123
+ strategyId: Strategies.Identifiers.EoaLiquidationProtection,
1124
+ protocol: PROTOCOLS.CompoundV3,
1125
+ },
1126
+ [Bundles.ArbitrumIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION]: {
1127
+ strategyOrBundleId:
1128
+ Bundles.ArbitrumIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION,
1129
+ strategyId: Strategies.Identifiers.LiquidationProtection,
1130
+ protocol: PROTOCOLS.MorphoBlue,
1131
+ },
1132
+ [Bundles.ArbitrumIds.FLUID_T1_SW_LIQUIDATION_PROTECTION]: {
1133
+ strategyOrBundleId: Bundles.ArbitrumIds.FLUID_T1_SW_LIQUIDATION_PROTECTION,
1134
+ strategyId: Strategies.Identifiers.LiquidationProtection,
1135
+ protocol: PROTOCOLS.FluidT1,
1136
+ },
1137
+ [Bundles.ArbitrumIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION]: {
1138
+ strategyOrBundleId: Bundles.ArbitrumIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION,
1139
+ strategyId: Strategies.Identifiers.EoaLiquidationProtection,
1140
+ protocol: PROTOCOLS.AaveV3,
1141
+ },
1142
+ [Bundles.ArbitrumIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION]: {
1143
+ strategyOrBundleId: Bundles.ArbitrumIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION,
1144
+ strategyId: Strategies.Identifiers.EoaLiquidationProtection,
1145
+ protocol: PROTOCOLS.MorphoBlue,
1146
+ },
976
1147
  [Bundles.ArbitrumIds.MORPHO_BLUE_EOA_BOOST_ON_PRICE]: {
977
1148
  strategyOrBundleId: Bundles.ArbitrumIds.MORPHO_BLUE_EOA_BOOST_ON_PRICE,
978
1149
  strategyId: Strategies.Identifiers.EoaBoostOnPrice,
package/src/index.ts CHANGED
@@ -24,18 +24,34 @@ import * as enums from './types/enums';
24
24
  import type * as types from './types';
25
25
 
26
26
  import {
27
- getRatioStateInfoForAaveCloseStrategy, compareSubHashes, encodeSubId, getCloseStrategyType,
27
+ getRatioStateInfoForAaveCloseStrategy,
28
+ compareSubHashes,
29
+ encodeSubId,
30
+ getCloseStrategyType,
28
31
  } from './services/utils';
29
32
 
30
33
  const utils = {
31
- getRatioStateInfoForAaveCloseStrategy, compareSubHashes, encodeSubId, getCloseStrategyType,
34
+ compareSubHashes,
35
+ encodeSubId,
36
+ getCloseStrategyType,
37
+ getRatioStateInfoForAaveCloseStrategy,
32
38
  };
33
39
 
34
40
  export {
35
- LegacyMakerAutomation, LegacyAaveAutomation, LegacyCompoundAutomation,
36
- EthereumStrategies, OptimismStrategies, ArbitrumStrategies, BaseStrategies,
37
- triggerService, subDataService, strategySubService, utils,
38
- enums, constants, strategiesService,
41
+ ArbitrumStrategies,
42
+ BaseStrategies,
43
+ EthereumStrategies,
44
+ LegacyAaveAutomation,
45
+ LegacyCompoundAutomation,
46
+ LegacyMakerAutomation,
47
+ OptimismStrategies,
48
+ constants,
49
+ enums,
50
+ strategiesService,
51
+ strategySubService,
52
+ subDataService,
53
+ triggerService,
54
+ utils,
39
55
  };
40
56
 
41
57
  export type { types };
@@ -1,10 +1,11 @@
1
1
  import Web3 from 'web3';
2
2
  import { expect } from 'chai';
3
+ import { omit } from 'lodash';
3
4
  import { getAssetInfo } from '@defisaver/tokens';
4
5
  import { PastEventOptions } from 'web3-eth-contract';
5
6
 
6
7
  import { ChainId } from '../types/enums';
7
- import type { BlockNumber, Multicall } from '../types';
8
+ import type { BlockNumber, Multicall, PlaceholderType } from '../types';
8
9
  import { Contract } from '../types';
9
10
  import type { Erc20 } from '../types/contracts/generated';
10
11
 
@@ -115,7 +116,6 @@ describe('Feature: ethereumService.ts', () => {
115
116
  'address': '0x5f98805A4E8be255a32880FDeC7F6728C6568bA0',
116
117
  'blockHash': '0xb92cab2569456dbfbdb853d2c67d72c9a7580543dbcb55d483a77322b40755a4',
117
118
  'blockNumber': 15166163,
118
- 'blockTimestamp': '0x62d53ad8',
119
119
  'event': 'Transfer',
120
120
  'id': 'log_e2258e3a',
121
121
  'logIndex': 385,
@@ -142,7 +142,7 @@ describe('Feature: ethereumService.ts', () => {
142
142
  },
143
143
  ],
144
144
  [
145
- makeErc20Contract(Web3_1, getAssetInfo('LUSD').address, ChainId.Ethereum),
145
+ { ...makeErc20Contract(Web3_1, getAssetInfo('LUSD').address, ChainId.Ethereum), createdBlock: 15166163 },
146
146
  null,
147
147
  'Transfer',
148
148
  {
@@ -161,7 +161,6 @@ describe('Feature: ethereumService.ts', () => {
161
161
  'address': '0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1',
162
162
  'blockHash': '0xacb0213af63b4c17c436f084a96d1ac385641a59a9a4cf014ae3337cbe545aa7',
163
163
  'blockNumber': 5353002,
164
- 'blockTimestamp': '0x624c1a5b',
165
164
  'event': 'Transfer',
166
165
  'id': 'log_f49645b8',
167
166
  'logIndex': 1,
@@ -207,7 +206,6 @@ describe('Feature: ethereumService.ts', () => {
207
206
  'address': '0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1',
208
207
  'blockHash': '0xacb0213af63b4c17c436f084a96d1ac385641a59a9a4cf014ae3337cbe545aa7',
209
208
  'blockNumber': 5353002,
210
- 'blockTimestamp': '0x624c1a5b',
211
209
  'event': 'Transfer',
212
210
  'id': 'log_f49645b8',
213
211
  'logIndex': 1,
@@ -251,9 +249,8 @@ describe('Feature: ethereumService.ts', () => {
251
249
 
252
250
  examples.forEach(([expected, actual]) => {
253
251
  it(`Given ${actual} should return expected value: ${JSON.stringify(expected)}`, async () => {
254
- const data = await getEventsFromContract(...actual);
255
- console.log(data);
256
- expect(await getEventsFromContract(...actual)).to.eql(expected);
252
+ const events = await getEventsFromContract(...actual);
253
+ expect(events.map((event: PlaceholderType) => omit(event, 'blockTimestamp'))).to.eql(expected);
257
254
  });
258
255
  });
259
256
  });