@defisaver/automation-sdk 3.3.14 → 3.3.15

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.
@@ -92,7 +92,7 @@ function parseMakerTrailingStop(position, parseData) {
92
92
  }
93
93
  function parseMakerLeverageManagement(position, parseData) {
94
94
  const _position = (0, lodash_1.cloneDeep)(position);
95
- const { subStruct, subId } = parseData.subscriptionEventData;
95
+ const { subStruct, subId, subHash } = parseData.subscriptionEventData;
96
96
  const { isEnabled } = parseData.strategiesSubsData;
97
97
  const triggerData = triggerService.makerRatioTrigger.decode(subStruct.triggerData);
98
98
  const subData = subDataService.makerLeverageManagementSubData.decode(subStruct.subData);
@@ -104,9 +104,10 @@ function parseMakerLeverageManagement(position, parseData) {
104
104
  _position.specific = {
105
105
  triggerRepayRatio: triggerData.ratio,
106
106
  targetRepayRatio: subData.targetRatio,
107
- repayEnabled: true,
107
+ repayEnabled: isEnabled,
108
108
  subId1: Number(subId),
109
109
  mergeWithId: enums_1.Strategies.Identifiers.Boost,
110
+ subHashRepay: subHash,
110
111
  };
111
112
  }
112
113
  else {
@@ -116,6 +117,7 @@ function parseMakerLeverageManagement(position, parseData) {
116
117
  boostEnabled: isEnabled,
117
118
  subId2: Number(subId),
118
119
  mergeId: enums_1.Strategies.Identifiers.Boost,
120
+ subHashBoost: subHash,
119
121
  };
120
122
  }
121
123
  _position.strategy.strategyId = enums_1.Strategies.IdOverrides.LeverageManagement;
@@ -155,7 +157,7 @@ function parseLiquityTrailingStop(position, parseData) {
155
157
  }
156
158
  function parseAaveV2LeverageManagement(position, parseData) {
157
159
  const _position = (0, lodash_1.cloneDeep)(position);
158
- const { subStruct, subId } = parseData.subscriptionEventData;
160
+ const { subStruct, subId, subHash } = parseData.subscriptionEventData;
159
161
  const { isEnabled } = parseData.strategiesSubsData;
160
162
  const triggerData = triggerService.aaveV2RatioTrigger.decode(subStruct.triggerData);
161
163
  const subData = subDataService.aaveV2LeverageManagementSubData.decode(subStruct.subData);
@@ -167,9 +169,10 @@ function parseAaveV2LeverageManagement(position, parseData) {
167
169
  _position.specific = {
168
170
  triggerRepayRatio: triggerData.ratio,
169
171
  targetRepayRatio: subData.targetRatio,
170
- repayEnabled: true,
172
+ repayEnabled: isEnabled,
171
173
  subId1: Number(subId),
172
174
  mergeWithId: enums_1.Strategies.Identifiers.Boost,
175
+ subHashRepay: subHash,
173
176
  };
174
177
  }
175
178
  else {
@@ -179,6 +182,7 @@ function parseAaveV2LeverageManagement(position, parseData) {
179
182
  boostEnabled: isEnabled,
180
183
  subId2: Number(subId),
181
184
  mergeId: enums_1.Strategies.Identifiers.Boost,
185
+ subHashBoost: subHash,
182
186
  };
183
187
  }
184
188
  _position.strategy.strategyId = enums_1.Strategies.IdOverrides.LeverageManagement;
@@ -416,7 +420,7 @@ function parseAaveV4CollateralSwitch(position, parseData) {
416
420
  }
417
421
  function parseMorphoAaveV2LeverageManagement(position, parseData) {
418
422
  const _position = (0, lodash_1.cloneDeep)(position);
419
- const { subStruct, subId } = parseData.subscriptionEventData;
423
+ const { subStruct, subId, subHash } = parseData.subscriptionEventData;
420
424
  const { isEnabled } = parseData.strategiesSubsData;
421
425
  const triggerData = triggerService.morphoAaveV2RatioTrigger.decode(subStruct.triggerData);
422
426
  const subData = subDataService.morphoAaveV2LeverageManagementSubData.decode(subStruct.subData);
@@ -428,9 +432,10 @@ function parseMorphoAaveV2LeverageManagement(position, parseData) {
428
432
  _position.specific = {
429
433
  triggerRepayRatio: triggerData.ratio,
430
434
  targetRepayRatio: subData.targetRatio,
431
- repayEnabled: true,
435
+ repayEnabled: isEnabled,
432
436
  subId1: Number(subId),
433
437
  mergeWithId: enums_1.Strategies.Identifiers.Boost,
438
+ subHashRepay: subHash,
434
439
  };
435
440
  }
436
441
  else {
@@ -440,6 +445,7 @@ function parseMorphoAaveV2LeverageManagement(position, parseData) {
440
445
  boostEnabled: isEnabled,
441
446
  subId2: Number(subId),
442
447
  mergeId: enums_1.Strategies.Identifiers.Boost,
448
+ subHashBoost: subHash,
443
449
  };
444
450
  }
445
451
  _position.strategy.strategyId = enums_1.Strategies.IdOverrides.LeverageManagement;
@@ -472,7 +478,7 @@ function parseAaveV3CloseOnPriceWithMaximumGasPrice(position, parseData) {
472
478
  }
473
479
  function parseCompoundV2LeverageManagement(position, parseData) {
474
480
  const _position = (0, lodash_1.cloneDeep)(position);
475
- const { subStruct, subId } = parseData.subscriptionEventData;
481
+ const { subStruct, subId, subHash } = parseData.subscriptionEventData;
476
482
  const { isEnabled } = parseData.strategiesSubsData;
477
483
  const triggerData = triggerService.compoundV2RatioTrigger.decode(subStruct.triggerData);
478
484
  const subData = subDataService.compoundV2LeverageManagementSubData.decode(subStruct.subData);
@@ -485,9 +491,10 @@ function parseCompoundV2LeverageManagement(position, parseData) {
485
491
  _position.specific = {
486
492
  triggerRepayRatio: triggerData.ratio,
487
493
  targetRepayRatio: subData.targetRatio,
488
- repayEnabled: true,
494
+ repayEnabled: isEnabled,
489
495
  subId1: Number(subId),
490
496
  mergeWithId: enums_1.Strategies.Identifiers.Boost,
497
+ subHashRepay: subHash,
491
498
  };
492
499
  }
493
500
  else {
@@ -497,6 +504,7 @@ function parseCompoundV2LeverageManagement(position, parseData) {
497
504
  boostEnabled: isEnabled,
498
505
  subId2: Number(subId),
499
506
  mergeId: enums_1.Strategies.Identifiers.Boost,
507
+ subHashBoost: subHash,
500
508
  };
501
509
  }
502
510
  const isEOA = _position.strategy.strategyId.includes('eoa');
@@ -505,11 +513,9 @@ function parseCompoundV2LeverageManagement(position, parseData) {
505
513
  }
506
514
  function parseCompoundV3LeverageManagement(position, parseData) {
507
515
  const _position = (0, lodash_1.cloneDeep)(position);
508
- const { subStruct, subId } = parseData.subscriptionEventData;
516
+ const { subStruct, subId, subHash } = parseData.subscriptionEventData;
509
517
  const { isEnabled } = parseData.strategiesSubsData;
510
- const subDataDecoder = position.chainId !== 1
511
- ? subDataService.compoundV3L2LeverageManagementSubData
512
- : subDataService.compoundV3LeverageManagementSubData;
518
+ const subDataDecoder = subDataService.compoundV3LeverageManagementSubDataWithoutSubProxy;
513
519
  const triggerData = triggerService.compoundV3RatioTrigger.decode(subStruct.triggerData);
514
520
  const subData = subDataDecoder.decode(subStruct.subData);
515
521
  _position.strategyData.decoded.triggerData = triggerData;
@@ -521,9 +527,10 @@ function parseCompoundV3LeverageManagement(position, parseData) {
521
527
  _position.specific = {
522
528
  triggerRepayRatio: triggerData.ratio,
523
529
  targetRepayRatio: subData.targetRatio,
524
- repayEnabled: true,
530
+ repayEnabled: isEnabled,
525
531
  subId1: Number(subId),
526
532
  mergeWithId: isEOA ? enums_1.Strategies.Identifiers.EoaBoost : enums_1.Strategies.Identifiers.Boost,
533
+ subHashRepay: subHash,
527
534
  };
528
535
  }
529
536
  else {
@@ -533,6 +540,7 @@ function parseCompoundV3LeverageManagement(position, parseData) {
533
540
  boostEnabled: isEnabled,
534
541
  subId2: Number(subId),
535
542
  mergeId: isEOA ? enums_1.Strategies.Identifiers.EoaBoost : enums_1.Strategies.Identifiers.Boost,
543
+ subHashBoost: subHash,
536
544
  };
537
545
  }
538
546
  _position.strategy.strategyId = isEOA ? enums_1.Strategies.IdOverrides.EoaLeverageManagement : enums_1.Strategies.IdOverrides.LeverageManagement;
@@ -620,7 +628,7 @@ function parseExchangeLimitOrder(position, parseData, chainId) {
620
628
  }
621
629
  function parseLiquityLeverageManagement(position, parseData) {
622
630
  const _position = (0, lodash_1.cloneDeep)(position);
623
- const { subStruct, subId } = parseData.subscriptionEventData;
631
+ const { subStruct, subId, subHash } = parseData.subscriptionEventData;
624
632
  const { isEnabled } = parseData.strategiesSubsData;
625
633
  const triggerData = triggerService.liquityRatioTrigger.decode(subStruct.triggerData);
626
634
  const subData = subDataService.liquityLeverageManagementSubData.decode(subStruct.subData);
@@ -632,9 +640,10 @@ function parseLiquityLeverageManagement(position, parseData) {
632
640
  _position.specific = {
633
641
  triggerRepayRatio: triggerData.ratio,
634
642
  targetRepayRatio: subData.targetRatio,
635
- repayEnabled: true,
643
+ repayEnabled: isEnabled,
636
644
  subId1: Number(subId),
637
645
  mergeWithId: enums_1.Strategies.Identifiers.Boost,
646
+ subHashRepay: subHash,
638
647
  };
639
648
  }
640
649
  else {
@@ -644,6 +653,7 @@ function parseLiquityLeverageManagement(position, parseData) {
644
653
  boostEnabled: isEnabled,
645
654
  subId2: Number(subId),
646
655
  mergeId: enums_1.Strategies.Identifiers.Boost,
656
+ subHashBoost: subHash,
647
657
  };
648
658
  }
649
659
  _position.strategy.strategyId = enums_1.Strategies.IdOverrides.LeverageManagement;
@@ -684,7 +694,7 @@ function parseLiquityV2LeverageManagement(position, parseData) {
684
694
  }
685
695
  function parseSparkLeverageManagement(position, parseData) {
686
696
  const _position = (0, lodash_1.cloneDeep)(position);
687
- const { subStruct, subId } = parseData.subscriptionEventData;
697
+ const { subStruct, subId, subHash } = parseData.subscriptionEventData;
688
698
  const { isEnabled } = parseData.strategiesSubsData;
689
699
  const triggerData = triggerService.sparkRatioTrigger.decode(subStruct.triggerData);
690
700
  const subData = subDataService.sparkLeverageManagementSubData.decode(subStruct.subData);
@@ -696,9 +706,10 @@ function parseSparkLeverageManagement(position, parseData) {
696
706
  _position.specific = {
697
707
  triggerRepayRatio: triggerData.ratio,
698
708
  targetRepayRatio: subData.targetRatio,
699
- repayEnabled: true,
709
+ repayEnabled: isEnabled,
700
710
  subId1: Number(subId),
701
711
  mergeWithId: enums_1.Strategies.Identifiers.Boost,
712
+ subHashRepay: subHash,
702
713
  };
703
714
  }
704
715
  else {
@@ -708,6 +719,7 @@ function parseSparkLeverageManagement(position, parseData) {
708
719
  boostEnabled: isEnabled,
709
720
  subId2: Number(subId),
710
721
  mergeId: enums_1.Strategies.Identifiers.Boost,
722
+ subHashBoost: subHash,
711
723
  };
712
724
  }
713
725
  _position.strategy.strategyId = enums_1.Strategies.IdOverrides.LeverageManagement;
@@ -890,6 +902,7 @@ function parseMorphoBlueLeverageManagementOnPrice(position, parseData) {
890
902
  debtAsset: subData.loanToken,
891
903
  price: triggerData.price,
892
904
  ratio: subData.targetRatio,
905
+ ratioState: triggerData.priceState,
893
906
  };
894
907
  return _position;
895
908
  }
@@ -5,14 +5,13 @@ export declare const makerEncode: {
5
5
  repayFromSavings(bundleId: StrategyOrBundleIds, vaultId: number, triggerRepayRatio: number, targetRepayRatio: number, isBundle?: boolean, chainId?: ChainId, daiAddr?: EthereumAddress, mcdCdpManagerAddr?: EthereumAddress): (boolean | string[] | Strategies.MainnetIds | Strategies.OptimismIds | Strategies.ArbitrumIds | Strategies.BaseIds | Bundles.MainnetIds | Bundles.OptimismIds | Bundles.ArbitrumIds | Bundles.BaseIds)[];
6
6
  closeOnPrice(vaultId: number, ratioState: RatioState, price: string, closeToAssetAddr: EthereumAddress, chainlinkCollAddress: EthereumAddress, chainId?: ChainId, daiAddr?: EthereumAddress, mcdCdpManagerAddr?: EthereumAddress): (boolean | string[] | Strategies.MainnetIds)[];
7
7
  trailingStop(vaultId: number, triggerPercentage: number, closeToAssetAddr: EthereumAddress, chainlinkCollAddress: EthereumAddress, roundId: number, chainId?: ChainId, daiAddr?: EthereumAddress, mcdCdpManagerAddr?: EthereumAddress): (boolean | string[] | Strategies.MainnetIds)[];
8
- leverageManagement(vaultId: number, triggerRepayRatio: string, triggerBoostRatio: string, targetBoostRatio: string, targetRepayRatio: string, boostEnabled: boolean): (string | number | boolean)[];
9
8
  leverageManagementWithoutSubProxy(vaultId: number, triggerRatio: number, targetRatio: number, ratioState: RatioState, isBoost: boolean, daiAddr?: EthereumAddress): (boolean | string[] | Bundles.MainnetIds)[];
10
9
  };
11
10
  export declare const liquityEncode: {
12
11
  closeOnPrice(priceOverOrUnder: RatioState, price: string, closeToAssetAddr: EthereumAddress, chainlinkCollAddress: EthereumAddress, chainId?: ChainId, collAddr?: EthereumAddress, debtAddr?: EthereumAddress): (boolean | string[] | Strategies.MainnetIds)[];
13
12
  trailingStop(triggerPercentage: number, closeToAssetAddr: EthereumAddress, chainlinkCollAddress: EthereumAddress, roundId: number, chainId?: ChainId, collAddr?: EthereumAddress, debtAddr?: EthereumAddress): (boolean | string[] | Strategies.MainnetIds)[];
14
13
  paybackFromChickenBondStrategySub(proxyAddress: EthereumAddress, ratio: number, sourceId: string, sourceType: number, ratioState?: RatioState): (boolean | string[] | Bundles.MainnetIds)[];
15
- leverageManagement(triggerRepayRatio: string, triggerBoostRatio: string, targetBoostRatio: string, targetRepayRatio: string, boostEnabled: boolean): (string | boolean)[];
14
+ leverageManagementWithoutSubProxy(strategyOrBundleId: number, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
16
15
  dsrPayback(proxyAddress: EthereumAddress, triggerRatio: number, targetRatio: number): (boolean | string[] | Strategies.MainnetIds)[];
17
16
  dsrSupply(proxyAddress: EthereumAddress, triggerRatio: number, targetRatio: number): (boolean | string[] | Strategies.MainnetIds)[];
18
17
  debtInFrontRepay(proxyAddress: EthereumAddress, debtInFrontMin: string, targetRatioIncrease: number): (boolean | string[] | Strategies.MainnetIds)[];
@@ -21,10 +20,9 @@ export declare const chickenBondsEncode: {
21
20
  rebond(bondId: number): string[];
22
21
  };
23
22
  export declare const aaveV2Encode: {
24
- leverageManagement(triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean): string[];
23
+ leverageManagementWithoutSubProxy(strategyOrBundleId: number, market: EthereumAddress, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
25
24
  };
26
25
  export declare const aaveV3Encode: {
27
- leverageManagement(triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean): string;
28
26
  closeToAsset(strategyOrBundleId: number, isBundle: boolean | undefined, triggerData: {
29
27
  baseTokenAddress: EthereumAddress;
30
28
  quoteTokenAddress: EthereumAddress;
@@ -67,25 +65,21 @@ export declare const aaveV3Encode: {
67
65
  collateralSwitch(strategyOrBundleId: number, fromAsset: EthereumAddress, fromAssetId: number, toAsset: EthereumAddress, toAssetId: number, marketAddr: EthereumAddress, amountToSwitch: string, baseTokenAddress: EthereumAddress, quoteTokenAddress: EthereumAddress, price: number, state: RatioState): (number | boolean | string[])[];
68
66
  };
69
67
  export declare const compoundV2Encode: {
70
- leverageManagement(triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean): string[];
68
+ leverageManagementWithoutSubProxy(strategyOrBundleId: number, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
71
69
  };
72
70
  export declare const compoundV3Encode: {
73
- leverageManagement(market: EthereumAddress, baseToken: EthereumAddress, triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean, isEOA: boolean): string[];
71
+ leverageManagementWithoutSubProxy(strategyOrBundleId: number, market: EthereumAddress, baseToken: EthereumAddress, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
74
72
  leverageManagementOnPrice(strategyOrBundleId: number, market: EthereumAddress, collToken: EthereumAddress, baseToken: EthereumAddress, targetRatio: number, price: number, priceState: RatioState, ratioState: RatioState, user: EthereumAddress): (number | boolean | string[])[];
75
73
  closeOnPrice(strategyOrBundleId: number, market: EthereumAddress, collToken: EthereumAddress, baseToken: EthereumAddress, stopLossPrice: number | undefined, stopLossType: CloseToAssetType | undefined, takeProfitPrice: number | undefined, takeProfitType: CloseToAssetType | undefined, user: EthereumAddress): (number | boolean | string[])[];
76
74
  };
77
- export declare const compoundV3L2Encode: {
78
- leverageManagement(market: EthereumAddress, baseToken: EthereumAddress, triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean, isEOA?: boolean): string;
79
- };
80
75
  export declare const morphoAaveV2Encode: {
81
76
  leverageManagement(triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean): string[];
82
77
  };
83
78
  export declare const exchangeEncode: {
84
79
  dca(fromToken: EthereumAddress, toToken: EthereumAddress, amount: string, timestamp: number, interval: number, network: ChainId): (boolean | string[] | Strategies.MainnetIds | Strategies.OptimismIds | Strategies.ArbitrumIds | Strategies.BaseIds)[];
85
- limitOrder(fromToken: EthereumAddress, toToken: EthereumAddress, amount: string, targetPrice: string, goodUntil: string | number, orderType: OrderType): string[];
80
+ limitOrderWithoutSubProxy(fromToken: EthereumAddress, toToken: EthereumAddress, amount: string, targetPrice: string, goodUntil: string | number, orderType: OrderType, fromTokenDecimals: number, toTokenDecimals: number, network: ChainId): (boolean | string[] | Strategies.MainnetIds | Strategies.OptimismIds | Strategies.ArbitrumIds | Strategies.BaseIds)[];
86
81
  };
87
82
  export declare const sparkEncode: {
88
- leverageManagement(triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean): string;
89
83
  leverageManagementOnPrice(strategyOrBundleId: number, isBundle: boolean | undefined, triggerData: {
90
84
  baseTokenAddr: EthereumAddress;
91
85
  quoteTokenAddr: EthereumAddress;
@@ -22,12 +22,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.aaveV4Encode = exports.fluidEncode = exports.liquityV2Encode = exports.morphoBlueEncode = exports.crvUSDEncode = exports.sparkEncode = exports.exchangeEncode = exports.morphoAaveV2Encode = exports.compoundV3L2Encode = exports.compoundV3Encode = exports.compoundV2Encode = exports.aaveV3Encode = exports.aaveV2Encode = exports.chickenBondsEncode = exports.liquityEncode = exports.makerEncode = void 0;
30
- const decimal_js_1 = __importDefault(require("decimal.js"));
26
+ exports.aaveV4Encode = exports.fluidEncode = exports.liquityV2Encode = exports.morphoBlueEncode = exports.crvUSDEncode = exports.sparkEncode = exports.exchangeEncode = exports.morphoAaveV2Encode = exports.compoundV3Encode = exports.compoundV2Encode = exports.aaveV3Encode = exports.aaveV2Encode = exports.chickenBondsEncode = exports.liquityEncode = exports.makerEncode = void 0;
31
27
  const tokens_1 = require("@defisaver/tokens");
32
28
  const enums_1 = require("../types/enums");
33
29
  const constants_1 = require("../constants");
@@ -60,16 +56,6 @@ exports.makerEncode = {
60
56
  const isBundle = false;
61
57
  return [strategyOrBundleId, isBundle, triggerData, subData];
62
58
  },
63
- leverageManagement(vaultId, triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
64
- return [
65
- vaultId,
66
- new decimal_js_1.default(triggerRepayRatio).mul(1e16).toString(),
67
- new decimal_js_1.default(triggerBoostRatio).mul(1e16).toString(),
68
- new decimal_js_1.default(targetBoostRatio).mul(1e16).toString(),
69
- new decimal_js_1.default(targetRepayRatio).mul(1e16).toString(),
70
- boostEnabled,
71
- ];
72
- },
73
59
  leverageManagementWithoutSubProxy(vaultId, triggerRatio, targetRatio, ratioState, isBoost, daiAddr) {
74
60
  const bundleId = isBoost ? enums_1.Bundles.MainnetIds.MAKER_BOOST : enums_1.Bundles.MainnetIds.MAKER_REPAY;
75
61
  const triggerData = triggerService.makerRatioTrigger.encode(vaultId, triggerRatio, ratioState);
@@ -107,14 +93,11 @@ exports.liquityEncode = {
107
93
  const isBundle = true;
108
94
  return [strategyId, isBundle, triggerData, subData];
109
95
  },
110
- leverageManagement(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
111
- return [
112
- new decimal_js_1.default(triggerRepayRatio).mul(1e16).toString(),
113
- new decimal_js_1.default(triggerBoostRatio).mul(1e16).toString(),
114
- new decimal_js_1.default(targetBoostRatio).mul(1e16).toString(),
115
- new decimal_js_1.default(targetRepayRatio).mul(1e16).toString(),
116
- boostEnabled,
117
- ];
96
+ leverageManagementWithoutSubProxy(strategyOrBundleId, user, ratioState, targetRatio, triggerRatio) {
97
+ const isBundle = true;
98
+ const subData = subDataService.liquityLeverageManagementSubDataWithoutSubProxy.encode(targetRatio, ratioState);
99
+ const triggerData = triggerService.liquityRatioTrigger.encode(user, triggerRatio, ratioState);
100
+ return [strategyOrBundleId, isBundle, triggerData, subData];
118
101
  },
119
102
  dsrPayback(proxyAddress, triggerRatio, targetRatio) {
120
103
  (0, utils_1.requireAddress)(proxyAddress);
@@ -147,24 +130,14 @@ exports.chickenBondsEncode = {
147
130
  },
148
131
  };
149
132
  exports.aaveV2Encode = {
150
- leverageManagement(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
151
- return subDataService.aaveV2LeverageManagementSubData.encode(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled);
133
+ leverageManagementWithoutSubProxy(strategyOrBundleId, market, user, ratioState, targetRatio, triggerRatio) {
134
+ const isBundle = true;
135
+ const subData = subDataService.aaveV2LeverageManagementSubDataWithoutSubProxy.encode(market, targetRatio, ratioState);
136
+ const triggerData = triggerService.aaveV2RatioTrigger.encode(user, market, triggerRatio, ratioState);
137
+ return [strategyOrBundleId, isBundle, triggerData, subData];
152
138
  },
153
139
  };
154
140
  exports.aaveV3Encode = {
155
- leverageManagement(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
156
- let subInput = '0x';
157
- subInput = subInput.concat(new decimal_js_1.default(triggerRepayRatio).mul(1e16).toHex().slice(2)
158
- .padStart(32, '0'));
159
- subInput = subInput.concat(new decimal_js_1.default(triggerBoostRatio).mul(1e16).toHex().slice(2)
160
- .padStart(32, '0'));
161
- subInput = subInput.concat(new decimal_js_1.default(targetBoostRatio).mul(1e16).toHex().slice(2)
162
- .padStart(32, '0'));
163
- subInput = subInput.concat(new decimal_js_1.default(targetRepayRatio).mul(1e16).toHex().slice(2)
164
- .padStart(32, '0'));
165
- subInput = subInput.concat(boostEnabled ? '01' : '00');
166
- return subInput;
167
- },
168
141
  closeToAsset(strategyOrBundleId, isBundle = true, triggerData, subData) {
169
142
  const { collAsset, collAssetId, debtAsset, debtAssetId, } = subData;
170
143
  const subDataEncoded = subDataService.aaveV3QuotePriceSubData.encode(collAsset, collAssetId, debtAsset, debtAssetId);
@@ -213,13 +186,19 @@ exports.aaveV3Encode = {
213
186
  },
214
187
  };
215
188
  exports.compoundV2Encode = {
216
- leverageManagement(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
217
- return subDataService.compoundV2LeverageManagementSubData.encode(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled);
189
+ leverageManagementWithoutSubProxy(strategyOrBundleId, user, ratioState, targetRatio, triggerRatio) {
190
+ const isBundle = true;
191
+ const subData = subDataService.compoundV2LeverageManagementSubDataWithoutSubProxy.encode(targetRatio, ratioState);
192
+ const triggerData = triggerService.compoundV2RatioTrigger.encode(user, triggerRatio, ratioState);
193
+ return [strategyOrBundleId, isBundle, triggerData, subData];
218
194
  },
219
195
  };
220
196
  exports.compoundV3Encode = {
221
- leverageManagement(market, baseToken, triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled, isEOA) {
222
- return subDataService.compoundV3LeverageManagementSubData.encode(market, baseToken, triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled, isEOA);
197
+ leverageManagementWithoutSubProxy(strategyOrBundleId, market, baseToken, user, ratioState, targetRatio, triggerRatio) {
198
+ const isBundle = true;
199
+ const subData = subDataService.compoundV3LeverageManagementSubDataWithoutSubProxy.encode(market, baseToken, targetRatio, ratioState);
200
+ const triggerData = triggerService.compoundV3RatioTrigger.encode(user, market, triggerRatio, ratioState);
201
+ return [strategyOrBundleId, isBundle, triggerData, subData];
223
202
  },
224
203
  leverageManagementOnPrice(strategyOrBundleId, market, collToken, baseToken, targetRatio, price, priceState, ratioState, // REPAY for repay on price, BOOST for boost on price
225
204
  user) {
@@ -236,11 +215,6 @@ exports.compoundV3Encode = {
236
215
  return [strategyOrBundleId, isBundle, triggerDataEncoded, subDataEncoded];
237
216
  },
238
217
  };
239
- exports.compoundV3L2Encode = {
240
- leverageManagement(market, baseToken, triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled, isEOA = false) {
241
- return subDataService.compoundV3L2LeverageManagementSubData.encode(market, baseToken, triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled, isEOA);
242
- },
243
- };
244
218
  exports.morphoAaveV2Encode = {
245
219
  leverageManagement(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
246
220
  return subDataService.morphoAaveV2LeverageManagementSubData.encode(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled);
@@ -254,24 +228,15 @@ exports.exchangeEncode = {
254
228
  const strategyId = constants_1.STRATEGY_IDS[network].EXCHANGE_DCA;
255
229
  return [strategyId, false, triggerData, subData];
256
230
  },
257
- limitOrder(fromToken, toToken, amount, targetPrice, goodUntil, orderType) {
258
- return subDataService.exchangeLimitOrderSubData.encode(fromToken, toToken, amount, targetPrice, goodUntil, orderType);
231
+ limitOrderWithoutSubProxy(fromToken, toToken, amount, targetPrice, goodUntil, orderType, fromTokenDecimals, toTokenDecimals, network) {
232
+ (0, utils_1.requireAddresses)([fromToken, toToken]);
233
+ const subData = subDataService.exchangeLimitOrderSubDataWithoutSubProxy.encode(fromToken, toToken, amount);
234
+ const triggerData = triggerService.exchangeOffchainPriceTrigger.encode(targetPrice, Number(goodUntil), orderType, fromTokenDecimals, toTokenDecimals);
235
+ const strategyId = constants_1.STRATEGY_IDS[network].EXCHANGE_LIMIT_ORDER;
236
+ return [strategyId, false, triggerData, subData];
259
237
  },
260
238
  };
261
239
  exports.sparkEncode = {
262
- leverageManagement(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
263
- let subInput = '0x';
264
- subInput = subInput.concat(new decimal_js_1.default(triggerRepayRatio).mul(1e16).toHex().slice(2)
265
- .padStart(32, '0'));
266
- subInput = subInput.concat(new decimal_js_1.default(triggerBoostRatio).mul(1e16).toHex().slice(2)
267
- .padStart(32, '0'));
268
- subInput = subInput.concat(new decimal_js_1.default(targetBoostRatio).mul(1e16).toHex().slice(2)
269
- .padStart(32, '0'));
270
- subInput = subInput.concat(new decimal_js_1.default(targetRepayRatio).mul(1e16).toHex().slice(2)
271
- .padStart(32, '0'));
272
- subInput = subInput.concat(boostEnabled ? '01' : '00');
273
- return subInput;
274
- },
275
240
  leverageManagementOnPrice(strategyOrBundleId, isBundle = true, triggerData, subData) {
276
241
  const { collAsset, collAssetId, debtAsset, debtAssetId, marketAddr, targetRatio, } = subData;
277
242
  const subDataEncoded = subDataService.sparkLeverageManagementOnPriceSubData.encode(collAsset, collAssetId, debtAsset, debtAssetId, marketAddr, targetRatio);