@haven-fi/solauto-sdk 1.0.522 → 1.0.524
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":"jupiterUtils.d.ts","sourceRoot":"","sources":["../../src/utils/jupiterUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,kBAAkB,EAEnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,SAAS,EAA0B,MAAM,iBAAiB,CAAC;AAGpE,OAAO,EAGL,aAAa,EACd,MAAM,aAAa,CAAC;
|
1
|
+
{"version":3,"file":"jupiterUtils.d.ts","sourceRoot":"","sources":["../../src/utils/jupiterUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,kBAAkB,EAEnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,SAAS,EAA0B,MAAM,iBAAiB,CAAC;AAGpE,OAAO,EAGL,aAAa,EACd,MAAM,aAAa,CAAC;AAUrB,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,SAAS,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD,iBAAiB,EAAE,SAAS,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B;AAgBD,wBAAsB,WAAW,CAAC,WAAW,EAAE,YAAY,0BAwB1D;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,aAAa,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,iBAAiB,EAAE,kBAAkB,CAAC;IACtC,aAAa,EAAE,kBAAkB,CAAC;IAClC,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAED,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,cAAc,EAC3B,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAmF7B;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,SAAS,CAAC,EAAE,OAAO;;GA0B5E"}
|
@@ -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,
|
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"}
|
@@ -153,8 +153,9 @@ 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(((
|
157
|
-
(
|
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)) &&
|
158
159
|
(sufficientSignerSupplyLiquidity || sufficientSignerDebtLiquidity));
|
159
160
|
if (signerFlashLoan) {
|
160
161
|
useDebtLiquidity = !sufficientSignerSupplyLiquidity;
|
@@ -219,26 +220,12 @@ async function getJupSwapRebalanceDetails(client, values, flRequirements, target
|
|
219
220
|
(0, generalUtils_2.consoleLog)(jupSwapInput);
|
220
221
|
let jupQuote = undefined;
|
221
222
|
if (rebalanceToZero) {
|
222
|
-
|
223
|
-
jupQuote = await (0, jupiterUtils_1.getJupQuote)(jupSwapInput);
|
224
|
-
}
|
225
|
-
catch {
|
226
|
-
let priceImpact = 0;
|
227
|
-
jupSwapInput.exactIn = true;
|
228
|
-
jupSwapInput.exactOut = false;
|
223
|
+
do {
|
229
224
|
jupSwapInput.amount =
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
priceImpact = res.priceImpact;
|
235
|
-
jupQuote = res.quote;
|
236
|
-
jupSwapInput.amount =
|
237
|
-
BigInt(parseInt(res.quote.inAmount)) +
|
238
|
-
BigInt(Math.round(Number(jupSwapInput.amount) * 0.001));
|
239
|
-
} while (parseInt(jupQuote.outAmount) < outputAmount &&
|
240
|
-
priceImpact > 0.001);
|
241
|
-
}
|
225
|
+
jupSwapInput.amount +
|
226
|
+
BigInt(Math.round(Number(jupSwapInput.amount) * 0.01));
|
227
|
+
jupQuote = await (0, jupiterUtils_1.getJupQuote)(jupSwapInput);
|
228
|
+
} while (parseInt(jupQuote.outAmount) < outputAmount);
|
242
229
|
}
|
243
230
|
const addPadding = exactOut;
|
244
231
|
return {
|
package/package.json
CHANGED
@@ -322,8 +322,9 @@ export function getFlashLoanRequirements(
|
|
322
322
|
const sufficientSignerSupplyLiquidity = false; // TODO
|
323
323
|
const sufficientSignerDebtLiquidity = isJupLong; // TODO
|
324
324
|
const signerFlashLoan = Boolean(
|
325
|
-
((
|
326
|
-
(
|
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)) &&
|
327
328
|
(sufficientSignerSupplyLiquidity || sufficientSignerDebtLiquidity)
|
328
329
|
);
|
329
330
|
if (signerFlashLoan) {
|
@@ -439,33 +440,12 @@ export async function getJupSwapRebalanceDetails(
|
|
439
440
|
|
440
441
|
let jupQuote: QuoteResponse | undefined = undefined;
|
441
442
|
if (rebalanceToZero) {
|
442
|
-
|
443
|
-
jupQuote = await getJupQuote(jupSwapInput);
|
444
|
-
} catch {
|
445
|
-
let priceImpact: number = 0;
|
446
|
-
jupSwapInput.exactIn = true;
|
447
|
-
jupSwapInput.exactOut = false;
|
443
|
+
do {
|
448
444
|
jupSwapInput.amount =
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
jupSwapInput.inputMint,
|
454
|
-
jupSwapInput.outputMint,
|
455
|
-
jupSwapInput.amount +
|
456
|
-
BigInt(Math.round(Number(jupSwapInput.amount) * priceImpact)),
|
457
|
-
"ExactIn"
|
458
|
-
);
|
459
|
-
priceImpact = res.priceImpact;
|
460
|
-
jupQuote = res.quote;
|
461
|
-
jupSwapInput.amount =
|
462
|
-
BigInt(parseInt(res.quote.inAmount)) +
|
463
|
-
BigInt(Math.round(Number(jupSwapInput.amount) * 0.001));
|
464
|
-
} while (
|
465
|
-
parseInt(jupQuote.outAmount) < outputAmount &&
|
466
|
-
priceImpact > 0.001
|
467
|
-
);
|
468
|
-
}
|
445
|
+
jupSwapInput.amount +
|
446
|
+
BigInt(Math.round(Number(jupSwapInput.amount) * 0.01));
|
447
|
+
jupQuote = await getJupQuote(jupSwapInput);
|
448
|
+
} while (parseInt(jupQuote.outAmount) < outputAmount);
|
469
449
|
}
|
470
450
|
|
471
451
|
const addPadding = exactOut;
|