@kamino-finance/klend-sdk 6.0.5-beta.20 → 6.0.5-beta.22
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/dist/classes/manager.d.ts.map +1 -1
- package/dist/classes/manager.js.map +1 -1
- package/dist/classes/obligation.d.ts +32 -2
- package/dist/classes/obligation.d.ts.map +1 -1
- package/dist/classes/obligation.js +150 -24
- package/dist/classes/obligation.js.map +1 -1
- package/dist/classes/reserve.d.ts +5 -0
- package/dist/classes/reserve.d.ts.map +1 -1
- package/dist/classes/reserve.js +13 -0
- package/dist/classes/reserve.js.map +1 -1
- package/package.json +2 -2
- package/src/classes/manager.ts +0 -1
- package/src/classes/obligation.ts +201 -36
- package/src/classes/reserve.ts +16 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/classes/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,UAAU,EAEV,OAAO,EACP,iBAAiB,EACjB,SAAS,EAGT,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EAEjB,cAAc,EACd,uBAAuB,EACvB,eAAe,EACf,wCAAwC,EACxC,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,yBAAyB,EACzB,aAAa,EACb,oCAAoC,EACrC,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EAExB,GAAG,
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/classes/manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/classes/manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/classes/manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,10 @@ export type Position = {
|
|
|
20
20
|
*/
|
|
21
21
|
marketValueRefreshed: Decimal;
|
|
22
22
|
};
|
|
23
|
+
export type PositionChange = {
|
|
24
|
+
reserveAddress: PublicKey;
|
|
25
|
+
amountChangeLamports: Decimal;
|
|
26
|
+
};
|
|
23
27
|
export type ObligationStats = {
|
|
24
28
|
userTotalDeposit: Decimal;
|
|
25
29
|
userTotalCollateralDeposit: Decimal;
|
|
@@ -197,8 +201,8 @@ export declare class KaminoObligation {
|
|
|
197
201
|
*/
|
|
198
202
|
getElevationGroups(kaminoMarket: KaminoMarket): Array<number>;
|
|
199
203
|
static getElevationGroupsForReserves(reserves: Array<KaminoReserve>): Array<number>;
|
|
200
|
-
simulateDepositChange(obligationDeposits: ObligationCollateral[],
|
|
201
|
-
simulateBorrowChange(obligationBorrows: ObligationLiquidity[],
|
|
204
|
+
simulateDepositChange(obligationDeposits: ObligationCollateral[], depositChange: PositionChange, collateralExchangeRates: Map<PublicKey, Decimal>): ObligationCollateral[];
|
|
205
|
+
simulateBorrowChange(obligationBorrows: ObligationLiquidity[], borrowChange: PositionChange, cumulativeBorrowRate: Decimal): ObligationLiquidity[];
|
|
202
206
|
/**
|
|
203
207
|
* Calculate the newly modified stats of the obligation
|
|
204
208
|
*/
|
|
@@ -239,12 +243,38 @@ export declare class KaminoObligation {
|
|
|
239
243
|
static calculateObligationDeposits(market: KaminoMarket, obligationDeposits: ObligationCollateral[], collateralExchangeRates: Map<PublicKey, Decimal> | null, elevationGroup: number, getPx: (reserve: KaminoReserve) => Decimal): DepositStats;
|
|
240
244
|
static calculateObligationBorrows(market: KaminoMarket, obligationBorrows: ObligationLiquidity[], cumulativeBorrowRates: Map<PublicKey, Decimal> | null, elevationGroup: number, getPx: (reserve: KaminoReserve) => Decimal): BorrowStats;
|
|
241
245
|
getMaxLoanLtvGivenElevationGroup(market: KaminoMarket, elevationGroup: number, slot: number): Decimal;
|
|
246
|
+
/**
|
|
247
|
+
* Creates a new KaminoObligation with simulated position changes applied.
|
|
248
|
+
* This allows you to model what the obligation would look like with deposits/borrows
|
|
249
|
+
* without actually executing those transactions.
|
|
250
|
+
*
|
|
251
|
+
* @param market - The KaminoMarket instance
|
|
252
|
+
* @param slot - The slot number for rate calculations
|
|
253
|
+
* @param depositChanges - Optional array of deposit changes to apply
|
|
254
|
+
* @param borrowChanges - Optional array of borrow changes to apply
|
|
255
|
+
* @returns A new KaminoObligation instance with the changes applied
|
|
256
|
+
*/
|
|
257
|
+
withPositionChanges(market: KaminoMarket, slot: number, depositChanges?: PositionChange[], borrowChanges?: PositionChange[]): KaminoObligation;
|
|
242
258
|
getBorrowPower(market: KaminoMarket, liquidityMint: PublicKey, slot: number, elevationGroup?: number): Decimal;
|
|
243
259
|
getMaxBorrowAmountV2(market: KaminoMarket, liquidityMint: PublicKey, slot: number, elevationGroup?: number): Decimal;
|
|
260
|
+
getMaxBorrowAmountV2WithDeposit(market: KaminoMarket, liquidityMint: PublicKey, slot: number, elevationGroup: number | undefined, depositAmountLamports: Decimal, depositReserveAddress: PublicKey): Decimal;
|
|
244
261
|
isLoanEligibleForElevationGroup(market: KaminoMarket, slot: number, elevationGroup: number): boolean;
|
|
245
262
|
getElevationGroupsForObligation(market: KaminoMarket): ElevationGroupDescription[];
|
|
246
263
|
getMaxBorrowAmount(market: KaminoMarket, liquidityMint: PublicKey, slot: number, requestElevationGroup: boolean): Decimal;
|
|
247
264
|
getMaxWithdrawAmount(market: KaminoMarket, tokenMint: PublicKey, slot: number): Decimal;
|
|
265
|
+
/**
|
|
266
|
+
* Same as getMaxWithdrawAmount but assumes a repay is made first, calculating
|
|
267
|
+
* the new withdraw power after the repay, without overriding the obligation itself.
|
|
268
|
+
*
|
|
269
|
+
* @param market - The KaminoMarket instance.
|
|
270
|
+
* @param tokenMint - The liquidity mint Address.
|
|
271
|
+
* @param slot - The slot number.
|
|
272
|
+
* @param repayAmountLamports - The amount to repay in lamports (use U64_MAX for full repay).
|
|
273
|
+
* @param repayReserveAddress - The reserve address of the borrow being repaid.
|
|
274
|
+
* @returns The maximum withdraw amount as a Decimal.
|
|
275
|
+
* @throws Error if the reserve is not found.
|
|
276
|
+
*/
|
|
277
|
+
getMaxWithdrawAmountWithRepay(market: KaminoMarket, tokenMint: PublicKey, slot: number, repayAmountLamports: Decimal, repayReserveAddress: PublicKey): Decimal;
|
|
248
278
|
getObligationLiquidityByReserve(reserveAddress: PublicKey): ObligationLiquidity;
|
|
249
279
|
/**
|
|
250
280
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"obligation.d.ts","sourceRoot":"","sources":["../../src/classes/obligation.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"obligation.d.ts","sourceRoot":"","sources":["../../src/classes/obligation.ts"],"names":[],"mappings":"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"}
|
|
@@ -310,15 +310,15 @@ class KaminoObligation {
|
|
|
310
310
|
}
|
|
311
311
|
return activeElevationGroups;
|
|
312
312
|
}
|
|
313
|
-
simulateDepositChange(obligationDeposits,
|
|
313
|
+
simulateDepositChange(obligationDeposits, depositChange, collateralExchangeRates) {
|
|
314
314
|
const newDeposits = [];
|
|
315
|
-
const depositIndex = obligationDeposits.findIndex((deposit) => deposit.depositReserve.equals(
|
|
315
|
+
const depositIndex = obligationDeposits.findIndex((deposit) => deposit.depositReserve.equals(depositChange.reserveAddress));
|
|
316
316
|
// Always copy the previous deposits and modify the changeReserve one if it exists
|
|
317
317
|
for (let i = 0; i < obligationDeposits.length; i++) {
|
|
318
|
-
if (obligationDeposits[i].depositReserve.equals(
|
|
318
|
+
if (obligationDeposits[i].depositReserve.equals(depositChange.reserveAddress)) {
|
|
319
319
|
const coll = { ...obligationDeposits[i] };
|
|
320
|
-
const exchangeRate = collateralExchangeRates.get(
|
|
321
|
-
const changeInCollateral = new decimal_js_1.default(
|
|
320
|
+
const exchangeRate = collateralExchangeRates.get(depositChange.reserveAddress);
|
|
321
|
+
const changeInCollateral = new decimal_js_1.default(depositChange.amountChangeLamports).mul(exchangeRate).toFixed(0);
|
|
322
322
|
const updatedDeposit = new decimal_js_1.default(obligationDeposits[i].depositedAmount.toNumber()).add(changeInCollateral);
|
|
323
323
|
coll.depositedAmount = new bn_js_1.default((0, utils_1.positiveOrZero)(updatedDeposit).toString());
|
|
324
324
|
newDeposits.push(new types_1.ObligationCollateral(coll));
|
|
@@ -334,22 +334,24 @@ class KaminoObligation {
|
|
|
334
334
|
throw new Error('No available borrows to modify');
|
|
335
335
|
}
|
|
336
336
|
const coll = { ...obligationDeposits[firstBorrowIndexAvailable] };
|
|
337
|
-
const exchangeRate = collateralExchangeRates.get(
|
|
338
|
-
const changeInCollateral = new decimal_js_1.default(
|
|
337
|
+
const exchangeRate = collateralExchangeRates.get(depositChange.reserveAddress);
|
|
338
|
+
const changeInCollateral = new decimal_js_1.default(depositChange.amountChangeLamports).mul(exchangeRate).toFixed(0);
|
|
339
339
|
coll.depositedAmount = new bn_js_1.default((0, utils_1.positiveOrZero)(new decimal_js_1.default(changeInCollateral)).toString());
|
|
340
|
-
coll.depositReserve =
|
|
340
|
+
coll.depositReserve = depositChange.reserveAddress;
|
|
341
341
|
newDeposits[firstBorrowIndexAvailable] = new types_1.ObligationCollateral(coll);
|
|
342
342
|
}
|
|
343
343
|
return newDeposits;
|
|
344
344
|
}
|
|
345
|
-
simulateBorrowChange(obligationBorrows,
|
|
345
|
+
simulateBorrowChange(obligationBorrows, borrowChange, cumulativeBorrowRate) {
|
|
346
346
|
const newBorrows = [];
|
|
347
|
-
const borrowIndex = obligationBorrows.findIndex((borrow) => borrow.borrowReserve.equals(
|
|
347
|
+
const borrowIndex = obligationBorrows.findIndex((borrow) => borrow.borrowReserve.equals(borrowChange.reserveAddress));
|
|
348
348
|
// Always copy the previous borrows and modify the changeReserve one if it exists
|
|
349
349
|
for (let i = 0; i < obligationBorrows.length; i++) {
|
|
350
|
-
if (obligationBorrows[i].borrowReserve.equals(
|
|
350
|
+
if (obligationBorrows[i].borrowReserve.equals(borrowChange.reserveAddress)) {
|
|
351
351
|
const borrow = { ...obligationBorrows[borrowIndex] };
|
|
352
|
-
const newBorrowedAmount = new fraction_1.Fraction(borrow.borrowedAmountSf)
|
|
352
|
+
const newBorrowedAmount = new fraction_1.Fraction(borrow.borrowedAmountSf)
|
|
353
|
+
.toDecimal()
|
|
354
|
+
.add(borrowChange.amountChangeLamports);
|
|
353
355
|
const newBorrowedAmountSf = fraction_1.Fraction.fromDecimal((0, utils_1.positiveOrZero)(newBorrowedAmount)).getValue();
|
|
354
356
|
borrow.borrowedAmountSf = newBorrowedAmountSf;
|
|
355
357
|
newBorrows.push(new types_1.ObligationLiquidity(borrow));
|
|
@@ -365,8 +367,8 @@ class KaminoObligation {
|
|
|
365
367
|
throw new Error('No available borrows to modify');
|
|
366
368
|
}
|
|
367
369
|
const borrow = { ...obligationBorrows[firstBorrowIndexAvailable] };
|
|
368
|
-
borrow.borrowedAmountSf = fraction_1.Fraction.fromDecimal(new decimal_js_1.default(
|
|
369
|
-
borrow.borrowReserve =
|
|
370
|
+
borrow.borrowedAmountSf = fraction_1.Fraction.fromDecimal(new decimal_js_1.default(borrowChange.amountChangeLamports)).getValue();
|
|
371
|
+
borrow.borrowReserve = borrowChange.reserveAddress;
|
|
370
372
|
borrow.cumulativeBorrowRateBsf = {
|
|
371
373
|
padding: [],
|
|
372
374
|
value: [fraction_1.Fraction.fromDecimal(cumulativeBorrowRate).getValue(), new bn_js_1.default(0), new bn_js_1.default(0), new bn_js_1.default(0)],
|
|
@@ -408,28 +410,40 @@ class KaminoObligation {
|
|
|
408
410
|
if (amountCollateral === undefined || mintCollateral === undefined) {
|
|
409
411
|
throw Error('amountCollateral & mintCollateral are required for deposit action');
|
|
410
412
|
}
|
|
411
|
-
newObligationDeposits = this.simulateDepositChange(this.state.deposits,
|
|
413
|
+
newObligationDeposits = this.simulateDepositChange(this.state.deposits, {
|
|
414
|
+
reserveAddress: collateralReservePk,
|
|
415
|
+
amountChangeLamports: amountCollateral,
|
|
416
|
+
}, collateralExchangeRates);
|
|
412
417
|
break;
|
|
413
418
|
}
|
|
414
419
|
case 'borrow': {
|
|
415
420
|
if (amountDebt === undefined || mintDebt === undefined) {
|
|
416
421
|
throw Error('amountDebt & mintDebt are required for borrow action');
|
|
417
422
|
}
|
|
418
|
-
newObligationBorrows = this.simulateBorrowChange(this.state.borrows,
|
|
423
|
+
newObligationBorrows = this.simulateBorrowChange(this.state.borrows, {
|
|
424
|
+
reserveAddress: debtReservePk,
|
|
425
|
+
amountChangeLamports: amountDebt,
|
|
426
|
+
}, debtReserveCumulativeBorrowRate);
|
|
419
427
|
break;
|
|
420
428
|
}
|
|
421
429
|
case 'repay': {
|
|
422
430
|
if (amountDebt === undefined || mintDebt === undefined) {
|
|
423
431
|
throw Error('amountDebt & mintDebt are required for repay action');
|
|
424
432
|
}
|
|
425
|
-
newObligationBorrows = this.simulateBorrowChange(this.state.borrows,
|
|
433
|
+
newObligationBorrows = this.simulateBorrowChange(this.state.borrows, {
|
|
434
|
+
reserveAddress: debtReservePk,
|
|
435
|
+
amountChangeLamports: amountDebt.neg(),
|
|
436
|
+
}, debtReserveCumulativeBorrowRate);
|
|
426
437
|
break;
|
|
427
438
|
}
|
|
428
439
|
case 'withdraw': {
|
|
429
440
|
if (amountCollateral === undefined || mintCollateral === undefined) {
|
|
430
441
|
throw Error('amountCollateral & mintCollateral are required for withdraw action');
|
|
431
442
|
}
|
|
432
|
-
newObligationDeposits = this.simulateDepositChange(this.state.deposits,
|
|
443
|
+
newObligationDeposits = this.simulateDepositChange(this.state.deposits, {
|
|
444
|
+
reserveAddress: collateralReservePk,
|
|
445
|
+
amountChangeLamports: amountCollateral.neg(),
|
|
446
|
+
}, collateralExchangeRates);
|
|
433
447
|
break;
|
|
434
448
|
}
|
|
435
449
|
case 'depositAndBorrow': {
|
|
@@ -439,8 +453,14 @@ class KaminoObligation {
|
|
|
439
453
|
mintDebt === undefined) {
|
|
440
454
|
throw Error('amountColl & amountDebt & mintCollateral & mintDebt are required for depositAndBorrow action');
|
|
441
455
|
}
|
|
442
|
-
newObligationDeposits = this.simulateDepositChange(this.state.deposits,
|
|
443
|
-
|
|
456
|
+
newObligationDeposits = this.simulateDepositChange(this.state.deposits, {
|
|
457
|
+
reserveAddress: collateralReservePk,
|
|
458
|
+
amountChangeLamports: amountCollateral,
|
|
459
|
+
}, collateralExchangeRates);
|
|
460
|
+
newObligationBorrows = this.simulateBorrowChange(this.state.borrows, {
|
|
461
|
+
reserveAddress: debtReservePk,
|
|
462
|
+
amountChangeLamports: amountDebt,
|
|
463
|
+
}, debtReserveCumulativeBorrowRate);
|
|
444
464
|
break;
|
|
445
465
|
}
|
|
446
466
|
case 'repayAndWithdraw': {
|
|
@@ -450,8 +470,14 @@ class KaminoObligation {
|
|
|
450
470
|
mintDebt === undefined) {
|
|
451
471
|
throw Error('amountColl & amountDebt & mintCollateral & mintDebt are required for repayAndWithdraw action');
|
|
452
472
|
}
|
|
453
|
-
newObligationDeposits = this.simulateDepositChange(this.state.deposits,
|
|
454
|
-
|
|
473
|
+
newObligationDeposits = this.simulateDepositChange(this.state.deposits, {
|
|
474
|
+
reserveAddress: collateralReservePk,
|
|
475
|
+
amountChangeLamports: amountCollateral.neg(),
|
|
476
|
+
}, collateralExchangeRates);
|
|
477
|
+
newObligationBorrows = this.simulateBorrowChange(this.state.borrows, {
|
|
478
|
+
reserveAddress: debtReservePk,
|
|
479
|
+
amountChangeLamports: amountDebt.neg(),
|
|
480
|
+
}, debtReserveCumulativeBorrowRate);
|
|
455
481
|
break;
|
|
456
482
|
}
|
|
457
483
|
default: {
|
|
@@ -479,8 +505,14 @@ class KaminoObligation {
|
|
|
479
505
|
const additionalReserves = [withdrawReserveAddress, depositReserveAddress].filter((reserveAddress) => !market.isReserveInObligation(this, reserveAddress));
|
|
480
506
|
const { collateralExchangeRates } = KaminoObligation.getRatesForObligation(market, this.state, slot, additionalReserves);
|
|
481
507
|
let newObligationDeposits = this.state.deposits;
|
|
482
|
-
newObligationDeposits = this.simulateDepositChange(newObligationDeposits,
|
|
483
|
-
|
|
508
|
+
newObligationDeposits = this.simulateDepositChange(newObligationDeposits, {
|
|
509
|
+
reserveAddress: withdrawReserveAddress,
|
|
510
|
+
amountChangeLamports: withdrawAmountLamports.neg(),
|
|
511
|
+
}, collateralExchangeRates);
|
|
512
|
+
newObligationDeposits = this.simulateDepositChange(newObligationDeposits, {
|
|
513
|
+
reserveAddress: depositReserveAddress,
|
|
514
|
+
amountChangeLamports: depositAmountLamports,
|
|
515
|
+
}, collateralExchangeRates);
|
|
484
516
|
const { refreshedStats } = this.calculatePositions(market, newObligationDeposits, this.state.borrows, newElevationGroup, collateralExchangeRates, null);
|
|
485
517
|
const newStats = refreshedStats;
|
|
486
518
|
newStats.netAccountValue = newStats.userTotalDeposit.minus(newStats.userTotalBorrow);
|
|
@@ -637,6 +669,50 @@ class KaminoObligation {
|
|
|
637
669
|
}
|
|
638
670
|
return borrowLimit.div(userTotalCollateralDeposit);
|
|
639
671
|
}
|
|
672
|
+
/**
|
|
673
|
+
* Creates a new KaminoObligation with simulated position changes applied.
|
|
674
|
+
* This allows you to model what the obligation would look like with deposits/borrows
|
|
675
|
+
* without actually executing those transactions.
|
|
676
|
+
*
|
|
677
|
+
* @param market - The KaminoMarket instance
|
|
678
|
+
* @param slot - The slot number for rate calculations
|
|
679
|
+
* @param depositChanges - Optional array of deposit changes to apply
|
|
680
|
+
* @param borrowChanges - Optional array of borrow changes to apply
|
|
681
|
+
* @returns A new KaminoObligation instance with the changes applied
|
|
682
|
+
*/
|
|
683
|
+
withPositionChanges(market, slot, depositChanges, borrowChanges) {
|
|
684
|
+
const reservesToRefresh = [];
|
|
685
|
+
if (depositChanges) {
|
|
686
|
+
reservesToRefresh.push(...depositChanges.map((change) => change.reserveAddress));
|
|
687
|
+
}
|
|
688
|
+
if (borrowChanges) {
|
|
689
|
+
reservesToRefresh.push(...borrowChanges.map((change) => change.reserveAddress));
|
|
690
|
+
}
|
|
691
|
+
const { collateralExchangeRates, cumulativeBorrowRates } = KaminoObligation.getRatesForObligation(market, this.state, slot, reservesToRefresh);
|
|
692
|
+
let newDeposits = this.state.deposits;
|
|
693
|
+
if (depositChanges) {
|
|
694
|
+
for (const depositChange of depositChanges) {
|
|
695
|
+
newDeposits = this.simulateDepositChange(newDeposits, depositChange, collateralExchangeRates);
|
|
696
|
+
}
|
|
697
|
+
}
|
|
698
|
+
let newBorrows = this.state.borrows;
|
|
699
|
+
if (borrowChanges) {
|
|
700
|
+
for (const borrowChange of borrowChanges) {
|
|
701
|
+
const reserve = market.getReserveByAddress(borrowChange.reserveAddress);
|
|
702
|
+
if (!reserve) {
|
|
703
|
+
throw new Error(`Reserve not found: ${borrowChange.reserveAddress}`);
|
|
704
|
+
}
|
|
705
|
+
newBorrows = this.simulateBorrowChange(newBorrows, borrowChange, reserve.getCumulativeBorrowRate());
|
|
706
|
+
}
|
|
707
|
+
}
|
|
708
|
+
// Create a deep copy of the obligation state and override deposits/borrows
|
|
709
|
+
const newObligationState = new accounts_1.Obligation({
|
|
710
|
+
...this.state,
|
|
711
|
+
deposits: newDeposits,
|
|
712
|
+
borrows: newBorrows,
|
|
713
|
+
});
|
|
714
|
+
return new KaminoObligation(market, this.obligationAddress, newObligationState, collateralExchangeRates, cumulativeBorrowRates);
|
|
715
|
+
}
|
|
640
716
|
/*
|
|
641
717
|
How much of a given token can a user borrow extra given an elevation group,
|
|
642
718
|
regardless of caps and liquidity or assuming infinite liquidity and infinite caps,
|
|
@@ -714,6 +790,27 @@ class KaminoObligation {
|
|
|
714
790
|
return decimal_js_1.default.min(maxBorrowAmount, liquidityAvailablePostMigration);
|
|
715
791
|
}
|
|
716
792
|
}
|
|
793
|
+
/*
|
|
794
|
+
Same as getMaxBorrowAmountV2 but assumes a deposit is made first, calculating
|
|
795
|
+
the new borrow power after the deposit, without overriding the obligation itself.
|
|
796
|
+
|
|
797
|
+
* @param market - The KaminoMarket instance.
|
|
798
|
+
* @param liquidityMint - The liquidity mint Address.
|
|
799
|
+
* @param slot - The slot number.
|
|
800
|
+
* @param elevationGroup - The elevation group number (default: this.state.elevationGroup).
|
|
801
|
+
* @returns The maximum borrow amount as a Decimal.
|
|
802
|
+
* @throws Error if the reserve is not found.
|
|
803
|
+
*/
|
|
804
|
+
getMaxBorrowAmountV2WithDeposit(market, liquidityMint, slot, elevationGroup = this.state.elevationGroup, depositAmountLamports, depositReserveAddress) {
|
|
805
|
+
const depositChanges = [
|
|
806
|
+
{
|
|
807
|
+
reserveAddress: depositReserveAddress,
|
|
808
|
+
amountChangeLamports: depositAmountLamports,
|
|
809
|
+
},
|
|
810
|
+
];
|
|
811
|
+
const obligationWithDeposit = this.withPositionChanges(market, slot, depositChanges);
|
|
812
|
+
return obligationWithDeposit.getMaxBorrowAmountV2(market, liquidityMint, slot, elevationGroup);
|
|
813
|
+
}
|
|
717
814
|
/*
|
|
718
815
|
Returns true if the loan is eligible for the elevation group, including for the default one.
|
|
719
816
|
* @param market - The KaminoMarket object representing the market.
|
|
@@ -892,6 +989,35 @@ class KaminoObligation {
|
|
|
892
989
|
.sub(depositReserve.getDepositWithdrawalCapCurrent(slot));
|
|
893
990
|
return decimal_js_1.default.max(0, decimal_js_1.default.min(userDepositPositionAmount, maxWithdrawAmount, reserveAvailableLiquidity, withdrawalCapRemained));
|
|
894
991
|
}
|
|
992
|
+
/**
|
|
993
|
+
* Same as getMaxWithdrawAmount but assumes a repay is made first, calculating
|
|
994
|
+
* the new withdraw power after the repay, without overriding the obligation itself.
|
|
995
|
+
*
|
|
996
|
+
* @param market - The KaminoMarket instance.
|
|
997
|
+
* @param tokenMint - The liquidity mint Address.
|
|
998
|
+
* @param slot - The slot number.
|
|
999
|
+
* @param repayAmountLamports - The amount to repay in lamports (use U64_MAX for full repay).
|
|
1000
|
+
* @param repayReserveAddress - The reserve address of the borrow being repaid.
|
|
1001
|
+
* @returns The maximum withdraw amount as a Decimal.
|
|
1002
|
+
* @throws Error if the reserve is not found.
|
|
1003
|
+
*/
|
|
1004
|
+
getMaxWithdrawAmountWithRepay(market, tokenMint, slot, repayAmountLamports, repayReserveAddress) {
|
|
1005
|
+
const repayReserve = market.getReserveByAddress(repayReserveAddress);
|
|
1006
|
+
if (!repayReserve) {
|
|
1007
|
+
throw new Error('Reserve not found');
|
|
1008
|
+
}
|
|
1009
|
+
const repayAmount = repayAmountLamports.equals(utils_2.U64_MAX)
|
|
1010
|
+
? this.getBorrowAmountByReserve(repayReserve)
|
|
1011
|
+
: repayAmountLamports;
|
|
1012
|
+
const borrowChanges = [
|
|
1013
|
+
{
|
|
1014
|
+
reserveAddress: repayReserveAddress,
|
|
1015
|
+
amountChangeLamports: repayAmount.neg(), // as it's a repay
|
|
1016
|
+
},
|
|
1017
|
+
];
|
|
1018
|
+
const obligationWithRepay = this.withPositionChanges(market, slot, undefined, borrowChanges);
|
|
1019
|
+
return obligationWithRepay.getMaxWithdrawAmount(market, tokenMint, slot);
|
|
1020
|
+
}
|
|
895
1021
|
getObligationLiquidityByReserve(reserveAddress) {
|
|
896
1022
|
const obligationLiquidity = this.state.borrows.find((borrow) => borrow.borrowReserve.equals(reserveAddress));
|
|
897
1023
|
if (!obligationLiquidity) {
|