@defisaver/automation-sdk 3.2.4 → 3.2.5

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.
@@ -60,6 +60,7 @@ export declare const aaveV3Encode: {
60
60
  marketAddr: EthereumAddress;
61
61
  targetRatio: number;
62
62
  }): (number | boolean | string[])[];
63
+ leverageManagementWithoutSubProxy(strategyOrBundleId: number, market: EthereumAddress, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
63
64
  };
64
65
  export declare const compoundV2Encode: {
65
66
  leverageManagement(triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean): string[];
@@ -175,6 +175,12 @@ exports.aaveV3Encode = {
175
175
  const triggerDataEncoded = triggerService.aaveV3QuotePriceTrigger.encode(baseTokenAddress, quoteTokenAddress, price, state);
176
176
  return [strategyOrBundleId, isBundle, triggerDataEncoded, subDataEncoded];
177
177
  },
178
+ leverageManagementWithoutSubProxy(strategyOrBundleId, market, user, ratioState, targetRatio, triggerRatio) {
179
+ const isBundle = true;
180
+ const subData = subDataService.aaveV3LeverageManagementSubDataWithoutSubProxy.encode(targetRatio, ratioState);
181
+ const triggerData = triggerService.aaveV3RatioTrigger.encode(user, market, triggerRatio, ratioState);
182
+ return [strategyOrBundleId, isBundle, triggerData, subData];
183
+ },
178
184
  };
