@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.
- package/cjs/services/strategySubService.d.ts +1 -0
- package/cjs/services/strategySubService.js +6 -0
- package/cjs/services/subDataService.d.ts +7 -0
- package/cjs/services/subDataService.js +15 -1
- package/esm/services/strategySubService.d.ts +1 -0
- package/esm/services/strategySubService.js +6 -0
- package/esm/services/subDataService.d.ts +7 -0
- package/esm/services/subDataService.js +14 -0
- package/package.json +1 -1
- package/src/services/strategySubService.ts +14 -0
- package/src/services/subDataService.ts +20 -0
|
@@ -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
|
@@ -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,
|