@defisaver/automation-sdk 2.0.4 → 2.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/services/triggerService.d.ts +1 -1
- package/esm/services/triggerService.js +8 -8
- package/esm/services/triggerService.test.d.ts +1 -0
- package/esm/services/triggerService.test.js +719 -0
- package/package.json +1 -1
- package/src/services/triggerService.test.ts +784 -0
- package/src/services/triggerService.ts +9 -7
- package/umd/index.js +8 -8
|
@@ -105,7 +105,7 @@ export declare const exchangeTimestampTrigger: {
|
|
|
105
105
|
};
|
|
106
106
|
};
|
|
107
107
|
export declare const exchangeOffchainPriceTrigger: {
|
|
108
|
-
encode(targetPrice: string, goodUntil: number, orderType: OrderType, fromTokenDecimals: number): string[];
|
|
108
|
+
encode(targetPrice: string, goodUntil: number, orderType: OrderType, fromTokenDecimals: number, toTokenDecimals: number): string[];
|
|
109
109
|
decode(triggerData: string[], fromTokenDecimals: number, toTokenDecimals: number): {
|
|
110
110
|
orderType: OrderType;
|
|
111
111
|
targetPrice: string;
|
|
@@ -197,16 +197,16 @@ exports.exchangeTimestampTrigger = {
|
|
|
197
197
|
decode(triggerData) {
|
|
198
198
|
const decodedData = web3_eth_abi_1.default.decodeParameters(['uint256', 'uint256'], triggerData[0]);
|
|
199
199
|
return {
|
|
200
|
-
timestamp: decodedData[0],
|
|
201
|
-
interval: decodedData[1],
|
|
200
|
+
timestamp: Number(decodedData[0]),
|
|
201
|
+
interval: Number(decodedData[1]),
|
|
202
202
|
};
|
|
203
203
|
},
|
|
204
204
|
};
|
|
205
205
|
exports.exchangeOffchainPriceTrigger = {
|
|
206
|
-
encode(targetPrice, goodUntil, orderType, fromTokenDecimals) {
|
|
207
|
-
const
|
|
208
|
-
const
|
|
209
|
-
return [web3_eth_abi_1.default.encodeParameters(['uint256', 'uint256'], [price,
|
|
206
|
+
encode(targetPrice, goodUntil, orderType, fromTokenDecimals, toTokenDecimals) {
|
|
207
|
+
const decimals = new decimal_js_1.default(toTokenDecimals).plus(18).minus(fromTokenDecimals).toNumber();
|
|
208
|
+
const price = new decimal_js_1.default(targetPrice.toString()).mul(Math.pow(10, decimals)).floor().toString();
|
|
209
|
+
return [web3_eth_abi_1.default.encodeParameters(['uint256', 'uint256', 'uint8'], [price, goodUntil, orderType])];
|
|
210
210
|
},
|
|
211
211
|
decode(triggerData, fromTokenDecimals, toTokenDecimals) {
|
|
212
212
|
const decodedData = web3_eth_abi_1.default.decodeParameters(['uint256', 'uint256', 'uint8'], triggerData[0]);
|
|
@@ -214,7 +214,7 @@ exports.exchangeOffchainPriceTrigger = {
|
|
|
214
214
|
const price = new decimal_js_1.default(decodedData[0]).div(new decimal_js_1.default(10).pow(decimals)).toDP(fromTokenDecimals).toString();
|
|
215
215
|
return {
|
|
216
216
|
targetPrice: price,
|
|
217
|
-
goodUntil: decodedData[1],
|
|
217
|
+
goodUntil: +decodedData[1],
|
|
218
218
|
orderType: +decodedData[2],
|
|
219
219
|
};
|
|
220
220
|
},
|
|
@@ -263,7 +263,7 @@ exports.curveUsdBorrowRateTrigger = {
|
|
|
263
263
|
},
|
|
264
264
|
decode(triggerData) {
|
|
265
265
|
const decodedData = web3_eth_abi_1.default.decodeParameters(['address', 'uint256', 'uint8'], triggerData[0]);
|
|
266
|
-
const rateEth =
|
|
266
|
+
const rateEth = web3Utils.fromWei(decodedData[1], 'ether');
|
|
267
267
|
// the form is x = (e**(rate*365*86400))-1 where x*100 is number in %
|
|
268
268
|
const exponentRate = new decimal_js_1.default(rateEth).mul(365).mul(86400);
|
|
269
269
|
const targetRate = new decimal_js_1.default(new decimal_js_1.default(2.718281828459).pow(exponentRate).minus(1)).mul(100)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|