@defisaver/automation-sdk 3.3.16-liq-prot-dev → 3.3.17
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/constants/index.js +42 -117
- package/cjs/index.d.ts +2 -2
- package/cjs/index.js +2 -5
- package/cjs/services/strategiesService.js +21 -160
- package/cjs/services/strategySubService.d.ts +21 -18
- package/cjs/services/strategySubService.js +74 -78
- package/cjs/services/strategySubService.test.js +149 -3
- package/cjs/services/subDataService.d.ts +20 -70
- package/cjs/services/subDataService.js +79 -23
- package/cjs/services/subDataService.test.js +202 -17
- package/cjs/services/utils.d.ts +1 -2
- package/cjs/services/utils.js +1 -14
- package/cjs/types/enums.d.ts +17 -36
- package/cjs/types/enums.js +11 -30
- package/esm/constants/index.js +42 -117
- package/esm/index.d.ts +2 -2
- package/esm/index.js +2 -5
- package/esm/services/strategiesService.js +21 -160
- package/esm/services/strategySubService.d.ts +21 -18
- package/esm/services/strategySubService.js +73 -78
- package/esm/services/strategySubService.test.js +147 -4
- package/esm/services/subDataService.d.ts +20 -70
- package/esm/services/subDataService.js +77 -21
- package/esm/services/subDataService.test.js +200 -18
- package/esm/services/utils.d.ts +1 -2
- package/esm/services/utils.js +1 -13
- package/esm/types/enums.d.ts +17 -36
- package/esm/types/enums.js +11 -30
- package/package.json +1 -1
- package/src/constants/index.ts +43 -119
- package/src/index.ts +6 -22
- package/src/services/strategiesService.ts +23 -225
- package/src/services/strategySubService.test.ts +191 -3
- package/src/services/strategySubService.ts +121 -173
- package/src/services/subDataService.test.ts +214 -18
- package/src/services/subDataService.ts +106 -42
- package/src/services/utils.test.ts +1 -1
- package/src/services/utils.ts +1 -15
- package/src/types/enums.ts +13 -30
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { EthereumAddress } from '../types';
|
|
2
|
-
import type { CloseStrategyType } from '../types/enums';
|
|
2
|
+
import type { CloseStrategyType, OrderType } from '../types/enums';
|
|
3
3
|
import { ChainId, RatioState } from '../types/enums';
|
|
4
4
|
/**
|
|
5
5
|
_______ _______ .______ .______ _______ ______ ___ .___________. _______ _______
|
|
@@ -10,11 +10,13 @@ import { ChainId, RatioState } from '../types/enums';
|
|
|
10
10
|
|_______/ |_______|| _| | _| `._____||_______| \______/__/ \__\ |__| |_______||_______/
|
|
11
11
|
*/
|
|
12
12
|
export declare const morphoAaveV2LeverageManagementSubData: {
|
|
13
|
+
encode(triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean): string[];
|
|
13
14
|
decode(subData: string[]): {
|
|
14
15
|
targetRatio: number;
|
|
15
16
|
};
|
|
16
17
|
};
|
|
17
18
|
export declare const cBondsRebondSubData: {
|
|
19
|
+
encode(bondId: number | string): string[];
|
|
18
20
|
decode(subData: string[]): {
|
|
19
21
|
bondId: string;
|
|
20
22
|
};
|
|
@@ -55,21 +57,13 @@ export declare const makerCloseSubData: {
|
|
|
55
57
|
closeToAssetAddr: EthereumAddress;
|
|
56
58
|
};
|
|
57
59
|
};
|
|
58
|
-
export declare const
|
|
60
|
+
export declare const makerLeverageManagementSubData: {
|
|
59
61
|
decode: (subData: string[]) => {
|
|
60
62
|
vaultId: number;
|
|
61
63
|
targetRatio: number;
|
|
62
64
|
};
|
|
63
65
|
};
|
|
64
|
-
export declare const
|
|
65
|
-
encode(vaultId: number, targetRatio: number, daiAddr?: EthereumAddress): string[];
|
|
66
|
-
decode(subData: string[]): {
|
|
67
|
-
vaultId: number;
|
|
68
|
-
targetRatio: number;
|
|
69
|
-
daiAddr: string;
|
|
70
|
-
};
|
|
71
|
-
};
|
|
72
|
-
export declare const makerLiquidationProtectionSubData: {
|
|
66
|
+
export declare const makerLeverageManagementWithoutSubProxy: {
|
|
73
67
|
encode(vaultId: number, targetRatio: number, daiAddr?: EthereumAddress): string[];
|
|
74
68
|
decode(subData: string[]): {
|
|
75
69
|
vaultId: number;
|
|
@@ -90,12 +84,12 @@ export declare const liquityRepayFromSavingsSubData: {
|
|
|
90
84
|
targetRatio: number;
|
|
91
85
|
};
|
|
92
86
|
};
|
|
93
|
-
export declare const
|
|
87
|
+
export declare const liquityLeverageManagementSubData: {
|
|
94
88
|
decode: (subData: string[]) => {
|
|
95
89
|
targetRatio: number;
|
|
96
90
|
};
|
|
97
91
|
};
|
|
98
|
-
export declare const
|
|
92
|
+
export declare const liquityLeverageManagementSubDataWithoutSubProxy: {
|
|
99
93
|
encode(targetRatio: number, ratioState: RatioState): string[];
|
|
100
94
|
decode(subData: string[]): {
|
|
101
95
|
targetRatio: number;
|
|
@@ -184,12 +178,13 @@ export declare const liquityV2PaybackSubData: {
|
|
|
184
178
|
/ _____ \ / _____ \ \ / | |____ \ / / /_
|
|
185
179
|
/__/ \__\ /__/ \__\ \__/ |_______| \__/ |____|
|
|
186
180
|
*/
|
|
187
|
-
export declare const
|
|
181
|
+
export declare const aaveV2LeverageManagementSubData: {
|
|
182
|
+
encode(triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean): string[];
|
|
188
183
|
decode(subData: string[]): {
|
|
189
184
|
targetRatio: number;
|
|
190
185
|
};
|
|
191
186
|
};
|
|
192
|
-
export declare const
|
|
187
|
+
export declare const aaveV2LeverageManagementSubDataWithoutSubProxy: {
|
|
193
188
|
encode(market: EthereumAddress, targetRatio: number, ratioState: RatioState): string[];
|
|
194
189
|
decode(subData: string[]): {
|
|
195
190
|
market: EthereumAddress;
|
|
@@ -205,19 +200,12 @@ export declare const aaveV2LeverageManagementSubData: {
|
|
|
205
200
|
/ _____ \ / _____ \ \ / | |____ \ / ___) |
|
|
206
201
|
/__/ \__\ /__/ \__\ \__/ |_______| \__/ |____/
|
|
207
202
|
*/
|
|
208
|
-
export declare const legacyAaveV3LeverageManagementSubData: {
|
|
209
|
-
decode(subData: string[]): {
|
|
210
|
-
targetRatio: number;
|
|
211
|
-
};
|
|
212
|
-
};
|
|
213
203
|
export declare const aaveV3LeverageManagementSubData: {
|
|
214
|
-
encode(targetRatio: number, ratioState: RatioState, market: EthereumAddress, user: EthereumAddress, isGeneric: boolean): string[];
|
|
215
204
|
decode(subData: string[]): {
|
|
216
205
|
targetRatio: number;
|
|
217
|
-
ratioState: RatioState;
|
|
218
206
|
};
|
|
219
207
|
};
|
|
220
|
-
export declare const
|
|
208
|
+
export declare const aaveV3LeverageManagementSubDataWithoutSubProxy: {
|
|
221
209
|
encode(targetRatio: number, ratioState: RatioState, market: EthereumAddress, user: EthereumAddress, isGeneric: boolean): string[];
|
|
222
210
|
decode(subData: string[]): {
|
|
223
211
|
targetRatio: number;
|
|
@@ -296,15 +284,6 @@ export declare const aaveV4LeverageManagementSubData: {
|
|
|
296
284
|
targetRatio: number;
|
|
297
285
|
};
|
|
298
286
|
};
|
|
299
|
-
export declare const aaveV4LiquidationProtectionSubData: {
|
|
300
|
-
encode: (spoke: EthereumAddress, owner: EthereumAddress, ratioState: RatioState, targetRatio: number) => string[];
|
|
301
|
-
decode: (subData: string[]) => {
|
|
302
|
-
spoke: string;
|
|
303
|
-
owner: string;
|
|
304
|
-
ratioState: RatioState;
|
|
305
|
-
targetRatio: number;
|
|
306
|
-
};
|
|
307
|
-
};
|
|
308
287
|
export declare const aaveV4LeverageManagementOnPriceSubData: {
|
|
309
288
|
encode: (spoke: EthereumAddress, owner: EthereumAddress, collAsset: EthereumAddress, collAssetId: number, debtAsset: EthereumAddress, debtAssetId: number, ratioState: RatioState, targetRatio: number) => string[];
|
|
310
289
|
decode: (subData: string[]) => {
|
|
@@ -350,12 +329,13 @@ export declare const aaveV4CollateralSwitchSubData: {
|
|
|
350
329
|
| `----.| `--' | | | | | | | \ / / /_
|
|
351
330
|
\______| \______/ |__| |__| | _| \__/ |____|
|
|
352
331
|
*/
|
|
353
|
-
export declare const
|
|
332
|
+
export declare const compoundV2LeverageManagementSubData: {
|
|
333
|
+
encode(triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean): string[];
|
|
354
334
|
decode(subData: string[]): {
|
|
355
335
|
targetRatio: number;
|
|
356
336
|
};
|
|
357
337
|
};
|
|
358
|
-
export declare const
|
|
338
|
+
export declare const compoundV2LeverageManagementSubDataWithoutSubProxy: {
|
|
359
339
|
encode(targetRatio: number, ratioState: RatioState): string[];
|
|
360
340
|
decode(subData: string[]): {
|
|
361
341
|
targetRatio: number;
|
|
@@ -371,15 +351,12 @@ export declare const compoundV2LeverageManagementSubData: {
|
|
|
371
351
|
\______| \______/ |__| |__| | _| \__/ |____/
|
|
372
352
|
*/
|
|
373
353
|
export declare const compoundV3LeverageManagementSubData: {
|
|
374
|
-
encode(market: EthereumAddress, baseToken: EthereumAddress,
|
|
354
|
+
encode(market: EthereumAddress, baseToken: EthereumAddress, triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean, isEOA: boolean): string[];
|
|
375
355
|
decode(subData: string[]): {
|
|
376
|
-
market: EthereumAddress;
|
|
377
|
-
baseToken: EthereumAddress;
|
|
378
356
|
targetRatio: number;
|
|
379
|
-
ratioState: RatioState;
|
|
380
357
|
};
|
|
381
358
|
};
|
|
382
|
-
export declare const
|
|
359
|
+
export declare const compoundV3LeverageManagementSubDataWithoutSubProxy: {
|
|
383
360
|
encode(market: EthereumAddress, baseToken: EthereumAddress, targetRatio: number, ratioState: RatioState): string[];
|
|
384
361
|
decode(subData: string[]): {
|
|
385
362
|
market: EthereumAddress;
|
|
@@ -426,14 +403,15 @@ export declare const exchangeDcaSubData: {
|
|
|
426
403
|
interval: string;
|
|
427
404
|
};
|
|
428
405
|
};
|
|
429
|
-
export declare const
|
|
406
|
+
export declare const exchangeLimitOrderSubData: {
|
|
407
|
+
encode(fromToken: EthereumAddress, toToken: EthereumAddress, amount: string, targetPrice: string, goodUntil: string | number, orderType: OrderType): string[];
|
|
430
408
|
decode: (subData: string[], chainId: ChainId) => {
|
|
431
409
|
fromToken: string;
|
|
432
410
|
toToken: string;
|
|
433
411
|
amount: string;
|
|
434
412
|
};
|
|
435
413
|
};
|
|
436
|
-
export declare const
|
|
414
|
+
export declare const exchangeLimitOrderSubDataWithoutSubProxy: {
|
|
437
415
|
encode(fromToken: EthereumAddress, toToken: EthereumAddress, amount: string): string[];
|
|
438
416
|
decode: (subData: string[], chainId: ChainId) => {
|
|
439
417
|
fromToken: string;
|
|
@@ -449,19 +427,12 @@ export declare const exchangeLimitOrderSubData: {
|
|
|
449
427
|
.----) | | | / _____ \ | |\ \----.| . \
|
|
450
428
|
|_______/ | _| /__/ \__\ | _| `._____||__|\__\
|
|
451
429
|
*/
|
|
452
|
-
export declare const legacySparkLeverageManagementSubData: {
|
|
453
|
-
decode(subData: string[]): {
|
|
454
|
-
targetRatio: number;
|
|
455
|
-
};
|
|
456
|
-
};
|
|
457
430
|
export declare const sparkLeverageManagementSubData: {
|
|
458
|
-
encode(targetRatio: number, ratioState: RatioState): string[];
|
|
459
431
|
decode(subData: string[]): {
|
|
460
432
|
targetRatio: number;
|
|
461
|
-
ratioState: RatioState;
|
|
462
433
|
};
|
|
463
434
|
};
|
|
464
|
-
export declare const
|
|
435
|
+
export declare const sparkLeverageManagementSubDataWithoutSubProxy: {
|
|
465
436
|
encode(targetRatio: number, ratioState: RatioState): string[];
|
|
466
437
|
decode(subData: string[]): {
|
|
467
438
|
targetRatio: number;
|
|
@@ -546,18 +517,6 @@ export declare const morphoBlueLeverageManagementSubData: {
|
|
|
546
517
|
targetRatio: number;
|
|
547
518
|
};
|
|
548
519
|
};
|
|
549
|
-
export declare const morphoBlueLiquidationProtectionSubData: {
|
|
550
|
-
encode: (loanToken: EthereumAddress, collToken: EthereumAddress, oracle: EthereumAddress, irm: EthereumAddress, lltv: string, ratioState: RatioState, targetRatio: number, user: EthereumAddress, isEOA: boolean) => string[];
|
|
551
|
-
decode: (subData: string[]) => {
|
|
552
|
-
loanToken: string;
|
|
553
|
-
collToken: string;
|
|
554
|
-
oracle: string;
|
|
555
|
-
irm: string;
|
|
556
|
-
lltv: string;
|
|
557
|
-
user: string;
|
|
558
|
-
targetRatio: number;
|
|
559
|
-
};
|
|
560
|
-
};
|
|
561
520
|
export declare const morphoBlueLeverageManagementOnPriceSubData: {
|
|
562
521
|
encode(loanToken: EthereumAddress, collToken: EthereumAddress, oracle: EthereumAddress, irm: EthereumAddress, lltv: string, targetRatio: number, user: EthereumAddress): string[];
|
|
563
522
|
decode(subData: string[]): {
|
|
@@ -599,12 +558,3 @@ export declare const fluidLeverageManagementSubData: {
|
|
|
599
558
|
targetRatio: number;
|
|
600
559
|
};
|
|
601
560
|
};
|
|
602
|
-
export declare const fluidLiquidationProtectionSubData: {
|
|
603
|
-
encode: (nftId: string, vault: EthereumAddress, ratioState: RatioState, targetRatio: number) => string[];
|
|
604
|
-
decode: (subData: string[]) => {
|
|
605
|
-
nftId: string;
|
|
606
|
-
vault: string;
|
|
607
|
-
ratioState: RatioState;
|
|
608
|
-
targetRatio: number;
|
|
609
|
-
};
|
|
610
|
-
};
|
|
@@ -3,8 +3,8 @@ 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.crvUSDLeverageManagementSubData = exports.sparkCollateralSwitchSubData = exports.sparkLeverageManagementOnPriceSubData = exports.sparkCloseGenericSubData = exports.
|
|
7
|
-
exports.
|
|
6
|
+
exports.morphoBlueCloseOnPriceSubData = exports.morphoBlueLeverageManagementOnPriceSubData = exports.morphoBlueLeverageManagementSubData = exports.crvUSDPaybackSubData = exports.crvUSDLeverageManagementSubData = exports.sparkCollateralSwitchSubData = exports.sparkLeverageManagementOnPriceSubData = exports.sparkCloseGenericSubData = exports.sparkLeverageManagementSubDataWithoutSubProxy = exports.sparkLeverageManagementSubData = exports.exchangeLimitOrderSubDataWithoutSubProxy = exports.exchangeLimitOrderSubData = exports.exchangeDcaSubData = exports.compoundV3CloseSubData = exports.compoundV3LeverageManagementOnPriceSubData = exports.compoundV3LeverageManagementSubDataWithoutSubProxy = exports.compoundV3LeverageManagementSubData = exports.compoundV2LeverageManagementSubDataWithoutSubProxy = exports.compoundV2LeverageManagementSubData = exports.aaveV4CollateralSwitchSubData = exports.aaveV4CloseSubData = exports.aaveV4LeverageManagementOnPriceSubData = exports.aaveV4LeverageManagementSubData = exports.aaveV3LeverageManagementOnPriceSubData = exports.aaveV3QuotePriceSubData = exports.aaveV3CollateralSwitchSubData = exports.aaveV3CloseGenericSubData = exports.aaveV3LeverageManagementOnPriceGeneric = exports.aaveV3LeverageManagementSubDataWithoutSubProxy = exports.aaveV3LeverageManagementSubData = exports.aaveV2LeverageManagementSubDataWithoutSubProxy = exports.aaveV2LeverageManagementSubData = exports.liquityV2PaybackSubData = exports.liquityV2LeverageManagementOnPriceSubData = exports.liquityV2CloseSubData = exports.liquityV2LeverageManagementSubData = exports.liquityDebtInFrontRepaySubData = exports.liquityDsrSupplySubData = exports.liquityDsrPaybackSubData = exports.liquityCloseSubData = exports.liquityLeverageManagementSubDataWithoutSubProxy = exports.liquityLeverageManagementSubData = exports.liquityRepayFromSavingsSubData = exports.makerLeverageManagementWithoutSubProxy = exports.makerLeverageManagementSubData = exports.makerCloseSubData = exports.makerRepayFromSavingsSubData = exports.liquityPaybackUsingChickenBondSubData = exports.cBondsRebondSubData = exports.morphoAaveV2LeverageManagementSubData = void 0;
|
|
7
|
+
exports.fluidLeverageManagementSubData = void 0;
|
|
8
8
|
const decimal_js_1 = __importDefault(require("decimal.js"));
|
|
9
9
|
const web3_eth_abi_1 = __importDefault(require("web3-eth-abi"));
|
|
10
10
|
const web3_utils_1 = require("web3-utils");
|
|
@@ -22,6 +22,16 @@ const utils_1 = require("./utils");
|
|
|
22
22
|
|_______/ |_______|| _| | _| `._____||_______| \______/__/ \__\ |__| |_______||_______/
|
|
23
23
|
*/
|
|
24
24
|
exports.morphoAaveV2LeverageManagementSubData = {
|
|
25
|
+
encode(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
|
|
26
|
+
return [
|
|
27
|
+
(0, utils_1.ratioPercentageToWei)(triggerRepayRatio),
|
|
28
|
+
(0, utils_1.ratioPercentageToWei)(triggerBoostRatio),
|
|
29
|
+
(0, utils_1.ratioPercentageToWei)(targetBoostRatio),
|
|
30
|
+
(0, utils_1.ratioPercentageToWei)(targetRepayRatio),
|
|
31
|
+
// @ts-ignore
|
|
32
|
+
boostEnabled,
|
|
33
|
+
];
|
|
34
|
+
},
|
|
25
35
|
decode(subData) {
|
|
26
36
|
const ratioWei = web3_eth_abi_1.default.decodeParameter('uint128', subData[1]);
|
|
27
37
|
const targetRatio = (0, utils_1.weiToRatioPercentage)(ratioWei);
|
|
@@ -29,6 +39,10 @@ exports.morphoAaveV2LeverageManagementSubData = {
|
|
|
29
39
|
},
|
|
30
40
|
};
|
|
31
41
|
exports.cBondsRebondSubData = {
|
|
42
|
+
encode(bondId) {
|
|
43
|
+
const bondIdEncoded = web3_eth_abi_1.default.encodeParameter('uint256', bondId);
|
|
44
|
+
return [bondIdEncoded];
|
|
45
|
+
},
|
|
32
46
|
decode(subData) {
|
|
33
47
|
const bondId = web3_eth_abi_1.default.decodeParameter('uint256', subData[1]).toString();
|
|
34
48
|
return { bondId };
|
|
@@ -110,7 +124,7 @@ exports.makerCloseSubData = {
|
|
|
110
124
|
};
|
|
111
125
|
},
|
|
112
126
|
};
|
|
113
|
-
exports.
|
|
127
|
+
exports.makerLeverageManagementSubData = {
|
|
114
128
|
decode: (subData) => {
|
|
115
129
|
const vaultId = +web3_eth_abi_1.default.decodeParameter('uint256', subData[0]).toString();
|
|
116
130
|
const weiRatio = web3_eth_abi_1.default.decodeParameter('uint256', subData[1]);
|
|
@@ -118,7 +132,7 @@ exports.legacyMakerLeverageManagementSubData = {
|
|
|
118
132
|
return { vaultId, targetRatio };
|
|
119
133
|
},
|
|
120
134
|
};
|
|
121
|
-
exports.
|
|
135
|
+
exports.makerLeverageManagementWithoutSubProxy = {
|
|
122
136
|
encode(vaultId, targetRatio, daiAddr) {
|
|
123
137
|
const encodedVaultId = web3_eth_abi_1.default.encodeParameter('uint256', vaultId);
|
|
124
138
|
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
@@ -132,7 +146,6 @@ exports.makerLeverageManagementSubData = {
|
|
|
132
146
|
return { vaultId, targetRatio, daiAddr };
|
|
133
147
|
},
|
|
134
148
|
};
|
|
135
|
-
exports.makerLiquidationProtectionSubData = exports.makerLeverageManagementSubData;
|
|
136
149
|
/**
|
|
137
150
|
__ __ ______ __ __ __ .___________.____ ____ ____ ____ __
|
|
138
151
|
| | | | / __ \ | | | | | | | |\ \ / / \ \ / / /_ |
|
|
@@ -148,14 +161,14 @@ exports.liquityRepayFromSavingsSubData = {
|
|
|
148
161
|
return { targetRatio };
|
|
149
162
|
},
|
|
150
163
|
};
|
|
151
|
-
exports.
|
|
164
|
+
exports.liquityLeverageManagementSubData = {
|
|
152
165
|
decode: (subData) => {
|
|
153
166
|
const weiRatio = web3_eth_abi_1.default.decodeParameter('uint256', subData[1]);
|
|
154
167
|
const targetRatio = (0, utils_1.weiToRatioPercentage)(weiRatio);
|
|
155
168
|
return { targetRatio };
|
|
156
169
|
},
|
|
157
170
|
};
|
|
158
|
-
exports.
|
|
171
|
+
exports.liquityLeverageManagementSubDataWithoutSubProxy = {
|
|
159
172
|
encode(targetRatio, ratioState) {
|
|
160
173
|
const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
161
174
|
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
@@ -386,14 +399,24 @@ exports.liquityV2PaybackSubData = {
|
|
|
386
399
|
/ _____ \ / _____ \ \ / | |____ \ / / /_
|
|
387
400
|
/__/ \__\ /__/ \__\ \__/ |_______| \__/ |____|
|
|
388
401
|
*/
|
|
389
|
-
exports.
|
|
402
|
+
exports.aaveV2LeverageManagementSubData = {
|
|
403
|
+
encode(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
|
|
404
|
+
return [
|
|
405
|
+
new decimal_js_1.default(triggerRepayRatio).mul(1e16).toString(),
|
|
406
|
+
new decimal_js_1.default(triggerBoostRatio).mul(1e16).toString(),
|
|
407
|
+
new decimal_js_1.default(targetBoostRatio).mul(1e16).toString(),
|
|
408
|
+
new decimal_js_1.default(targetRepayRatio).mul(1e16).toString(),
|
|
409
|
+
// @ts-ignore // TODO
|
|
410
|
+
boostEnabled,
|
|
411
|
+
];
|
|
412
|
+
},
|
|
390
413
|
decode(subData) {
|
|
391
414
|
const ratioWei = web3_eth_abi_1.default.decodeParameter('uint256', subData[1]);
|
|
392
415
|
const targetRatio = (0, utils_1.weiToRatioPercentage)(ratioWei);
|
|
393
416
|
return { targetRatio };
|
|
394
417
|
},
|
|
395
418
|
};
|
|
396
|
-
exports.
|
|
419
|
+
exports.aaveV2LeverageManagementSubDataWithoutSubProxy = {
|
|
397
420
|
encode(market, targetRatio, ratioState) {
|
|
398
421
|
const encodedMarket = web3_eth_abi_1.default.encodeParameter('address', market);
|
|
399
422
|
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
@@ -420,14 +443,14 @@ exports.aaveV2LeverageManagementSubData = {
|
|
|
420
443
|
/ _____ \ / _____ \ \ / | |____ \ / ___) |
|
|
421
444
|
/__/ \__\ /__/ \__\ \__/ |_______| \__/ |____/
|
|
422
445
|
*/
|
|
423
|
-
exports.
|
|
446
|
+
exports.aaveV3LeverageManagementSubData = {
|
|
424
447
|
decode(subData) {
|
|
425
448
|
const ratioWei = web3_eth_abi_1.default.decodeParameter('uint256', subData[0]);
|
|
426
449
|
const targetRatio = (0, utils_1.weiToRatioPercentage)(ratioWei);
|
|
427
450
|
return { targetRatio };
|
|
428
451
|
},
|
|
429
452
|
};
|
|
430
|
-
exports.
|
|
453
|
+
exports.aaveV3LeverageManagementSubDataWithoutSubProxy = {
|
|
431
454
|
encode(targetRatio, ratioState, market, user, isGeneric) {
|
|
432
455
|
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
433
456
|
const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
@@ -446,7 +469,6 @@ exports.aaveV3LeverageManagementSubData = {
|
|
|
446
469
|
return { targetRatio, ratioState };
|
|
447
470
|
},
|
|
448
471
|
};
|
|
449
|
-
exports.aaveV3LiquidationProtectionSubData = exports.aaveV3LeverageManagementSubData;
|
|
450
472
|
exports.aaveV3LeverageManagementOnPriceGeneric = {
|
|
451
473
|
encode(collAsset, collAssetId, debtAsset, debtAssetId, marketAddr, targetRatio, user) {
|
|
452
474
|
const encodedColl = web3_eth_abi_1.default.encodeParameter('address', collAsset);
|
|
@@ -634,7 +656,6 @@ exports.aaveV4LeverageManagementSubData = {
|
|
|
634
656
|
};
|
|
635
657
|
},
|
|
636
658
|
};
|
|
637
|
-
exports.aaveV4LiquidationProtectionSubData = exports.aaveV4LeverageManagementSubData;
|
|
638
659
|
exports.aaveV4LeverageManagementOnPriceSubData = {
|
|
639
660
|
encode: (spoke, owner, collAsset, collAssetId, debtAsset, debtAssetId, ratioState, targetRatio) => {
|
|
640
661
|
const spokeEncoded = web3_eth_abi_1.default.encodeParameter('address', spoke);
|
|
@@ -751,14 +772,24 @@ exports.aaveV4CollateralSwitchSubData = {
|
|
|
751
772
|
| `----.| `--' | | | | | | | \ / / /_
|
|
752
773
|
\______| \______/ |__| |__| | _| \__/ |____|
|
|
753
774
|
*/
|
|
754
|
-
exports.
|
|
775
|
+
exports.compoundV2LeverageManagementSubData = {
|
|
776
|
+
encode(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
|
|
777
|
+
return [
|
|
778
|
+
new decimal_js_1.default(triggerRepayRatio).mul(1e16).toString(),
|
|
779
|
+
new decimal_js_1.default(triggerBoostRatio).mul(1e16).toString(),
|
|
780
|
+
new decimal_js_1.default(targetBoostRatio).mul(1e16).toString(),
|
|
781
|
+
new decimal_js_1.default(targetRepayRatio).mul(1e16).toString(),
|
|
782
|
+
// @ts-ignore // TODO
|
|
783
|
+
boostEnabled,
|
|
784
|
+
];
|
|
785
|
+
},
|
|
755
786
|
decode(subData) {
|
|
756
787
|
const weiRatio = web3_eth_abi_1.default.decodeParameter('uint256', subData[0]);
|
|
757
788
|
const targetRatio = (0, utils_1.weiToRatioPercentage)(weiRatio);
|
|
758
789
|
return { targetRatio };
|
|
759
790
|
},
|
|
760
791
|
};
|
|
761
|
-
exports.
|
|
792
|
+
exports.compoundV2LeverageManagementSubDataWithoutSubProxy = {
|
|
762
793
|
encode(targetRatio, ratioState) {
|
|
763
794
|
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
764
795
|
const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
@@ -784,6 +815,25 @@ exports.compoundV2LeverageManagementSubData = {
|
|
|
784
815
|
\______| \______/ |__| |__| | _| \__/ |____/
|
|
785
816
|
*/
|
|
786
817
|
exports.compoundV3LeverageManagementSubData = {
|
|
818
|
+
encode(market, baseToken, triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled, isEOA) {
|
|
819
|
+
return [
|
|
820
|
+
market,
|
|
821
|
+
baseToken,
|
|
822
|
+
new decimal_js_1.default(triggerRepayRatio).mul(1e16).toString(),
|
|
823
|
+
new decimal_js_1.default(triggerBoostRatio).mul(1e16).toString(),
|
|
824
|
+
new decimal_js_1.default(targetBoostRatio).mul(1e16).toString(),
|
|
825
|
+
new decimal_js_1.default(targetRepayRatio).mul(1e16).toString(),
|
|
826
|
+
// @ts-ignore // TODO
|
|
827
|
+
boostEnabled, isEOA,
|
|
828
|
+
];
|
|
829
|
+
},
|
|
830
|
+
decode(subData) {
|
|
831
|
+
const weiRatio = web3_eth_abi_1.default.decodeParameter('uint256', subData[3]);
|
|
832
|
+
const targetRatio = (0, utils_1.weiToRatioPercentage)(weiRatio);
|
|
833
|
+
return { targetRatio };
|
|
834
|
+
},
|
|
835
|
+
};
|
|
836
|
+
exports.compoundV3LeverageManagementSubDataWithoutSubProxy = {
|
|
787
837
|
encode(market, baseToken, targetRatio, ratioState) {
|
|
788
838
|
const encodedMarket = web3_eth_abi_1.default.encodeParameter('address', market);
|
|
789
839
|
const encodedBaseToken = web3_eth_abi_1.default.encodeParameter('address', baseToken);
|
|
@@ -801,7 +851,6 @@ exports.compoundV3LeverageManagementSubData = {
|
|
|
801
851
|
};
|
|
802
852
|
},
|
|
803
853
|
};
|
|
804
|
-
exports.compoundV3LiquidationProtectionSubData = exports.compoundV3LeverageManagementSubData;
|
|
805
854
|
exports.compoundV3LeverageManagementOnPriceSubData = {
|
|
806
855
|
encode(market, collToken, baseToken, targetRatio, ratioState, user) {
|
|
807
856
|
const marketEncoded = web3_eth_abi_1.default.encodeParameter('address', market);
|
|
@@ -887,7 +936,17 @@ exports.exchangeDcaSubData = {
|
|
|
887
936
|
};
|
|
888
937
|
},
|
|
889
938
|
};
|
|
890
|
-
exports.
|
|
939
|
+
exports.exchangeLimitOrderSubData = {
|
|
940
|
+
encode(fromToken, toToken, amount, targetPrice, goodUntil, orderType) {
|
|
941
|
+
return [
|
|
942
|
+
fromToken,
|
|
943
|
+
toToken,
|
|
944
|
+
amount,
|
|
945
|
+
targetPrice,
|
|
946
|
+
new decimal_js_1.default(goodUntil).toString(),
|
|
947
|
+
new decimal_js_1.default(orderType).toString(),
|
|
948
|
+
];
|
|
949
|
+
},
|
|
891
950
|
decode: (subData, chainId) => {
|
|
892
951
|
const fromToken = web3_eth_abi_1.default.decodeParameter('address', subData[0]).toString();
|
|
893
952
|
const toToken = web3_eth_abi_1.default.decodeParameter('address', subData[1]).toString();
|
|
@@ -895,7 +954,7 @@ exports.legacyExchangeLimitOrderSubData = {
|
|
|
895
954
|
return { fromToken, toToken, amount };
|
|
896
955
|
},
|
|
897
956
|
};
|
|
898
|
-
exports.
|
|
957
|
+
exports.exchangeLimitOrderSubDataWithoutSubProxy = {
|
|
899
958
|
encode(fromToken, toToken, amount) {
|
|
900
959
|
return [
|
|
901
960
|
web3_eth_abi_1.default.encodeParameter('address', fromToken),
|
|
@@ -918,14 +977,14 @@ exports.exchangeLimitOrderSubData = {
|
|
|
918
977
|
.----) | | | / _____ \ | |\ \----.| . \
|
|
919
978
|
|_______/ | _| /__/ \__\ | _| `._____||__|\__\
|
|
920
979
|
*/
|
|
921
|
-
exports.
|
|
980
|
+
exports.sparkLeverageManagementSubData = {
|
|
922
981
|
decode(subData) {
|
|
923
982
|
const ratioWei = web3_eth_abi_1.default.decodeParameter('uint256', subData[0]);
|
|
924
983
|
const targetRatio = (0, utils_1.weiToRatioPercentage)(ratioWei);
|
|
925
984
|
return { targetRatio };
|
|
926
985
|
},
|
|
927
986
|
};
|
|
928
|
-
exports.
|
|
987
|
+
exports.sparkLeverageManagementSubDataWithoutSubProxy = {
|
|
929
988
|
encode(targetRatio, ratioState) {
|
|
930
989
|
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
931
990
|
const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
@@ -939,7 +998,6 @@ exports.sparkLeverageManagementSubData = {
|
|
|
939
998
|
return { targetRatio, ratioState };
|
|
940
999
|
},
|
|
941
1000
|
};
|
|
942
|
-
exports.sparkLiquidationProtectionSubData = exports.sparkLeverageManagementSubData;
|
|
943
1001
|
exports.sparkCloseGenericSubData = {
|
|
944
1002
|
encode(collAsset, collAssetId, debtAsset, debtAssetId, closeType, marketAddr, user) {
|
|
945
1003
|
const encodedColl = web3_eth_abi_1.default.encodeParameter('address', collAsset);
|
|
@@ -1121,7 +1179,6 @@ exports.morphoBlueLeverageManagementSubData = {
|
|
|
1121
1179
|
};
|
|
1122
1180
|
},
|
|
1123
1181
|
};
|
|
1124
|
-
exports.morphoBlueLiquidationProtectionSubData = exports.morphoBlueLeverageManagementSubData;
|
|
1125
1182
|
exports.morphoBlueLeverageManagementOnPriceSubData = {
|
|
1126
1183
|
encode(loanToken, collToken, oracle, irm, lltv, targetRatio, user) {
|
|
1127
1184
|
const loanTokenEncoded = web3_eth_abi_1.default.encodeParameter('address', loanToken);
|
|
@@ -1224,4 +1281,3 @@ exports.fluidLeverageManagementSubData = {
|
|
|
1224
1281
|
};
|
|
1225
1282
|
},
|
|
1226
1283
|
};
|
|
1227
|
-
exports.fluidLiquidationProtectionSubData = exports.fluidLeverageManagementSubData;
|