@defisaver/automation-sdk 3.0.2-dev → 3.0.2-dev2

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.
package/umd/index.js CHANGED
@@ -68,6 +68,7 @@ class LegacyMakerAutomation extends _private_LegacyAutomation__WEBPACK_IMPORTED_
68
68
  "use strict";
69
69
  __webpack_require__.r(__webpack_exports__);
70
70
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
71
+ /* harmony export */ AAVE_V3_VARIABLE_BORROW_RATE: () => (/* binding */ AAVE_V3_VARIABLE_BORROW_RATE),
71
72
  /* harmony export */ ARBITRUM_BUNDLES_INFO: () => (/* binding */ ARBITRUM_BUNDLES_INFO),
72
73
  /* harmony export */ ARBITRUM_STRATEGIES_INFO: () => (/* binding */ ARBITRUM_STRATEGIES_INFO),
73
74
  /* harmony export */ BUNDLES_INFO: () => (/* binding */ BUNDLES_INFO),
@@ -91,6 +92,7 @@ __webpack_require__.r(__webpack_exports__);
91
92
 
92
93
  // General
93
94
  var ZERO_ADDRESS = '0x0000000000000000000000000000000000000000';
95
+ var AAVE_V3_VARIABLE_BORROW_RATE = 2;
94
96
  var PROTOCOLS = (() => {
95
97
  var protocolsMapping = {};
96
98
  Object.entries(_types_enums__WEBPACK_IMPORTED_MODULE_0__.ProtocolIdentifiers.StrategiesAutomation).forEach(_ref => {
@@ -178,6 +180,16 @@ var MAINNET_STRATEGIES_INFO = {
178
180
  strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.MainnetIds.LIQUITY_DEBT_IN_FRONT_REPAY,
179
181
  strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.DebtInFrontRepay,
180
182
  protocol: PROTOCOLS.Liquity
183
+ },
184
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.MainnetIds.CURVEUSD_PAYBACK]: {
185
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.MainnetIds.CURVEUSD_PAYBACK,
186
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.Payback,
187
+ protocol: PROTOCOLS.CrvUSD
188
+ },
189
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.MainnetIds.AAVE_V3_OPEN_ORDER_FROM_DEBT]: {
190
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.MainnetIds.AAVE_V3_OPEN_ORDER_FROM_DEBT,
191
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.OpenOrderFromDebt,
192
+ protocol: PROTOCOLS.AaveV3
181
193
  }
182
194
  };
183
195
  var OPTIMISM_STRATEGIES_INFO = {
@@ -190,6 +202,11 @@ var OPTIMISM_STRATEGIES_INFO = {
190
202
  strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.OptimismIds.EXCHANGE_LIMIT_ORDER,
191
203
  strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.LimitOrder,
192
204
  protocol: PROTOCOLS.Exchange
205
+ },
206
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.OptimismIds.AAVE_V3_OPEN_ORDER_FROM_DEBT]: {
207
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.OptimismIds.AAVE_V3_OPEN_ORDER_FROM_DEBT,
208
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.OpenOrderFromDebt,
209
+ protocol: PROTOCOLS.AaveV3
193
210
  }
194
211
  };
195
212
  var ARBITRUM_STRATEGIES_INFO = {
@@ -202,6 +219,11 @@ var ARBITRUM_STRATEGIES_INFO = {
202
219
  strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.ArbitrumIds.EXCHANGE_LIMIT_ORDER,
203
220
  strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.LimitOrder,
204
221
  protocol: PROTOCOLS.Exchange
222
+ },
223
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.ArbitrumIds.AAVE_V3_OPEN_ORDER_FROM_DEBT]: {
224
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.ArbitrumIds.AAVE_V3_OPEN_ORDER_FROM_DEBT,
225
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.OpenOrderFromDebt,
226
+ protocol: PROTOCOLS.AaveV3
205
227
  }
206
228
  };
207
229
  var STRATEGIES_INFO = {
@@ -258,6 +280,26 @@ var MAINNET_BUNDLES_INFO = {
258
280
  strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.EoaBoost,
259
281
  protocol: PROTOCOLS.CompoundV3
260
282
  },
283
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.COMP_V3_SW_REPAY_V2_BUNDLE]: {
284
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.COMP_V3_SW_REPAY_V2_BUNDLE,
285
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.Repay,
286
+ protocol: PROTOCOLS.CompoundV3
287
+ },
288
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.COMP_V3_SW_BOOST_V2_BUNDLE]: {
289
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.COMP_V3_SW_BOOST_V2_BUNDLE,
290
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.Boost,
291
+ protocol: PROTOCOLS.CompoundV3
292
+ },
293
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.COMP_V3_EOA_REPAY_V2_BUNDLE]: {
294
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.COMP_V3_EOA_REPAY_V2_BUNDLE,
295
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.EoaRepay,
296
+ protocol: PROTOCOLS.CompoundV3
297
+ },
298
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.COMP_V3_EOA_BOOST_V2_BUNDLE]: {
299
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.COMP_V3_EOA_BOOST_V2_BUNDLE,
300
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.EoaBoost,
301
+ protocol: PROTOCOLS.CompoundV3
302
+ },
261
303
  [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.LIQUITY_PAYBACK_USING_CHICKEN_BOND]: {
262
304
  strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.LIQUITY_PAYBACK_USING_CHICKEN_BOND,
263
305
  strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.BondProtection,
@@ -382,6 +424,21 @@ var MAINNET_BUNDLES_INFO = {
382
424
  strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.MORPHO_BLUE_BOOST,
383
425
  strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.Boost,
384
426
  protocol: PROTOCOLS.MorphoBlue
427
+ },
428
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.MORPHO_BLUE_EOA_REPAY]: {
429
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.MORPHO_BLUE_EOA_REPAY,
430
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.EoaRepay,
431
+ protocol: PROTOCOLS.MorphoBlue
432
+ },
433
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.MORPHO_BLUE_EOA_BOOST]: {
434
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.MORPHO_BLUE_EOA_BOOST,
435
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.EoaBoost,
436
+ protocol: PROTOCOLS.MorphoBlue
437
+ },
438
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.AAVE_V3_OPEN_ORDER_FROM_COLLATERAL]: {
439
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.MainnetIds.AAVE_V3_OPEN_ORDER_FROM_COLLATERAL,
440
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.OpenOrderFromCollateral,
441
+ protocol: PROTOCOLS.AaveV3
385
442
  }
386
443
  };
387
444
  var OPTIMISM_BUNDLES_INFO = {
@@ -404,6 +461,11 @@ var OPTIMISM_BUNDLES_INFO = {
404
461
  strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.OptimismIds.AAVE_V3_CLOSE_TO_COLLATERAL,
405
462
  strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.CloseToCollateral,
406
463
  protocol: PROTOCOLS.AaveV3
464
+ },
465
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.OptimismIds.AAVE_V3_OPEN_ORDER_FROM_COLLATERAL]: {
466
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.OptimismIds.AAVE_V3_OPEN_ORDER_FROM_COLLATERAL,
467
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.OpenOrderFromCollateral,
468
+ protocol: PROTOCOLS.AaveV3
407
469
  }
408
470
  };
409
471
  var ARBITRUM_BUNDLES_INFO = {
@@ -436,6 +498,11 @@ var ARBITRUM_BUNDLES_INFO = {
436
498
  strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.ArbitrumIds.COMP_V3_SW_REPAY_BUNDLE,
437
499
  strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.Repay,
438
500
  protocol: PROTOCOLS.CompoundV3
501
+ },
502
+ [_types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.ArbitrumIds.AAVE_V3_OPEN_ORDER_FROM_COLLATERAL]: {
503
+ strategyOrBundleId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Bundles.ArbitrumIds.AAVE_V3_OPEN_ORDER_FROM_COLLATERAL,
504
+ strategyId: _types_enums__WEBPACK_IMPORTED_MODULE_0__.Strategies.Identifiers.OpenOrderFromCollateral,
505
+ protocol: PROTOCOLS.AaveV3
439
506
  }
440
507
  };