179
185
  exports.compoundV2Encode = {
180
186
  leverageManagement(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
@@ -51,6 +51,13 @@ export declare const aaveV3LeverageManagementSubData: {
51
51
  targetRatio: number;
52
52
  };
53
53
  };
54
+ export declare const aaveV3LeverageManagementSubDataWithoutSubProxy: {
55
+ encode(targetRatio: number, ratioState: RatioState): string[];
56
+ decode(subData: string[]): {
57
+ targetRatio: number;
58
+ ratioState: RatioState;
59
+ };
60
+ };
54
61
  export declare const aaveV3QuotePriceSubData: {
55
62
  encode(collAsset: EthereumAddress, collAssetId: number, debtAsset: EthereumAddress, debtAssetId: number, nullAddress?: EthereumAddress): string[];
56
63
  decode(subData: string[]): {
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.fluidLeverageManagementSubData = exports.liquityV2PaybackSubData = exports.morphoBlueLeverageManagementOnPriceSubData = exports.liquityV2LeverageManagementOnPriceSubData = exports.liquityV2CloseSubData = exports.liquityV2LeverageManagementSubData = exports.aaveV3LeverageManagementOnPriceSubData = exports.morphoBlueLeverageManagementSubData = exports.crvUSDPaybackSubData = exports.crvUSDLeverageManagementSubData = exports.liquityDebtInFrontRepaySubData = exports.liquityDsrSupplySubData = exports.liquityDsrPaybackSubData = exports.sparkQuotePriceSubData = exports.sparkLeverageManagementSubData = exports.exchangeLimitOrderSubData = exports.exchangeDcaSubData = exports.liquityPaybackUsingChickenBondSubData = exports.cBondsRebondSubData = exports.morphoAaveV2LeverageManagementSubData = exports.compoundV3L2LeverageManagementSubData = exports.compoundV3LeverageManagementSubData = exports.compoundV2LeverageManagementSubData = exports.aaveV3QuotePriceSubData = exports.aaveV3LeverageManagementSubData = exports.aaveV2LeverageManagementSubData = exports.liquityCloseSubData = exports.liquityLeverageManagementSubData = exports.makerLeverageManagementSubData = exports.makerCloseSubData = exports.liquityRepayFromSavingsSubData = exports.makerRepayFromSavingsSubData = void 0;
6
+ exports.fluidLeverageManagementSubData = exports.liquityV2PaybackSubData = exports.morphoBlueLeverageManagementOnPriceSubData = exports.liquityV2LeverageManagementOnPriceSubData = exports.liquityV2CloseSubData = exports.liquityV2LeverageManagementSubData = exports.aaveV3LeverageManagementOnPriceSubData = exports.morphoBlueLeverageManagementSubData = exports.crvUSDPaybackSubData = exports.crvUSDLeverageManagementSubData = exports.liquityDebtInFrontRepaySubData = exports.liquityDsrSupplySubData = exports.liquityDsrPaybackSubData = exports.sparkQuotePriceSubData = exports.sparkLeverageManagementSubData = exports.exchangeLimitOrderSubData = exports.exchangeDcaSubData = exports.liquityPaybackUsingChickenBondSubData = exports.cBondsRebondSubData = exports.morphoAaveV2LeverageManagementSubData = exports.compoundV3L2LeverageManagementSubData = exports.compoundV3LeverageManagementSubData = exports.compoundV2LeverageManagementSubData = exports.aaveV3QuotePriceSubData = exports.aaveV3LeverageManagementSubDataWithoutSubProxy = exports.aaveV3LeverageManagementSubData = exports.aaveV2LeverageManagementSubData = exports.liquityCloseSubData = exports.liquityLeverageManagementSubData = exports.makerLeverageManagementSubData = exports.makerCloseSubData = exports.liquityRepayFromSavingsSubData = exports.makerRepayFromSavingsSubData = void 0;
7
7
  const decimal_js_1 = __importDefault(require("decimal.js"));
8
8
  const web3_eth_abi_1 = __importDefault(require("web3-eth-abi"));
9
9
  const web3_utils_1 = require("web3-utils");
@@ -126,6 +126,20 @@ exports.aaveV3LeverageManagementSubData = {
126
126
  return { targetRatio };
127
127
  },
128
128
  };
129
+ exports.aaveV3LeverageManagementSubDataWithoutSubProxy = {
130
+ encode(targetRatio, ratioState) {
131
+ const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
132
+ const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
133
+ const encodedUseDefaultMarket = web3_eth_abi_1.default.encodeParameter('bool', true);
134
+ const encodedUseOnBehalf = web3_eth_abi_1.default.encodeParameter('bool', false);
135
+ return [encodedTargetRatio, encodedRatioState, encodedUseDefaultMarket, encodedUseOnBehalf];
136
+ },
137
+ decode(subData) {
138
+ const targetRatio = (0, utils_1.weiToRatioPercentage)(web3_eth_abi_1.default.decodeParameter('uint256', subData[0]));
139
+ const ratioState = web3_eth_abi_1.default.decodeParameter('uint8', subData[1]);
140
+ return { targetRatio, ratioState };
141
+ },
142
+ };
129
143
  exports.aaveV3QuotePriceSubData = {
130
144
  encode(collAsset, collAssetId, debtAsset, debtAssetId, nullAddress = constants_1.ZERO_ADDRESS) {
131
145
  const encodedColl = web3_eth_abi_1.default.encodeParameter('address', collAsset);
@@ -60,6 +60,7 @@ export declare const aaveV3Encode: {
60
60
  marketAddr: EthereumAddress;
61
61
  targetRatio: number;
62
62
  }): (number | boolean | string[])[];
63
+ leverageManagementWithoutSubProxy(strategyOrBundleId: number, market: EthereumAddress, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
63
64
  };
64
65
  export declare const compoundV2Encode: {
65
66
  leverageManagement(triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean): string[];
@@ -146,6 +146,12 @@ export const aaveV3Encode = {
146
146
  const triggerDataEncoded = triggerService.aaveV3QuotePriceTrigger.encode(baseTokenAddress, quoteTokenAddress, price, state);
147
147
  return [strategyOrBundleId, isBundle, triggerDataEncoded, subDataEncoded];
148
148
  },
149
+ leverageManagementWithoutSubProxy(strategyOrBundleId, market, user, ratioState, targetRatio, triggerRatio) {
150
+ const isBundle = true;
151
+ const subData = subDataService.aaveV3LeverageManagementSubDataWithoutSubProxy.encode(targetRatio, ratioState);
152
+ const triggerData = triggerService.aaveV3RatioTrigger.encode(user, market, triggerRatio, ratioState);
153
+ return [strategyOrBundleId, isBundle, triggerData, subData];
154
+ },
149
155
  };
150
156
  export const compoundV2Encode = {
151
157
  leverageManagement(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
@@ -51,6 +51,13 @@ export declare const aaveV3LeverageManagementSubData: {
51
51
  targetRatio: number;
52
52
  };
53
53
  };
54
+ export declare const aaveV3LeverageManagementSubDataWithoutSubProxy: {
55
+ encode(targetRatio: number, ratioState: RatioState): string[];
56
+ decode(subData: string[]): {
57
+ targetRatio: number;
58
+ ratioState: RatioState;
59
+ };
60
+ };
54
61
  export declare const aaveV3QuotePriceSubData: {
55
62
  encode(collAsset: EthereumAddress, collAssetId: number, debtAsset: EthereumAddress, debtAssetId: number, nullAddress?: EthereumAddress): string[];
56
63
  decode(subData: string[]): {
@@ -120,6 +120,20 @@ export const aaveV3LeverageManagementSubData = {
120
120
  return { targetRatio };
121
121
  },
122
122
  };
123
+ export const aaveV3LeverageManagementSubDataWithoutSubProxy = {
124
+ encode(targetRatio, ratioState) {
125
+ const encodedTargetRatio = AbiCoder.encodeParameter('uint256', ratioPercentageToWei(targetRatio));
126
+ const encodedRatioState = AbiCoder.encodeParameter('uint8', ratioState);
127
+ const encodedUseDefaultMarket = AbiCoder.encodeParameter('bool', true);
128
+ const encodedUseOnBehalf = AbiCoder.encodeParameter('bool', false);
129
+ return [encodedTargetRatio, encodedRatioState, encodedUseDefaultMarket, encodedUseOnBehalf];
130
+ },
131
+ decode(subData) {
132
+ const targetRatio = weiToRatioPercentage(AbiCoder.decodeParameter('uint256', subData[0]));
133
+ const ratioState = AbiCoder.decodeParameter('uint8', subData[1]);
134
+ return { targetRatio, ratioState };
135
+ },
136
+ };
123
137
  export const aaveV3QuotePriceSubData = {
124
138
  encode(collAsset, collAssetId, debtAsset, debtAssetId, nullAddress = ZERO_ADDRESS) {
125
139
  const encodedColl = AbiCoder.encodeParameter('address', collAsset);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defisaver/automation-sdk",
3
- "version": "3.2.4",
3
+ "version": "3.2.5",
4
4
  "description": "",
5
5
  "main": "./cjs/index.js",
6
6
  "module": "./esm/index.js",
@@ -323,6 +323,20 @@ export const aaveV3Encode = {
323
323
 
324
324
  return [strategyOrBundleId, isBundle, triggerDataEncoded, subDataEncoded];
325
325
  },
326
+ leverageManagementWithoutSubProxy(
327
+ strategyOrBundleId: number,
328
+ market: EthereumAddress,
329
+ user: EthereumAddress,
330
+ ratioState: RatioState,
331
+ targetRatio: number,
332
+ triggerRatio: number,
333
+ ) {
334
+ const isBundle = true;
335
+ const subData = subDataService.aaveV3LeverageManagementSubDataWithoutSubProxy.encode(targetRatio, ratioState);
336
+ const triggerData = triggerService.aaveV3RatioTrigger.encode(user, market, triggerRatio, ratioState);
337
+
338
+ return [strategyOrBundleId, isBundle, triggerData, subData];
339
+ },
326
340
  };
327
341
 
328
342
  export const compoundV2Encode = {
@@ -173,6 +173,26 @@ export const aaveV3LeverageManagementSubData = { // TODO encode?
173
173
  },
174
174
  };
175
175
 
176
+ export const aaveV3LeverageManagementSubDataWithoutSubProxy = {
177
+ encode(
178
+ targetRatio: number,
179
+ ratioState: RatioState,
180
+ ): SubData {
181
+ const encodedTargetRatio = AbiCoder.encodeParameter('uint256', ratioPercentageToWei(targetRatio));
182
+ const encodedRatioState = AbiCoder.encodeParameter('uint8', ratioState);
183
+ const encodedUseDefaultMarket = AbiCoder.encodeParameter('bool', true);
184
+ const encodedUseOnBehalf = AbiCoder.encodeParameter('bool', false);
185
+
186
+ return [encodedTargetRatio, encodedRatioState, encodedUseDefaultMarket, encodedUseOnBehalf];
187
+ },
188
+ decode(subData: SubData): { targetRatio: number, ratioState: RatioState } {
189
+ const targetRatio = weiToRatioPercentage(AbiCoder.decodeParameter('uint256', subData[0]) as any as string);
190
+ const ratioState = AbiCoder.decodeParameter('uint8', subData[1]) as any as RatioState;
191
+
192
+ return { targetRatio, ratioState };
193
+ },
194
+ };
195
+
176
196
  export const aaveV3QuotePriceSubData = {
177
197
  encode(
178
198
  collAsset: EthereumAddress,