@defisaver/automation-sdk 2.0.5 → 2.0.8
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/.env.dev +5 -0
- package/.tests.sh +3 -0
- package/README.md +3 -1
- package/esm/automation/private/LegacyProtocol.test.d.ts +1 -0
- package/esm/automation/private/LegacyProtocol.test.js +25 -0
- package/esm/automation/private/Protocol.test.d.ts +1 -0
- package/esm/automation/private/Protocol.test.js +25 -0
- package/esm/automation/private/StrategiesAutomation.js +1 -1
- package/esm/constants/index.js +15 -0
- package/esm/services/contractService.d.ts +3 -2
- package/esm/services/contractService.js +7 -1
- package/esm/services/ethereumService.test.d.ts +1 -0
- package/esm/services/ethereumService.test.js +241 -0
- package/esm/services/strategiesService.js +40 -0
- package/esm/services/strategiesService.test.d.ts +1 -0
- package/esm/services/strategiesService.test.js +108 -0
- package/esm/services/strategySubService.d.ts +17 -3
- package/esm/services/strategySubService.js +17 -6
- package/esm/services/strategySubService.test.d.ts +1 -0
- package/esm/services/strategySubService.test.js +692 -0
- package/esm/services/subDataService.d.ts +8 -1
- package/esm/services/subDataService.js +23 -14
- package/esm/services/subDataService.test.d.ts +1 -0
- package/esm/services/subDataService.test.js +993 -0
- package/esm/services/triggerService.d.ts +17 -0
- package/esm/services/triggerService.js +42 -1
- package/esm/services/triggerService.test.js +119 -17
- package/esm/types/enums.d.ts +10 -2
- package/esm/types/enums.js +8 -0
- package/esm/types/index.d.ts +19 -2
- package/package.json +3 -3
- package/src/automation/private/LegacyProtocol.test.ts +24 -0
- package/src/automation/private/Protocol.test.ts +24 -0
- package/src/automation/private/StrategiesAutomation.ts +1 -1
- package/src/constants/index.ts +15 -0
- package/src/services/contractService.ts +17 -4
- package/src/services/ethereumService.test.ts +256 -0
- package/src/services/ethereumService.ts +2 -1
- package/src/services/strategiesService.test.ts +103 -0
- package/src/services/strategiesService.ts +66 -3
- package/src/services/strategySubService.test.ts +835 -0
- package/src/services/strategySubService.ts +50 -15
- package/src/services/subDataService.test.ts +1063 -0
- package/src/services/subDataService.ts +29 -14
- package/src/services/triggerService.test.ts +133 -20
- package/src/services/triggerService.ts +55 -0
- package/src/services/utils.test.ts +1 -1
- package/src/types/enums.ts +8 -0
- package/src/types/index.ts +27 -3
- package/umd/index.js +282 -115
|
@@ -30,6 +30,7 @@ exports.sparkEncode = exports.exchangeEncode = exports.morphoAaveV2Encode = expo
|
|
|
30
30
|
const decimal_js_1 = __importDefault(require("decimal.js"));
|
|
31
31
|
const tokens_1 = require("@defisaver/tokens");
|
|
32
32
|
const enums_1 = require("../types/enums");
|
|
33
|
+
const constants_1 = require("../constants");
|
|
33
34
|
const subDataService = __importStar(require("./subDataService"));
|
|
34
35
|
const triggerService = __importStar(require("./triggerService"));
|
|
35
36
|
const utils_1 = require("./utils");
|
|
@@ -120,6 +121,14 @@ exports.liquityEncode = {
|
|
|
120
121
|
const isBundle = false;
|
|
121
122
|
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
122
123
|
},
|
|
124
|
+
debtInFrontRepay(proxyAddress, debtInFrontMin, targetRatioIncrease) {
|
|
125
|
+
(0, utils_1.requireAddress)(proxyAddress);
|
|
126
|
+
const subData = subDataService.liquityDebtInFrontRepaySubData.encode(targetRatioIncrease);
|
|
127
|
+
const triggerData = triggerService.liquityDebtInFrontWithLimitTrigger.encode(proxyAddress, debtInFrontMin);
|
|
128
|
+
const strategyOrBundleId = enums_1.Strategies.MainnetIds.LIQUITY_DEBT_IN_FRONT_REPAY;
|
|
129
|
+
const isBundle = false;
|
|
130
|
+
return [strategyOrBundleId, isBundle, triggerData, subData];
|
|
131
|
+
},
|
|
123
132
|
};
|
|
124
133
|
exports.chickenBondsEncode = {
|
|
125
134
|
rebond(bondId) {
|
|
@@ -152,6 +161,13 @@ exports.aaveV3Encode = {
|
|
|
152
161
|
const triggerDataEncoded = triggerService.aaveV3QuotePriceTrigger.encode(baseTokenAddress, quoteTokenAddress, price, ratioState);
|
|
153
162
|
return [strategyOrBundleId, isBundle, triggerDataEncoded, subDataEncoded];
|
|
154
163
|
},
|
|
164
|
+
closeToAssetWithMaximumGasPrice(strategyOrBundleId, isBundle = true, triggerData, subData) {
|
|
165
|
+
const { collAsset, collAssetId, debtAsset, debtAssetId, } = subData;
|
|
166
|
+
const subDataEncoded = subDataService.aaveV3QuotePriceSubData.encode(collAsset, collAssetId, debtAsset, debtAssetId);
|
|
167
|
+
const { baseTokenAddress, quoteTokenAddress, price, maximumGasPrice, ratioState, } = triggerData;
|
|
168
|
+
const triggerDataEncoded = triggerService.aaveV3QuotePriceWithMaximumGasPriceTrigger.encode(baseTokenAddress, quoteTokenAddress, price, ratioState, maximumGasPrice);
|
|
169
|
+
return [strategyOrBundleId, isBundle, triggerDataEncoded, subDataEncoded];
|
|
170
|
+
},
|
|
155
171
|
};
|
|
156
172
|
exports.compoundV2Encode = {
|
|
157
173
|
leverageManagement(triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled) {
|
|
@@ -173,12 +189,7 @@ exports.exchangeEncode = {
|
|
|
173
189
|
(0, utils_1.requireAddresses)([fromToken, toToken]);
|
|
174
190
|
const subData = subDataService.exchangeDcaSubData.encode(fromToken, toToken, amount, interval);
|
|
175
191
|
const triggerData = triggerService.exchangeTimestampTrigger.encode(timestamp, interval);
|
|
176
|
-
const
|
|
177
|
-
? 'MainnetIds'
|
|
178
|
-
: network === 10
|
|
179
|
-
? 'OptimismIds'
|
|
180
|
-
: 'ArbitrumIds';
|
|
181
|
-
const strategyId = enums_1.Strategies[selectedNetwork].EXCHANGE_DCA;
|
|
192
|
+
const strategyId = constants_1.STRATEGY_IDS[network].EXCHANGE_DCA;
|
|
182
193
|
return [strategyId, false, triggerData, subData];
|
|
183
194
|
},
|
|
184
195
|
limitOrder(fromToken, toToken, amount, targetPrice, goodUntil, orderType) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|