@defisaver/automation-sdk 3.3.15-liq-prot-1-dev → 3.3.15-liq-prot-3-dev
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/index.d.ts +1 -2
- package/cjs/index.js +0 -1
- package/cjs/services/strategiesService.js +10 -10
- package/cjs/services/strategySubService.d.ts +9 -15
- package/cjs/services/strategySubService.js +20 -30
- package/cjs/services/strategySubService.test.js +2 -40
- package/cjs/services/subDataService.d.ts +18 -23
- package/cjs/services/subDataService.js +23 -225
- package/cjs/services/subDataService.test.js +17 -134
- package/cjs/services/utils.d.ts +0 -1
- package/cjs/services/utils.js +1 -21
- package/cjs/services/utils.test.js +0 -25
- package/cjs/types/enums.d.ts +1 -1
- package/cjs/types/enums.js +1 -1
- package/esm/index.d.ts +1 -2
- package/esm/index.js +1 -2
- package/esm/services/strategiesService.js +10 -10
- package/esm/services/strategySubService.d.ts +9 -15
- package/esm/services/strategySubService.js +19 -29
- package/esm/services/strategySubService.test.js +3 -38
- package/esm/services/subDataService.d.ts +18 -23
- package/esm/services/subDataService.js +22 -224
- package/esm/services/subDataService.test.js +18 -132
- package/esm/services/utils.d.ts +0 -1
- package/esm/services/utils.js +0 -19
- package/esm/services/utils.test.js +2 -27
- package/esm/types/enums.d.ts +1 -1
- package/esm/types/enums.js +1 -1
- package/package.json +1 -1
- package/src/index.ts +0 -2
- package/src/services/strategiesService.ts +10 -10
- package/src/services/strategySubService.test.ts +2 -46
- package/src/services/strategySubService.ts +19 -36
- package/src/services/subDataService.test.ts +18 -142
- package/src/services/subDataService.ts +23 -294
- package/src/services/utils.test.ts +0 -31
- package/src/services/utils.ts +0 -17
- package/src/types/enums.ts +1 -1
|
@@ -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.crvUSDLeverageManagementSubData = exports.sparkCollateralSwitchSubData = exports.sparkLeverageManagementOnPriceSubData = exports.sparkCloseGenericSubData = exports.sparkLiquidationProtectionSubData = exports.
|
|
6
|
+
exports.crvUSDLeverageManagementSubData = exports.sparkCollateralSwitchSubData = exports.sparkLeverageManagementOnPriceSubData = exports.sparkCloseGenericSubData = exports.sparkLiquidationProtectionSubData = exports.sparkLeverageManagementSubData = exports.legacySparkLeverageManagementSubData = exports.exchangeLimitOrderSubData = exports.legacyExchangeLimitOrderSubData = exports.exchangeDcaSubData = exports.compoundV3CloseSubData = exports.compoundV3LeverageManagementOnPriceSubData = exports.compoundV3LiquidationProtectionSubData = exports.compoundV3LeverageManagementSubData = exports.compoundV2LeverageManagementSubData = exports.legacyCompoundV2LeverageManagementSubData = exports.aaveV4CollateralSwitchSubData = exports.aaveV4CloseSubData = exports.aaveV4LeverageManagementOnPriceSubData = exports.aaveV4LiquidationProtectionSubData = exports.aaveV4LeverageManagementSubData = exports.aaveV3LeverageManagementOnPriceSubData = exports.aaveV3QuotePriceSubData = exports.aaveV3CollateralSwitchSubData = exports.aaveV3CloseGenericSubData = exports.aaveV3LeverageManagementOnPriceGeneric = exports.aaveV3LiquidationProtectionSubData = exports.aaveV3LeverageManagementSubData = exports.legacyAaveV3LeverageManagementSubData = exports.aaveV2LeverageManagementSubData = exports.legacyAaveV2LeverageManagementSubData = exports.liquityV2PaybackSubData = exports.liquityV2LeverageManagementOnPriceSubData = exports.liquityV2CloseSubData = exports.liquityV2LeverageManagementSubData = exports.liquityDebtInFrontRepaySubData = exports.liquityDsrSupplySubData = exports.liquityDsrPaybackSubData = exports.liquityCloseSubData = exports.liquityLeverageManagementSubData = exports.legacyLiquityLeverageManagementSubData = exports.liquityRepayFromSavingsSubData = exports.makerLiquidationProtectionSubData = exports.makerLeverageManagementSubData = exports.legacyMakerLeverageManagementSubData = exports.makerCloseSubData = exports.makerRepayFromSavingsSubData = exports.liquityPaybackUsingChickenBondSubData = exports.cBondsRebondSubData = exports.morphoAaveV2LeverageManagementSubData = void 0;
|
|
7
7
|
exports.fluidLiquidationProtectionSubData = exports.fluidLeverageManagementSubData = exports.morphoBlueCloseOnPriceSubData = exports.morphoBlueLeverageManagementOnPriceSubData = exports.morphoBlueLiquidationProtectionSubData = exports.morphoBlueLeverageManagementSubData = exports.crvUSDPaybackSubData = void 0;
|
|
8
8
|
const decimal_js_1 = __importDefault(require("decimal.js"));
|
|
9
9
|
const web3_eth_abi_1 = __importDefault(require("web3-eth-abi"));
|
|
@@ -22,16 +22,6 @@ 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
|
-
},
|
|
35
25
|
decode(subData) {
|
|
36
26
|
const ratioWei = web3_eth_abi_1.default.decodeParameter('uint128', subData[1]);
|
|
37
27
|
const targetRatio = (0, utils_1.weiToRatioPercentage)(ratioWei);
|
|
@@ -39,10 +29,6 @@ exports.morphoAaveV2LeverageManagementSubData = {
|
|
|
39
29
|
},
|
|
40
30
|
};
|
|
41
31
|
exports.cBondsRebondSubData = {
|
|
42
|
-
encode(bondId) {
|
|
43
|
-
const bondIdEncoded = web3_eth_abi_1.default.encodeParameter('uint256', bondId);
|
|
44
|
-
return [bondIdEncoded];
|
|
45
|
-
},
|
|
46
32
|
decode(subData) {
|
|
47
33
|
const bondId = web3_eth_abi_1.default.decodeParameter('uint256', subData[1]).toString();
|
|
48
34
|
return { bondId };
|
|
@@ -124,7 +110,7 @@ exports.makerCloseSubData = {
|
|
|
124
110
|
};
|
|
125
111
|
},
|
|
126
112
|
};
|
|
127
|
-
exports.
|
|
113
|
+
exports.legacyMakerLeverageManagementSubData = {
|
|
128
114
|
decode: (subData) => {
|
|
129
115
|
const vaultId = +web3_eth_abi_1.default.decodeParameter('uint256', subData[0]).toString();
|
|
130
116
|
const weiRatio = web3_eth_abi_1.default.decodeParameter('uint256', subData[1]);
|
|
@@ -132,23 +118,7 @@ exports.makerLeverageManagementSubData = {
|
|
|
132
118
|
return { vaultId, targetRatio };
|
|
133
119
|
},
|
|
134
120
|
};
|
|
135
|
-
|
|
136
|
-
// ! Double check before changing
|
|
137
|
-
exports.makerLeverageManagementWithoutSubProxy = {
|
|
138
|
-
encode(vaultId, targetRatio, daiAddr) {
|
|
139
|
-
const encodedVaultId = web3_eth_abi_1.default.encodeParameter('uint256', vaultId);
|
|
140
|
-
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
141
|
-
const encodedDaiAddr = web3_eth_abi_1.default.encodeParameter('address', daiAddr || (0, tokens_1.getAssetInfo)('DAI', 1).address);
|
|
142
|
-
return [encodedVaultId, encodedTargetRatio, encodedDaiAddr];
|
|
143
|
-
},
|
|
144
|
-
decode(subData) {
|
|
145
|
-
const vaultId = +web3_eth_abi_1.default.decodeParameter('uint256', subData[0]).toString();
|
|
146
|
-
const targetRatio = (0, utils_1.weiToRatioPercentage)(web3_eth_abi_1.default.decodeParameter('uint256', subData[1]));
|
|
147
|
-
const daiAddr = web3_eth_abi_1.default.decodeParameter('address', subData[2]).toString();
|
|
148
|
-
return { vaultId, targetRatio, daiAddr };
|
|
149
|
-
},
|
|
150
|
-
};
|
|
151
|
-
exports.makerLiquidationProtectionSubData = {
|
|
121
|
+
exports.makerLeverageManagementSubData = {
|
|
152
122
|
encode(vaultId, targetRatio, daiAddr) {
|
|
153
123
|
const encodedVaultId = web3_eth_abi_1.default.encodeParameter('uint256', vaultId);
|
|
154
124
|
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
@@ -162,6 +132,7 @@ exports.makerLiquidationProtectionSubData = {
|
|
|
162
132
|
return { vaultId, targetRatio, daiAddr };
|
|
163
133
|
},
|
|
164
134
|
};
|
|
135
|
+
exports.makerLiquidationProtectionSubData = exports.makerLeverageManagementSubData;
|
|
165
136
|
/**
|
|
166
137
|
__ __ ______ __ __ __ .___________.____ ____ ____ ____ __
|
|
167
138
|
| | | | / __ \ | | | | | | | |\ \ / / \ \ / / /_ |
|
|
@@ -177,14 +148,14 @@ exports.liquityRepayFromSavingsSubData = {
|
|
|
177
148
|
return { targetRatio };
|
|
178
149
|
},
|
|
179
150
|
};
|
|
180
|
-
exports.
|
|
151
|
+
exports.legacyLiquityLeverageManagementSubData = {
|
|
181
152
|
decode: (subData) => {
|
|
182
153
|
const weiRatio = web3_eth_abi_1.default.decodeParameter('uint256', subData[1]);
|
|
183
154
|
const targetRatio = (0, utils_1.weiToRatioPercentage)(weiRatio);
|
|
184
155
|
return { targetRatio };
|
|
185
156
|
},
|
|
186
157
|
};
|
|
187
|
-
exports.
|
|
158
|
+
exports.liquityLeverageManagementSubData = {
|
|
188
159
|
encode(targetRatio, ratioState) {
|
|
189
160
|
const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
190
161
|
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
@@ -415,24 +386,14 @@ exports.liquityV2PaybackSubData = {
|
|
|
415
386
|
/ _____ \ / _____ \ \ / | |____ \ / / /_
|
|
416
387
|
/__/ \__\ /__/ \__\ \__/ |_______| \__/ |____|
|
|
417
388
|
*/
|
|
418
|
-
exports.
|
|
419
|
-
encode(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
|
|
420
|
-
return [
|
|
421
|
-
new decimal_js_1.default(triggerRepayRatio).mul(1e16).toString(),
|
|
422
|
-
new decimal_js_1.default(triggerBoostRatio).mul(1e16).toString(),
|
|
423
|
-
new decimal_js_1.default(targetBoostRatio).mul(1e16).toString(),
|
|
424
|
-
new decimal_js_1.default(targetRepayRatio).mul(1e16).toString(),
|
|
425
|
-
// @ts-ignore // TODO
|
|
426
|
-
boostEnabled,
|
|
427
|
-
];
|
|
428
|
-
},
|
|
389
|
+
exports.legacyAaveV2LeverageManagementSubData = {
|
|
429
390
|
decode(subData) {
|
|
430
391
|
const ratioWei = web3_eth_abi_1.default.decodeParameter('uint256', subData[1]);
|
|
431
392
|
const targetRatio = (0, utils_1.weiToRatioPercentage)(ratioWei);
|
|
432
393
|
return { targetRatio };
|
|
433
394
|
},
|
|
434
395
|
};
|
|
435
|
-
exports.
|
|
396
|
+
exports.aaveV2LeverageManagementSubData = {
|
|
436
397
|
encode(market, targetRatio, ratioState) {
|
|
437
398
|
const encodedMarket = web3_eth_abi_1.default.encodeParameter('address', market);
|
|
438
399
|
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
@@ -459,16 +420,14 @@ exports.aaveV2LeverageManagementSubDataWithoutSubProxy = {
|
|
|
459
420
|
/ _____ \ / _____ \ \ / | |____ \ / ___) |
|
|
460
421
|
/__/ \__\ /__/ \__\ \__/ |_______| \__/ |____/
|
|
461
422
|
*/
|
|
462
|
-
exports.
|
|
423
|
+
exports.legacyAaveV3LeverageManagementSubData = {
|
|
463
424
|
decode(subData) {
|
|
464
425
|
const ratioWei = web3_eth_abi_1.default.decodeParameter('uint256', subData[0]);
|
|
465
426
|
const targetRatio = (0, utils_1.weiToRatioPercentage)(ratioWei);
|
|
466
427
|
return { targetRatio };
|
|
467
428
|
},
|
|
468
429
|
};
|
|
469
|
-
|
|
470
|
-
// ! Double check before changing. Liquidation protection is using Generic encoding for both - EOA and SW
|
|
471
|
-
exports.aaveV3LeverageManagementSubDataWithoutSubProxy = {
|
|
430
|
+
exports.aaveV3LeverageManagementSubData = {
|
|
472
431
|
encode(targetRatio, ratioState, market, user, isGeneric) {
|
|
473
432
|
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
474
433
|
const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
@@ -487,20 +446,7 @@ exports.aaveV3LeverageManagementSubDataWithoutSubProxy = {
|
|
|
487
446
|
return { targetRatio, ratioState };
|
|
488
447
|
},
|
|
489
448
|
};
|
|
490
|
-
exports.aaveV3LiquidationProtectionSubData =
|
|
491
|
-
encode(targetRatio, ratioState, market, user) {
|
|
492
|
-
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
493
|
-
const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
494
|
-
const encodedMarket = web3_eth_abi_1.default.encodeParameter('address', market);
|
|
495
|
-
const encodedUser = web3_eth_abi_1.default.encodeParameter('address', user);
|
|
496
|
-
return [encodedTargetRatio, encodedRatioState, encodedMarket, encodedUser];
|
|
497
|
-
},
|
|
498
|
-
decode(subData) {
|
|
499
|
-
const targetRatio = (0, utils_1.weiToRatioPercentage)(web3_eth_abi_1.default.decodeParameter('uint256', subData[0]));
|
|
500
|
-
const ratioState = web3_eth_abi_1.default.decodeParameter('uint8', subData[1]);
|
|
501
|
-
return { targetRatio, ratioState };
|
|
502
|
-
},
|
|
503
|
-
};
|
|
449
|
+
exports.aaveV3LiquidationProtectionSubData = exports.aaveV3LeverageManagementSubData;
|
|
504
450
|
exports.aaveV3LeverageManagementOnPriceGeneric = {
|
|
505
451
|
encode(collAsset, collAssetId, debtAsset, debtAssetId, marketAddr, targetRatio, user) {
|
|
506
452
|
const encodedColl = web3_eth_abi_1.default.encodeParameter('address', collAsset);
|
|
@@ -662,8 +608,6 @@ exports.aaveV3LeverageManagementOnPriceSubData = {
|
|
|
662
608
|
/ _____ \ / _____ \ \ / | |____ \ / | |
|
|
663
609
|
/__/ \__\ /__/ \__\ \__/ |_______| \__/ |_|
|
|
664
610
|
*/
|
|
665
|
-
// ! Any change here will PROBABLY require a change in aaveV4LiquidationProtectionSubData as well, since it is copy paste
|
|
666
|
-
// ! Double check before changing
|
|
667
611
|
exports.aaveV4LeverageManagementSubData = {
|
|
668
612
|
encode: (spoke, owner, ratioState, targetRatio) => {
|
|
669
613
|
const spokeEncoded = web3_eth_abi_1.default.encodeParameter('address', spoke);
|
|
@@ -690,32 +634,7 @@ exports.aaveV4LeverageManagementSubData = {
|
|
|
690
634
|
};
|
|
691
635
|
},
|
|
692
636
|
};
|
|
693
|
-
exports.aaveV4LiquidationProtectionSubData =
|
|
694
|
-
encode: (spoke, owner, ratioState, targetRatio) => {
|
|
695
|
-
const spokeEncoded = web3_eth_abi_1.default.encodeParameter('address', spoke);
|
|
696
|
-
const ownerEncoded = web3_eth_abi_1.default.encodeParameter('address', owner);
|
|
697
|
-
const ratioStateEncoded = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
698
|
-
const targetRatioEncoded = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
699
|
-
// Add two empty slots for future addons (e.g tsi or slippage settings)
|
|
700
|
-
return [
|
|
701
|
-
spokeEncoded,
|
|
702
|
-
ownerEncoded,
|
|
703
|
-
ratioStateEncoded,
|
|
704
|
-
targetRatioEncoded,
|
|
705
|
-
constants_1.EMPTY_SLOT,
|
|
706
|
-
constants_1.EMPTY_SLOT,
|
|
707
|
-
];
|
|
708
|
-
},
|
|
709
|
-
decode: (subData) => {
|
|
710
|
-
const spoke = web3_eth_abi_1.default.decodeParameter('address', subData[0]);
|
|
711
|
-
const owner = web3_eth_abi_1.default.decodeParameter('address', subData[1]);
|
|
712
|
-
const ratioState = Number(web3_eth_abi_1.default.decodeParameter('uint8', subData[2]));
|
|
713
|
-
const targetRatio = (0, utils_1.weiToRatioPercentage)(web3_eth_abi_1.default.decodeParameter('uint256', subData[3]));
|
|
714
|
-
return {
|
|
715
|
-
spoke, owner, ratioState, targetRatio,
|
|
716
|
-
};
|
|
717
|
-
},
|
|
718
|
-
};
|
|
637
|
+
exports.aaveV4LiquidationProtectionSubData = exports.aaveV4LeverageManagementSubData;
|
|
719
638
|
exports.aaveV4LeverageManagementOnPriceSubData = {
|
|
720
639
|
encode: (spoke, owner, collAsset, collAssetId, debtAsset, debtAssetId, ratioState, targetRatio) => {
|
|
721
640
|
const spokeEncoded = web3_eth_abi_1.default.encodeParameter('address', spoke);
|
|
@@ -832,24 +751,14 @@ exports.aaveV4CollateralSwitchSubData = {
|
|
|
832
751
|
| `----.| `--' | | | | | | | \ / / /_
|
|
833
752
|
\______| \______/ |__| |__| | _| \__/ |____|
|
|
834
753
|
*/
|
|
835
|
-
exports.
|
|
836
|
-
encode(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
|
|
837
|
-
return [
|
|
838
|
-
new decimal_js_1.default(triggerRepayRatio).mul(1e16).toString(),
|
|
839
|
-
new decimal_js_1.default(triggerBoostRatio).mul(1e16).toString(),
|
|
840
|
-
new decimal_js_1.default(targetBoostRatio).mul(1e16).toString(),
|
|
841
|
-
new decimal_js_1.default(targetRepayRatio).mul(1e16).toString(),
|
|
842
|
-
// @ts-ignore // TODO
|
|
843
|
-
boostEnabled,
|
|
844
|
-
];
|
|
845
|
-
},
|
|
754
|
+
exports.legacyCompoundV2LeverageManagementSubData = {
|
|
846
755
|
decode(subData) {
|
|
847
756
|
const weiRatio = web3_eth_abi_1.default.decodeParameter('uint256', subData[0]);
|
|
848
757
|
const targetRatio = (0, utils_1.weiToRatioPercentage)(weiRatio);
|
|
849
758
|
return { targetRatio };
|
|
850
759
|
},
|
|
851
760
|
};
|
|
852
|
-
exports.
|
|
761
|
+
exports.compoundV2LeverageManagementSubData = {
|
|
853
762
|
encode(targetRatio, ratioState) {
|
|
854
763
|
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
855
764
|
const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
@@ -874,27 +783,7 @@ exports.compoundV2LeverageManagementSubDataWithoutSubProxy = {
|
|
|
874
783
|
| `----.| `--' | | | | | | | \ / ___) |
|
|
875
784
|
\______| \______/ |__| |__| | _| \__/ |____/
|
|
876
785
|
*/
|
|
877
|
-
|
|
878
|
-
// ! Double check before changing
|
|
879
|
-
exports.compoundV3LeverageManagementSubDataWithoutSubProxy = {
|
|
880
|
-
encode(market, baseToken, targetRatio, ratioState) {
|
|
881
|
-
const encodedMarket = web3_eth_abi_1.default.encodeParameter('address', market);
|
|
882
|
-
const encodedBaseToken = web3_eth_abi_1.default.encodeParameter('address', baseToken);
|
|
883
|
-
const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
884
|
-
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
885
|
-
return [encodedMarket, encodedBaseToken, encodedRatioState, encodedTargetRatio];
|
|
886
|
-
},
|
|
887
|
-
decode(subData) {
|
|
888
|
-
const market = web3_eth_abi_1.default.decodeParameter('address', subData[0]);
|
|
889
|
-
const baseToken = web3_eth_abi_1.default.decodeParameter('address', subData[1]);
|
|
890
|
-
const ratioState = web3_eth_abi_1.default.decodeParameter('uint8', subData[2]);
|
|
891
|
-
const targetRatio = (0, utils_1.weiToRatioPercentage)(web3_eth_abi_1.default.decodeParameter('uint256', subData[3]));
|
|
892
|
-
return {
|
|
893
|
-
market, baseToken, targetRatio, ratioState,
|
|
894
|
-
};
|
|
895
|
-
},
|
|
896
|
-
};
|
|
897
|
-
exports.compoundV3LiquidationProtectionSubDataWithoutSubProxy = {
|
|
786
|
+
exports.compoundV3LeverageManagementSubData = {
|
|
898
787
|
encode(market, baseToken, targetRatio, ratioState) {
|
|
899
788
|
const encodedMarket = web3_eth_abi_1.default.encodeParameter('address', market);
|
|
900
789
|
const encodedBaseToken = web3_eth_abi_1.default.encodeParameter('address', baseToken);
|
|
@@ -912,6 +801,7 @@ exports.compoundV3LiquidationProtectionSubDataWithoutSubProxy = {
|
|
|
912
801
|
};
|
|
913
802
|
},
|
|
914
803
|
};
|
|
804
|
+
exports.compoundV3LiquidationProtectionSubData = exports.compoundV3LeverageManagementSubData;
|
|
915
805
|
exports.compoundV3LeverageManagementOnPriceSubData = {
|
|
916
806
|
encode(market, collToken, baseToken, targetRatio, ratioState, user) {
|
|
917
807
|
const marketEncoded = web3_eth_abi_1.default.encodeParameter('address', market);
|
|
@@ -997,17 +887,7 @@ exports.exchangeDcaSubData = {
|
|
|
997
887
|
};
|
|
998
888
|
},
|
|
999
889
|
};
|
|
1000
|
-
exports.
|
|
1001
|
-
encode(fromToken, toToken, amount, targetPrice, goodUntil, orderType) {
|
|
1002
|
-
return [
|
|
1003
|
-
fromToken,
|
|
1004
|
-
toToken,
|
|
1005
|
-
amount,
|
|
1006
|
-
targetPrice,
|
|
1007
|
-
new decimal_js_1.default(goodUntil).toString(),
|
|
1008
|
-
new decimal_js_1.default(orderType).toString(),
|
|
1009
|
-
];
|
|
1010
|
-
},
|
|
890
|
+
exports.legacyExchangeLimitOrderSubData = {
|
|
1011
891
|
decode: (subData, chainId) => {
|
|
1012
892
|
const fromToken = web3_eth_abi_1.default.decodeParameter('address', subData[0]).toString();
|
|
1013
893
|
const toToken = web3_eth_abi_1.default.decodeParameter('address', subData[1]).toString();
|
|
@@ -1015,7 +895,7 @@ exports.exchangeLimitOrderSubData = {
|
|
|
1015
895
|
return { fromToken, toToken, amount };
|
|
1016
896
|
},
|
|
1017
897
|
};
|
|
1018
|
-
exports.
|
|
898
|
+
exports.exchangeLimitOrderSubData = {
|
|
1019
899
|
encode(fromToken, toToken, amount) {
|
|
1020
900
|
return [
|
|
1021
901
|
web3_eth_abi_1.default.encodeParameter('address', fromToken),
|
|
@@ -1038,30 +918,14 @@ exports.exchangeLimitOrderSubDataWithoutSubProxy = {
|
|
|
1038
918
|
.----) | | | / _____ \ | |\ \----.| . \
|
|
1039
919
|
|_______/ | _| /__/ \__\ | _| `._____||__|\__\
|
|
1040
920
|
*/
|
|
1041
|
-
exports.
|
|
921
|
+
exports.legacySparkLeverageManagementSubData = {
|
|
1042
922
|
decode(subData) {
|
|
1043
923
|
const ratioWei = web3_eth_abi_1.default.decodeParameter('uint256', subData[0]);
|
|
1044
924
|
const targetRatio = (0, utils_1.weiToRatioPercentage)(ratioWei);
|
|
1045
925
|
return { targetRatio };
|
|
1046
926
|
},
|
|
1047
927
|
};
|
|
1048
|
-
|
|
1049
|
-
// ! Double check before changing
|
|
1050
|
-
exports.sparkLeverageManagementSubDataWithoutSubProxy = {
|
|
1051
|
-
encode(targetRatio, ratioState) {
|
|
1052
|
-
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
1053
|
-
const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
1054
|
-
const encodedUseDefaultMarket = web3_eth_abi_1.default.encodeParameter('bool', true);
|
|
1055
|
-
const encodedUseOnBehalf = web3_eth_abi_1.default.encodeParameter('bool', false);
|
|
1056
|
-
return [encodedTargetRatio, encodedRatioState, encodedUseDefaultMarket, encodedUseOnBehalf];
|
|
1057
|
-
},
|
|
1058
|
-
decode(subData) {
|
|
1059
|
-
const targetRatio = (0, utils_1.weiToRatioPercentage)(web3_eth_abi_1.default.decodeParameter('uint256', subData[0]));
|
|
1060
|
-
const ratioState = web3_eth_abi_1.default.decodeParameter('uint8', subData[1]);
|
|
1061
|
-
return { targetRatio, ratioState };
|
|
1062
|
-
},
|
|
1063
|
-
};
|
|
1064
|
-
exports.sparkLiquidationProtectionSubData = {
|
|
928
|
+
exports.sparkLeverageManagementSubData = {
|
|
1065
929
|
encode(targetRatio, ratioState) {
|
|
1066
930
|
const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
1067
931
|
const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
@@ -1075,6 +939,7 @@ exports.sparkLiquidationProtectionSubData = {
|
|
|
1075
939
|
return { targetRatio, ratioState };
|
|
1076
940
|
},
|
|
1077
941
|
};
|
|
942
|
+
exports.sparkLiquidationProtectionSubData = exports.sparkLeverageManagementSubData;
|
|
1078
943
|
exports.sparkCloseGenericSubData = {
|
|
1079
944
|
encode(collAsset, collAssetId, debtAsset, debtAssetId, closeType, marketAddr, user) {
|
|
1080
945
|
const encodedColl = web3_eth_abi_1.default.encodeParameter('address', collAsset);
|
|
@@ -1223,8 +1088,6 @@ exports.crvUSDPaybackSubData = {
|
|
|
1223
1088
|
| | | | | `--' | | |\ \----.| | | | | | | `--' |
|
|
1224
1089
|
|__| |__| \______/ | _| `._____|| _| |__| |__| \______/
|
|
1225
1090
|
*/
|
|
1226
|
-
// ! Any change here will PROBABLY require a change in morphoBlueLiquidationProtectionSubData as well, since it is copy paste
|
|
1227
|
-
// ! Double check before changing
|
|
1228
1091
|
exports.morphoBlueLeverageManagementSubData = {
|
|
1229
1092
|
encode: (loanToken, collToken, oracle, irm, lltv, ratioState, targetRatio, user, isEOA) => {
|
|
1230
1093
|
const loanTokenEncoded = web3_eth_abi_1.default.encodeParameter('address', loanToken);
|
|
@@ -1258,39 +1121,7 @@ exports.morphoBlueLeverageManagementSubData = {
|
|
|
1258
1121
|
};
|
|
1259
1122
|
},
|
|
1260
1123
|
};
|
|
1261
|
-
exports.morphoBlueLiquidationProtectionSubData =
|
|
1262
|
-
encode: (loanToken, collToken, oracle, irm, lltv, ratioState, targetRatio, user, isEOA) => {
|
|
1263
|
-
const loanTokenEncoded = web3_eth_abi_1.default.encodeParameter('address', loanToken);
|
|
1264
|
-
const collTokenEncoded = web3_eth_abi_1.default.encodeParameter('address', collToken);
|
|
1265
|
-
const oracleEncoded = web3_eth_abi_1.default.encodeParameter('address', oracle);
|
|
1266
|
-
const irmEncoded = web3_eth_abi_1.default.encodeParameter('address', irm);
|
|
1267
|
-
const lltvEncoded = web3_eth_abi_1.default.encodeParameter('uint256', lltv);
|
|
1268
|
-
const ratioStateEncoded = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
1269
|
-
const targetRatioEncoded = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
1270
|
-
const userEncoded = web3_eth_abi_1.default.encodeParameter('address', user);
|
|
1271
|
-
const isEOAEncoded = web3_eth_abi_1.default.encodeParameter('bool', isEOA);
|
|
1272
|
-
return [loanTokenEncoded, collTokenEncoded, oracleEncoded, irmEncoded, lltvEncoded, ratioStateEncoded, targetRatioEncoded, userEncoded, isEOAEncoded];
|
|
1273
|
-
},
|
|
1274
|
-
decode: (subData) => {
|
|
1275
|
-
const loanToken = web3_eth_abi_1.default.decodeParameter('address', subData[0]);
|
|
1276
|
-
const collToken = web3_eth_abi_1.default.decodeParameter('address', subData[1]);
|
|
1277
|
-
const oracle = web3_eth_abi_1.default.decodeParameter('address', subData[2]);
|
|
1278
|
-
const irm = web3_eth_abi_1.default.decodeParameter('address', subData[3]);
|
|
1279
|
-
const lltv = web3_eth_abi_1.default.decodeParameter('uint256', subData[4]);
|
|
1280
|
-
const weiRatio = web3_eth_abi_1.default.decodeParameter('uint256', subData[6]);
|
|
1281
|
-
const user = web3_eth_abi_1.default.decodeParameter('address', subData[7]);
|
|
1282
|
-
const targetRatio = (0, utils_1.weiToRatioPercentage)(weiRatio);
|
|
1283
|
-
return {
|
|
1284
|
-
loanToken,
|
|
1285
|
-
collToken,
|
|
1286
|
-
oracle,
|
|
1287
|
-
irm,
|
|
1288
|
-
lltv,
|
|
1289
|
-
user,
|
|
1290
|
-
targetRatio,
|
|
1291
|
-
};
|
|
1292
|
-
},
|
|
1293
|
-
};
|
|
1124
|
+
exports.morphoBlueLiquidationProtectionSubData = exports.morphoBlueLeverageManagementSubData;
|
|
1294
1125
|
exports.morphoBlueLeverageManagementOnPriceSubData = {
|
|
1295
1126
|
encode(loanToken, collToken, oracle, irm, lltv, targetRatio, user) {
|
|
1296
1127
|
const loanTokenEncoded = web3_eth_abi_1.default.encodeParameter('address', loanToken);
|
|
@@ -1360,8 +1191,6 @@ _______ __ __ __ __ _______
|
|
|
1360
1191
|
| | | `----.| `--' | | | | '--' |
|
|
1361
1192
|
|__| |_______| \______/ |__| |_______/
|
|
1362
1193
|
*/
|
|
1363
|
-
// ! Any change here will PROBABLY require a change in fluidLeverageManagementSubData as well, since it is copy paste
|
|
1364
|
-
// ! Double check before changing
|
|
1365
1194
|
exports.fluidLeverageManagementSubData = {
|
|
1366
1195
|
encode: (nftId, vault, ratioState, targetRatio) => {
|
|
1367
1196
|
const nftIdEncoded = web3_eth_abi_1.default.encodeParameter('uint256', nftId);
|
|
@@ -1395,35 +1224,4 @@ exports.fluidLeverageManagementSubData = {
|
|
|
1395
1224
|
};
|
|
1396
1225
|
},
|
|
1397
1226
|
};
|
|
1398
|
-
exports.fluidLiquidationProtectionSubData =
|
|
1399
|
-
encode: (nftId, vault, ratioState, targetRatio) => {
|
|
1400
|
-
const nftIdEncoded = web3_eth_abi_1.default.encodeParameter('uint256', nftId);
|
|
1401
|
-
const vaultEncoded = web3_eth_abi_1.default.encodeParameter('address', vault);
|
|
1402
|
-
const ratioStateEncoded = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
|
|
1403
|
-
const targetRatioEncoded = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
|
|
1404
|
-
const wrapEthEncoded = web3_eth_abi_1.default.encodeParameter('bool', true);
|
|
1405
|
-
const collActionType = enums_1.CollActionType.WITHDRAW;
|
|
1406
|
-
const debtActionType = enums_1.DebtActionType.PAYBACK;
|
|
1407
|
-
const collActionTypeEncoded = web3_eth_abi_1.default.encodeParameter('uint8', collActionType);
|
|
1408
|
-
const debtActionTypeEncoded = web3_eth_abi_1.default.encodeParameter('uint8', debtActionType);
|
|
1409
|
-
return [
|
|
1410
|
-
nftIdEncoded,
|
|
1411
|
-
vaultEncoded,
|
|
1412
|
-
ratioStateEncoded,
|
|
1413
|
-
targetRatioEncoded,
|
|
1414
|
-
wrapEthEncoded,
|
|
1415
|
-
collActionTypeEncoded,
|
|
1416
|
-
debtActionTypeEncoded,
|
|
1417
|
-
];
|
|
1418
|
-
},
|
|
1419
|
-
decode: (subData) => {
|
|
1420
|
-
const nftId = web3_eth_abi_1.default.decodeParameter('uint256', subData[0]);
|
|
1421
|
-
const vault = web3_eth_abi_1.default.decodeParameter('address', subData[1]);
|
|
1422
|
-
const ratioState = web3_eth_abi_1.default.decodeParameter('uint8', subData[2]);
|
|
1423
|
-
const weiRatio = web3_eth_abi_1.default.decodeParameter('uint256', subData[3]);
|
|
1424
|
-
const targetRatio = (0, utils_1.weiToRatioPercentage)(weiRatio);
|
|
1425
|
-
return {
|
|
1426
|
-
nftId, vault, ratioState, targetRatio,
|
|
1427
|
-
};
|
|
1428
|
-
},
|
|
1429
|
-
};
|
|
1227
|
+
exports.fluidLiquidationProtectionSubData = exports.fluidLeverageManagementSubData;
|