@haven-fi/solauto-sdk 1.0.524 → 1.0.526

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.
@@ -1 +1 @@
1
- {"version":3,"file":"rebalanceUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/solauto/rebalanceUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EACL,WAAW,EACX,aAAa,EAEb,kBAAkB,EAClB,yBAAyB,EACzB,SAAS,EACV,MAAM,iBAAiB,CAAC;AAOzB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAe,cAAc,EAAgB,MAAM,iBAAiB,CAAC;AAc5E,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAoI9C,MAAM,WAAW,eAAe;IAC9B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,eAAe,EAAE,eAAe,CAAC;IACjC,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,yBAAyB,GAAG,SAAS,EAC/C,GAAG,EAAE,WAAW,GAAG,SAAS,EAC5B,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,2BAA2B,CAAC,EAAE,MAAM,GACnC,eAAe,CA4EjB;AAED,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,eAAe,EACvB,UAAU,CAAC,EAAE,MAAM,GAClB,qBAAqB,GAAG,SAAS,CA2EnC;AAED,MAAM,WAAW,gBAAiB,SAAQ,qBAAqB;IAC7D,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,aAAa,EACrB,cAAc,EAAE,qBAAqB,EACrC,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,aAAa,GACtB,gBAAgB,GAAG,SAAS,CA2B9B;AAED,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,eAAe,EACvB,cAAc,CAAC,EAAE,qBAAqB,EACtC,2BAA2B,CAAC,EAAE,MAAM,EACpC,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,cAAc,CAAC,CAqEzB"}
1
+ {"version":3,"file":"rebalanceUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/solauto/rebalanceUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EACL,WAAW,EACX,aAAa,EAEb,kBAAkB,EAClB,yBAAyB,EACzB,SAAS,EACV,MAAM,iBAAiB,CAAC;AAOzB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAe,cAAc,EAAgB,MAAM,iBAAiB,CAAC;AAc5E,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAoI9C,MAAM,WAAW,eAAe;IAC9B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,eAAe,EAAE,eAAe,CAAC;IACjC,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,yBAAyB,GAAG,SAAS,EAC/C,GAAG,EAAE,WAAW,GAAG,SAAS,EAC5B,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,2BAA2B,CAAC,EAAE,MAAM,GACnC,eAAe,CA4EjB;AAED,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,eAAe,EACvB,UAAU,CAAC,EAAE,MAAM,GAClB,qBAAqB,GAAG,SAAS,CA4EnC;AAED,MAAM,WAAW,gBAAiB,SAAQ,qBAAqB;IAC7D,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,aAAa,EACrB,cAAc,EAAE,qBAAqB,EACrC,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,aAAa,GACtB,gBAAgB,GAAG,SAAS,CA2B9B;AAED,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,eAAe,EACvB,cAAc,CAAC,EAAE,qBAAqB,EACtC,2BAA2B,CAAC,EAAE,MAAM,EACpC,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,cAAc,CAAC,CAqEzB"}
@@ -153,13 +153,13 @@ function getFlashLoanRequirements(client, values, attemptNum) {
153
153
  (0, generalUtils_2.tokenInfo)(client.debtMint).isStableCoin;
154
154
  const sufficientSignerSupplyLiquidity = false; // TODO
155
155
  const sufficientSignerDebtLiquidity = isJupLong; // TODO
156
- const signerFlashLoan = Boolean(!(0, umi_web3js_adapters_1.toWeb3JsPublicKey)(client.signer.publicKey).equals(client.authority) && // TODO: temp, remove me when we actually pull signer liquidity
157
- ((attemptNum ?? 0) > 3 ||
158
- (insufficientSupplyLiquidity && insufficientDebtLiquidity)) &&
156
+ const signerFlashLoan = Boolean(((attemptNum ?? 0) > 3 ||
157
+ (insufficientSupplyLiquidity && insufficientDebtLiquidity)) &&
159
158
  (sufficientSignerSupplyLiquidity || sufficientSignerDebtLiquidity));
160
159
  if (signerFlashLoan) {
161
160
  useDebtLiquidity = !sufficientSignerSupplyLiquidity;
162
161
  }
162
+ // TODO: if not sufficient signer liquidity, throw error with details on how much liquidity is needed and of what token
163
163
  (0, generalUtils_2.consoleLog)("Requires flash loan:", requiresFlashLoan);
164
164
  (0, generalUtils_2.consoleLog)("Use debt liquidity:", useDebtLiquidity);
165
165
  (0, generalUtils_2.consoleLog)("Intermediary liq utilization rate:", tempLiqUtilizationRateBps, `$${supplyUsd}`, `$${debtUsd}`, "Max:", maxLiqUtilizationRateBps);
@@ -207,7 +207,7 @@ async function getJupSwapRebalanceDetails(client, values, flRequirements, target
207
207
  : (0, numberUtils_1.toBaseUnit)(usdToSwap / (0, priceUtils_1.safeGetPrice)(output.mint), output.decimals);
208
208
  const repaying = values.rebalanceDirection === generated_1.RebalanceDirection.Repay;
209
209
  const flashLoanRepayFromDebt = repaying && flRequirements && flRequirements.useDebtLiquidity;
210
- const exactOut = flashLoanRepayFromDebt;
210
+ const exactOut = flashLoanRepayFromDebt && !rebalanceToZero;
211
211
  // || rebalanceToZero
212
212
  const exactIn = !exactOut;
213
213
  const jupSwapInput = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@haven-fi/solauto-sdk",
3
- "version": "1.0.524",
3
+ "version": "1.0.526",
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",
@@ -322,15 +322,16 @@ export function getFlashLoanRequirements(
322
322
  const sufficientSignerSupplyLiquidity = false; // TODO
323
323
  const sufficientSignerDebtLiquidity = isJupLong; // TODO
324
324
  const signerFlashLoan = Boolean(
325
- !toWeb3JsPublicKey(client.signer.publicKey).equals(client.authority) && // TODO: temp, remove me when we actually pull signer liquidity
326
- ((attemptNum ?? 0) > 3 ||
327
- (insufficientSupplyLiquidity && insufficientDebtLiquidity)) &&
325
+ ((attemptNum ?? 0) > 3 ||
326
+ (insufficientSupplyLiquidity && insufficientDebtLiquidity)) &&
328
327
  (sufficientSignerSupplyLiquidity || sufficientSignerDebtLiquidity)
329
328
  );
330
329
  if (signerFlashLoan) {
331
330
  useDebtLiquidity = !sufficientSignerSupplyLiquidity;
332
331
  }
333
332
 
333
+ // TODO: if not sufficient signer liquidity, throw error with details on how much liquidity is needed and of what token
334
+
334
335
  consoleLog("Requires flash loan:", requiresFlashLoan);
335
336
  consoleLog("Use debt liquidity:", useDebtLiquidity);
336
337
  consoleLog(
@@ -425,7 +426,7 @@ export async function getJupSwapRebalanceDetails(
425
426
  const flashLoanRepayFromDebt =
426
427
  repaying && flRequirements && flRequirements.useDebtLiquidity;
427
428
 
428
- const exactOut = flashLoanRepayFromDebt;
429
+ const exactOut = flashLoanRepayFromDebt && !rebalanceToZero;
429
430
  // || rebalanceToZero
430
431
  const exactIn = !exactOut;
431
432