441
508
  var BUNDLES_INFO = {
@@ -537,18 +604,22 @@ var Strategies;
537
604
  MainnetIds[MainnetIds["LIQUITY_DSR_PAYBACK"] = 69] = "LIQUITY_DSR_PAYBACK";
538
605
  MainnetIds[MainnetIds["LIQUITY_DSR_SUPPLY"] = 70] = "LIQUITY_DSR_SUPPLY";
539
606
  MainnetIds[MainnetIds["LIQUITY_DEBT_IN_FRONT_REPAY"] = 75] = "LIQUITY_DEBT_IN_FRONT_REPAY";
607
+ MainnetIds[MainnetIds["CURVEUSD_PAYBACK"] = 92] = "CURVEUSD_PAYBACK";
608
+ MainnetIds[MainnetIds["AAVE_V3_OPEN_ORDER_FROM_DEBT"] = 96] = "AAVE_V3_OPEN_ORDER_FROM_DEBT";
540
609
  })(MainnetIds || (MainnetIds = {}));
541
610
  _Strategies.MainnetIds = MainnetIds;
542
611
  var OptimismIds;
543
612
  (function (OptimismIds) {
544
613
  OptimismIds[OptimismIds["EXCHANGE_DCA"] = 8] = "EXCHANGE_DCA";
545
614
  OptimismIds[OptimismIds["EXCHANGE_LIMIT_ORDER"] = 9] = "EXCHANGE_LIMIT_ORDER";
615
+ OptimismIds[OptimismIds["AAVE_V3_OPEN_ORDER_FROM_DEBT"] = 12] = "AAVE_V3_OPEN_ORDER_FROM_DEBT";
546
616
  })(OptimismIds || (OptimismIds = {}));
547
617
  _Strategies.OptimismIds = OptimismIds;
548
618
  var ArbitrumIds;
549
619
  (function (ArbitrumIds) {
550
620
  ArbitrumIds[ArbitrumIds["EXCHANGE_DCA"] = 8] = "EXCHANGE_DCA";
551
621
  ArbitrumIds[ArbitrumIds["EXCHANGE_LIMIT_ORDER"] = 9] = "EXCHANGE_LIMIT_ORDER";
622
+ ArbitrumIds[ArbitrumIds["AAVE_V3_OPEN_ORDER_FROM_DEBT"] = 16] = "AAVE_V3_OPEN_ORDER_FROM_DEBT";
552
623
  })(ArbitrumIds || (ArbitrumIds = {}));
553
624
  _Strategies.ArbitrumIds = ArbitrumIds;
554
625
  var Identifiers;
@@ -569,10 +640,13 @@ var Strategies;
569
640
  Identifiers["TrailingStopToColl"] = "trailing-stop-to-collateral";
570
641
  Identifiers["TrailingStopToDebt"] = "trailing-stop-to-debt";
571
642
  Identifiers["Rebond"] = "rebond";
643
+ Identifiers["Payback"] = "payback";
572
644
  Identifiers["BondProtection"] = "bond-protection";
573
645
  Identifiers["Dca"] = "dca";
574
646
  Identifiers["LimitOrder"] = "limit-order";
575
647
  Identifiers["DebtInFrontRepay"] = "debt-in-front-repay";
648
+ Identifiers["OpenOrderFromCollateral"] = "open-order-from-collateral";
649
+ Identifiers["OpenOrderFromDebt"] = "open-order-from-debt";
576
650
  })(Identifiers || (Identifiers = {}));
577
651
  _Strategies.Identifiers = Identifiers;
578
652
  var IdOverrides;
@@ -621,8 +695,15 @@ var Bundles;
621
695
  MainnetIds[MainnetIds["COMP_V2_BOOST"] = 21] = "COMP_V2_BOOST";
622
696
  MainnetIds[MainnetIds["CRVUSD_REPAY"] = 26] = "CRVUSD_REPAY";
623
697
  MainnetIds[MainnetIds["CRVUSD_BOOST"] = 27] = "CRVUSD_BOOST";
698
+ MainnetIds[MainnetIds["COMP_V3_SW_REPAY_V2_BUNDLE"] = 28] = "COMP_V3_SW_REPAY_V2_BUNDLE";
699
+ MainnetIds[MainnetIds["COMP_V3_SW_BOOST_V2_BUNDLE"] = 29] = "COMP_V3_SW_BOOST_V2_BUNDLE";
700
+ MainnetIds[MainnetIds["COMP_V3_EOA_REPAY_V2_BUNDLE"] = 30] = "COMP_V3_EOA_REPAY_V2_BUNDLE";
701
+ MainnetIds[MainnetIds["COMP_V3_EOA_BOOST_V2_BUNDLE"] = 31] = "COMP_V3_EOA_BOOST_V2_BUNDLE";
624
702
  MainnetIds[MainnetIds["MORPHO_BLUE_REPAY"] = 32] = "MORPHO_BLUE_REPAY";
625
703
  MainnetIds[MainnetIds["MORPHO_BLUE_BOOST"] = 33] = "MORPHO_BLUE_BOOST";
704
+ MainnetIds[MainnetIds["MORPHO_BLUE_EOA_REPAY"] = 34] = "MORPHO_BLUE_EOA_REPAY";
705
+ MainnetIds[MainnetIds["MORPHO_BLUE_EOA_BOOST"] = 35] = "MORPHO_BLUE_EOA_BOOST";
706
+ MainnetIds[MainnetIds["AAVE_V3_OPEN_ORDER_FROM_COLLATERAL"] = 36] = "AAVE_V3_OPEN_ORDER_FROM_COLLATERAL";
626
707
  })(MainnetIds || (MainnetIds = {}));
627
708
  _Bundles.MainnetIds = MainnetIds;
628
709
  var OptimismIds;
@@ -631,6 +712,7 @@ var Bundles;
631
712
  OptimismIds[OptimismIds["AAVE_V3_BOOST"] = 1] = "AAVE_V3_BOOST";
632
713
  OptimismIds[OptimismIds["AAVE_V3_CLOSE_TO_DEBT"] = 2] = "AAVE_V3_CLOSE_TO_DEBT";
633
714
  OptimismIds[OptimismIds["AAVE_V3_CLOSE_TO_COLLATERAL"] = 3] = "AAVE_V3_CLOSE_TO_COLLATERAL";
715
+ OptimismIds[OptimismIds["AAVE_V3_OPEN_ORDER_FROM_COLLATERAL"] = 4] = "AAVE_V3_OPEN_ORDER_FROM_COLLATERAL";
634
716
  })(OptimismIds || (OptimismIds = {}));
635
717
  _Bundles.OptimismIds = OptimismIds;
636
718
  var ArbitrumIds;
@@ -641,6 +723,7 @@ var Bundles;
641
723
  ArbitrumIds[ArbitrumIds["AAVE_V3_CLOSE_TO_COLLATERAL"] = 3] = "AAVE_V3_CLOSE_TO_COLLATERAL";
642
724
  ArbitrumIds[ArbitrumIds["COMP_V3_SW_REPAY_BUNDLE"] = 4] = "COMP_V3_SW_REPAY_BUNDLE";
643
725
  ArbitrumIds[ArbitrumIds["COMP_V3_SW_BOOST_BUNDLE"] = 5] = "COMP_V3_SW_BOOST_BUNDLE";
