@strkfarm/sdk 1.1.56 → 1.1.58
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.
|
@@ -55733,6 +55733,7 @@ ${JSON.stringify(data, null, 2)}`;
|
|
|
55733
55733
|
}
|
|
55734
55734
|
async getUnHarvestedRewards(addr) {
|
|
55735
55735
|
const rewards = await this.getHarvests(addr);
|
|
55736
|
+
logger2.verbose(`${_Harvests.name}: getUnHarvestedRewards => rewards length: ${rewards.length}`);
|
|
55736
55737
|
if (rewards.length == 0) return [];
|
|
55737
55738
|
const unClaimed = [];
|
|
55738
55739
|
const sortedRewards = rewards.sort((a, b) => b.endDate.getTime() - a.endDate.getTime());
|
|
@@ -55759,11 +55760,13 @@ ${JSON.stringify(data, null, 2)}`;
|
|
|
55759
55760
|
}
|
|
55760
55761
|
};
|
|
55761
55762
|
var STRK = "0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d";
|
|
55762
|
-
var EkuboHarvests = class extends Harvests {
|
|
55763
|
+
var EkuboHarvests = class _EkuboHarvests extends Harvests {
|
|
55763
55764
|
async getHarvests(addr) {
|
|
55765
|
+
logger2.verbose(`${_EkuboHarvests.name}: getHarvests => addr: ${addr.address}`);
|
|
55764
55766
|
const EKUBO_API = `https://starknet-mainnet-api.ekubo.org/airdrops/${addr.address}?token=${STRK}`;
|
|
55765
55767
|
const resultEkubo = await fetch(EKUBO_API);
|
|
55766
55768
|
const items = await resultEkubo.json();
|
|
55769
|
+
logger2.verbose(`${_EkuboHarvests.name}: getHarvests => items length: ${items.length}`);
|
|
55767
55770
|
const rewards = [];
|
|
55768
55771
|
for (let i = 0; i < items.length; ++i) {
|
|
55769
55772
|
const info = items[i];
|
|
@@ -95005,9 +95008,12 @@ spurious results.`);
|
|
|
95005
95008
|
const x_debt_usd = numeratorPart1.minus(numeratorPart2).dividedBy(denominatorPart);
|
|
95006
95009
|
logger2.verbose(`${this.getTag()}::getVesuMultiplyCall x_debt_usd: ${x_debt_usd}`);
|
|
95007
95010
|
logger2.debug(`${this.getTag()}::getVesuMultiplyCall numeratorPart1: ${numeratorPart1}, numeratorPart2: ${numeratorPart2}, denominatorPart: ${denominatorPart}`);
|
|
95008
|
-
|
|
95011
|
+
let debtAmount = x_debt_usd.dividedBy(debtPrice);
|
|
95009
95012
|
const marginAmount = addedCollateral;
|
|
95010
95013
|
logger2.verbose(`${this.getTag()}::getVesuMultiplyCall debtAmount: ${debtAmount}, marginAmount: ${marginAmount}`);
|
|
95014
|
+
if (marginAmount.lt(0) && debtAmount.gt(0)) {
|
|
95015
|
+
debtAmount = Web3Number.fromWei(0, this.asset().decimals);
|
|
95016
|
+
}
|
|
95011
95017
|
return this.getModifyLeverCall({
|
|
95012
95018
|
marginAmount,
|
|
95013
95019
|
debtAmount,
|
package/dist/index.browser.mjs
CHANGED
|
@@ -4133,6 +4133,7 @@ var Harvests = class _Harvests {
|
|
|
4133
4133
|
}
|
|
4134
4134
|
async getUnHarvestedRewards(addr) {
|
|
4135
4135
|
const rewards = await this.getHarvests(addr);
|
|
4136
|
+
logger.verbose(`${_Harvests.name}: getUnHarvestedRewards => rewards length: ${rewards.length}`);
|
|
4136
4137
|
if (rewards.length == 0) return [];
|
|
4137
4138
|
const unClaimed = [];
|
|
4138
4139
|
const sortedRewards = rewards.sort((a, b) => b.endDate.getTime() - a.endDate.getTime());
|
|
@@ -4159,11 +4160,13 @@ var Harvests = class _Harvests {
|
|
|
4159
4160
|
}
|
|
4160
4161
|
};
|
|
4161
4162
|
var STRK = "0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d";
|
|
4162
|
-
var EkuboHarvests = class extends Harvests {
|
|
4163
|
+
var EkuboHarvests = class _EkuboHarvests extends Harvests {
|
|
4163
4164
|
async getHarvests(addr) {
|
|
4165
|
+
logger.verbose(`${_EkuboHarvests.name}: getHarvests => addr: ${addr.address}`);
|
|
4164
4166
|
const EKUBO_API = `https://starknet-mainnet-api.ekubo.org/airdrops/${addr.address}?token=${STRK}`;
|
|
4165
4167
|
const resultEkubo = await fetch(EKUBO_API);
|
|
4166
4168
|
const items = await resultEkubo.json();
|
|
4169
|
+
logger.verbose(`${_EkuboHarvests.name}: getHarvests => items length: ${items.length}`);
|
|
4167
4170
|
const rewards = [];
|
|
4168
4171
|
for (let i = 0; i < items.length; ++i) {
|
|
4169
4172
|
const info = items[i];
|
|
@@ -31098,9 +31101,12 @@ var UniversalLstMultiplierStrategy = class _UniversalLstMultiplierStrategy exten
|
|
|
31098
31101
|
const x_debt_usd = numeratorPart1.minus(numeratorPart2).dividedBy(denominatorPart);
|
|
31099
31102
|
logger.verbose(`${this.getTag()}::getVesuMultiplyCall x_debt_usd: ${x_debt_usd}`);
|
|
31100
31103
|
logger.debug(`${this.getTag()}::getVesuMultiplyCall numeratorPart1: ${numeratorPart1}, numeratorPart2: ${numeratorPart2}, denominatorPart: ${denominatorPart}`);
|
|
31101
|
-
|
|
31104
|
+
let debtAmount = x_debt_usd.dividedBy(debtPrice);
|
|
31102
31105
|
const marginAmount = addedCollateral;
|
|
31103
31106
|
logger.verbose(`${this.getTag()}::getVesuMultiplyCall debtAmount: ${debtAmount}, marginAmount: ${marginAmount}`);
|
|
31107
|
+
if (marginAmount.lt(0) && debtAmount.gt(0)) {
|
|
31108
|
+
debtAmount = Web3Number.fromWei(0, this.asset().decimals);
|
|
31109
|
+
}
|
|
31104
31110
|
return this.getModifyLeverCall({
|
|
31105
31111
|
marginAmount,
|
|
31106
31112
|
debtAmount,
|
package/dist/index.js
CHANGED
|
@@ -4137,6 +4137,7 @@ var Harvests = class _Harvests {
|
|
|
4137
4137
|
}
|
|
4138
4138
|
async getUnHarvestedRewards(addr) {
|
|
4139
4139
|
const rewards = await this.getHarvests(addr);
|
|
4140
|
+
logger.verbose(`${_Harvests.name}: getUnHarvestedRewards => rewards length: ${rewards.length}`);
|
|
4140
4141
|
if (rewards.length == 0) return [];
|
|
4141
4142
|
const unClaimed = [];
|
|
4142
4143
|
const sortedRewards = rewards.sort((a, b) => b.endDate.getTime() - a.endDate.getTime());
|
|
@@ -4163,11 +4164,13 @@ var Harvests = class _Harvests {
|
|
|
4163
4164
|
}
|
|
4164
4165
|
};
|
|
4165
4166
|
var STRK = "0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d";
|
|
4166
|
-
var EkuboHarvests = class extends Harvests {
|
|
4167
|
+
var EkuboHarvests = class _EkuboHarvests extends Harvests {
|
|
4167
4168
|
async getHarvests(addr) {
|
|
4169
|
+
logger.verbose(`${_EkuboHarvests.name}: getHarvests => addr: ${addr.address}`);
|
|
4168
4170
|
const EKUBO_API = `https://starknet-mainnet-api.ekubo.org/airdrops/${addr.address}?token=${STRK}`;
|
|
4169
4171
|
const resultEkubo = await fetch(EKUBO_API);
|
|
4170
4172
|
const items = await resultEkubo.json();
|
|
4173
|
+
logger.verbose(`${_EkuboHarvests.name}: getHarvests => items length: ${items.length}`);
|
|
4171
4174
|
const rewards = [];
|
|
4172
4175
|
for (let i = 0; i < items.length; ++i) {
|
|
4173
4176
|
const info = items[i];
|
|
@@ -31098,9 +31101,12 @@ var UniversalLstMultiplierStrategy = class _UniversalLstMultiplierStrategy exten
|
|
|
31098
31101
|
const x_debt_usd = numeratorPart1.minus(numeratorPart2).dividedBy(denominatorPart);
|
|
31099
31102
|
logger.verbose(`${this.getTag()}::getVesuMultiplyCall x_debt_usd: ${x_debt_usd}`);
|
|
31100
31103
|
logger.debug(`${this.getTag()}::getVesuMultiplyCall numeratorPart1: ${numeratorPart1}, numeratorPart2: ${numeratorPart2}, denominatorPart: ${denominatorPart}`);
|
|
31101
|
-
|
|
31104
|
+
let debtAmount = x_debt_usd.dividedBy(debtPrice);
|
|
31102
31105
|
const marginAmount = addedCollateral;
|
|
31103
31106
|
logger.verbose(`${this.getTag()}::getVesuMultiplyCall debtAmount: ${debtAmount}, marginAmount: ${marginAmount}`);
|
|
31107
|
+
if (marginAmount.lt(0) && debtAmount.gt(0)) {
|
|
31108
|
+
debtAmount = Web3Number.fromWei(0, this.asset().decimals);
|
|
31109
|
+
}
|
|
31104
31110
|
return this.getModifyLeverCall({
|
|
31105
31111
|
marginAmount,
|
|
31106
31112
|
debtAmount,
|
package/dist/index.mjs
CHANGED
|
@@ -4031,6 +4031,7 @@ var Harvests = class _Harvests {
|
|
|
4031
4031
|
}
|
|
4032
4032
|
async getUnHarvestedRewards(addr) {
|
|
4033
4033
|
const rewards = await this.getHarvests(addr);
|
|
4034
|
+
logger.verbose(`${_Harvests.name}: getUnHarvestedRewards => rewards length: ${rewards.length}`);
|
|
4034
4035
|
if (rewards.length == 0) return [];
|
|
4035
4036
|
const unClaimed = [];
|
|
4036
4037
|
const sortedRewards = rewards.sort((a, b) => b.endDate.getTime() - a.endDate.getTime());
|
|
@@ -4057,11 +4058,13 @@ var Harvests = class _Harvests {
|
|
|
4057
4058
|
}
|
|
4058
4059
|
};
|
|
4059
4060
|
var STRK = "0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d";
|
|
4060
|
-
var EkuboHarvests = class extends Harvests {
|
|
4061
|
+
var EkuboHarvests = class _EkuboHarvests extends Harvests {
|
|
4061
4062
|
async getHarvests(addr) {
|
|
4063
|
+
logger.verbose(`${_EkuboHarvests.name}: getHarvests => addr: ${addr.address}`);
|
|
4062
4064
|
const EKUBO_API = `https://starknet-mainnet-api.ekubo.org/airdrops/${addr.address}?token=${STRK}`;
|
|
4063
4065
|
const resultEkubo = await fetch(EKUBO_API);
|
|
4064
4066
|
const items = await resultEkubo.json();
|
|
4067
|
+
logger.verbose(`${_EkuboHarvests.name}: getHarvests => items length: ${items.length}`);
|
|
4065
4068
|
const rewards = [];
|
|
4066
4069
|
for (let i = 0; i < items.length; ++i) {
|
|
4067
4070
|
const info = items[i];
|
|
@@ -30996,9 +30999,12 @@ var UniversalLstMultiplierStrategy = class _UniversalLstMultiplierStrategy exten
|
|
|
30996
30999
|
const x_debt_usd = numeratorPart1.minus(numeratorPart2).dividedBy(denominatorPart);
|
|
30997
31000
|
logger.verbose(`${this.getTag()}::getVesuMultiplyCall x_debt_usd: ${x_debt_usd}`);
|
|
30998
31001
|
logger.debug(`${this.getTag()}::getVesuMultiplyCall numeratorPart1: ${numeratorPart1}, numeratorPart2: ${numeratorPart2}, denominatorPart: ${denominatorPart}`);
|
|
30999
|
-
|
|
31002
|
+
let debtAmount = x_debt_usd.dividedBy(debtPrice);
|
|
31000
31003
|
const marginAmount = addedCollateral;
|
|
31001
31004
|
logger.verbose(`${this.getTag()}::getVesuMultiplyCall debtAmount: ${debtAmount}, marginAmount: ${marginAmount}`);
|
|
31005
|
+
if (marginAmount.lt(0) && debtAmount.gt(0)) {
|
|
31006
|
+
debtAmount = Web3Number.fromWei(0, this.asset().decimals);
|
|
31007
|
+
}
|
|
31002
31008
|
return this.getModifyLeverCall({
|
|
31003
31009
|
marginAmount,
|
|
31004
31010
|
debtAmount,
|
package/package.json
CHANGED
package/src/modules/harvests.ts
CHANGED
|
@@ -29,6 +29,7 @@ export class Harvests {
|
|
|
29
29
|
|
|
30
30
|
async getUnHarvestedRewards(addr: ContractAddr) {
|
|
31
31
|
const rewards = await this.getHarvests(addr);
|
|
32
|
+
logger.verbose(`${Harvests.name}: getUnHarvestedRewards => rewards length: ${rewards.length}`);
|
|
32
33
|
if (rewards.length == 0) return [];
|
|
33
34
|
|
|
34
35
|
const unClaimed: HarvestInfo[] = [];
|
|
@@ -66,10 +67,11 @@ const STRK = '0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d'
|
|
|
66
67
|
|
|
67
68
|
export class EkuboHarvests extends Harvests {
|
|
68
69
|
async getHarvests(addr: ContractAddr) {
|
|
70
|
+
logger.verbose(`${EkuboHarvests.name}: getHarvests => addr: ${addr.address}`);
|
|
69
71
|
const EKUBO_API = `https://starknet-mainnet-api.ekubo.org/airdrops/${addr.address}?token=${STRK}`
|
|
70
72
|
const resultEkubo = await fetch(EKUBO_API);
|
|
71
73
|
const items = (await resultEkubo.json());
|
|
72
|
-
|
|
74
|
+
logger.verbose(`${EkuboHarvests.name}: getHarvests => items length: ${items.length}`);
|
|
73
75
|
const rewards: HarvestInfo[] = [];
|
|
74
76
|
for (let i=0; i<items.length; ++i) {
|
|
75
77
|
const info = items[i];
|
|
@@ -485,10 +485,17 @@ export class UniversalLstMultiplierStrategy extends UniversalStrategy<HyperLSTSt
|
|
|
485
485
|
logger.debug(`${this.getTag()}::getVesuMultiplyCall numeratorPart1: ${numeratorPart1}, numeratorPart2: ${numeratorPart2}, denominatorPart: ${denominatorPart}`);
|
|
486
486
|
|
|
487
487
|
// both in underlying
|
|
488
|
-
|
|
488
|
+
let debtAmount = x_debt_usd.dividedBy(debtPrice);
|
|
489
489
|
const marginAmount = addedCollateral;
|
|
490
490
|
logger.verbose(`${this.getTag()}::getVesuMultiplyCall debtAmount: ${debtAmount}, marginAmount: ${marginAmount}`);
|
|
491
491
|
|
|
492
|
+
if (marginAmount.lt(0) && debtAmount.gt(0)) {
|
|
493
|
+
// if we want to withdraw, but debt can go high, its conflicting between
|
|
494
|
+
// increasing and reducing lever. and in this case, the HF will go high,
|
|
495
|
+
// which is ok.
|
|
496
|
+
debtAmount = Web3Number.fromWei(0, this.asset().decimals);
|
|
497
|
+
}
|
|
498
|
+
|
|
492
499
|
// Cases of lever increase (within the scopr of this function)
|
|
493
500
|
// 1. debtAmount > 0 and marginAmount > 0
|
|
494
501
|
// 2. debtAmount > 0 and marginAmount < 0
|