@kamino-finance/klend-sdk 5.11.4 → 5.11.5-beta.0
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/action.d.ts +12 -2
- package/dist/classes/action.d.ts.map +1 -1
- package/dist/classes/action.js +228 -30
- package/dist/classes/action.js.map +1 -1
- package/dist/classes/manager.d.ts.map +1 -1
- package/dist/classes/manager.js +1 -0
- package/dist/classes/manager.js.map +1 -1
- package/dist/classes/obligation.d.ts +1 -1
- package/dist/classes/obligation.d.ts.map +1 -1
- package/dist/classes/obligation.js +1 -1
- package/dist/classes/obligation.js.map +1 -1
- package/dist/classes/vault.js +6 -6
- package/dist/classes/vault.js.map +1 -1
- package/dist/lending_operations/repay_with_collateral_calcs.d.ts.map +1 -1
- package/dist/lending_operations/repay_with_collateral_calcs.js +9 -5
- package/dist/lending_operations/repay_with_collateral_calcs.js.map +1 -1
- package/dist/lending_operations/repay_with_collateral_operations.d.ts +5 -0
- package/dist/lending_operations/repay_with_collateral_operations.d.ts.map +1 -1
- package/dist/lending_operations/repay_with_collateral_operations.js +26 -1
- package/dist/lending_operations/repay_with_collateral_operations.js.map +1 -1
- package/dist/utils/lookupTable.d.ts +27 -0
- package/dist/utils/lookupTable.d.ts.map +1 -1
- package/dist/utils/lookupTable.js +58 -0
- package/dist/utils/lookupTable.js.map +1 -1
- package/dist/utils/seeds.d.ts +11 -1
- package/dist/utils/seeds.d.ts.map +1 -1
- package/dist/utils/seeds.js +13 -3
- package/dist/utils/seeds.js.map +1 -1
- package/dist/utils/userMetadata.js +6 -6
- package/dist/utils/userMetadata.js.map +1 -1
- package/package.json +1 -1
- package/src/classes/action.ts +361 -50
- package/src/classes/manager.ts +4 -6
- package/src/classes/obligation.ts +1 -1
- package/src/classes/vault.ts +1 -1
- package/src/lending_operations/repay_with_collateral_calcs.ts +14 -5
- package/src/lending_operations/repay_with_collateral_operations.ts +63 -20
- package/src/utils/lookupTable.ts +62 -0
- package/src/utils/seeds.ts +14 -4
- package/src/utils/userMetadata.ts +14 -14
- package/dist/classes/lut_utils.d.ts +0 -29
- package/dist/classes/lut_utils.d.ts.map +0 -1
- package/dist/classes/lut_utils.js +0 -62
- package/dist/classes/lut_utils.js.map +0 -1
- package/src/classes/lut_utils.ts +0 -63
package/dist/classes/action.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { KaminoMarket } from './market';
|
|
|
5
5
|
import { KaminoObligation } from './obligation';
|
|
6
6
|
import { KaminoReserve } from './reserve';
|
|
7
7
|
import { Scope } from '@kamino-finance/scope-sdk';
|
|
8
|
-
export type ActionType = 'deposit' | 'borrow' | 'withdraw' | 'repay' | 'mint' | 'redeem' | 'depositCollateral' | 'liquidate' | 'depositAndBorrow' | 'repayAndWithdraw' | 'refreshObligation' | 'requestElevationGroup' | 'withdrawReferrerFees';
|
|
8
|
+
export type ActionType = 'deposit' | 'borrow' | 'withdraw' | 'repay' | 'mint' | 'redeem' | 'depositCollateral' | 'liquidate' | 'depositAndBorrow' | 'repayAndWithdraw' | 'refreshObligation' | 'requestElevationGroup' | 'withdrawReferrerFees' | 'repayAndWithdrawV2' | 'depositAndWithdraw';
|
|
9
9
|
export type AuxiliaryIx = 'setup' | 'inBetween' | 'cleanup';
|
|
10
10
|
export declare class KaminoAction {
|
|
11
11
|
kaminoMarket: KaminoMarket;
|
|
@@ -79,6 +79,14 @@ export declare class KaminoAction {
|
|
|
79
79
|
includeAtaIxns?: boolean, // if true it includes create and close wsol and token atas,
|
|
80
80
|
requestElevationGroup?: boolean, includeUserMetadata?: boolean, // if true it includes user metadata,
|
|
81
81
|
createLookupTable?: boolean, referrer?: PublicKey, currentSlot?: number): Promise<KaminoAction>;
|
|
82
|
+
static buildDepositAndWithdrawV2Txns(kaminoMarket: KaminoMarket, depositAmount: string | BN, depositMint: PublicKey, withdrawAmount: string | BN, withdrawMint: PublicKey, payer: PublicKey, currentSlot: number, obligation: KaminoObligation | ObligationType, scopeRefreshConfig: ScopePriceRefreshConfig | undefined, extraComputeBudget?: number, // if > 0 then adds the ixn
|
|
83
|
+
includeAtaIxns?: boolean, // if true it includes create and close wsol and token atas,
|
|
84
|
+
requestElevationGroup?: boolean, includeUserMetadata?: boolean, // if true it includes user metadata,
|
|
85
|
+
createLookupTable?: boolean, referrer?: PublicKey): Promise<KaminoAction>;
|
|
86
|
+
static buildRepayAndWithdrawV2Txns(kaminoMarket: KaminoMarket, repayAmount: string | BN, repayMint: PublicKey, withdrawAmount: string | BN, withdrawMint: PublicKey, payer: PublicKey, currentSlot: number, obligation: KaminoObligation | ObligationType, scopeRefreshConfig: ScopePriceRefreshConfig | undefined, extraComputeBudget?: number, // if > 0 then adds the ixn
|
|
87
|
+
includeAtaIxns?: boolean, // if true it includes create and close wsol and token atas,
|
|
88
|
+
requestElevationGroup?: boolean, includeUserMetadata?: boolean, // if true it includes user metadata,
|
|
89
|
+
createLookupTable?: boolean, referrer?: PublicKey): Promise<KaminoAction>;
|
|
82
90
|
static buildRepayAndWithdrawTxns(kaminoMarket: KaminoMarket, repayAmount: string | BN, repayMint: PublicKey, withdrawAmount: string | BN, withdrawMint: PublicKey, payer: PublicKey, currentSlot: number, obligation: KaminoObligation | ObligationType, useV2Ixs: boolean, scopeRefreshConfig: ScopePriceRefreshConfig | undefined, extraComputeBudget?: number, // if > 0 then adds the ixn
|
|
83
91
|
includeAtaIxns?: boolean, // if true it includes create and close wsol and token atas,
|
|
84
92
|
requestElevationGroup?: boolean, includeUserMetadata?: boolean, // if true it includes user metadata,
|
|
@@ -132,11 +140,13 @@ export declare class KaminoAction {
|
|
|
132
140
|
addWithdrawIxV2(collateralAmount: BN): Promise<void>;
|
|
133
141
|
addRepayIx(): Promise<void>;
|
|
134
142
|
addRepayIxV2(): Promise<void>;
|
|
143
|
+
addRepayAndWithdrawV2Ixs(withdrawCollateralAmount: BN): void;
|
|
144
|
+
addDepositAndWithdrawV2Ixs(withdrawCollateralAmount: BN): void;
|
|
135
145
|
addDepositAndBorrowIx(): Promise<void>;
|
|
136
146
|
addDepositAndBorrowIxV2(): Promise<void>;
|
|
137
147
|
addRepayAndWithdrawIxs(withdrawCollateralAmount: BN): Promise<void>;
|
|
138
148
|
addRepayAndWithdrawIxsV2(withdrawCollateralAmount: BN): Promise<void>;
|
|
139
|
-
addLiquidateIx(maxAllowedLtvOverridePercent?: number):
|
|
149
|
+
addLiquidateIx(maxAllowedLtvOverridePercent?: number): void;
|
|
140
150
|
addLiquidateIxV2(maxAllowedLtvOverridePercent?: number): Promise<void>;
|
|
141
151
|
addInBetweenIxs(action: ActionType, includeAtaIxns: boolean, requestElevationGroup: boolean, addInitObligationForFarm: boolean, useV2Ixs: boolean): Promise<void>;
|
|
142
152
|
addRefreshObligation(crank: PublicKey): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../src/classes/action.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../src/classes/action.ts"],"names":[],"mappings":"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"}
|
package/dist/classes/action.js
CHANGED
|
@@ -320,6 +320,36 @@ class KaminoAction {
|
|
|
320
320
|
}
|
|
321
321
|
return axn;
|
|
322
322
|
}
|
|
323
|
+
static async buildDepositAndWithdrawV2Txns(kaminoMarket, depositAmount, depositMint, withdrawAmount, withdrawMint, payer, currentSlot, obligation, scopeRefreshConfig, extraComputeBudget = 1_000_000, // if > 0 then adds the ixn
|
|
324
|
+
includeAtaIxns = true, // if true it includes create and close wsol and token atas,
|
|
325
|
+
requestElevationGroup = false, includeUserMetadata = true, // if true it includes user metadata,
|
|
326
|
+
createLookupTable = true, referrer = web3_js_1.PublicKey.default) {
|
|
327
|
+
const axn = await KaminoAction.initializeMultiTokenAction(kaminoMarket, 'depositAndWithdraw', depositAmount, depositMint, withdrawMint, payer, payer, obligation, withdrawAmount, referrer, currentSlot);
|
|
328
|
+
const addInitObligationForFarm = true;
|
|
329
|
+
const twoTokenAction = true;
|
|
330
|
+
if (extraComputeBudget > 0) {
|
|
331
|
+
axn.addComputeBudgetIxn(extraComputeBudget);
|
|
332
|
+
}
|
|
333
|
+
await axn.addSupportIxs('depositAndWithdraw', includeAtaIxns, requestElevationGroup, includeUserMetadata, addInitObligationForFarm, true, scopeRefreshConfig, createLookupTable, twoTokenAction);
|
|
334
|
+
const withdrawCollateralAmount = axn.getWithdrawCollateralAmount(axn.outflowReserve, axn.outflowAmount);
|
|
335
|
+
axn.addDepositAndWithdrawV2Ixs(withdrawCollateralAmount);
|
|
336
|
+
return axn;
|
|
337
|
+
}
|
|
338
|
+
static async buildRepayAndWithdrawV2Txns(kaminoMarket, repayAmount, repayMint, withdrawAmount, withdrawMint, payer, currentSlot, obligation, scopeRefreshConfig, extraComputeBudget = 1_000_000, // if > 0 then adds the ixn
|
|
339
|
+
includeAtaIxns = true, // if true it includes create and close wsol and token atas,
|
|
340
|
+
requestElevationGroup = false, includeUserMetadata = true, // if true it includes user metadata,
|
|
341
|
+
createLookupTable = true, referrer = web3_js_1.PublicKey.default) {
|
|
342
|
+
const axn = await KaminoAction.initializeMultiTokenAction(kaminoMarket, 'repayAndWithdrawV2', repayAmount, repayMint, withdrawMint, payer, payer, obligation, withdrawAmount, referrer, currentSlot);
|
|
343
|
+
const addInitObligationForFarm = true;
|
|
344
|
+
const twoTokenAction = true;
|
|
345
|
+
if (extraComputeBudget > 0) {
|
|
346
|
+
axn.addComputeBudgetIxn(extraComputeBudget);
|
|
347
|
+
}
|
|
348
|
+
await axn.addSupportIxs('repayAndWithdrawV2', includeAtaIxns, requestElevationGroup, includeUserMetadata, addInitObligationForFarm, true, scopeRefreshConfig, createLookupTable, twoTokenAction);
|
|
349
|
+
const withdrawCollateralAmount = axn.getWithdrawCollateralAmount(axn.outflowReserve, axn.outflowAmount);
|
|
350
|
+
axn.addRepayAndWithdrawV2Ixs(withdrawCollateralAmount);
|
|
351
|
+
return axn;
|
|
352
|
+
}
|
|
323
353
|
static async buildRepayAndWithdrawTxns(kaminoMarket, repayAmount, repayMint, withdrawAmount, withdrawMint, payer, currentSlot, obligation, useV2Ixs, scopeRefreshConfig, extraComputeBudget = 1_000_000, // if > 0 then adds the ixn
|
|
324
354
|
includeAtaIxns = true, // if true it includes create and close wsol and token atas,
|
|
325
355
|
requestElevationGroup = false, includeUserMetadata = true, // if true it includes user metadata,
|
|
@@ -569,7 +599,7 @@ class KaminoAction {
|
|
|
569
599
|
reserveFarmState: this.kaminoMarket.programId,
|
|
570
600
|
}
|
|
571
601
|
: {
|
|
572
|
-
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.
|
|
602
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.reserve.state.farmCollateral, this.getObligationPda()),
|
|
573
603
|
reserveFarmState: this.reserve.state.farmCollateral,
|
|
574
604
|
};
|
|
575
605
|
this.lendingIxsLabels.push(`depositReserveLiquidityAndObligationCollateralV2`);
|
|
@@ -619,7 +649,7 @@ class KaminoAction {
|
|
|
619
649
|
reserveFarmState: this.kaminoMarket.programId,
|
|
620
650
|
}
|
|
621
651
|
: {
|
|
622
|
-
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.
|
|
652
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.reserve.state.farmCollateral, this.getObligationPda()),
|
|
623
653
|
reserveFarmState: this.reserve.state.farmCollateral,
|
|
624
654
|
};
|
|
625
655
|
this.lendingIxsLabels.push(`depositObligationCollateralV2`);
|
|
@@ -682,7 +712,7 @@ class KaminoAction {
|
|
|
682
712
|
reserveFarmState: this.kaminoMarket.programId,
|
|
683
713
|
}
|
|
684
714
|
: {
|
|
685
|
-
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.
|
|
715
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.reserve.state.farmDebt, this.getObligationPda()),
|
|
686
716
|
reserveFarmState: this.reserve.state.farmDebt,
|
|
687
717
|
};
|
|
688
718
|
const borrowIx = (0, instructions_1.borrowObligationLiquidityV2)({
|
|
@@ -740,7 +770,7 @@ class KaminoAction {
|
|
|
740
770
|
reserveFarmState: this.kaminoMarket.programId,
|
|
741
771
|
}
|
|
742
772
|
: {
|
|
743
|
-
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.
|
|
773
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.reserve.state.farmCollateral, this.getObligationPda()),
|
|
744
774
|
reserveFarmState: this.reserve.state.farmCollateral,
|
|
745
775
|
};
|
|
746
776
|
this.lendingIxsLabels.push(`withdrawObligationCollateralAndRedeemReserveCollateralV2`);
|
|
@@ -800,7 +830,7 @@ class KaminoAction {
|
|
|
800
830
|
reserveFarmState: this.kaminoMarket.programId,
|
|
801
831
|
}
|
|
802
832
|
: {
|
|
803
|
-
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.
|
|
833
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.reserve.state.farmDebt, this.getObligationPda()),
|
|
804
834
|
reserveFarmState: this.reserve.state.farmDebt,
|
|
805
835
|
};
|
|
806
836
|
const depositReserveAccountMetas = depositReservesList.map((reserve) => {
|
|
@@ -828,6 +858,165 @@ class KaminoAction {
|
|
|
828
858
|
this.obligation.state.elevationGroup > 0 ? repayIx.keys.concat([...depositReserveAccountMetas]) : repayIx.keys;
|
|
829
859
|
this.lendingIxs.push(repayIx);
|
|
830
860
|
}
|
|
861
|
+
addRepayAndWithdrawV2Ixs(withdrawCollateralAmount) {
|
|
862
|
+
this.lendingIxsLabels.push(`repayAndWithdrawAndRedeem(repayReserve=${this.reserve.address})(withdrawReserve=${this.outflowReserve.address})(obligation=${this.getObligationPda()})`);
|
|
863
|
+
const depositReservesList = this.getAdditionalDepositReservesList();
|
|
864
|
+
const depositReserveAccountMetas = depositReservesList.map((reserve) => {
|
|
865
|
+
return { pubkey: reserve, isSigner: false, isWritable: true };
|
|
866
|
+
});
|
|
867
|
+
const borrowReserveAccountMetas = this.borrowReserves.map((reserve) => {
|
|
868
|
+
return { pubkey: reserve, isSigner: false, isWritable: true };
|
|
869
|
+
});
|
|
870
|
+
if (!this.outflowAmount) {
|
|
871
|
+
throw new Error(`outflowAmount not set`);
|
|
872
|
+
}
|
|
873
|
+
if (!this.outflowReserve) {
|
|
874
|
+
throw new Error(`outflowReserve not set`);
|
|
875
|
+
}
|
|
876
|
+
if (!this.additionalTokenAccountAddress) {
|
|
877
|
+
throw new Error(`additionalTokenAccountAddress not set`);
|
|
878
|
+
}
|
|
879
|
+
const collateralFarmsAccounts = this.outflowReserve.state.farmCollateral.equals(web3_js_1.PublicKey.default)
|
|
880
|
+
? {
|
|
881
|
+
obligationFarmUserState: this.kaminoMarket.programId,
|
|
882
|
+
reserveFarmState: this.kaminoMarket.programId,
|
|
883
|
+
}
|
|
884
|
+
: {
|
|
885
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.outflowReserve.state.farmCollateral, this.getObligationPda()),
|
|
886
|
+
reserveFarmState: this.outflowReserve.state.farmCollateral,
|
|
887
|
+
};
|
|
888
|
+
const debtFarmsAccounts = this.reserve.state.farmDebt.equals(web3_js_1.PublicKey.default)
|
|
889
|
+
? {
|
|
890
|
+
obligationFarmUserState: this.kaminoMarket.programId,
|
|
891
|
+
reserveFarmState: this.kaminoMarket.programId,
|
|
892
|
+
}
|
|
893
|
+
: {
|
|
894
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.reserve.state.farmDebt, this.getObligationPda()),
|
|
895
|
+
reserveFarmState: this.reserve.state.farmDebt,
|
|
896
|
+
};
|
|
897
|
+
const repayAndWithdrawIx = (0, instructions_1.repayAndWithdrawAndRedeem)({
|
|
898
|
+
repayAmount: this.amount,
|
|
899
|
+
withdrawCollateralAmount,
|
|
900
|
+
}, {
|
|
901
|
+
repayAccounts: {
|
|
902
|
+
owner: this.owner,
|
|
903
|
+
obligation: this.getObligationPda(),
|
|
904
|
+
lendingMarket: this.kaminoMarket.getAddress(),
|
|
905
|
+
repayReserve: this.reserve.address,
|
|
906
|
+
reserveLiquidityMint: this.reserve.getLiquidityMint(),
|
|
907
|
+
userSourceLiquidity: this.userTokenAccountAddress,
|
|
908
|
+
reserveDestinationLiquidity: this.reserve.state.liquidity.supplyVault,
|
|
909
|
+
tokenProgram: this.reserve.getLiquidityTokenProgram(),
|
|
910
|
+
instructionSysvarAccount: web3_js_1.SYSVAR_INSTRUCTIONS_PUBKEY,
|
|
911
|
+
},
|
|
912
|
+
withdrawAccounts: {
|
|
913
|
+
owner: this.owner,
|
|
914
|
+
obligation: this.getObligationPda(),
|
|
915
|
+
lendingMarket: this.kaminoMarket.getAddress(),
|
|
916
|
+
lendingMarketAuthority: this.kaminoMarket.getLendingMarketAuthority(),
|
|
917
|
+
withdrawReserve: this.outflowReserve.address,
|
|
918
|
+
reserveLiquidityMint: this.outflowReserve.getLiquidityMint(),
|
|
919
|
+
reserveCollateralMint: this.outflowReserve.getCTokenMint(),
|
|
920
|
+
reserveLiquiditySupply: this.outflowReserve.state.liquidity.supplyVault,
|
|
921
|
+
reserveSourceCollateral: this.outflowReserve.state.collateral.supplyVault,
|
|
922
|
+
userDestinationLiquidity: this.additionalTokenAccountAddress,
|
|
923
|
+
placeholderUserDestinationCollateral: this.kaminoMarket.programId,
|
|
924
|
+
collateralTokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
|
|
925
|
+
liquidityTokenProgram: this.outflowReserve.getLiquidityTokenProgram(),
|
|
926
|
+
instructionSysvarAccount: web3_js_1.SYSVAR_INSTRUCTIONS_PUBKEY,
|
|
927
|
+
},
|
|
928
|
+
collateralFarmsAccounts,
|
|
929
|
+
debtFarmsAccounts,
|
|
930
|
+
farmsProgram: farms_sdk_1.farmsId,
|
|
931
|
+
}, this.kaminoMarket.programId);
|
|
932
|
+
repayAndWithdrawIx.keys = repayAndWithdrawIx.keys.concat([
|
|
933
|
+
...depositReserveAccountMetas,
|
|
934
|
+
...borrowReserveAccountMetas,
|
|
935
|
+
]);
|
|
936
|
+
this.lendingIxs.push(repayAndWithdrawIx);
|
|
937
|
+
}
|
|
938
|
+
addDepositAndWithdrawV2Ixs(withdrawCollateralAmount) {
|
|
939
|
+
this.lendingIxsLabels.push(`depositAndWithdrawV2(depositReserve=${this.reserve.address})(withdrawReserve=${this.outflowReserve.address})(obligation=${this.getObligationPda()})`);
|
|
940
|
+
const depositReservesList = this.getAdditionalDepositReservesList();
|
|
941
|
+
const depositReserveAccountMetas = depositReservesList.map((reserve) => {
|
|
942
|
+
return { pubkey: reserve, isSigner: false, isWritable: true };
|
|
943
|
+
});
|
|
944
|
+
const borrowReserveAccountMetas = this.borrowReserves.map((reserve) => {
|
|
945
|
+
return { pubkey: reserve, isSigner: false, isWritable: true };
|
|
946
|
+
});
|
|
947
|
+
if (!this.outflowAmount) {
|
|
948
|
+
throw new Error(`outflowAmount not set`);
|
|
949
|
+
}
|
|
950
|
+
if (!this.outflowReserve) {
|
|
951
|
+
throw new Error(`outflowReserve not set`);
|
|
952
|
+
}
|
|
953
|
+
if (!this.additionalTokenAccountAddress) {
|
|
954
|
+
throw new Error(`additionalTokenAccountAddress not set`);
|
|
955
|
+
}
|
|
956
|
+
const depositFarmsAccounts = this.reserve.state.farmCollateral.equals(web3_js_1.PublicKey.default)
|
|
957
|
+
? {
|
|
958
|
+
obligationFarmUserState: this.kaminoMarket.programId,
|
|
959
|
+
reserveFarmState: this.kaminoMarket.programId,
|
|
960
|
+
}
|
|
961
|
+
: {
|
|
962
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.reserve.state.farmCollateral, this.getObligationPda()),
|
|
963
|
+
reserveFarmState: this.reserve.state.farmCollateral,
|
|
964
|
+
};
|
|
965
|
+
const withdrawFarmsAccounts = this.outflowReserve.state.farmCollateral.equals(web3_js_1.PublicKey.default)
|
|
966
|
+
? {
|
|
967
|
+
obligationFarmUserState: this.kaminoMarket.programId,
|
|
968
|
+
reserveFarmState: this.kaminoMarket.programId,
|
|
969
|
+
}
|
|
970
|
+
: {
|
|
971
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.outflowReserve.state.farmCollateral, this.getObligationPda()),
|
|
972
|
+
reserveFarmState: this.outflowReserve.state.farmCollateral,
|
|
973
|
+
};
|
|
974
|
+
const depositAndWithdrawIx = (0, instructions_1.depositAndWithdraw)({
|
|
975
|
+
liquidityAmount: this.amount,
|
|
976
|
+
withdrawCollateralAmount,
|
|
977
|
+
}, {
|
|
978
|
+
depositAccounts: {
|
|
979
|
+
owner: this.owner,
|
|
980
|
+
obligation: this.getObligationPda(),
|
|
981
|
+
lendingMarket: this.kaminoMarket.getAddress(),
|
|
982
|
+
lendingMarketAuthority: this.kaminoMarket.getLendingMarketAuthority(),
|
|
983
|
+
reserve: this.reserve.address,
|
|
984
|
+
reserveLiquidityMint: this.reserve.getLiquidityMint(),
|
|
985
|
+
reserveLiquiditySupply: this.reserve.state.liquidity.supplyVault,
|
|
986
|
+
reserveCollateralMint: this.reserve.getCTokenMint(),
|
|
987
|
+
reserveDestinationDepositCollateral: this.reserve.state.collateral.supplyVault, // destinationCollateral
|
|
988
|
+
userSourceLiquidity: this.userTokenAccountAddress,
|
|
989
|
+
placeholderUserDestinationCollateral: this.kaminoMarket.programId,
|
|
990
|
+
collateralTokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
|
|
991
|
+
liquidityTokenProgram: this.reserve.getLiquidityTokenProgram(),
|
|
992
|
+
instructionSysvarAccount: web3_js_1.SYSVAR_INSTRUCTIONS_PUBKEY,
|
|
993
|
+
},
|
|
994
|
+
withdrawAccounts: {
|
|
995
|
+
owner: this.owner,
|
|
996
|
+
obligation: this.getObligationPda(),
|
|
997
|
+
lendingMarket: this.kaminoMarket.getAddress(),
|
|
998
|
+
lendingMarketAuthority: this.kaminoMarket.getLendingMarketAuthority(),
|
|
999
|
+
withdrawReserve: this.outflowReserve.address,
|
|
1000
|
+
reserveLiquidityMint: this.outflowReserve.getLiquidityMint(),
|
|
1001
|
+
reserveCollateralMint: this.outflowReserve.getCTokenMint(),
|
|
1002
|
+
reserveLiquiditySupply: this.outflowReserve.state.liquidity.supplyVault,
|
|
1003
|
+
reserveSourceCollateral: this.outflowReserve.state.collateral.supplyVault,
|
|
1004
|
+
userDestinationLiquidity: this.additionalTokenAccountAddress,
|
|
1005
|
+
placeholderUserDestinationCollateral: this.kaminoMarket.programId,
|
|
1006
|
+
collateralTokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
|
|
1007
|
+
liquidityTokenProgram: this.outflowReserve.getLiquidityTokenProgram(),
|
|
1008
|
+
instructionSysvarAccount: web3_js_1.SYSVAR_INSTRUCTIONS_PUBKEY,
|
|
1009
|
+
},
|
|
1010
|
+
depositFarmsAccounts,
|
|
1011
|
+
withdrawFarmsAccounts,
|
|
1012
|
+
farmsProgram: farms_sdk_1.farmsId,
|
|
1013
|
+
}, this.kaminoMarket.programId);
|
|
1014
|
+
depositAndWithdrawIx.keys = depositAndWithdrawIx.keys.concat([
|
|
1015
|
+
...depositReserveAccountMetas,
|
|
1016
|
+
...borrowReserveAccountMetas,
|
|
1017
|
+
]);
|
|
1018
|
+
this.lendingIxs.push(depositAndWithdrawIx);
|
|
1019
|
+
}
|
|
831
1020
|
async addDepositAndBorrowIx() {
|
|
832
1021
|
this.lendingIxsLabels.push(`depositReserveLiquidityAndObligationCollateral`);
|
|
833
1022
|
this.lendingIxsLabels.push(`borrowObligationLiquidity`);
|
|
@@ -891,7 +1080,7 @@ class KaminoAction {
|
|
|
891
1080
|
reserveFarmState: this.kaminoMarket.programId,
|
|
892
1081
|
}
|
|
893
1082
|
: {
|
|
894
|
-
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.
|
|
1083
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.reserve.state.farmCollateral, this.getObligationPda()),
|
|
895
1084
|
reserveFarmState: this.reserve.state.farmCollateral,
|
|
896
1085
|
};
|
|
897
1086
|
this.lendingIxsLabels.push(`depositReserveLiquidityAndObligationCollateralV2`);
|
|
@@ -940,7 +1129,7 @@ class KaminoAction {
|
|
|
940
1129
|
reserveFarmState: this.kaminoMarket.programId,
|
|
941
1130
|
}
|
|
942
1131
|
: {
|
|
943
|
-
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.
|
|
1132
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.outflowReserve.state.farmDebt, this.getObligationPda()),
|
|
944
1133
|
reserveFarmState: this.outflowReserve.state.farmDebt,
|
|
945
1134
|
};
|
|
946
1135
|
const borrowIx = (0, instructions_1.borrowObligationLiquidityV2)({
|
|
@@ -1029,7 +1218,7 @@ class KaminoAction {
|
|
|
1029
1218
|
reserveFarmState: this.kaminoMarket.programId,
|
|
1030
1219
|
}
|
|
1031
1220
|
: {
|
|
1032
|
-
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.
|
|
1221
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.reserve.state.farmDebt, this.getObligationPda()),
|
|
1033
1222
|
reserveFarmState: this.reserve.state.farmDebt,
|
|
1034
1223
|
};
|
|
1035
1224
|
const repayIx = (0, instructions_1.repayObligationLiquidityV2)({
|
|
@@ -1067,7 +1256,7 @@ class KaminoAction {
|
|
|
1067
1256
|
reserveFarmState: this.kaminoMarket.programId,
|
|
1068
1257
|
}
|
|
1069
1258
|
: {
|
|
1070
|
-
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.
|
|
1259
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.outflowReserve.state.farmCollateral, this.getObligationPda()),
|
|
1071
1260
|
reserveFarmState: this.outflowReserve.state.farmCollateral,
|
|
1072
1261
|
};
|
|
1073
1262
|
this.lendingIxs.push((0, instructions_1.withdrawObligationCollateralAndRedeemReserveCollateralV2)({
|
|
@@ -1093,7 +1282,7 @@ class KaminoAction {
|
|
|
1093
1282
|
farmsProgram: farms_sdk_1.farmsId,
|
|
1094
1283
|
}, this.kaminoMarket.programId));
|
|
1095
1284
|
}
|
|
1096
|
-
|
|
1285
|
+
addLiquidateIx(maxAllowedLtvOverridePercent = 0) {
|
|
1097
1286
|
this.lendingIxsLabels.push(`liquidateObligationAndRedeemReserveCollateral`);
|
|
1098
1287
|
if (!this.outflowReserve) {
|
|
1099
1288
|
throw Error(`Withdraw reserve during liquidation is not defined`);
|
|
@@ -1156,7 +1345,7 @@ class KaminoAction {
|
|
|
1156
1345
|
reserveFarmState: this.kaminoMarket.programId,
|
|
1157
1346
|
}
|
|
1158
1347
|
: {
|
|
1159
|
-
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.
|
|
1348
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.outflowReserve.state.farmCollateral, this.getObligationPda()),
|
|
1160
1349
|
reserveFarmState: this.outflowReserve.state.farmCollateral,
|
|
1161
1350
|
};
|
|
1162
1351
|
const debtFarmsAccounts = this.reserve.state.farmDebt.equals(web3_js_1.PublicKey.default)
|
|
@@ -1165,7 +1354,7 @@ class KaminoAction {
|
|
|
1165
1354
|
reserveFarmState: this.kaminoMarket.programId,
|
|
1166
1355
|
}
|
|
1167
1356
|
: {
|
|
1168
|
-
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.
|
|
1357
|
+
obligationFarmUserState: (0, utils_1.obligationFarmStatePda)(this.reserve.state.farmDebt, this.getObligationPda()),
|
|
1169
1358
|
reserveFarmState: this.reserve.state.farmDebt,
|
|
1170
1359
|
};
|
|
1171
1360
|
const liquidateIx = (0, instructions_1.liquidateObligationAndRedeemReserveCollateralV2)({
|
|
@@ -1233,7 +1422,9 @@ class KaminoAction {
|
|
|
1233
1422
|
'repay',
|
|
1234
1423
|
'depositAndBorrow',
|
|
1235
1424
|
'repayAndWithdraw',
|
|
1425
|
+
'repayAndWithdrawV2',
|
|
1236
1426
|
'refreshObligation',
|
|
1427
|
+
'depositAndWithdraw',
|
|
1237
1428
|
].includes(action)) {
|
|
1238
1429
|
// The support ixns in order are:
|
|
1239
1430
|
// 0. Init obligation ixn
|
|
@@ -1248,11 +1439,14 @@ class KaminoAction {
|
|
|
1248
1439
|
// 7. Ixn to refresh the `debt` farm of the obligation
|
|
1249
1440
|
// 8. Ixn to refresh the `collateral` farm of the obligation
|
|
1250
1441
|
let currentReserves = [];
|
|
1251
|
-
if (action === 'liquidate' ||
|
|
1442
|
+
if (action === 'liquidate' ||
|
|
1443
|
+
action === 'depositAndBorrow' ||
|
|
1444
|
+
action === 'repayAndWithdraw' ||
|
|
1445
|
+
action === 'repayAndWithdrawV2') {
|
|
1252
1446
|
if (!this.outflowReserve) {
|
|
1253
1447
|
throw new Error('outflowReserve is undefined');
|
|
1254
1448
|
}
|
|
1255
|
-
if (action === 'depositAndBorrow' || action === 'repayAndWithdraw') {
|
|
1449
|
+
if (action === 'depositAndBorrow' || action === 'repayAndWithdraw' || action === 'repayAndWithdrawV2') {
|
|
1256
1450
|
currentReserves = [this.reserve, this.outflowReserve];
|
|
1257
1451
|
if (action === 'depositAndBorrow') {
|
|
1258
1452
|
if (this.obligation) {
|
|
@@ -1290,13 +1484,17 @@ class KaminoAction {
|
|
|
1290
1484
|
else if (action === 'depositAndBorrow' ||
|
|
1291
1485
|
action === 'depositCollateral' ||
|
|
1292
1486
|
action === 'withdraw' ||
|
|
1293
|
-
action === 'deposit'
|
|
1487
|
+
action === 'deposit' ||
|
|
1488
|
+
action === 'depositAndWithdraw') {
|
|
1294
1489
|
await this.addInitObligationForFarm(this.reserve, types_1.ReserveFarmKind.Collateral, addAsSupportIx);
|
|
1295
|
-
if (this.outflowReserve) {
|
|
1490
|
+
if (this.outflowReserve && action !== 'depositAndWithdraw') {
|
|
1296
1491
|
await this.addInitObligationForFarm(this.outflowReserve, types_1.ReserveFarmKind.Debt, addAsSupportIx);
|
|
1297
1492
|
}
|
|
1298
1493
|
}
|
|
1299
|
-
else if (action === 'repayAndWithdraw' ||
|
|
1494
|
+
else if (action === 'repayAndWithdraw' ||
|
|
1495
|
+
action === 'borrow' ||
|
|
1496
|
+
action === 'repay' ||
|
|
1497
|
+
action === 'repayAndWithdrawV2') {
|
|
1300
1498
|
// todo - probably don't need to add both debt and collateral for everything here
|
|
1301
1499
|
await this.addInitObligationForFarm(this.reserve, types_1.ReserveFarmKind.Debt, addAsSupportIx);
|
|
1302
1500
|
if (this.outflowReserve) {
|
|
@@ -1327,7 +1525,7 @@ class KaminoAction {
|
|
|
1327
1525
|
this.addRefreshObligationIx(addAsSupportIx);
|
|
1328
1526
|
}
|
|
1329
1527
|
if (requestElevationGroup) {
|
|
1330
|
-
if (action === 'repay') {
|
|
1528
|
+
if (action === 'repay' || action === 'repayAndWithdrawV2') {
|
|
1331
1529
|
const repayObligationLiquidity = this.obligation.borrows.get(this.reserve.address);
|
|
1332
1530
|
if (!repayObligationLiquidity) {
|
|
1333
1531
|
throw new Error(`Could not find debt reserve ${this.reserve.address} in obligation`);
|
|
@@ -1631,7 +1829,7 @@ class KaminoAction {
|
|
|
1631
1829
|
farms.push([
|
|
1632
1830
|
types_1.ReserveFarmKind.Collateral,
|
|
1633
1831
|
kaminoReserve.state.farmCollateral,
|
|
1634
|
-
(0, utils_1.obligationFarmStatePda)(
|
|
1832
|
+
(0, utils_1.obligationFarmStatePda)(kaminoReserve.state.farmCollateral, this.getObligationPda()),
|
|
1635
1833
|
kaminoReserve,
|
|
1636
1834
|
]);
|
|
1637
1835
|
}
|
|
@@ -1639,7 +1837,7 @@ class KaminoAction {
|
|
|
1639
1837
|
farms.push([
|
|
1640
1838
|
types_1.ReserveFarmKind.Debt,
|
|
1641
1839
|
kaminoReserve.state.farmDebt,
|
|
1642
|
-
(0, utils_1.obligationFarmStatePda)(
|
|
1840
|
+
(0, utils_1.obligationFarmStatePda)(kaminoReserve.state.farmDebt, this.getObligationPda()),
|
|
1643
1841
|
kaminoReserve,
|
|
1644
1842
|
]);
|
|
1645
1843
|
}
|
|
@@ -1689,17 +1887,17 @@ class KaminoAction {
|
|
|
1689
1887
|
async addInitObligationForFarm(reserve, mode, addAsSupportIx = 'setup') {
|
|
1690
1888
|
const farms = [];
|
|
1691
1889
|
if (mode === types_1.ReserveFarmKind.Collateral && (0, utils_1.isNotNullPubkey)(reserve.state.farmCollateral)) {
|
|
1692
|
-
const
|
|
1693
|
-
const account = await this.kaminoMarket.getConnection().getAccountInfo(
|
|
1890
|
+
const pda = (0, utils_1.obligationFarmStatePda)(reserve.state.farmCollateral, this.getObligationPda());
|
|
1891
|
+
const account = await this.kaminoMarket.getConnection().getAccountInfo(pda);
|
|
1694
1892
|
if (!account) {
|
|
1695
|
-
farms.push([types_1.ReserveFarmKind.Collateral.discriminator, reserve.state.farmCollateral,
|
|
1893
|
+
farms.push([types_1.ReserveFarmKind.Collateral.discriminator, reserve.state.farmCollateral, pda]);
|
|
1696
1894
|
}
|
|
1697
1895
|
}
|
|
1698
1896
|
if (mode === types_1.ReserveFarmKind.Debt && (0, utils_1.isNotNullPubkey)(reserve.state.farmDebt)) {
|
|
1699
|
-
const
|
|
1700
|
-
const account = await this.kaminoMarket.getConnection().getAccountInfo(
|
|
1897
|
+
const pda = (0, utils_1.obligationFarmStatePda)(reserve.state.farmDebt, this.getObligationPda());
|
|
1898
|
+
const account = await this.kaminoMarket.getConnection().getAccountInfo(pda);
|
|
1701
1899
|
if (!account) {
|
|
1702
|
-
farms.push([types_1.ReserveFarmKind.Debt.discriminator, reserve.state.farmDebt,
|
|
1900
|
+
farms.push([types_1.ReserveFarmKind.Debt.discriminator, reserve.state.farmDebt, pda]);
|
|
1703
1901
|
}
|
|
1704
1902
|
}
|
|
1705
1903
|
farms.forEach((arg) => {
|
|
@@ -1728,7 +1926,7 @@ class KaminoAction {
|
|
|
1728
1926
|
}
|
|
1729
1927
|
});
|
|
1730
1928
|
}
|
|
1731
|
-
|
|
1929
|
+
addInitObligationIxs() {
|
|
1732
1930
|
if (!this.obligation) {
|
|
1733
1931
|
const obligationPda = this.getObligationPda();
|
|
1734
1932
|
const [userMetadataAddress, _bump] = (0, utils_1.userMetadataPda)(this.owner, this.kaminoMarket.programId);
|
|
@@ -1863,14 +2061,13 @@ class KaminoAction {
|
|
|
1863
2061
|
return;
|
|
1864
2062
|
}
|
|
1865
2063
|
let safeRepay = new bn_js_1.default(this.amount);
|
|
1866
|
-
if (this.obligation && action === 'repay' && this.amount.eq(new bn_js_1.default(utils_1.U64_MAX))) {
|
|
2064
|
+
if (this.obligation && (action === 'repay' || action === 'repayAndWithdrawV2') && this.amount.eq(new bn_js_1.default(utils_1.U64_MAX))) {
|
|
1867
2065
|
const borrow = this.obligation.state.borrows.find((borrow) => borrow.borrowReserve.toString() === this.reserve.address.toString());
|
|
1868
2066
|
if (!borrow) {
|
|
1869
2067
|
throw Error(`Unable to find obligation borrow to repay for ${this.obligation.state.owner.toBase58()}`);
|
|
1870
2068
|
}
|
|
1871
2069
|
const cumulativeBorrowRateObligation = obligation_1.KaminoObligation.getCumulativeBorrowRate(borrow);
|
|
1872
2070
|
const cumulativeBorrowRateReserve = this.reserve.getEstimatedCumulativeBorrowRate(this.currentSlot, this.kaminoMarket.state.referralFeeBps);
|
|
1873
|
-
// TODO: shouldn't this calc be added to all other stuff as well?
|
|
1874
2071
|
safeRepay = new bn_js_1.default(Math.floor(obligation_1.KaminoObligation.getBorrowAmount(borrow)
|
|
1875
2072
|
.mul(cumulativeBorrowRateReserve)
|
|
1876
2073
|
.div(cumulativeBorrowRateObligation)
|
|
@@ -1889,6 +2086,7 @@ class KaminoAction {
|
|
|
1889
2086
|
// Add rent exemption lamports for WSOL accounts that need to be pre-funded for inflow/send transactions
|
|
1890
2087
|
const sendAction = action === 'deposit' ||
|
|
1891
2088
|
action === 'repay' ||
|
|
2089
|
+
action === 'repayAndWithdrawV2' ||
|
|
1892
2090
|
action === 'mint' ||
|
|
1893
2091
|
(action === 'liquidate' && this.secondaryMint?.equals(spl_token_1.NATIVE_MINT)); // only sync WSOL amount if liquidator repays SOL which is secondaryMint
|
|
1894
2092
|
const transferLamportsIx = web3_js_1.SystemProgram.transfer({
|
|
@@ -1953,7 +2151,7 @@ class KaminoAction {
|
|
|
1953
2151
|
primaryMint = inflowTokenMint;
|
|
1954
2152
|
secondaryMint = outflowTokenMint;
|
|
1955
2153
|
}
|
|
1956
|
-
else if (action === 'repayAndWithdraw') {
|
|
2154
|
+
else if (action === 'repayAndWithdraw' || action === 'repayAndWithdrawV2' || action === 'depositAndWithdraw') {
|
|
1957
2155
|
primaryMint = inflowTokenMint;
|
|
1958
2156
|
secondaryMint = outflowTokenMint;
|
|
1959
2157
|
userTokenAccountAddress = userInflowTokenAccountAddress;
|