726
+ ArbitrumIds[ArbitrumIds["AAVE_V3_OPEN_ORDER_FROM_COLLATERAL"] = 6] = "AAVE_V3_OPEN_ORDER_FROM_COLLATERAL";
644
727
  })(ArbitrumIds || (ArbitrumIds = {}));
645
728
  _Bundles.ArbitrumIds = ArbitrumIds;
646
729
  })(Bundles || (Bundles = {}));
@@ -1465,7 +1548,9 @@ class StrategiesAutomation extends _Automation__WEBPACK_IMPORTED_MODULE_6__["def
1465
1548
  var _this = this;
1466
1549
  return _asyncToGenerator(function* () {
1467
1550
  var _options$fromBlock;
1468
- if (new (decimal_js__WEBPACK_IMPORTED_MODULE_0___default())(_this.subStorageContract.createdBlock.toString()).gt((options === null || options === void 0 ? void 0 : (_options$fromBlock = options.fromBlock) === null || _options$fromBlock === void 0 ? void 0 : _options$fromBlock.toString()) || 0)) {
1551
+ // only used for backfilling, so in case options?.fromBlock in undefined
1552
+ // (just like we omit fromBlock when we call from app when not on fork), we still want to fetch events
1553
+ if (new (decimal_js__WEBPACK_IMPORTED_MODULE_0___default())(_this.subStorageContract.createdBlock.toString()).gt((options === null || options === void 0 ? void 0 : (_options$fromBlock = options.fromBlock) === null || _options$fromBlock === void 0 ? void 0 : _options$fromBlock.toString()) || _this.subStorageContract.createdBlock.toString())) {
1469
1554
  return [];
1470
1555
  }
1471
1556
  return (0,_services_ethereumService__WEBPACK_IMPORTED_MODULE_4__.getEventsFromContract)(_this.subStorageContract, _this.subStorageContractFork, event, options);
@@ -2010,8 +2095,7 @@ function parseCompoundV3LeverageManagement(position, parseData) {
2010
2095
  var subData = subDataDecoder.decode(subStruct.subData);
2011
2096
  _position.strategyData.decoded.triggerData = triggerData;
2012
2097
  _position.strategyData.decoded.subData = subData;
2013
- _position.owner = triggerData.owner.toLowerCase();
2014
- _position.positionId = (0,_utils__WEBPACK_IMPORTED_MODULE_4__.getPositionId)(_position.chainId, _position.protocol.id, _position.owner, triggerData.market);
2098
+ _position.positionId = (0,_utils__WEBPACK_IMPORTED_MODULE_4__.getPositionId)(_position.chainId, _position.protocol.id, triggerData.owner.toLowerCase(), triggerData.market);
2015
2099
  var isRepay = [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Repay, _types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.EoaRepay].includes(_position.strategy.strategyId);
2016
2100
  if (isRepay) {
2017
2101
  _position.specific = {
@@ -2227,6 +2311,7 @@ function parseCrvUSDLeverageManagement(position, parseData) {
2227
2311
  var subData = _subDataService__WEBPACK_IMPORTED_MODULE_5__.crvUSDLeverageManagementSubData.decode(subStruct.subData);
2228
2312
  _position.strategyData.decoded.triggerData = triggerData;
2229
2313
  _position.strategyData.decoded.subData = subData;
2314
+ _position.positionId = (0,_utils__WEBPACK_IMPORTED_MODULE_4__.getPositionId)(_position.chainId, _position.protocol.id, _position.owner, triggerData.controller);
2230
2315
  var isRepay = _position.strategy.strategyId === _types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Repay;
2231
2316
  if (isRepay) {
2232
2317
  _position.specific = {
@@ -2247,10 +2332,22 @@ function parseCrvUSDLeverageManagement(position, parseData) {
2247
2332
  mergeId: _types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Boost
2248
2333
  };
2249
2334
  }
2250
- _position.positionId = (0,_utils__WEBPACK_IMPORTED_MODULE_4__.getPositionId)(_position.chainId, _position.protocol.id, _position.owner, triggerData.controller);
2251
2335
  _position.strategy.strategyId = _types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.IdOverrides.LeverageManagement;
2252
2336
  return _position;
2253
2337
  }
2338
+ function parseCrvUSDPayback(position, parseData) {
2339
+ var _position = (0,lodash__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(position);
2340
+ var {
2341
+ subStruct
2342
+ } = parseData.subscriptionEventData;
2343
+ var triggerData = _triggerService__WEBPACK_IMPORTED_MODULE_6__.crvUsdHealthRatioTrigger.decode(subStruct.triggerData);
2344
+ var subData = _subDataService__WEBPACK_IMPORTED_MODULE_5__.crvUSDPaybackSubData.decode(subStruct.subData);
2345
+ _position.strategyData.decoded.triggerData = triggerData;
2346
+ _position.strategyData.decoded.subData = subData;
2347
+ _position.positionId = (0,_utils__WEBPACK_IMPORTED_MODULE_4__.getPositionId)(_position.chainId, _position.protocol.id, _position.owner, triggerData.controller, Math.random());
2348
+ _position.strategy.strategyId = _types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Payback;
2349
+ return _position;
2350
+ }
2254
2351
  function parseMorphoBlueLeverageManagement(position, parseData) {
2255
2352
  var _position = (0,lodash__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(position);
2256
2353
  var {
@@ -2265,7 +2362,8 @@ function parseMorphoBlueLeverageManagement(position, parseData) {
2265
2362
  var subData = _subDataService__WEBPACK_IMPORTED_MODULE_5__.morphoBlueLeverageManagementSubData.decode(subStruct.subData);
2266
2363
  _position.strategyData.decoded.triggerData = triggerData;
2267
2364
  _position.strategyData.decoded.subData = subData;
2268
- var isRepay = _position.strategy.strategyId === _types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Repay;
2365
+ _position.positionId = (0,_utils__WEBPACK_IMPORTED_MODULE_4__.getPositionId)(_position.chainId, _position.protocol.id, triggerData.owner.toLowerCase(), triggerData.marketId);
2366
+ var isRepay = [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Repay, _types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.EoaRepay].includes(_position.strategy.strategyId);
2269
2367
  if (isRepay) {
2270
2368
  _position.specific = {
2271
2369
  triggerRepayRatio: triggerData.ratio,
@@ -2285,8 +2383,18 @@ function parseMorphoBlueLeverageManagement(position, parseData) {
2285
2383
  mergeId: _types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Boost
2286
2384
  };
2287
2385
  }
2288
- _position.positionId = (0,_utils__WEBPACK_IMPORTED_MODULE_4__.getPositionId)(_position.chainId, _position.protocol.id, _position.owner, triggerData.marketId);
2289
- _position.strategy.strategyId = _types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.IdOverrides.LeverageManagement;
2386
+ var isEOA = _position.strategy.strategyId.includes('eoa');
2387
+ _position.strategy.strategyId = isEOA ? _types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.IdOverrides.EoaLeverageManagement : _types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.IdOverrides.LeverageManagement;
2388
+ return _position;
2389
+ }
2390
+ function parseAaveV3OpenOrderFromCollateral(position, parseData) {
2391
+ var _position = (0,lodash__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(position);
2392
+ var {
2393
+ subStruct
2394
+ } = parseData.subscriptionEventData;
2395
+ _position.strategyData.decoded.triggerData = _triggerService__WEBPACK_IMPORTED_MODULE_6__.aaveV3QuotePriceTrigger.decode(subStruct.triggerData);
2396
+ _position.strategyData.decoded.subData = _subDataService__WEBPACK_IMPORTED_MODULE_5__.aaveV3OpenOrderSubData.decode(subStruct.subData);
2397
+ _position.positionId = (0,_utils__WEBPACK_IMPORTED_MODULE_4__.getPositionId)(_position.chainId, _position.protocol.id, _position.owner, Math.random());
2290
2398
  return _position;
2291
2399
  }
2292
2400
  var parsingMethodsMapping = {
@@ -2319,7 +2427,8 @@ var parsingMethodsMapping = {
2319
2427
  [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.CloseToDebt]: parseAaveV3CloseOnPrice,
2320
2428
  [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.CloseToDebtWithGasPrice]: parseAaveV3CloseOnPriceWithMaximumGasPrice,
2321
2429
  [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.CloseToCollateral]: parseAaveV3CloseOnPrice,
2322
- [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.CloseToCollateralWithGasPrice]: parseAaveV3CloseOnPriceWithMaximumGasPrice
2430
+ [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.CloseToCollateralWithGasPrice]: parseAaveV3CloseOnPriceWithMaximumGasPrice,
2431
+ [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.OpenOrderFromCollateral]: parseAaveV3OpenOrderFromCollateral
2323
2432
  },
2324
2433
  [_types_enums__WEBPACK_IMPORTED_MODULE_3__.ProtocolIdentifiers.StrategiesAutomation.CompoundV2]: {
2325
2434
  [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Repay]: parseCompoundV2LeverageManagement,
@@ -2350,11 +2459,14 @@ var parsingMethodsMapping = {
2350
2459
  },
2351
2460
  [_types_enums__WEBPACK_IMPORTED_MODULE_3__.ProtocolIdentifiers.StrategiesAutomation.CrvUSD]: {
2352
2461
  [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Repay]: parseCrvUSDLeverageManagement,
2353
- [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Boost]: parseCrvUSDLeverageManagement
2462
+ [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Boost]: parseCrvUSDLeverageManagement,
2463
+ [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Payback]: parseCrvUSDPayback
2354
2464
  },
2355
2465
  [_types_enums__WEBPACK_IMPORTED_MODULE_3__.ProtocolIdentifiers.StrategiesAutomation.MorphoBlue]: {
2356
2466
  [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Repay]: parseMorphoBlueLeverageManagement,
2357
- [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Boost]: parseMorphoBlueLeverageManagement
2467
+ [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.Boost]: parseMorphoBlueLeverageManagement,
2468
+ [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.EoaRepay]: parseMorphoBlueLeverageManagement,
2469
+ [_types_enums__WEBPACK_IMPORTED_MODULE_3__.Strategies.Identifiers.EoaBoost]: parseMorphoBlueLeverageManagement
2358
2470
  }
2359
2471
  };
2360
2472
  function getParsingMethod(id, strategy) {
@@ -19623,12 +19735,14 @@ __webpack_require__.r(__webpack_exports__);
19623
19735
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
19624
19736
  /* harmony export */ aaveV2LeverageManagementSubData: () => (/* binding */ aaveV2LeverageManagementSubData),
19625
19737
  /* harmony export */ aaveV3LeverageManagementSubData: () => (/* binding */ aaveV3LeverageManagementSubData),
19738
+ /* harmony export */ aaveV3OpenOrderSubData: () => (/* binding */ aaveV3OpenOrderSubData),
19626
19739
  /* harmony export */ aaveV3QuotePriceSubData: () => (/* binding */ aaveV3QuotePriceSubData),
19627
19740
  /* harmony export */ cBondsRebondSubData: () => (/* binding */ cBondsRebondSubData),
19628
19741
  /* harmony export */ compoundV2LeverageManagementSubData: () => (/* binding */ compoundV2LeverageManagementSubData),
19629
19742
  /* harmony export */ compoundV3L2LeverageManagementSubData: () => (/* binding */ compoundV3L2LeverageManagementSubData),
19630
19743
  /* harmony export */ compoundV3LeverageManagementSubData: () => (/* binding */ compoundV3LeverageManagementSubData),
19631
19744
  /* harmony export */ crvUSDLeverageManagementSubData: () => (/* binding */ crvUSDLeverageManagementSubData),
19745
+ /* harmony export */ crvUSDPaybackSubData: () => (/* binding */ crvUSDPaybackSubData),
19632
19746
  /* harmony export */ exchangeDcaSubData: () => (/* binding */ exchangeDcaSubData),
19633
19747
  /* harmony export */ exchangeLimitOrderSubData: () => (/* binding */ exchangeLimitOrderSubData),
19634
19748
  /* harmony export */ liquityCloseSubData: () => (/* binding */ liquityCloseSubData),
@@ -19650,12 +19764,15 @@ __webpack_require__.r(__webpack_exports__);
19650
19764
  /* harmony import */ var decimal_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(decimal_js__WEBPACK_IMPORTED_MODULE_0__);
19651
19765
  /* harmony import */ var web3_eth_abi__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(19);
19652
19766
  /* harmony import */ var web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(web3_eth_abi__WEBPACK_IMPORTED_MODULE_1__);
19653
- /* harmony import */ var _defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(20);
19654
- /* harmony import */ var _defisaver_tokens__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__);
19655
- /* harmony import */ var _defisaver_sdk__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(31);
19656
- /* harmony import */ var _types_enums__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(5);
19657
- /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(4);
19658
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(17);
19767
+ /* harmony import */ var web3_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(18);
19768
+ /* harmony import */ var web3_utils__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(web3_utils__WEBPACK_IMPORTED_MODULE_2__);
19769
+ /* harmony import */ var _defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(20);
19770
+ /* harmony import */ var _defisaver_tokens__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__);
19771
+ /* harmony import */ var _defisaver_sdk__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(31);
19772
+ /* harmony import */ var _types_enums__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(5);
19773
+ /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(4);
19774
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(17);
19775
+
19659
19776
 
19660
19777
 
19661
19778
 
@@ -19665,11 +19782,11 @@ __webpack_require__.r(__webpack_exports__);
19665
19782
 
19666
19783
  var makerRepayFromSavingsSubData = {
19667
19784
  encode(vaultId, targetRatioPercentage, chainId, daiAddr, mcdCdpManagerAddr) {
19668
- var _daiAddr = daiAddr || (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfo)('DAI', chainId).address;
19785
+ var _daiAddr = daiAddr || (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfo)('DAI', chainId).address;
19669
19786
  // @ts-ignore // TODO - this requires change in @defisaver/tokens
19670
- var _mcdCdpManagerAddr = mcdCdpManagerAddr || (0,_defisaver_sdk__WEBPACK_IMPORTED_MODULE_3__.otherAddresses)(chainId).McdCdpManager;
19787
+ var _mcdCdpManagerAddr = mcdCdpManagerAddr || (0,_defisaver_sdk__WEBPACK_IMPORTED_MODULE_4__.otherAddresses)(chainId).McdCdpManager;
19671
19788
  var vaultIdEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', vaultId.toString());
19672
- var targetRatioWei = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.ratioPercentageToWei)(targetRatioPercentage);
19789
+ var targetRatioWei = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.ratioPercentageToWei)(targetRatioPercentage);
19673
19790
  var targetRatioEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', targetRatioWei);
19674
19791
  var daiAddrEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', _daiAddr);
19675
19792
  var mcdManagerAddrEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', _mcdCdpManagerAddr);
@@ -19678,7 +19795,7 @@ var makerRepayFromSavingsSubData = {
19678
19795
  decode(subData) {
19679
19796
  var vaultId = +web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[0]).toString();
19680
19797
  var weiRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[1]);
19681
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(weiRatio);
19798
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(weiRatio);
19682
19799
  var daiAddr = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[2]).toString();
19683
19800
  var mcdManagerAddr = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[3]).toString();
19684
19801
  return {
@@ -19692,7 +19809,7 @@ var makerRepayFromSavingsSubData = {
19692
19809
  var liquityRepayFromSavingsSubData = {
19693
19810
  decode(subData) {
19694
19811
  var weiRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[1]);
19695
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(weiRatio);
19812
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(weiRatio);
19696
19813
  return {
19697
19814
  targetRatio
19698
19815
  };
@@ -19700,13 +19817,13 @@ var liquityRepayFromSavingsSubData = {
19700
19817
  };
19701
19818
  var makerCloseSubData = {
19702
19819
  encode(vaultId, closeToAssetAddr, chainId, daiAddr, mcdCdpManagerAddr) {
19703
- var _daiAddr = daiAddr || (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfo)('DAI', chainId).address;
19820
+ var _daiAddr = daiAddr || (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfo)('DAI', chainId).address;
19704
19821
  // @ts-ignore // TODO - this requires change in @defisaver/tokens
19705
- var _mcdCdpManagerAddr = mcdCdpManagerAddr || (0,_defisaver_sdk__WEBPACK_IMPORTED_MODULE_3__.otherAddresses)(chainId).McdCdpManager;
19822
+ var _mcdCdpManagerAddr = mcdCdpManagerAddr || (0,_defisaver_sdk__WEBPACK_IMPORTED_MODULE_4__.otherAddresses)(chainId).McdCdpManager;
19706
19823
  var vaultIdEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', vaultId.toString());
19707
19824
  var daiAddrEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', _daiAddr);
19708
19825
  var mcdManagerAddrEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', _mcdCdpManagerAddr);
19709
- if ((0,_utils__WEBPACK_IMPORTED_MODULE_6__.compareAddresses)(closeToAssetAddr, _daiAddr)) {
19826
+ if ((0,_utils__WEBPACK_IMPORTED_MODULE_7__.compareAddresses)(closeToAssetAddr, _daiAddr)) {
19710
19827
  // Close to DAI strategy
19711
19828
  return [vaultIdEncoded, daiAddrEncoded, mcdManagerAddrEncoded];
19712
19829
  }
@@ -19729,7 +19846,7 @@ var makerLeverageManagementSubData = {
19729
19846
  decode: subData => {
19730
19847
  var vaultId = +web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[0]).toString();
19731
19848
  var weiRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[1]);
19732
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(weiRatio);
19849
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(weiRatio);
19733
19850
  return {
19734
19851
  vaultId,
19735
19852
  targetRatio
@@ -19739,7 +19856,7 @@ var makerLeverageManagementSubData = {
19739
19856
  var liquityLeverageManagementSubData = {
19740
19857
  decode: subData => {
19741
19858
  var weiRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[1]);
19742
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(weiRatio);
19859
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(weiRatio);
19743
19860
  return {
19744
19861
  targetRatio
19745
19862
  };
@@ -19747,11 +19864,11 @@ var liquityLeverageManagementSubData = {
19747
19864
  };
19748
19865
  var liquityCloseSubData = {
19749
19866
  encode(closeToAssetAddr) {
19750
- var chainId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _types_enums__WEBPACK_IMPORTED_MODULE_4__.ChainId.Ethereum;
19867
+ var chainId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _types_enums__WEBPACK_IMPORTED_MODULE_5__.ChainId.Ethereum;
19751
19868
  var collAddr = arguments.length > 2 ? arguments[2] : undefined;
19752
19869
  var debtAddr = arguments.length > 3 ? arguments[3] : undefined;
19753
- var _collAddr = collAddr || (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfo)('WETH', chainId).address;
19754
- var _debtAddr = debtAddr || (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfo)('LUSD', chainId).address;
19870
+ var _collAddr = collAddr || (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfo)('WETH', chainId).address;
19871
+ var _debtAddr = debtAddr || (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfo)('LUSD', chainId).address;
19755
19872
  var collAddrEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', _collAddr);
19756
19873
  var debtAddrEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', _debtAddr);
19757
19874
  // if (compareAddresses(closeToAssetAddr, _debtAddr)) { // Closing to debt strategy was not implemented, but it should be in the future
@@ -19778,7 +19895,7 @@ var aaveV2LeverageManagementSubData = {
19778
19895
  },
19779
19896
  decode(subData) {
19780
19897
  var ratioWei = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[1]);
19781
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(ratioWei);
19898
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(ratioWei);
19782
19899
  return {
19783
19900
  targetRatio
19784
19901
  };
@@ -19788,7 +19905,7 @@ var aaveV3LeverageManagementSubData = {
19788
19905
  // TODO encode?
19789
19906
  decode(subData) {
19790
19907
  var ratioWei = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[0]);
19791
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(ratioWei);
19908
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(ratioWei);
19792
19909
  return {
19793
19910
  targetRatio
19794
19911
  };
@@ -19796,7 +19913,7 @@ var aaveV3LeverageManagementSubData = {
19796
19913
  };
19797
19914
  var aaveV3QuotePriceSubData = {
19798
19915
  encode(collAsset, collAssetId, debtAsset, debtAssetId) {
19799
- var nullAddress = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : _constants__WEBPACK_IMPORTED_MODULE_5__.ZERO_ADDRESS;
19916
+ var nullAddress = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : _constants__WEBPACK_IMPORTED_MODULE_6__.ZERO_ADDRESS;
19800
19917
  var encodedColl = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', collAsset);
19801
19918
  var encodedCollId = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint8', collAssetId);
19802
19919
  var encodedDebt = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', debtAsset);
@@ -19825,7 +19942,7 @@ var compoundV2LeverageManagementSubData = {
19825
19942
  },
19826
19943
  decode(subData) {
19827
19944
  var weiRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[0]);
19828
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(weiRatio);
19945
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(weiRatio);
19829
19946
  return {
19830
19947
  targetRatio
19831
19948
  };
@@ -19839,7 +19956,7 @@ var compoundV3LeverageManagementSubData = {
19839
19956
  },
19840
19957
  decode(subData) {
19841
19958
  var weiRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[3]);
19842
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(weiRatio);
19959
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(weiRatio);
19843
19960
  return {
19844
19961
  targetRatio
19845
19962
  };
@@ -19859,7 +19976,7 @@ var compoundV3L2LeverageManagementSubData = {
19859
19976
  },
19860
19977
  decode(subData) {
19861
19978
  var ratioWei = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[3]);
19862
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(ratioWei);
19979
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(ratioWei);
19863
19980
  return {
19864
19981
  targetRatio
19865
19982
  };
@@ -19867,13 +19984,13 @@ var compoundV3L2LeverageManagementSubData = {
19867
19984
  };
19868
19985
  var morphoAaveV2LeverageManagementSubData = {
19869
19986
  encode(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
19870
- return [(0,_utils__WEBPACK_IMPORTED_MODULE_6__.ratioPercentageToWei)(triggerRepayRatio), (0,_utils__WEBPACK_IMPORTED_MODULE_6__.ratioPercentageToWei)(triggerBoostRatio), (0,_utils__WEBPACK_IMPORTED_MODULE_6__.ratioPercentageToWei)(targetBoostRatio), (0,_utils__WEBPACK_IMPORTED_MODULE_6__.ratioPercentageToWei)(targetRepayRatio),
19987
+ return [(0,_utils__WEBPACK_IMPORTED_MODULE_7__.ratioPercentageToWei)(triggerRepayRatio), (0,_utils__WEBPACK_IMPORTED_MODULE_7__.ratioPercentageToWei)(triggerBoostRatio), (0,_utils__WEBPACK_IMPORTED_MODULE_7__.ratioPercentageToWei)(targetBoostRatio), (0,_utils__WEBPACK_IMPORTED_MODULE_7__.ratioPercentageToWei)(targetRepayRatio),
19871
19988
  // @ts-ignore
19872
19989
  boostEnabled];
19873
19990
  },
19874
19991
  decode(subData) {
19875
19992
  var ratioWei = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint128', subData[1]);
19876
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(ratioWei);
19993
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(ratioWei);
19877
19994
  return {
19878
19995
  targetRatio
19879
19996
  };
@@ -19898,11 +20015,11 @@ var liquityPaybackUsingChickenBondSubData = {
19898
20015
  * @param chainId
19899
20016
  */
19900
20017
  encode: function encode(sourceId, sourceType) {
19901
- var chainId = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _types_enums__WEBPACK_IMPORTED_MODULE_4__.ChainId.Ethereum;
20018
+ var chainId = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _types_enums__WEBPACK_IMPORTED_MODULE_5__.ChainId.Ethereum;
19902
20019
  var sourceIdEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', sourceId);
19903
20020
  var sourceTypeEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', sourceType);
19904
- var lusdAddressEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfo)('LUSD', chainId).address);
19905
- var bLusdAddressEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfo)('bLUSD', chainId).address);
20021
+ var lusdAddressEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfo)('LUSD', chainId).address);
20022
+ var bLusdAddressEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfo)('bLUSD', chainId).address);
19906
20023
  return [sourceIdEncoded, sourceTypeEncoded, lusdAddressEncoded, bLusdAddressEncoded];
19907
20024
  },
19908
20025
  decode: subData => {
@@ -19925,7 +20042,7 @@ var exchangeDcaSubData = {
19925
20042
  decode: (subData, chainId) => {
19926
20043
  var fromToken = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[0]).toString();
19927
20044
  var toToken = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[1]).toString();
19928
- var amount = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.assetAmountInEth)(web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[2]).toString(), (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfoByAddress)(fromToken, chainId).symbol);
20045
+ var amount = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.assetAmountInEth)(web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[2]).toString(), (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfoByAddress)(fromToken, chainId).symbol);
19929
20046
  var interval = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[3]).toString();
19930
20047
  return {
19931
20048
  fromToken,
@@ -19942,7 +20059,7 @@ var exchangeLimitOrderSubData = {
19942
20059
  decode: (subData, chainId) => {
19943
20060
  var fromToken = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[0]).toString();
19944
20061
  var toToken = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[1]).toString();
19945
- var amount = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.assetAmountInEth)(web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[2]).toString(), (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfoByAddress)(fromToken, chainId).symbol);
20062
+ var amount = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.assetAmountInEth)(web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[2]).toString(), (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfoByAddress)(fromToken, chainId).symbol);
19946
20063
  return {
19947
20064
  fromToken,
19948
20065
  toToken,
@@ -19954,7 +20071,7 @@ var sparkLeverageManagementSubData = {
19954
20071
  // TODO encode?
19955
20072
  decode(subData) {
19956
20073
  var ratioWei = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[0]);
19957
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(ratioWei);
20074
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(ratioWei);
19958
20075
  return {
19959
20076
  targetRatio
19960
20077
  };
@@ -19962,7 +20079,7 @@ var sparkLeverageManagementSubData = {
19962
20079
  };
19963
20080
  var sparkQuotePriceSubData = {
19964
20081
  encode(collAsset, collAssetId, debtAsset, debtAssetId) {
19965
- var nullAddress = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : _constants__WEBPACK_IMPORTED_MODULE_5__.ZERO_ADDRESS;
20082
+ var nullAddress = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : _constants__WEBPACK_IMPORTED_MODULE_6__.ZERO_ADDRESS;
19966
20083
  var encodedColl = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', collAsset);
19967
20084
  var encodedCollId = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint8', collAssetId);
19968
20085
  var encodedDebt = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', debtAsset);
@@ -19985,17 +20102,17 @@ var sparkQuotePriceSubData = {
19985
20102
  };
19986
20103
  var liquityDsrPaybackSubData = {
19987
20104
  encode: targetRatio => {
19988
- var daiAddress = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfo)('DAI').address;
19989
- var lusdAddress = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfo)('LUSD').address;
19990
- var ratioStateEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint8', _types_enums__WEBPACK_IMPORTED_MODULE_4__.RatioState.UNDER);
19991
- var targetRatioEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', (0,_utils__WEBPACK_IMPORTED_MODULE_6__.ratioPercentageToWei)(targetRatio));
20105
+ var daiAddress = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfo)('DAI').address;
20106
+ var lusdAddress = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfo)('LUSD').address;
20107
+ var ratioStateEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint8', _types_enums__WEBPACK_IMPORTED_MODULE_5__.RatioState.UNDER);
20108
+ var targetRatioEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', (0,_utils__WEBPACK_IMPORTED_MODULE_7__.ratioPercentageToWei)(targetRatio));
19992
20109
  var daiAddressEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', daiAddress);
19993
20110
  var lusdAddressEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', lusdAddress);
19994
20111
  return [ratioStateEncoded, targetRatioEncoded, daiAddressEncoded, lusdAddressEncoded];
19995
20112
  },
19996
20113
  decode: subData => {
19997
20114
  var weiRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[1]);
19998
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(weiRatio);
20115
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(weiRatio);
19999
20116
  return {
20000
20117
  targetRatio
20001
20118
  };
@@ -20003,17 +20120,17 @@ var liquityDsrPaybackSubData = {
20003
20120
  };
20004
20121
  var liquityDsrSupplySubData = {
20005
20122
  encode: targetRatio => {
20006
- var daiAddress = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfo)('DAI').address;
20007
- var wethAddress = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfo)('WETH').address;
20008
- var ratioStateEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint8', _types_enums__WEBPACK_IMPORTED_MODULE_4__.RatioState.UNDER);
20009
- var targetRatioEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', (0,_utils__WEBPACK_IMPORTED_MODULE_6__.ratioPercentageToWei)(targetRatio));
20123
+ var daiAddress = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfo)('DAI').address;
20124
+ var wethAddress = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfo)('WETH').address;
20125
+ var ratioStateEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint8', _types_enums__WEBPACK_IMPORTED_MODULE_5__.RatioState.UNDER);
20126
+ var targetRatioEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', (0,_utils__WEBPACK_IMPORTED_MODULE_7__.ratioPercentageToWei)(targetRatio));
20010
20127
  var daiAddressEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', daiAddress);
20011
20128
  var wethAddressEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', wethAddress);
20012
20129
  return [ratioStateEncoded, targetRatioEncoded, daiAddressEncoded, wethAddressEncoded];
20013
20130
  },
20014
20131
  decode: subData => {
20015
20132
  var weiRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[1]);
20016
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(weiRatio);
20133
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(weiRatio);
20017
20134
  return {
20018
20135
  targetRatio
20019
20136
  };
@@ -20021,11 +20138,11 @@ var liquityDsrSupplySubData = {
20021
20138
  };
20022
20139
  var liquityDebtInFrontRepaySubData = {
20023
20140
  encode: targetRatioIncrease => {
20024
- var wethAddress = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfo)('WETH').address;
20025
- var lusdAddress = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__.getAssetInfo)('LUSD').address;
20141
+ var wethAddress = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfo)('WETH').address;
20142
+ var lusdAddress = (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_3__.getAssetInfo)('LUSD').address;
20026
20143
  var wethAddressEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', wethAddress);
20027
20144
  var lusdAddressEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', lusdAddress);
20028
- var targetRatioIncreaseEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', (0,_utils__WEBPACK_IMPORTED_MODULE_6__.ratioPercentageToWei)(targetRatioIncrease));
20145
+ var targetRatioIncreaseEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', (0,_utils__WEBPACK_IMPORTED_MODULE_7__.ratioPercentageToWei)(targetRatioIncrease));
20029
20146
  var withdrawIdEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint8', 1); // withdraw - 1
20030
20147
  var paybackIdEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint8', 0); // payback - 0
20031
20148
 
@@ -20033,7 +20150,7 @@ var liquityDebtInFrontRepaySubData = {
20033
20150
  },
20034
20151
  decode: subData => {
20035
20152
  var weiRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[2]);
20036
- var targetRatioIncrease = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(weiRatio);
20153
+ var targetRatioIncrease = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(weiRatio);
20037
20154
  return {
20038
20155
  targetRatioIncrease
20039
20156
  };
@@ -20043,7 +20160,7 @@ var crvUSDLeverageManagementSubData = {
20043
20160
  encode: (controllerAddr, ratioState, targetRatio, collTokenAddr, crvUSDAddr) => {
20044
20161
  var controllerAddrEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', controllerAddr);
20045
20162
  var ratioStateEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint8', ratioState);
20046
- var targetRatioEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', (0,_utils__WEBPACK_IMPORTED_MODULE_6__.ratioPercentageToWei)(targetRatio));
20163
+ var targetRatioEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', (0,_utils__WEBPACK_IMPORTED_MODULE_7__.ratioPercentageToWei)(targetRatio));
20047
20164
  var collTokenAddrEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', collTokenAddr);
20048
20165
  var crvUSDAddrEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', crvUSDAddr);
20049
20166
  return [controllerAddrEncoded, ratioStateEncoded, targetRatioEncoded, collTokenAddrEncoded, crvUSDAddrEncoded];
@@ -20051,24 +20168,48 @@ var crvUSDLeverageManagementSubData = {
20051
20168
  decode: subData => {
20052
20169
  var controller = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[0]);
20053
20170
  var weiRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[2]);
20054
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(weiRatio);
20171
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(weiRatio);
20055
20172
  return {
20056
20173
  controller,
20057
20174
  targetRatio
20058
20175
  };
20059
20176
  }
20060
20177
  };
20178
+ var crvUSDPaybackSubData = {
20179
+ encode: (controllerAddr, addressToPullTokensFrom, positionOwner, paybackAmount, crvUSDAddr) => {
20180
+ var controllerAddrEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', controllerAddr);
20181
+ var addressToPullTokensFromEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', addressToPullTokensFrom);
20182
+ var positionOwnerEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', positionOwner);
20183
+ var paybackAmountEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', (0,web3_utils__WEBPACK_IMPORTED_MODULE_2__.toWei)(paybackAmount, 'ether'));
20184
+ var crvUSDAddrEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', crvUSDAddr);
20185
+ return [controllerAddrEncoded, addressToPullTokensFromEncoded, positionOwnerEncoded, paybackAmountEncoded, crvUSDAddrEncoded];
20186
+ },
20187
+ decode: subData => {
20188
+ var controller = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[0]);
20189
+ var addressToPullTokensFrom = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[1]);
20190
+ var positionOwner = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[2]);
20191
+ var weiPaybackAmount = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[3]);
20192
+ var paybackAmount = (0,web3_utils__WEBPACK_IMPORTED_MODULE_2__.fromWei)(weiPaybackAmount, 'ether');
20193
+ return {
20194
+ controller,
20195
+ addressToPullTokensFrom,
20196
+ positionOwner,
20197
+ paybackAmount
20198
+ };
20199
+ }
20200
+ };
20061
20201
  var morphoBlueLeverageManagementSubData = {
20062
- encode: (loanToken, collToken, oracle, irm, lltv, ratioState, targetRatio, user) => {
20202
+ encode: (loanToken, collToken, oracle, irm, lltv, ratioState, targetRatio, user, isEOA) => {
20063
20203
  var loanTokenEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', loanToken);
20064
20204
  var collTokenEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', collToken);
20065
20205
  var oracleEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', oracle);
20066
20206
  var irmEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', irm);
20067
20207
  var lltvEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', lltv);
20068
20208
  var ratioStateEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint8', ratioState);
20069
- var targetRatioEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', (0,_utils__WEBPACK_IMPORTED_MODULE_6__.ratioPercentageToWei)(targetRatio));
20209
+ var targetRatioEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', (0,_utils__WEBPACK_IMPORTED_MODULE_7__.ratioPercentageToWei)(targetRatio));
20070
20210
  var userEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', user);
20071
- return [loanTokenEncoded, collTokenEncoded, oracleEncoded, irmEncoded, lltvEncoded, ratioStateEncoded, targetRatioEncoded, userEncoded];
20211
+ var isEOAEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('bool', isEOA);
20212
+ return [loanTokenEncoded, collTokenEncoded, oracleEncoded, irmEncoded, lltvEncoded, ratioStateEncoded, targetRatioEncoded, userEncoded, isEOAEncoded];
20072
20213
  },
20073
20214
  decode: subData => {
20074
20215
  var loanToken = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[0]);
@@ -20078,7 +20219,7 @@ var morphoBlueLeverageManagementSubData = {
20078
20219
  var lltv = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[4]);
20079
20220
  var weiRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[6]);
20080
20221
  var user = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[7]);
20081
- var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_6__.weiToRatioPercentage)(weiRatio);
20222
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(weiRatio);
20082
20223
  return {
20083
20224
  loanToken,
20084
20225
  collToken,
@@ -20090,6 +20231,35 @@ var morphoBlueLeverageManagementSubData = {
20090
20231
  };
20091
20232
  }
20092
20233
  };
20234
+ var aaveV3OpenOrderSubData = {
20235
+ encode(collAsset, collAssetId, debtAsset, debtAssetId, marketAddr, targetRatio) {
20236
+ var encodedColl = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', collAsset);
20237
+ var encodedCollId = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint8', collAssetId);
20238
+ var encodedDebt = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', debtAsset);
20239
+ var encodedDebtId = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint8', debtAssetId);
20240
+ var encodedMarket = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('address', marketAddr);
20241
+ var encodedTargetRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('uint256', (0,_utils__WEBPACK_IMPORTED_MODULE_7__.ratioPercentageToWei)(targetRatio));
20242
+ var useOnBehalfEncoded = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().encodeParameter('bool', false);
20243
+ return [encodedColl, encodedCollId, encodedDebt, encodedDebtId, encodedMarket, encodedTargetRatio, useOnBehalfEncoded];
20244
+ },
20245
+ decode(subData) {
20246
+ var collAsset = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[0]);
20247
+ var collAssetId = Number(web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint8', subData[1]));
20248
+ var debtAsset = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[2]);
20249
+ var debtAssetId = Number(web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint8', subData[3]));
20250
+ var marketAddr = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('address', subData[4]);
20251
+ var weiRatio = web3_eth_abi__WEBPACK_IMPORTED_MODULE_1___default().decodeParameter('uint256', subData[5]);
20252
+ var targetRatio = (0,_utils__WEBPACK_IMPORTED_MODULE_7__.weiToRatioPercentage)(weiRatio);
20253
+ return {
20254
+ collAsset,
20255
+ collAssetId,
20256
+ debtAsset,
20257
+ debtAssetId,
20258
+ marketAddr,
20259
+ targetRatio
20260
+ };
20261
+ }
20262
+ };
20093
20263
 
20094
20264
  /***/ }),
20095
20265
  /* 31 */
@@ -33149,6 +33319,7 @@ __webpack_require__.r(__webpack_exports__);
33149
33319
  /* harmony export */ compoundV2RatioTrigger: () => (/* binding */ compoundV2RatioTrigger),
33150
33320
  /* harmony export */ compoundV3RatioTrigger: () => (/* binding */ compoundV3RatioTrigger),
33151
33321
  /* harmony export */ crvUSDRatioTrigger: () => (/* binding */ crvUSDRatioTrigger),
33322
+ /* harmony export */ crvUsdHealthRatioTrigger: () => (/* binding */ crvUsdHealthRatioTrigger),
33152
33323
  /* harmony export */ curveUsdBorrowRateTrigger: () => (/* binding */ curveUsdBorrowRateTrigger),
33153
33324
  /* harmony export */ curveUsdSoftLiquidationTrigger: () => (/* binding */ curveUsdSoftLiquidationTrigger),
33154
33325
  /* harmony export */ exchangeOffchainPriceTrigger: () => (/* binding */ exchangeOffchainPriceTrigger),
@@ -33491,6 +33662,20 @@ var crvUSDRatioTrigger = {
33491
33662
  };
33492
33663
  }
33493
33664
  };
33665
+ var crvUsdHealthRatioTrigger = {
33666
+ encode(owner, controller, ratioPercentage) {
33667
+ var ratioWei = (0,_utils__WEBPACK_IMPORTED_MODULE_4__.ratioPercentageToWei)(ratioPercentage);
33668
+ return [web3_eth_abi__WEBPACK_IMPORTED_MODULE_2___default().encodeParameters(['address', 'address', 'uint256'], [owner, controller, ratioWei])];
33669
+ },
33670
+ decode(triggerData) {
33671
+ var decodedData = web3_eth_abi__WEBPACK_IMPORTED_MODULE_2___default().decodeParameters(['address', 'address', 'uint256'], triggerData[0]);
33672
+ return {
33673
+ owner: decodedData[0],
33674
+ controller: decodedData[1],
33675
+ ratio: (0,_utils__WEBPACK_IMPORTED_MODULE_4__.weiToRatioPercentage)(decodedData[2])
33676
+ };
33677
+ }
33678
+ };
33494
33679
  var morphoBlueRatioTrigger = {
33495
33680
  encode(marketId,
33496
33681
  // bytes32
@@ -33754,6 +33939,28 @@ var aaveV3Encode = {
33754
33939
  } = triggerData;
33755
33940
  var triggerDataEncoded = _triggerService__WEBPACK_IMPORTED_MODULE_5__.aaveV3QuotePriceWithMaximumGasPriceTrigger.encode(baseTokenAddress, quoteTokenAddress, price, ratioState, maximumGasPrice);
33756
33941
  return [strategyOrBundleId, isBundle, triggerDataEncoded, subDataEncoded];
33942
+ },
33943
+ openOrder(strategyOrBundleId) {
33944
+ var isBundle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
33945
+ var triggerData = arguments.length > 2 ? arguments[2] : undefined;
33946
+ var subData = arguments.length > 3 ? arguments[3] : undefined;
33947
+ var {
33948
+ collAsset,
33949
+ collAssetId,
33950
+ debtAsset,
33951
+ debtAssetId,
33952
+ marketAddr,
33953
+ targetRatio
33954
+ } = subData;
33955
+ var subDataEncoded = _subDataService__WEBPACK_IMPORTED_MODULE_4__.aaveV3OpenOrderSubData.encode(collAsset, collAssetId, debtAsset, debtAssetId, marketAddr, targetRatio);
33956
+ var {
33957
+ baseTokenAddress,
33958
+ quoteTokenAddress,
33959
+ price,
33960
+ state
33961
+ } = triggerData;
33962
+ var triggerDataEncoded = _triggerService__WEBPACK_IMPORTED_MODULE_5__.aaveV3QuotePriceTrigger.encode(baseTokenAddress, quoteTokenAddress, price, state);
33963
+ return [strategyOrBundleId, isBundle, triggerDataEncoded, subDataEncoded];
33757
33964
  }
33758
33965
  };
33759
33966
  var compoundV2Encode = {
@@ -33828,15 +34035,24 @@ var crvUSDEncode = {
33828
34035
  var strategyOrBundleId = ratioState === _types_enums__WEBPACK_IMPORTED_MODULE_2__.RatioState.OVER ? _types_enums__WEBPACK_IMPORTED_MODULE_2__.Bundles.MainnetIds.CRVUSD_BOOST : _types_enums__WEBPACK_IMPORTED_MODULE_2__.Bundles.MainnetIds.CRVUSD_REPAY;
33829
34036
  var isBundle = true;
33830
34037
  return [strategyOrBundleId, isBundle, triggerData, subData];
34038
+ },
34039
+ payback(proxyAddress, addressToPullTokensFrom, positionOwner, paybackAmount, crvUSDAddr, controllerAddr, minHealthRatio) {
34040
+ var subData = _subDataService__WEBPACK_IMPORTED_MODULE_4__.crvUSDPaybackSubData.encode(controllerAddr, addressToPullTokensFrom, positionOwner, paybackAmount, crvUSDAddr);
34041
+ var triggerData = _triggerService__WEBPACK_IMPORTED_MODULE_5__.crvUsdHealthRatioTrigger.encode(proxyAddress, controllerAddr, minHealthRatio);
34042
+ var strategyId = _types_enums__WEBPACK_IMPORTED_MODULE_2__.Strategies.MainnetIds.CURVEUSD_PAYBACK;
34043
+ var isBundle = false;
34044
+ return [strategyId, isBundle, triggerData, subData];
33831
34045
  }
33832
34046
  };
33833
34047
  var morphoBlueEncode = {
33834
- leverageManagement(marketId, loanToken, collToken, oracle, irm, lltv, ratioState, targetRatio, triggerRatio, user) {
33835
- var subData = _subDataService__WEBPACK_IMPORTED_MODULE_4__.morphoBlueLeverageManagementSubData.encode(loanToken, collToken, oracle, irm, lltv, ratioState, targetRatio, user);
34048
+ leverageManagement(marketId, loanToken, collToken, oracle, irm, lltv, ratioState, targetRatio, triggerRatio, user, isEOA) {
34049
+ var subData = _subDataService__WEBPACK_IMPORTED_MODULE_4__.morphoBlueLeverageManagementSubData.encode(loanToken, collToken, oracle, irm, lltv, ratioState, targetRatio, user, isEOA);
33836
34050
  var triggerData = _triggerService__WEBPACK_IMPORTED_MODULE_5__.morphoBlueRatioTrigger.encode(marketId, user, triggerRatio, ratioState);
33837
34051
 
33838
34052
  // over is boost, under is repay
33839
- var strategyOrBundleId = ratioState === _types_enums__WEBPACK_IMPORTED_MODULE_2__.RatioState.OVER ? _types_enums__WEBPACK_IMPORTED_MODULE_2__.Bundles.MainnetIds.MORPHO_BLUE_BOOST : _types_enums__WEBPACK_IMPORTED_MODULE_2__.Bundles.MainnetIds.MORPHO_BLUE_REPAY;
34053
+ var isBoost = ratioState === _types_enums__WEBPACK_IMPORTED_MODULE_2__.RatioState.OVER;
34054
+ var strategyOrBundleId;
34055
+ if (isBoost) strategyOrBundleId = isEOA ? _types_enums__WEBPACK_IMPORTED_MODULE_2__.Bundles.MainnetIds.MORPHO_BLUE_EOA_BOOST : _types_enums__WEBPACK_IMPORTED_MODULE_2__.Bundles.MainnetIds.MORPHO_BLUE_BOOST;else strategyOrBundleId = isEOA ? _types_enums__WEBPACK_IMPORTED_MODULE_2__.Bundles.MainnetIds.MORPHO_BLUE_EOA_REPAY : _types_enums__WEBPACK_IMPORTED_MODULE_2__.Bundles.MainnetIds.MORPHO_BLUE_REPAY;
33840
34056
  var isBundle = true;
33841
34057
  return [strategyOrBundleId, isBundle, triggerData, subData];
33842
34058
  }