@defisaver/automation-sdk 3.3.15-liq-prot-2-dev → 3.3.16
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 +9 -124
- package/cjs/index.d.ts +3 -4
- package/cjs/index.js +2 -6
- package/cjs/services/strategiesService.js +1 -148
- package/cjs/services/strategySubService.d.ts +2 -9
- package/cjs/services/strategySubService.js +1 -52
- package/cjs/services/strategySubService.test.js +67 -0
- package/cjs/services/subDataService.d.ts +3 -58
- package/cjs/services/subDataService.js +18 -164
- package/cjs/services/subDataService.test.js +168 -0
- package/cjs/services/triggerService.test.js +60 -0
- package/cjs/services/utils.d.ts +1 -3
- package/cjs/services/utils.js +1 -34
- package/cjs/services/utils.test.js +0 -25
- package/cjs/types/enums.d.ts +6 -33
- package/cjs/types/enums.js +3 -30
- package/esm/constants/index.js +9 -124
- package/esm/index.d.ts +3 -4
- package/esm/index.js +3 -7
- package/esm/services/strategiesService.js +1 -148
- package/esm/services/strategySubService.d.ts +2 -9
- package/esm/services/strategySubService.js +2 -53
- package/esm/services/strategySubService.test.js +67 -0
- package/esm/services/subDataService.d.ts +3 -58
- package/esm/services/subDataService.js +16 -162
- package/esm/services/subDataService.test.js +168 -0
- package/esm/services/triggerService.test.js +61 -1
- package/esm/services/utils.d.ts +1 -3
- package/esm/services/utils.js +1 -32
- package/esm/services/utils.test.js +2 -27
- package/esm/types/enums.d.ts +6 -33
- package/esm/types/enums.js +3 -30
- package/package.json +1 -1
- package/src/constants/index.ts +10 -126
- package/src/index.ts +6 -24
- package/src/services/strategiesService.ts +1 -212
- package/src/services/strategySubService.test.ts +84 -0
- package/src/services/strategySubService.ts +5 -149
- package/src/services/subDataService.test.ts +182 -0
- package/src/services/subDataService.ts +22 -229
- package/src/services/triggerService.test.ts +69 -0
- package/src/services/utils.test.ts +1 -32
- package/src/services/utils.ts +1 -32
- package/src/types/enums.ts +5 -30
package/cjs/constants/index.js
CHANGED
|
@@ -549,59 +549,9 @@ exports.MAINNET_BUNDLES_INFO = {
|
|
|
549
549
|
strategyId: enums_1.Strategies.Identifiers.EoaCloseOnPrice,
|
|
550
550
|
protocol: exports.PROTOCOLS.AaveV4,
|
|
551
551
|
},
|
|
552
|
-
[enums_1.Bundles.MainnetIds.
|
|
553
|
-
strategyOrBundleId: enums_1.Bundles.MainnetIds.
|
|
554
|
-
strategyId: enums_1.Strategies.Identifiers.
|
|
555
|
-
protocol: exports.PROTOCOLS.MakerDAO,
|
|
556
|
-
},
|
|
557
|
-
[enums_1.Bundles.MainnetIds.AAVE_V3_SW_LIQUIDATION_PROTECTION]: {
|
|
558
|
-
strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V3_SW_LIQUIDATION_PROTECTION,
|
|
559
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
560
|
-
protocol: exports.PROTOCOLS.AaveV3,
|
|
561
|
-
},
|
|
562
|
-
[enums_1.Bundles.MainnetIds.AAVE_V4_SW_LIQUIDATION_PROTECTION]: {
|
|
563
|
-
strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V4_SW_LIQUIDATION_PROTECTION,
|
|
564
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
565
|
-
protocol: exports.PROTOCOLS.AaveV4,
|
|
566
|
-
},
|
|
567
|
-
[enums_1.Bundles.MainnetIds.SPARK_SW_LIQUIDATION_PROTECTION]: {
|
|
568
|
-
strategyOrBundleId: enums_1.Bundles.MainnetIds.SPARK_SW_LIQUIDATION_PROTECTION,
|
|
569
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
570
|
-
protocol: exports.PROTOCOLS.Spark,
|
|
571
|
-
},
|
|
572
|
-
[enums_1.Bundles.MainnetIds.COMP_V3_SW_LIQUIDATION_PROTECTION]: {
|
|
573
|
-
strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V3_SW_LIQUIDATION_PROTECTION,
|
|
574
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
575
|
-
protocol: exports.PROTOCOLS.CompoundV3,
|
|
576
|
-
},
|
|
577
|
-
[enums_1.Bundles.MainnetIds.COMP_V3_EOA_LIQUIDATION_PROTECTION]: {
|
|
578
|
-
strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V3_EOA_LIQUIDATION_PROTECTION,
|
|
579
|
-
strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
|
|
580
|
-
protocol: exports.PROTOCOLS.CompoundV3,
|
|
581
|
-
},
|
|
582
|
-
[enums_1.Bundles.MainnetIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION]: {
|
|
583
|
-
strategyOrBundleId: enums_1.Bundles.MainnetIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION,
|
|
584
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
585
|
-
protocol: exports.PROTOCOLS.MorphoBlue,
|
|
586
|
-
},
|
|
587
|
-
[enums_1.Bundles.MainnetIds.FLUID_T1_SW_LIQUIDATION_PROTECTION]: {
|
|
588
|
-
strategyOrBundleId: enums_1.Bundles.MainnetIds.FLUID_T1_SW_LIQUIDATION_PROTECTION,
|
|
589
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
590
|
-
protocol: exports.PROTOCOLS.FluidT1,
|
|
591
|
-
},
|
|
592
|
-
[enums_1.Bundles.MainnetIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION]: {
|
|
593
|
-
strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION,
|
|
594
|
-
strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
|
|
595
|
-
protocol: exports.PROTOCOLS.AaveV3,
|
|
596
|
-
},
|
|
597
|
-
[enums_1.Bundles.MainnetIds.AAVE_V4_EOA_LIQUIDATION_PROTECTION]: {
|
|
598
|
-
strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V4_EOA_LIQUIDATION_PROTECTION,
|
|
599
|
-
strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
|
|
600
|
-
protocol: exports.PROTOCOLS.AaveV4,
|
|
601
|
-
},
|
|
602
|
-
[enums_1.Bundles.MainnetIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION]: {
|
|
603
|
-
strategyOrBundleId: enums_1.Bundles.MainnetIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION,
|
|
604
|
-
strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
|
|
552
|
+
[enums_1.Bundles.MainnetIds.MORPHO_BLUE_REPAY_ON_PRICE]: {
|
|
553
|
+
strategyOrBundleId: enums_1.Bundles.MainnetIds.MORPHO_BLUE_REPAY_ON_PRICE,
|
|
554
|
+
strategyId: enums_1.Strategies.Identifiers.RepayOnPrice,
|
|
605
555
|
protocol: exports.PROTOCOLS.MorphoBlue,
|
|
606
556
|
},
|
|
607
557
|
};
|
|
@@ -661,16 +611,6 @@ exports.OPTIMISM_BUNDLES_INFO = {
|
|
|
661
611
|
strategyId: enums_1.Strategies.Identifiers.EoaCloseOnPrice,
|
|
662
612
|
protocol: exports.PROTOCOLS.AaveV3,
|
|
663
613
|
},
|
|
664
|
-
[enums_1.Bundles.OptimismIds.AAVE_V3_SW_LIQUIDATION_PROTECTION]: {
|
|
665
|
-
strategyOrBundleId: enums_1.Bundles.OptimismIds.AAVE_V3_SW_LIQUIDATION_PROTECTION,
|
|
666
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
667
|
-
protocol: exports.PROTOCOLS.AaveV3,
|
|
668
|
-
},
|
|
669
|
-
[enums_1.Bundles.OptimismIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION]: {
|
|
670
|
-
strategyOrBundleId: enums_1.Bundles.OptimismIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION,
|
|
671
|
-
strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
|
|
672
|
-
protocol: exports.PROTOCOLS.AaveV3,
|
|
673
|
-
},
|
|
674
614
|
};
|
|
675
615
|
exports.BASE_BUNDLES_INFO = {
|
|
676
616
|
[enums_1.Bundles.BaseIds.AAVE_V3_REPAY]: {
|
|
@@ -808,36 +748,11 @@ exports.BASE_BUNDLES_INFO = {
|
|
|
808
748
|
strategyId: enums_1.Strategies.Identifiers.CloseOnPrice,
|
|
809
749
|
protocol: exports.PROTOCOLS.MorphoBlue,
|
|
810
750
|
},
|
|
811
|
-
[enums_1.Bundles.BaseIds.
|
|
812
|
-
strategyOrBundleId: enums_1.Bundles.BaseIds.
|
|
813
|
-
strategyId: enums_1.Strategies.Identifiers.
|
|
814
|
-
protocol: exports.PROTOCOLS.AaveV3,
|
|
815
|
-
},
|
|
816
|
-
[enums_1.Bundles.BaseIds.COMP_V3_SW_LIQUIDATION_PROTECTION]: {
|
|
817
|
-
strategyOrBundleId: enums_1.Bundles.BaseIds.COMP_V3_SW_LIQUIDATION_PROTECTION,
|
|
818
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
819
|
-
protocol: exports.PROTOCOLS.CompoundV3,
|
|
820
|
-
},
|
|
821
|
-
[enums_1.Bundles.BaseIds.COMP_V3_EOA_LIQUIDATION_PROTECTION]: {
|
|
822
|
-
strategyOrBundleId: enums_1.Bundles.BaseIds.COMP_V3_EOA_LIQUIDATION_PROTECTION,
|
|
823
|
-
strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
|
|
824
|
-
protocol: exports.PROTOCOLS.CompoundV3,
|
|
825
|
-
},
|
|
826
|
-
[enums_1.Bundles.BaseIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION]: {
|
|
827
|
-
strategyOrBundleId: enums_1.Bundles.BaseIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION,
|
|
828
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
751
|
+
[enums_1.Bundles.BaseIds.MORPHO_BLUE_REPAY_ON_PRICE]: {
|
|
752
|
+
strategyOrBundleId: enums_1.Bundles.BaseIds.MORPHO_BLUE_REPAY_ON_PRICE,
|
|
753
|
+
strategyId: enums_1.Strategies.Identifiers.RepayOnPrice,
|
|
829
754
|
protocol: exports.PROTOCOLS.MorphoBlue,
|
|
830
755
|
},
|
|
831
|
-
[enums_1.Bundles.BaseIds.FLUID_T1_SW_LIQUIDATION_PROTECTION]: {
|
|
832
|
-
strategyOrBundleId: enums_1.Bundles.BaseIds.FLUID_T1_SW_LIQUIDATION_PROTECTION,
|
|
833
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
834
|
-
protocol: exports.PROTOCOLS.FluidT1,
|
|
835
|
-
},
|
|
836
|
-
[enums_1.Bundles.BaseIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION]: {
|
|
837
|
-
strategyOrBundleId: enums_1.Bundles.BaseIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION,
|
|
838
|
-
strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
|
|
839
|
-
protocol: exports.PROTOCOLS.AaveV3,
|
|
840
|
-
},
|
|
841
756
|
};
|
|
842
757
|
exports.ARBITRUM_BUNDLES_INFO = {
|
|
843
758
|
[enums_1.Bundles.ArbitrumIds.AAVE_V3_REPAY]: {
|
|
@@ -985,39 +900,9 @@ exports.ARBITRUM_BUNDLES_INFO = {
|
|
|
985
900
|
strategyId: enums_1.Strategies.Identifiers.CloseOnPrice,
|
|
986
901
|
protocol: exports.PROTOCOLS.MorphoBlue,
|
|
987
902
|
},
|
|
988
|
-
[enums_1.Bundles.ArbitrumIds.
|
|
989
|
-
strategyOrBundleId: enums_1.Bundles.ArbitrumIds.
|
|
990
|
-
strategyId: enums_1.Strategies.Identifiers.
|
|
991
|
-
protocol: exports.PROTOCOLS.AaveV3,
|
|
992
|
-
},
|
|
993
|
-
[enums_1.Bundles.ArbitrumIds.COMP_V3_SW_LIQUIDATION_PROTECTION]: {
|
|
994
|
-
strategyOrBundleId: enums_1.Bundles.ArbitrumIds.COMP_V3_SW_LIQUIDATION_PROTECTION,
|
|
995
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
996
|
-
protocol: exports.PROTOCOLS.CompoundV3,
|
|
997
|
-
},
|
|
998
|
-
[enums_1.Bundles.ArbitrumIds.COMP_V3_EOA_LIQUIDATION_PROTECTION]: {
|
|
999
|
-
strategyOrBundleId: enums_1.Bundles.ArbitrumIds.COMP_V3_EOA_LIQUIDATION_PROTECTION,
|
|
1000
|
-
strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
|
|
1001
|
-
protocol: exports.PROTOCOLS.CompoundV3,
|
|
1002
|
-
},
|
|
1003
|
-
[enums_1.Bundles.ArbitrumIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION]: {
|
|
1004
|
-
strategyOrBundleId: enums_1.Bundles.ArbitrumIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION,
|
|
1005
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
1006
|
-
protocol: exports.PROTOCOLS.MorphoBlue,
|
|
1007
|
-
},
|
|
1008
|
-
[enums_1.Bundles.ArbitrumIds.FLUID_T1_SW_LIQUIDATION_PROTECTION]: {
|
|
1009
|
-
strategyOrBundleId: enums_1.Bundles.ArbitrumIds.FLUID_T1_SW_LIQUIDATION_PROTECTION,
|
|
1010
|
-
strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
|
|
1011
|
-
protocol: exports.PROTOCOLS.FluidT1,
|
|
1012
|
-
},
|
|
1013
|
-
[enums_1.Bundles.ArbitrumIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION]: {
|
|
1014
|
-
strategyOrBundleId: enums_1.Bundles.ArbitrumIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION,
|
|
1015
|
-
strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
|
|
1016
|
-
protocol: exports.PROTOCOLS.AaveV3,
|
|
1017
|
-
},
|
|
1018
|
-
[enums_1.Bundles.ArbitrumIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION]: {
|
|
1019
|
-
strategyOrBundleId: enums_1.Bundles.ArbitrumIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION,
|
|
1020
|
-
strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
|
|
903
|
+
[enums_1.Bundles.ArbitrumIds.MORPHO_BLUE_REPAY_ON_PRICE]: {
|
|
904
|
+
strategyOrBundleId: enums_1.Bundles.ArbitrumIds.MORPHO_BLUE_REPAY_ON_PRICE,
|
|
905
|
+
strategyId: enums_1.Strategies.Identifiers.RepayOnPrice,
|
|
1021
906
|
protocol: exports.PROTOCOLS.MorphoBlue,
|
|
1022
907
|
},
|
|
1023
908
|
};
|
package/cjs/index.d.ts
CHANGED
|
@@ -13,13 +13,12 @@ import * as strategiesService from './services/strategiesService';
|
|
|
13
13
|
import * as constants from './constants';
|
|
14
14
|
import * as enums from './types/enums';
|
|
15
15
|
import type * as types from './types';
|
|
16
|
-
import { getRatioStateInfoForAaveCloseStrategy, compareSubHashes, encodeSubId, getCloseStrategyType
|
|
16
|
+
import { getRatioStateInfoForAaveCloseStrategy, compareSubHashes, encodeSubId, getCloseStrategyType } from './services/utils';
|
|
17
17
|
declare const utils: {
|
|
18
|
+
getRatioStateInfoForAaveCloseStrategy: typeof getRatioStateInfoForAaveCloseStrategy;
|
|
18
19
|
compareSubHashes: typeof compareSubHashes;
|
|
19
20
|
encodeSubId: typeof encodeSubId;
|
|
20
21
|
getCloseStrategyType: typeof getCloseStrategyType;
|
|
21
|
-
getCompoundV3LeverageManagementBundleId: typeof getCompoundV3LeverageManagementBundleId;
|
|
22
|
-
getRatioStateInfoForAaveCloseStrategy: typeof getRatioStateInfoForAaveCloseStrategy;
|
|
23
22
|
};
|
|
24
|
-
export {
|
|
23
|
+
export { LegacyMakerAutomation, LegacyAaveAutomation, LegacyCompoundAutomation, EthereumStrategies, OptimismStrategies, ArbitrumStrategies, BaseStrategies, triggerService, subDataService, strategySubService, utils, enums, constants, strategiesService, };
|
|
25
24
|
export type { types };
|
package/cjs/index.js
CHANGED
|
@@ -30,7 +30,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
30
30
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
31
31
|
};
|
|
32
32
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33
|
-
exports.
|
|
33
|
+
exports.strategiesService = exports.constants = exports.enums = exports.utils = exports.strategySubService = exports.subDataService = exports.triggerService = exports.BaseStrategies = exports.ArbitrumStrategies = exports.OptimismStrategies = exports.EthereumStrategies = exports.LegacyCompoundAutomation = exports.LegacyAaveAutomation = exports.LegacyMakerAutomation = void 0;
|
|
34
34
|
require("./configuration");
|
|
35
35
|
const LegacyMakerAutomation_1 = __importDefault(require("./automation/public/legacy/LegacyMakerAutomation"));
|
|
36
36
|
exports.LegacyMakerAutomation = LegacyMakerAutomation_1.default;
|
|
@@ -60,10 +60,6 @@ const enums = __importStar(require("./types/enums"));
|
|
|
60
60
|
exports.enums = enums;
|
|
61
61
|
const utils_1 = require("./services/utils");
|
|
62
62
|
const utils = {
|
|
63
|
-
compareSubHashes: utils_1.compareSubHashes,
|
|
64
|
-
encodeSubId: utils_1.encodeSubId,
|
|
65
|
-
getCloseStrategyType: utils_1.getCloseStrategyType,
|
|
66
|
-
getCompoundV3LeverageManagementBundleId: utils_1.getCompoundV3LeverageManagementBundleId,
|
|
67
|
-
getRatioStateInfoForAaveCloseStrategy: utils_1.getRatioStateInfoForAaveCloseStrategy,
|
|
63
|
+
getRatioStateInfoForAaveCloseStrategy: utils_1.getRatioStateInfoForAaveCloseStrategy, compareSubHashes: utils_1.compareSubHashes, encodeSubId: utils_1.encodeSubId, getCloseStrategyType: utils_1.getCloseStrategyType,
|
|
68
64
|
};
|
|
69
65
|
exports.utils = utils;
|
|
@@ -123,24 +123,6 @@ function parseMakerLeverageManagement(position, parseData) {
|
|
|
123
123
|
_position.strategy.strategyId = enums_1.Strategies.IdOverrides.LeverageManagement;
|
|
124
124
|
return _position;
|
|
125
125
|
}
|
|
126
|
-
function parseMakerLiquidationProtection(position, parseData) {
|
|
127
|
-
const _position = (0, lodash_1.cloneDeep)(position);
|
|
128
|
-
const { subStruct, subId } = parseData.subscriptionEventData;
|
|
129
|
-
const { isEnabled } = parseData.strategiesSubsData;
|
|
130
|
-
const triggerData = triggerService.makerRatioTrigger.decode(subStruct.triggerData);
|
|
131
|
-
const subData = subDataService.makerLiquidationProtectionSubData.decode(subStruct.subData);
|
|
132
|
-
_position.strategyData.decoded.triggerData = triggerData;
|
|
133
|
-
_position.strategyData.decoded.subData = subData;
|
|
134
|
-
_position.positionId = (0, utils_1.getPositionId)(_position.chainId, _position.protocol.id, subData.vaultId);
|
|
135
|
-
_position.specific = {
|
|
136
|
-
triggerRepayRatio: triggerData.ratio,
|
|
137
|
-
targetRepayRatio: subData.targetRatio,
|
|
138
|
-
repayEnabled: isEnabled,
|
|
139
|
-
subId1: Number(subId),
|
|
140
|
-
};
|
|
141
|
-
_position.strategy.strategyId = enums_1.Strategies.IdOverrides.LiquidationProtection;
|
|
142
|
-
return _position;
|
|
143
|
-
}
|
|
144
126
|
function parseLiquityCloseOnPrice(position, parseData) {
|
|
145
127
|
const _position = (0, lodash_1.cloneDeep)(position);
|
|
146
128
|
const { subStruct } = parseData.subscriptionEventData;
|
|
@@ -251,26 +233,6 @@ function parseAaveV3LeverageManagement(position, parseData) {
|
|
|
251
233
|
}
|
|
252
234
|
return _position;
|
|
253
235
|
}
|
|
254
|
-
function parseAaveV3LiquidationProtection(position, parseData) {
|
|
255
|
-
const _position = (0, lodash_1.cloneDeep)(position);
|
|
256
|
-
const { subStruct, subId, subHash } = parseData.subscriptionEventData;
|
|
257
|
-
const { isEnabled } = parseData.strategiesSubsData;
|
|
258
|
-
const triggerData = triggerService.aaveV3RatioTrigger.decode(subStruct.triggerData);
|
|
259
|
-
const subData = subDataService.aaveV3LiquidationProtectionSubData.decode(subStruct.subData);
|
|
260
|
-
_position.strategyData.decoded.triggerData = triggerData;
|
|
261
|
-
_position.strategyData.decoded.subData = subData;
|
|
262
|
-
_position.positionId = (0, utils_1.getPositionId)(_position.chainId, _position.protocol.id, _position.owner, triggerData.market);
|
|
263
|
-
_position.specific = {
|
|
264
|
-
triggerRepayRatio: triggerData.ratio,
|
|
265
|
-
targetRepayRatio: subData.targetRatio,
|
|
266
|
-
repayEnabled: isEnabled,
|
|
267
|
-
subId1: Number(subId),
|
|
268
|
-
subHashRepay: subHash,
|
|
269
|
-
};
|
|
270
|
-
const isEOA = _position.strategy.strategyId.includes('eoa');
|
|
271
|
-
_position.strategy.strategyId = isEOA ? enums_1.Strategies.IdOverrides.EoaLiquidationProtection : enums_1.Strategies.IdOverrides.LiquidationProtection;
|
|
272
|
-
return _position;
|
|
273
|
-
}
|
|
274
236
|
function parseAaveV3LeverageManagementOnPrice(position, parseData) {
|
|
275
237
|
const _position = (0, lodash_1.cloneDeep)(position);
|
|
276
238
|
const { subStruct } = parseData.subscriptionEventData;
|
|
@@ -400,26 +362,6 @@ function parseAaveV4LeverageManagement(position, parseData) {
|
|
|
400
362
|
}
|
|
401
363
|
return _position;
|
|
402
364
|
}
|
|
403
|
-
function parseAaveV4LiquidationProtection(position, parseData) {
|
|
404
|
-
const _position = (0, lodash_1.cloneDeep)(position);
|
|
405
|
-
const { subStruct, subId, subHash } = parseData.subscriptionEventData;
|
|
406
|
-
const { isEnabled } = parseData.strategiesSubsData;
|
|
407
|
-
const triggerData = triggerService.aaveV4RatioTrigger.decode(subStruct.triggerData);
|
|
408
|
-
const subData = subDataService.aaveV4LiquidationProtectionSubData.decode(subStruct.subData);
|
|
409
|
-
const isEOA = _position.strategy.strategyId.includes('eoa');
|
|
410
|
-
_position.strategyData.decoded.triggerData = triggerData;
|
|
411
|
-
_position.strategyData.decoded.subData = subData;
|
|
412
|
-
_position.positionId = (0, utils_1.getPositionId)(_position.chainId, _position.protocol.id, _position.owner, triggerData.spoke);
|
|
413
|
-
_position.strategy.strategyId = isEOA ? enums_1.Strategies.IdOverrides.EoaLiquidationProtection : enums_1.Strategies.IdOverrides.LiquidationProtection;
|
|
414
|
-
_position.specific = {
|
|
415
|
-
triggerRepayRatio: triggerData.ratio,
|
|
416
|
-
targetRepayRatio: subData.targetRatio,
|
|
417
|
-
repayEnabled: isEnabled,
|
|
418
|
-
subId1: Number(subId),
|
|
419
|
-
subHashRepay: subHash,
|
|
420
|
-
};
|
|
421
|
-
return _position;
|
|
422
|
-
}
|
|
423
365
|
function parseAaveV4LeverageManagementOnPrice(position, parseData) {
|
|
424
366
|
const _position = (0, lodash_1.cloneDeep)(position);
|
|
425
367
|
const { subStruct } = parseData.subscriptionEventData;
|
|
@@ -604,27 +546,6 @@ function parseCompoundV3LeverageManagement(position, parseData) {
|
|
|
604
546
|
_position.strategy.strategyId = isEOA ? enums_1.Strategies.IdOverrides.EoaLeverageManagement : enums_1.Strategies.IdOverrides.LeverageManagement;
|
|
605
547
|
return _position;
|
|
606
548
|
}
|
|
607
|
-
function parseCompoundV3LiquidationProtection(position, parseData) {
|
|
608
|
-
const _position = (0, lodash_1.cloneDeep)(position);
|
|
609
|
-
const { subStruct, subId, subHash } = parseData.subscriptionEventData;
|
|
610
|
-
const { isEnabled } = parseData.strategiesSubsData;
|
|
611
|
-
const subDataDecoder = subDataService.compoundV3LiquidationProtectionSubDataWithoutSubProxy;
|
|
612
|
-
const triggerData = triggerService.compoundV3RatioTrigger.decode(subStruct.triggerData);
|
|
613
|
-
const subData = subDataDecoder.decode(subStruct.subData);
|
|
614
|
-
_position.strategyData.decoded.triggerData = triggerData;
|
|
615
|
-
_position.strategyData.decoded.subData = subData;
|
|
616
|
-
_position.positionId = (0, utils_1.getPositionId)(_position.chainId, _position.protocol.id, triggerData.owner.toLowerCase(), triggerData.market);
|
|
617
|
-
const isEOA = _position.strategy.strategyId.includes('eoa');
|
|
618
|
-
_position.specific = {
|
|
619
|
-
triggerRepayRatio: triggerData.ratio,
|
|
620
|
-
targetRepayRatio: subData.targetRatio,
|
|
621
|
-
repayEnabled: isEnabled,
|
|
622
|
-
subId1: Number(subId),
|
|
623
|
-
subHashRepay: subHash,
|
|
624
|
-
};
|
|
625
|
-
_position.strategy.strategyId = isEOA ? enums_1.Strategies.IdOverrides.EoaLiquidationProtection : enums_1.Strategies.IdOverrides.LiquidationProtection;
|
|
626
|
-
return _position;
|
|
627
|
-
}
|
|
628
549
|
function parseCompoundV3LeverageManagementOnPrice(position, parseData) {
|
|
629
550
|
const _position = (0, lodash_1.cloneDeep)(position);
|
|
630
551
|
const { subStruct } = parseData.subscriptionEventData;
|
|
@@ -804,25 +725,6 @@ function parseSparkLeverageManagement(position, parseData) {
|
|
|
804
725
|
_position.strategy.strategyId = enums_1.Strategies.IdOverrides.LeverageManagement;
|
|
805
726
|
return _position;
|
|
806
727
|
}
|
|
807
|
-
function parseSparkLiquidationProtection(position, parseData) {
|
|
808
|
-
const _position = (0, lodash_1.cloneDeep)(position);
|
|
809
|
-
const { subStruct, subId, subHash } = parseData.subscriptionEventData;
|
|
810
|
-
const { isEnabled } = parseData.strategiesSubsData;
|
|
811
|
-
const triggerData = triggerService.sparkRatioTrigger.decode(subStruct.triggerData);
|
|
812
|
-
const subData = subDataService.sparkLiquidationProtectionSubData.decode(subStruct.subData);
|
|
813
|
-
_position.strategyData.decoded.triggerData = triggerData;
|
|
814
|
-
_position.strategyData.decoded.subData = subData;
|
|
815
|
-
_position.positionId = (0, utils_1.getPositionId)(_position.chainId, _position.protocol.id, _position.owner, triggerData.market);
|
|
816
|
-
_position.specific = {
|
|
817
|
-
triggerRepayRatio: triggerData.ratio,
|
|
818
|
-
targetRepayRatio: subData.targetRatio,
|
|
819
|
-
repayEnabled: isEnabled,
|
|
820
|
-
subId1: Number(subId),
|
|
821
|
-
subHashRepay: subHash,
|
|
822
|
-
};
|
|
823
|
-
_position.strategy.strategyId = enums_1.Strategies.IdOverrides.LiquidationProtection;
|
|
824
|
-
return _position;
|
|
825
|
-
}
|
|
826
728
|
function parseSparkLeverageManagementOnPrice(position, parseData) {
|
|
827
729
|
const _position = (0, lodash_1.cloneDeep)(position);
|
|
828
730
|
const { subStruct } = parseData.subscriptionEventData;
|
|
@@ -977,26 +879,6 @@ function parseMorphoBlueLeverageManagement(position, parseData) {
|
|
|
977
879
|
_position.strategy.strategyId = isEOA ? enums_1.Strategies.IdOverrides.EoaLeverageManagement : enums_1.Strategies.IdOverrides.LeverageManagement;
|
|
978
880
|
return _position;
|
|
979
881
|
}
|
|
980
|
-
function parseMorphoBlueLiquidationProtection(position, parseData) {
|
|
981
|
-
const _position = (0, lodash_1.cloneDeep)(position);
|
|
982
|
-
const { subStruct, subId, subHash } = parseData.subscriptionEventData;
|
|
983
|
-
const { isEnabled } = parseData.strategiesSubsData;
|
|
984
|
-
const triggerData = triggerService.morphoBlueRatioTrigger.decode(subStruct.triggerData);
|
|
985
|
-
const subData = subDataService.morphoBlueLiquidationProtectionSubData.decode(subStruct.subData);
|
|
986
|
-
_position.strategyData.decoded.triggerData = triggerData;
|
|
987
|
-
_position.strategyData.decoded.subData = subData;
|
|
988
|
-
_position.positionId = (0, utils_1.getPositionId)(_position.chainId, _position.protocol.id, triggerData.owner.toLowerCase(), triggerData.marketId);
|
|
989
|
-
_position.specific = {
|
|
990
|
-
triggerRepayRatio: triggerData.ratio,
|
|
991
|
-
targetRepayRatio: subData.targetRatio,
|
|
992
|
-
repayEnabled: isEnabled,
|
|
993
|
-
subId1: Number(subId),
|
|
994
|
-
subHashRepay: subHash,
|
|
995
|
-
};
|
|
996
|
-
const isEOA = _position.strategy.strategyId.includes('eoa');
|
|
997
|
-
_position.strategy.strategyId = isEOA ? enums_1.Strategies.IdOverrides.EoaLiquidationProtection : enums_1.Strategies.IdOverrides.LiquidationProtection;
|
|
998
|
-
return _position;
|
|
999
|
-
}
|
|
1000
882
|
function parseMorphoBlueLeverageManagementOnPrice(position, parseData) {
|
|
1001
883
|
const _position = (0, lodash_1.cloneDeep)(position);
|
|
1002
884
|
const { subStruct } = parseData.subscriptionEventData;
|
|
@@ -1149,25 +1031,6 @@ function parseFluidT1LeverageManagement(position, parseData) {
|
|
|
1149
1031
|
_position.strategy.strategyId = enums_1.Strategies.IdOverrides.LeverageManagement;
|
|
1150
1032
|
return _position;
|
|
1151
1033
|
}
|
|
1152
|
-
function parseFluidT1LiquidationProtection(position, parseData) {
|
|
1153
|
-
const _position = (0, lodash_1.cloneDeep)(position);
|
|
1154
|
-
const { subStruct, subId, subHash } = parseData.subscriptionEventData;
|
|
1155
|
-
const { isEnabled } = parseData.strategiesSubsData;
|
|
1156
|
-
const triggerData = triggerService.fluidRatioTrigger.decode(subStruct.triggerData);
|
|
1157
|
-
const subData = subDataService.fluidLiquidationProtectionSubData.decode(subStruct.subData);
|
|
1158
|
-
_position.strategyData.decoded.triggerData = triggerData;
|
|
1159
|
-
_position.strategyData.decoded.subData = subData;
|
|
1160
|
-
_position.positionId = (0, utils_1.getPositionId)(_position.chainId, _position.protocol.id, _position.owner, triggerData.nftId, subData.vault);
|
|
1161
|
-
_position.specific = {
|
|
1162
|
-
triggerRepayRatio: triggerData.ratio,
|
|
1163
|
-
targetRepayRatio: subData.targetRatio,
|
|
1164
|
-
repayEnabled: isEnabled,
|
|
1165
|
-
subId1: Number(subId),
|
|
1166
|
-
subHashRepay: subHash,
|
|
1167
|
-
};
|
|
1168
|
-
_position.strategy.strategyId = enums_1.Strategies.IdOverrides.LiquidationProtection;
|
|
1169
|
-
return _position;
|
|
1170
|
-
}
|
|
1171
1034
|
const parsingMethodsMapping = {
|
|
1172
1035
|
[enums_1.ProtocolIdentifiers.StrategiesAutomation.MakerDAO]: {
|
|
1173
1036
|
[enums_1.Strategies.Identifiers.SavingsLiqProtection]: parseMakerSavingsLiqProtection,
|
|
@@ -1177,7 +1040,6 @@ const parsingMethodsMapping = {
|
|
|
1177
1040
|
[enums_1.Strategies.Identifiers.TrailingStopToDebt]: parseMakerTrailingStop,
|
|
1178
1041
|
[enums_1.Strategies.Identifiers.Repay]: parseMakerLeverageManagement,
|
|
1179
1042
|
[enums_1.Strategies.Identifiers.Boost]: parseMakerLeverageManagement,
|
|
1180
|
-
[enums_1.Strategies.Identifiers.LiquidationProtection]: parseMakerLiquidationProtection,
|
|
1181
1043
|
},
|
|
1182
1044
|
[enums_1.ProtocolIdentifiers.StrategiesAutomation.Liquity]: {
|
|
1183
1045
|
[enums_1.Strategies.Identifiers.CloseOnPriceToColl]: parseLiquityCloseOnPrice,
|
|
@@ -1216,8 +1078,6 @@ const parsingMethodsMapping = {
|
|
|
1216
1078
|
[enums_1.Strategies.Identifiers.EoaBoostOnPrice]: parseAaveV3LeverageManagementOnPrice,
|
|
1217
1079
|
[enums_1.Strategies.Identifiers.EoaCloseOnPrice]: parseAaveV3CloseOnPrice,
|
|
1218
1080
|
[enums_1.Strategies.Identifiers.CollateralSwitch]: parseAaveV3CollateralSwitch,
|
|
1219
|
-
[enums_1.Strategies.Identifiers.LiquidationProtection]: parseAaveV3LiquidationProtection,
|
|
1220
|
-
[enums_1.Strategies.Identifiers.EoaLiquidationProtection]: parseAaveV3LiquidationProtection,
|
|
1221
1081
|
},
|
|
1222
1082
|
[enums_1.ProtocolIdentifiers.StrategiesAutomation.AaveV4]: {
|
|
1223
1083
|
[enums_1.Strategies.Identifiers.Repay]: parseAaveV4LeverageManagement,
|
|
@@ -1232,8 +1092,6 @@ const parsingMethodsMapping = {
|
|
|
1232
1092
|
[enums_1.Strategies.Identifiers.EoaCloseOnPrice]: parseAaveV4CloseOnPrice,
|
|
1233
1093
|
[enums_1.Strategies.Identifiers.CollateralSwitch]: parseAaveV4CollateralSwitch,
|
|
1234
1094
|
[enums_1.Strategies.Identifiers.EoaCollateralSwitch]: parseAaveV4CollateralSwitch,
|
|
1235
|
-
[enums_1.Strategies.Identifiers.LiquidationProtection]: parseAaveV4LiquidationProtection,
|
|
1236
|
-
[enums_1.Strategies.Identifiers.EoaLiquidationProtection]: parseAaveV4LiquidationProtection,
|
|
1237
1095
|
},
|
|
1238
1096
|
[enums_1.ProtocolIdentifiers.StrategiesAutomation.CompoundV2]: {
|
|
1239
1097
|
[enums_1.Strategies.Identifiers.Repay]: parseCompoundV2LeverageManagement,
|
|
@@ -1250,8 +1108,6 @@ const parsingMethodsMapping = {
|
|
|
1250
1108
|
[enums_1.Strategies.Identifiers.EoaBoostOnPrice]: parseCompoundV3LeverageManagementOnPrice,
|
|
1251
1109
|
[enums_1.Strategies.Identifiers.CloseOnPrice]: parseCompoundV3CloseOnPrice,
|
|
1252
1110
|
[enums_1.Strategies.Identifiers.EoaCloseOnPrice]: parseCompoundV3CloseOnPrice,
|
|
1253
|
-
[enums_1.Strategies.Identifiers.LiquidationProtection]: parseCompoundV3LiquidationProtection,
|
|
1254
|
-
[enums_1.Strategies.Identifiers.EoaLiquidationProtection]: parseCompoundV3LiquidationProtection,
|
|
1255
1111
|
},
|
|
1256
1112
|
[enums_1.ProtocolIdentifiers.StrategiesAutomation.ChickenBonds]: {
|
|
1257
1113
|
[enums_1.Strategies.Identifiers.Rebond]: parseChickenBondsRebond,
|
|
@@ -1271,7 +1127,6 @@ const parsingMethodsMapping = {
|
|
|
1271
1127
|
[enums_1.Strategies.Identifiers.BoostOnPrice]: parseSparkLeverageManagementOnPrice,
|
|
1272
1128
|
[enums_1.Strategies.Identifiers.CloseOnPrice]: parseSparkCloseOnPrice,
|
|
1273
1129
|
[enums_1.Strategies.Identifiers.CollateralSwitch]: parseSparkCollateralSwitch,
|
|
1274
|
-
[enums_1.Strategies.Identifiers.LiquidationProtection]: parseSparkLiquidationProtection,
|
|
1275
1130
|
},
|
|
1276
1131
|
[enums_1.ProtocolIdentifiers.StrategiesAutomation.CrvUSD]: {
|
|
1277
1132
|
[enums_1.Strategies.Identifiers.Repay]: parseCrvUSDLeverageManagement,
|
|
@@ -1284,14 +1139,12 @@ const parsingMethodsMapping = {
|
|
|
1284
1139
|
[enums_1.Strategies.Identifiers.EoaRepay]: parseMorphoBlueLeverageManagement,
|
|
1285
1140
|
[enums_1.Strategies.Identifiers.EoaBoost]: parseMorphoBlueLeverageManagement,
|
|
1286
1141
|
[enums_1.Strategies.Identifiers.BoostOnPrice]: parseMorphoBlueLeverageManagementOnPrice,
|
|
1142
|
+
[enums_1.Strategies.Identifiers.RepayOnPrice]: parseMorphoBlueLeverageManagementOnPrice,
|
|
1287
1143
|
[enums_1.Strategies.Identifiers.CloseOnPrice]: parseMorphoBlueCloseOnPrice,
|
|
1288
|
-
[enums_1.Strategies.Identifiers.LiquidationProtection]: parseMorphoBlueLiquidationProtection,
|
|
1289
|
-
[enums_1.Strategies.Identifiers.EoaLiquidationProtection]: parseMorphoBlueLiquidationProtection,
|
|
1290
1144
|
},
|
|
1291
1145
|
[enums_1.ProtocolIdentifiers.StrategiesAutomation.FluidT1]: {
|
|
1292
1146
|
[enums_1.Strategies.Identifiers.Repay]: parseFluidT1LeverageManagement,
|
|
1293
1147
|
[enums_1.Strategies.Identifiers.Boost]: parseFluidT1LeverageManagement,
|
|
1294
|
-
[enums_1.Strategies.Identifiers.LiquidationProtection]: parseFluidT1LiquidationProtection,
|
|
1295
1148
|
},
|
|
1296
1149
|
};
|
|
1297
1150
|
function getParsingMethod(id, strategy) {
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { Bundles, ChainId, CloseToAssetType, RatioState, Strategies } from '../types/enums';
|
|
2
|
-
import type { EthereumAddress, StrategyOrBundleIds } from '../types';
|
|
3
1
|
import type { OrderType } from '../types/enums';
|
|
2
|
+
import { CloseToAssetType, Bundles, ChainId, RatioState, Strategies } from '../types/enums';
|
|
3
|
+
import type { EthereumAddress, StrategyOrBundleIds } from '../types';
|
|
4
4
|
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
8
|
leverageManagementWithoutSubProxy(vaultId: number, triggerRatio: number, targetRatio: number, ratioState: RatioState, isBoost: boolean, daiAddr?: EthereumAddress): (boolean | string[] | Bundles.MainnetIds)[];
|
|
9
|
-
liquidationProtection(vaultId: number, triggerRatio: number, targetRatio: number, ratioState: RatioState, 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)[];
|
|
@@ -61,7 +60,6 @@ export declare const aaveV3Encode: {
|
|
|
61
60
|
targetRatio: number;
|
|
62
61
|
}): (number | boolean | string[])[];
|
|
63
62
|
leverageManagementWithoutSubProxy(strategyOrBundleId: number, market: EthereumAddress, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number, isGeneric?: boolean): (number | boolean | string[])[];
|
|
64
|
-
liquidationProtection(strategyOrBundleId: number, market: EthereumAddress, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
|
|
65
63
|
leverageManagementOnPriceGeneric(strategyOrBundleId: number, price: number, ratioState: RatioState, collAsset: EthereumAddress, collAssetId: number, debtAsset: EthereumAddress, debtAssetId: number, marketAddr: EthereumAddress, targetRatio: number, user: EthereumAddress): (number | boolean | string[])[];
|
|
66
64
|
closeOnPriceGeneric(strategyOrBundleId: number, collAsset: EthereumAddress, collAssetId: number, debtAsset: EthereumAddress, debtAssetId: number, marketAddr: EthereumAddress, user: EthereumAddress, stopLossPrice?: number, stopLossType?: CloseToAssetType, takeProfitPrice?: number, takeProfitType?: CloseToAssetType): (number | boolean | string[])[];
|
|
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[])[];
|
|
@@ -71,7 +69,6 @@ export declare const compoundV2Encode: {
|
|
|
71
69
|
};
|
|
72
70
|
export declare const compoundV3Encode: {
|
|
73
71
|
leverageManagementWithoutSubProxy(strategyOrBundleId: number, market: EthereumAddress, baseToken: EthereumAddress, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
|
|
74
|
-
liquidationProtectionWithoutSubProxy(strategyOrBundleId: number, market: EthereumAddress, baseToken: EthereumAddress, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
|
|
75
72
|
leverageManagementOnPrice(strategyOrBundleId: number, market: EthereumAddress, collToken: EthereumAddress, baseToken: EthereumAddress, targetRatio: number, price: number, priceState: RatioState, ratioState: RatioState, user: EthereumAddress): (number | boolean | string[])[];
|
|
76
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[])[];
|
|
77
74
|
};
|
|
@@ -98,7 +95,6 @@ export declare const sparkEncode: {
|
|
|
98
95
|
}): (number | boolean | string[])[];
|
|
99
96
|
closeOnPriceGeneric(strategyOrBundleId: number, collAsset: EthereumAddress, collAssetId: number, debtAsset: EthereumAddress, debtAssetId: number, marketAddr: EthereumAddress, user: EthereumAddress, stopLossPrice?: number, stopLossType?: CloseToAssetType, takeProfitPrice?: number, takeProfitType?: CloseToAssetType): (number | boolean | string[])[];
|
|
100
97
|
leverageManagementWithoutSubProxy(strategyOrBundleId: number, market: EthereumAddress, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
|
|
101
|
-
liquidationProtection(strategyOrBundleId: number, market: EthereumAddress, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
|
|
102
98
|
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[])[];
|
|
103
99
|
};
|
|
104
100
|
export declare const crvUSDEncode: {
|
|
@@ -107,7 +103,6 @@ export declare const crvUSDEncode: {
|
|
|
107
103
|
};
|
|
108
104
|
export declare const morphoBlueEncode: {
|
|
109
105
|
leverageManagement(marketId: string, loanToken: EthereumAddress, collToken: EthereumAddress, oracle: EthereumAddress, irm: EthereumAddress, lltv: string, ratioState: RatioState, targetRatio: number, triggerRatio: number, user: EthereumAddress, isEOA: boolean, network: ChainId): (boolean | string[] | Bundles.BaseIds)[] | (boolean | string[] | Bundles.MainnetIds | Bundles.ArbitrumIds)[];
|
|
110
|
-
liquidationProtection(marketId: string, loanToken: EthereumAddress, collToken: EthereumAddress, oracle: EthereumAddress, irm: EthereumAddress, lltv: string, ratioState: RatioState, targetRatio: number, triggerRatio: number, user: EthereumAddress, isEOA: boolean, network: ChainId): (boolean | string[] | Bundles.MainnetIds)[];
|
|
111
106
|
leverageManagementOnPrice(strategyOrBundleId: number, isBundle: boolean | undefined, loanToken: EthereumAddress, collToken: EthereumAddress, oracle: EthereumAddress, irm: EthereumAddress, lltv: string, user: EthereumAddress, targetRatio: number, price: number, priceState: RatioState): (number | boolean | string[])[];
|
|
112
107
|
closeOnPrice(strategyOrBundleId: number, loanToken: EthereumAddress, collToken: EthereumAddress, oracle: EthereumAddress, irm: EthereumAddress, lltv: string, user: EthereumAddress, stopLossPrice?: number, stopLossType?: CloseToAssetType, takeProfitPrice?: number, takeProfitType?: CloseToAssetType): (number | boolean | string[])[];
|
|
113
108
|
};
|
|
@@ -119,11 +114,9 @@ export declare const liquityV2Encode: {
|
|
|
119
114
|
};
|
|
120
115
|
export declare const fluidEncode: {
|
|
121
116
|
leverageManagement(nftId: string, vault: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number, strategyOrBundleId: number): (number | boolean | string[])[];
|
|
122
|
-
liquidationProtection(nftId: string, vault: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number, strategyOrBundleId: number): (number | boolean | string[])[];
|
|
123
117
|
};
|
|
124
118
|
export declare const aaveV4Encode: {
|
|
125
119
|
leverageManagement(strategyOrBundleId: number, owner: EthereumAddress, spoke: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
|
|
126
|
-
liquidationProtection(strategyOrBundleId: number, owner: EthereumAddress, spoke: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
|
|
127
120
|
leverageManagementOnPrice(strategyOrBundleId: number, owner: EthereumAddress, spoke: EthereumAddress, collAsset: EthereumAddress, collAssetId: number, debtAsset: EthereumAddress, debtAssetId: number, targetRatio: number, price: string, priceState: RatioState, ratioState: RatioState): (number | boolean | string[])[];
|
|
128
121
|
closeOnPrice(strategyOrBundleId: number, owner: EthereumAddress, spoke: EthereumAddress, collAsset: EthereumAddress, collAssetId: number, debtAsset: EthereumAddress, debtAssetId: number, stopLossPrice?: string, stopLossType?: CloseToAssetType, takeProfitPrice?: string, takeProfitType?: CloseToAssetType): (number | boolean | string[])[];
|
|
129
122
|
collateralSwitch(strategyOrBundleId: number, owner: EthereumAddress, spoke: EthereumAddress, fromAsset: EthereumAddress, fromAssetId: number, toAsset: EthereumAddress, toAssetId: number, amountToSwitch: string, price: string, ratioState: RatioState): (number | boolean | string[])[];
|
|
@@ -25,8 +25,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
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;
|
|
27
27
|
const tokens_1 = require("@defisaver/tokens");
|
|
28
|
-
const constants_1 = require("../constants");
|
|
29
28
|
const enums_1 = require("../types/enums");
|
|
29
|
+
const constants_1 = require("../constants");
|
|
30
30
|
const subDataService = __importStar(require("./subDataService"));
|
|
31
31
|
const triggerService = __importStar(require("./triggerService"));
|
|
32
32
|
const utils_1 = require("./utils");
|
|
@@ -67,17 +67,6 @@ exports.makerEncode = {
|
|
|
67
67
|
subData,
|
|
68
68
|
];
|
|
69
69
|
},
|
|
70
|
-
liquidationProtection(vaultId, triggerRatio, targetRatio, ratioState, daiAddr) {
|
|
71
|
-
const bundleId = enums_1.Bundles.MainnetIds.MAKER_SW_LIQUIDATION_PROTECTION;
|
|
72
|
-
const triggerData = triggerService.makerRatioTrigger.encode(vaultId, triggerRatio, ratioState);
|
|
73
|
-
const subData = subDataService.makerLiquidationProtectionSubData.encode(vaultId, targetRatio, daiAddr);
|
|
74
|
-
return [
|
|
75
|
-
bundleId,
|
|
76
|
-
true,
|
|
77
|
-
triggerData,
|
|
78
|
-
subData,
|
|
79
|
-
];
|
|
80
|
-
},
|
|
81
70
|
};
|
|
82
71
|
exports.liquityEncode = {
|
|
83
72
|
closeOnPrice(priceOverOrUnder, price, closeToAssetAddr, chainlinkCollAddress, chainId = enums_1.ChainId.Ethereum, collAddr, debtAddr) {
|
|
@@ -176,12 +165,6 @@ exports.aaveV3Encode = {
|
|
|
176
165
|
const triggerData = triggerService.aaveV3RatioTrigger.encode(user, market, triggerRatio, ratioState);
|
|
177
166
|
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
178
167
|
},
|
|
179
|
-
liquidationProtection(strategyOrBundleId, market, user, ratioState, targetRatio, triggerRatio) {
|
|
180
|
-
const isBundle = true;
|
|
181
|
-
const subData = subDataService.aaveV3LiquidationProtectionSubData.encode(targetRatio, ratioState, market, user);
|
|
182
|
-
const triggerData = triggerService.aaveV3RatioTrigger.encode(user, market, triggerRatio, ratioState);
|
|
183
|
-
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
184
|
-
},
|
|
185
168
|
leverageManagementOnPriceGeneric(strategyOrBundleId, price, ratioState, collAsset, collAssetId, debtAsset, debtAssetId, marketAddr, targetRatio, user) {
|
|
186
169
|
const isBundle = true;
|
|
187
170
|
const subDataEncoded = subDataService.aaveV3LeverageManagementOnPriceGeneric.encode(collAsset, collAssetId, debtAsset, debtAssetId, marketAddr, targetRatio, user);
|
|
@@ -217,12 +200,6 @@ exports.compoundV3Encode = {
|
|
|
217
200
|
const triggerData = triggerService.compoundV3RatioTrigger.encode(user, market, triggerRatio, ratioState);
|
|
218
201
|
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
219
202
|
},
|
|
220
|
-
liquidationProtectionWithoutSubProxy(strategyOrBundleId, market, baseToken, user, ratioState, targetRatio, triggerRatio) {
|
|
221
|
-
const isBundle = true;
|
|
222
|
-
const subData = subDataService.compoundV3LiquidationProtectionSubDataWithoutSubProxy.encode(market, baseToken, targetRatio, ratioState);
|
|
223
|
-
const triggerData = triggerService.compoundV3RatioTrigger.encode(user, market, triggerRatio, ratioState);
|
|
224
|
-
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
225
|
-
},
|
|
226
203
|
leverageManagementOnPrice(strategyOrBundleId, market, collToken, baseToken, targetRatio, price, priceState, ratioState, // REPAY for repay on price, BOOST for boost on price
|
|
227
204
|
user) {
|
|
228
205
|
const isBundle = true;
|
|
@@ -280,12 +257,6 @@ exports.sparkEncode = {
|
|
|
280
257
|
const triggerData = triggerService.sparkRatioTrigger.encode(user, market, triggerRatio, ratioState);
|
|
281
258
|
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
282
259
|
},
|
|
283
|
-
liquidationProtection(strategyOrBundleId, market, user, ratioState, targetRatio, triggerRatio) {
|
|
284
|
-
const isBundle = true;
|
|
285
|
-
const subData = subDataService.sparkLiquidationProtectionSubData.encode(targetRatio, ratioState);
|
|
286
|
-
const triggerData = triggerService.sparkRatioTrigger.encode(user, market, triggerRatio, ratioState);
|
|
287
|
-
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
288
|
-
},
|
|
289
260
|
collateralSwitch(strategyOrBundleId, fromAsset, fromAssetId, toAsset, toAssetId, marketAddr, amountToSwitch, baseTokenAddress, quoteTokenAddress, price, state) {
|
|
290
261
|
const isBundle = false;
|
|
291
262
|
const subDataEncoded = subDataService.sparkCollateralSwitchSubData.encode(fromAsset, fromAssetId, toAsset, toAssetId, marketAddr, amountToSwitch);
|
|
@@ -328,16 +299,6 @@ exports.morphoBlueEncode = {
|
|
|
328
299
|
const isBundle = true;
|
|
329
300
|
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
330
301
|
},
|
|
331
|
-
liquidationProtection(marketId, loanToken, collToken, oracle, irm, lltv, ratioState, targetRatio, triggerRatio, user, isEOA, network) {
|
|
332
|
-
const subData = subDataService.morphoBlueLiquidationProtectionSubData.encode(loanToken, collToken, oracle, irm, lltv, ratioState, targetRatio, user, isEOA);
|
|
333
|
-
const triggerData = triggerService.morphoBlueRatioTrigger.encode(marketId, user, triggerRatio, ratioState);
|
|
334
|
-
// Type casting because there is no MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION for Base chain.
|
|
335
|
-
// That is fine because we will just always send isEOA == false for Base chain.
|
|
336
|
-
const bundleNetwork = (0, utils_1.getBundleIdsByNetwork)(network);
|
|
337
|
-
const bundleId = isEOA ? bundleNetwork.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION : bundleNetwork.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION;
|
|
338
|
-
const isBundle = true;
|
|
339
|
-
return [bundleId, isBundle, triggerData, subData];
|
|
340
|
-
},
|
|
341
302
|
leverageManagementOnPrice(strategyOrBundleId, isBundle = true, loanToken, collToken, oracle, irm, lltv, user, targetRatio, price, priceState) {
|
|
342
303
|
const subData = subDataService.morphoBlueLeverageManagementOnPriceSubData.encode(loanToken, collToken, oracle, irm, lltv, targetRatio, user);
|
|
343
304
|
const triggerData = triggerService.morphoBluePriceTrigger.encode(oracle, collToken, loanToken, price, priceState);
|
|
@@ -386,12 +347,6 @@ exports.fluidEncode = {
|
|
|
386
347
|
const triggerData = triggerService.fluidRatioTrigger.encode(nftId, triggerRatio, ratioState);
|
|
387
348
|
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
388
349
|
},
|
|
389
|
-
liquidationProtection(nftId, vault, ratioState, targetRatio, triggerRatio, strategyOrBundleId) {
|
|
390
|
-
const isBundle = true;
|
|
391
|
-
const subData = subDataService.fluidLiquidationProtectionSubData.encode(nftId, vault, ratioState, targetRatio);
|
|
392
|
-
const triggerData = triggerService.fluidRatioTrigger.encode(nftId, triggerRatio, ratioState);
|
|
393
|
-
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
394
|
-
},
|
|
395
350
|
};
|
|
396
351
|
exports.aaveV4Encode = {
|
|
397
352
|
leverageManagement(strategyOrBundleId, owner, spoke, ratioState, targetRatio, triggerRatio) {
|
|
@@ -400,12 +355,6 @@ exports.aaveV4Encode = {
|
|
|
400
355
|
const triggerData = triggerService.aaveV4RatioTrigger.encode(owner, spoke, triggerRatio, ratioState);
|
|
401
356
|
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
402
357
|
},
|
|
403
|
-
liquidationProtection(strategyOrBundleId, owner, spoke, ratioState, targetRatio, triggerRatio) {
|
|
404
|
-
const isBundle = true;
|
|
405
|
-
const subData = subDataService.aaveV4LiquidationProtectionSubData.encode(spoke, owner, ratioState, targetRatio);
|
|
406
|
-
const triggerData = triggerService.aaveV4RatioTrigger.encode(owner, spoke, triggerRatio, ratioState);
|
|
407
|
-
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
408
|
-
},
|
|
409
358
|
leverageManagementOnPrice(strategyOrBundleId, owner, spoke, collAsset, collAssetId, debtAsset, debtAssetId, targetRatio, price, priceState, ratioState) {
|
|
410
359
|
const isBundle = true;
|
|
411
360
|
const subData = subDataService.aaveV4LeverageManagementOnPriceSubData.encode(spoke, owner, collAsset, collAssetId, debtAsset, debtAssetId, ratioState, targetRatio);
|