@haven-fi/solauto-sdk 1.0.633 → 1.0.634

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.
@@ -19,8 +19,8 @@ class RebalanceTxBuilder {
19
19
  (this.targetLiqUtilizationRateBps !== undefined ||
20
20
  this.client.pos.eligibleForRebalance()));
21
21
  }
22
- getRebalanceValues(priceType, flFee) {
23
- return (0, rebalanceValues_1.getRebalanceValues)(this.client.pos, priceType, this.targetLiqUtilizationRateBps, solautoFees_1.SolautoFeesBps.create(this.client.isReferred(), this.targetLiqUtilizationRateBps, this.client.pos.netWorthUsd), flFee ?? 0);
22
+ getRebalanceValues(flFee) {
23
+ return (0, rebalanceValues_1.getRebalanceValues)(this.client.pos, this.priceType, this.targetLiqUtilizationRateBps, solautoFees_1.SolautoFeesBps.create(this.client.isReferred(), this.targetLiqUtilizationRateBps, this.client.pos.netWorthUsd), flFee ?? 0);
24
24
  }
25
25
  getFlLiquiditySource(supplyLiquidityAvailable, debtLiquidityAvailable) {
26
26
  const debtAdjustmentUsd = Math.abs(this.values.debtAdjustmentUsd);
@@ -119,11 +119,11 @@ class RebalanceTxBuilder {
119
119
  }
120
120
  async setRebalanceDetails(attemptNum) {
121
121
  this.priceType = generated_1.PriceType.Realtime;
122
- this.values = this.getRebalanceValues(this.priceType);
122
+ this.values = this.getRebalanceValues();
123
123
  const postRebalanceEmaUtilRateBps = (0, utils_1.getLiqUtilzationRateBps)(this.realtimeUsdToEmaUsd(this.values.endResult.supplyUsd, this.client.pos.supplyMint), this.realtimeUsdToEmaUsd(this.values.endResult.debtUsd, this.client.pos.debtMint), this.client.pos.state.liqThresholdBps);
124
124
  if (postRebalanceEmaUtilRateBps > this.client.pos.maxBoostToBps) {
125
125
  this.priceType = generated_1.PriceType.Ema;
126
- this.values = this.getRebalanceValues(this.priceType);
126
+ this.values = this.getRebalanceValues();
127
127
  }
128
128
  this.flRequirements = await this.flashLoanRequirements(attemptNum);
129
129
  if (this.flRequirements?.flFeeBps) {
@@ -23,14 +23,14 @@ interface PositionExArgs {
23
23
  contextUpdates?: ContextUpdates;
24
24
  }
25
25
  export declare abstract class SolautoPositionEx {
26
- lendingPlatform: LendingPlatform;
27
26
  umi: Umi;
27
+ protected contextUpdates?: ContextUpdates;
28
28
  publicKey: PublicKey;
29
+ lendingPlatform: LendingPlatform;
29
30
  protected _data: SolautoPositionExData;
30
31
  protected lp?: PublicKey;
31
32
  protected lpEnv: ProgramEnv;
32
33
  lpUserAccount?: PublicKey;
33
- protected contextUpdates?: ContextUpdates;
34
34
  private readonly firstState;
35
35
  constructor(args: PositionExArgs);
36
36
  abstract lendingPool(): Promise<PublicKey>;
@@ -1 +1 @@
1
- {"version":3,"file":"solautoPositionEx.d.ts","sourceRoot":"","sources":["../../src/solautoPosition/solautoPositionEx.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"solautoPositionEx.d.ts","sourceRoot":"","sources":["../../src/solautoPosition/solautoPositionEx.ts"],"names":[],"mappings":"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"}
@@ -8,8 +8,10 @@ import {
8
8
  getSolanaRpcConnection,
9
9
  LendingPlatform,
10
10
  LOCAL_IRONFORGE_API_URL,
11
+ PriceType,
11
12
  PriorityFeeSetting,
12
13
  rebalance,
14
+ safeGetPrice,
13
15
  SOLAUTO_PROD_PROGRAM,
14
16
  SOLAUTO_TEST_PROGRAM,
15
17
  TransactionsManager,
@@ -33,6 +35,8 @@ export async function main() {
33
35
 
34
36
  await fetchTokenPrices([NATIVE_MINT]);
35
37
 
38
+ console.log(safeGetPrice(NATIVE_MINT), safeGetPrice(NATIVE_MINT, PriceType.Ema));
39
+
36
40
  // const client = getClient(LendingPlatform.Marginfi, {
37
41
  // signer,
38
42
  // showLogs: true,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@haven-fi/solauto-sdk",
3
- "version": "1.0.633",
3
+ "version": "1.0.634",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "description": "Typescript SDK for the Solauto program on the Solana blockchain",
@@ -52,10 +52,10 @@ export class RebalanceTxBuilder {
52
52
  );
53
53
  }
54
54
 
55
- private getRebalanceValues(priceType: PriceType, flFee?: number) {
55
+ private getRebalanceValues(flFee?: number) {
56
56
  return getRebalanceValues(
57
57
  this.client.pos,
58
- priceType,
58
+ this.priceType,
59
59
  this.targetLiqUtilizationRateBps,
60
60
  SolautoFeesBps.create(
61
61
  this.client.isReferred(),
@@ -212,7 +212,7 @@ export class RebalanceTxBuilder {
212
212
 
213
213
  private async setRebalanceDetails(attemptNum: number) {
214
214
  this.priceType = PriceType.Realtime;
215
- this.values = this.getRebalanceValues(this.priceType);
215
+ this.values = this.getRebalanceValues();
216
216
 
217
217
  const postRebalanceEmaUtilRateBps = getLiqUtilzationRateBps(
218
218
  this.realtimeUsdToEmaUsd(
@@ -227,7 +227,7 @@ export class RebalanceTxBuilder {
227
227
  );
228
228
  if (postRebalanceEmaUtilRateBps > this.client.pos.maxBoostToBps) {
229
229
  this.priceType = PriceType.Ema;
230
- this.values = this.getRebalanceValues(this.priceType);
230
+ this.values = this.getRebalanceValues();
231
231
  }
232
232
 
233
233
  this.flRequirements = await this.flashLoanRequirements(attemptNum);
@@ -69,14 +69,15 @@ interface PositionExArgs {
69
69
  }
70
70
 
71
71
  export abstract class SolautoPositionEx {
72
- public lendingPlatform!: LendingPlatform;
73
72
  public umi!: Umi;
73
+ protected contextUpdates?: ContextUpdates;
74
+
74
75
  public publicKey!: PublicKey;
76
+ public lendingPlatform!: LendingPlatform;
75
77
  protected _data!: SolautoPositionExData;
76
78
  protected lp?: PublicKey = undefined;
77
79
  protected lpEnv!: ProgramEnv;
78
80
  public lpUserAccount?: PublicKey = undefined;
79
- protected contextUpdates?: ContextUpdates;
80
81
 
81
82
  private readonly firstState!: PositionState;
82
83
 
@@ -48,7 +48,7 @@ export async function e2eTransactionTest(
48
48
  const [maxLtvBps, liqThresholdBps] =
49
49
  await client.pos.maxLtvAndLiqThresholdBps();
50
50
  const settings: SolautoSettingsParametersInpArgs = {
51
- boostToBps: maxBoostToBps(maxLtvBps, liqThresholdBps) - 200,
51
+ boostToBps: maxBoostToBps(maxLtvBps, liqThresholdBps),
52
52
  boostGap: 50,
53
53
  repayToBps: maxRepayToBps(maxLtvBps, liqThresholdBps),
54
54
  repayGap: 50,