@kamino-finance/klend-sdk 7.3.10-beta.0 → 7.4.0-beta.1

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.
Files changed (123) hide show
  1. package/dist/classes/action.d.ts +21 -91
  2. package/dist/classes/action.d.ts.map +1 -1
  3. package/dist/classes/action.js +152 -139
  4. package/dist/classes/action.js.map +1 -1
  5. package/dist/classes/actionTypes.d.ts +310 -0
  6. package/dist/classes/actionTypes.d.ts.map +1 -0
  7. package/dist/classes/actionTypes.js +3 -0
  8. package/dist/classes/actionTypes.js.map +1 -0
  9. package/dist/classes/configItems.d.ts +1 -6
  10. package/dist/classes/configItems.d.ts.map +1 -1
  11. package/dist/classes/configItems.js +1 -93
  12. package/dist/classes/configItems.js.map +1 -1
  13. package/dist/classes/farm_utils.d.ts +1 -1
  14. package/dist/classes/farm_utils.d.ts.map +1 -1
  15. package/dist/classes/farm_utils.js +3 -1
  16. package/dist/classes/farm_utils.js.map +1 -1
  17. package/dist/classes/market.d.ts +5 -5
  18. package/dist/classes/market.d.ts.map +1 -1
  19. package/dist/classes/market.js +29 -13
  20. package/dist/classes/market.js.map +1 -1
  21. package/dist/classes/obligation.d.ts +9 -9
  22. package/dist/classes/obligation.d.ts.map +1 -1
  23. package/dist/classes/obligation.js +48 -50
  24. package/dist/classes/obligation.js.map +1 -1
  25. package/dist/classes/obligationOrder.d.ts.map +1 -1
  26. package/dist/classes/obligationOrder.js +6 -3
  27. package/dist/classes/obligationOrder.js.map +1 -1
  28. package/dist/classes/reserve.d.ts +7 -3
  29. package/dist/classes/reserve.d.ts.map +1 -1
  30. package/dist/classes/reserve.js +31 -43
  31. package/dist/classes/reserve.js.map +1 -1
  32. package/dist/classes/shared.d.ts +3 -2
  33. package/dist/classes/shared.d.ts.map +1 -1
  34. package/dist/classes/vault.d.ts +28 -1
  35. package/dist/classes/vault.d.ts.map +1 -1
  36. package/dist/classes/vault.js +103 -6
  37. package/dist/classes/vault.js.map +1 -1
  38. package/dist/classes/vault_types.d.ts +2 -1
  39. package/dist/classes/vault_types.d.ts.map +1 -1
  40. package/dist/client/commands/borrow.d.ts +1 -1
  41. package/dist/client/commands/borrow.d.ts.map +1 -1
  42. package/dist/client/commands/borrow.js +11 -2
  43. package/dist/client/commands/borrow.js.map +1 -1
  44. package/dist/client/commands/deposit.d.ts +1 -1
  45. package/dist/client/commands/deposit.d.ts.map +1 -1
  46. package/dist/client/commands/deposit.js +11 -2
  47. package/dist/client/commands/deposit.js.map +1 -1
  48. package/dist/client/commands/printReserve.d.ts +1 -1
  49. package/dist/client/commands/printReserve.d.ts.map +1 -1
  50. package/dist/client/commands/printReserve.js +2 -4
  51. package/dist/client/commands/printReserve.js.map +1 -1
  52. package/dist/client/commands/repay.d.ts +1 -1
  53. package/dist/client/commands/repay.d.ts.map +1 -1
  54. package/dist/client/commands/repay.js +12 -2
  55. package/dist/client/commands/repay.js.map +1 -1
  56. package/dist/client/commands/withdraw.d.ts +1 -1
  57. package/dist/client/commands/withdraw.d.ts.map +1 -1
  58. package/dist/client/commands/withdraw.js +11 -2
  59. package/dist/client/commands/withdraw.js.map +1 -1
  60. package/dist/lending_operations/repay_with_collateral_calcs.d.ts +1 -1
  61. package/dist/lending_operations/repay_with_collateral_calcs.d.ts.map +1 -1
  62. package/dist/lending_operations/repay_with_collateral_calcs.js +2 -2
  63. package/dist/lending_operations/repay_with_collateral_calcs.js.map +1 -1
  64. package/dist/lending_operations/repay_with_collateral_operations.d.ts +4 -4
  65. package/dist/lending_operations/repay_with_collateral_operations.d.ts.map +1 -1
  66. package/dist/lending_operations/repay_with_collateral_operations.js +43 -10
  67. package/dist/lending_operations/repay_with_collateral_operations.js.map +1 -1
  68. package/dist/lending_operations/swap_collateral_operations.d.ts +4 -4
  69. package/dist/lending_operations/swap_collateral_operations.d.ts.map +1 -1
  70. package/dist/lending_operations/swap_collateral_operations.js +40 -21
  71. package/dist/lending_operations/swap_collateral_operations.js.map +1 -1
  72. package/dist/leverage/operations.d.ts +6 -6
  73. package/dist/leverage/operations.d.ts.map +1 -1
  74. package/dist/leverage/operations.js +167 -52
  75. package/dist/leverage/operations.js.map +1 -1
  76. package/dist/leverage/types.d.ts +2 -2
  77. package/dist/leverage/types.d.ts.map +1 -1
  78. package/dist/obligation_orders/price_based.js +1 -0
  79. package/dist/obligation_orders/price_based.js.map +1 -1
  80. package/dist/utils/Logger.d.ts +14 -0
  81. package/dist/utils/Logger.d.ts.map +1 -0
  82. package/dist/utils/Logger.js +12 -0
  83. package/dist/utils/Logger.js.map +1 -0
  84. package/dist/utils/ObligationType.d.ts +33 -1
  85. package/dist/utils/ObligationType.d.ts.map +1 -1
  86. package/dist/utils/ObligationType.js +81 -2
  87. package/dist/utils/ObligationType.js.map +1 -1
  88. package/dist/utils/api.d.ts +13 -4
  89. package/dist/utils/api.d.ts.map +1 -1
  90. package/dist/utils/api.js +33 -31
  91. package/dist/utils/api.js.map +1 -1
  92. package/dist/utils/userMetadata.d.ts +2 -2
  93. package/dist/utils/userMetadata.d.ts.map +1 -1
  94. package/dist/utils/userMetadata.js +49 -25
  95. package/dist/utils/userMetadata.js.map +1 -1
  96. package/package.json +1 -1
  97. package/src/classes/action.ts +346 -372
  98. package/src/classes/actionTypes.ts +295 -0
  99. package/src/classes/configItems.ts +1 -99
  100. package/src/classes/farm_utils.ts +5 -1
  101. package/src/classes/market.ts +42 -16
  102. package/src/classes/obligation.ts +54 -53
  103. package/src/classes/obligationOrder.ts +6 -3
  104. package/src/classes/reserve.ts +118 -122
  105. package/src/classes/shared.ts +4 -2
  106. package/src/classes/vault.ts +160 -7
  107. package/src/classes/vault_types.ts +2 -1
  108. package/src/client/client.ts +17 -18
  109. package/src/client/commands/borrow.ts +10 -9
  110. package/src/client/commands/deposit.ts +10 -9
  111. package/src/client/commands/printReserve.ts +2 -4
  112. package/src/client/commands/repay.ts +11 -10
  113. package/src/client/commands/withdraw.ts +15 -9
  114. package/src/lending_operations/repay_with_collateral_calcs.ts +3 -4
  115. package/src/lending_operations/repay_with_collateral_operations.ts +40 -38
  116. package/src/lending_operations/swap_collateral_operations.ts +47 -41
  117. package/src/leverage/operations.ts +168 -129
  118. package/src/leverage/types.ts +2 -2
  119. package/src/obligation_orders/price_based.ts +1 -0
  120. package/src/utils/Logger.ts +14 -0
  121. package/src/utils/ObligationType.ts +92 -1
  122. package/src/utils/api.ts +56 -33
  123. package/src/utils/userMetadata.ts +64 -30
@@ -1 +1 @@
1
- {"version":3,"file":"swap_collateral_operations.js","sourceRoot":"","sources":["../../src/lending_operations/swap_collateral_operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"swap_collateral_operations.js","sourceRoot":"","sources":["../../src/lending_operations/swap_collateral_operations.ts"],"names":[],"mappings":"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"}
@@ -3,25 +3,25 @@ import { KaminoMarket, KaminoObligation, KaminoReserve } from '../classes';
3
3
  import { ObligationType, ScopePriceRefreshConfig } from '../utils';
4
4
  import { AdjustLeverageInitialInputs, AdjustLeverageIxsResponse, AdjustLeverageProps, AdjustLeverageSwapInputsProps, DepositLeverageInitialInputs, DepositWithLeverageProps, DepositWithLeverageSwapInputsProps, DepositLeverageIxsResponse, SwapInputs, SwapIxs, WithdrawLeverageCalcsResult, WithdrawLeverageInitialInputs, WithdrawLeverageIxsResponse, WithdrawWithLeverageProps, WithdrawWithLeverageSwapInputsProps, LeverageIxsOutput, FlashLoanInfo } from './types';
5
5
  export declare const WITHDRAW_SLOT_OFFSET = 150;
6
- export declare function getDepositWithLeverageSwapInputs<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, depositAmount, priceDebtToColl, slippagePct, obligation, referrer, currentSlot, targetLeverage, selectedTokenMint, obligationTypeTagOverride, scopeRefreshIx, budgetAndPriorityFeeIxs, quoteBufferBps, quoter, useV2Ixs, elevationGroupOverride, }: DepositWithLeverageSwapInputsProps<QuoteResponse>): Promise<{
6
+ export declare function getDepositWithLeverageSwapInputs<QuoteResponse>({ owner, kaminoMarket, debtReserveAddress, collReserveAddress, depositAmount, priceDebtToColl, slippagePct, obligation, referrer, currentSlot, targetLeverage, selectedTokenMint, obligationTypeTagOverride, scopeRefreshIx, budgetAndPriorityFeeIxs, quoteBufferBps, quoter, useV2Ixs, elevationGroupOverride, }: DepositWithLeverageSwapInputsProps<QuoteResponse>): Promise<{
7
7
  flashLoanInfo: FlashLoanInfo;
8
8
  swapInputs: SwapInputs;
9
9
  initialInputs: DepositLeverageInitialInputs<QuoteResponse>;
10
10
  }>;
11
- export declare function getDepositWithLeverageIxs<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, depositAmount, priceDebtToColl, slippagePct, obligation, referrer, currentSlot, targetLeverage, selectedTokenMint, obligationTypeTagOverride, scopeRefreshIx, budgetAndPriorityFeeIxs, quoteBufferBps, quoter, swapper, elevationGroupOverride, useV2Ixs, }: DepositWithLeverageProps<QuoteResponse>): Promise<Array<DepositLeverageIxsResponse<QuoteResponse>>>;
12
- export declare function getWithdrawWithLeverageSwapInputs<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, deposited, borrowed, obligation, referrer, currentSlot, withdrawAmount, priceCollToDebt, slippagePct, isClosingPosition, selectedTokenMint, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, useV2Ixs, userSolBalanceLamports, }: WithdrawWithLeverageSwapInputsProps<QuoteResponse>): Promise<{
11
+ export declare function getDepositWithLeverageIxs<QuoteResponse>({ owner, kaminoMarket, debtReserveAddress, collReserveAddress, depositAmount, priceDebtToColl, slippagePct, obligation, referrer, currentSlot, targetLeverage, selectedTokenMint, obligationTypeTagOverride, scopeRefreshIx, budgetAndPriorityFeeIxs, quoteBufferBps, quoter, swapper, elevationGroupOverride, useV2Ixs, }: DepositWithLeverageProps<QuoteResponse>): Promise<Array<DepositLeverageIxsResponse<QuoteResponse>>>;
12
+ export declare function getWithdrawWithLeverageSwapInputs<QuoteResponse>({ owner, kaminoMarket, debtReserveAddress, collReserveAddress, deposited, borrowed, obligation, referrer, currentSlot, withdrawAmount, priceCollToDebt, slippagePct, isClosingPosition, selectedTokenMint, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, useV2Ixs, userSolBalanceLamports, }: WithdrawWithLeverageSwapInputsProps<QuoteResponse>): Promise<{
13
13
  swapInputs: SwapInputs;
14
14
  flashLoanInfo: FlashLoanInfo;
15
15
  initialInputs: WithdrawLeverageInitialInputs<QuoteResponse>;
16
16
  }>;
17
- export declare function getWithdrawWithLeverageIxs<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, obligation, deposited, borrowed, referrer, currentSlot, withdrawAmount, priceCollToDebt, slippagePct, isClosingPosition, selectedTokenMint, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, swapper, useV2Ixs, userSolBalanceLamports, }: WithdrawWithLeverageProps<QuoteResponse>): Promise<Array<WithdrawLeverageIxsResponse<QuoteResponse>>>;
17
+ export declare function getWithdrawWithLeverageIxs<QuoteResponse>({ owner, kaminoMarket, debtReserveAddress, collReserveAddress, obligation, deposited, borrowed, referrer, currentSlot, withdrawAmount, priceCollToDebt, slippagePct, isClosingPosition, selectedTokenMint, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, swapper, useV2Ixs, userSolBalanceLamports, }: WithdrawWithLeverageProps<QuoteResponse>): Promise<Array<WithdrawLeverageIxsResponse<QuoteResponse>>>;
18
18
  export declare function buildWithdrawWithLeverageIxs<QuoteResponse>(market: KaminoMarket, debtReserve: KaminoReserve, collReserve: KaminoReserve, owner: TransactionSigner, obligation: KaminoObligation, referrer: Option<Address>, currentSlot: Slot, isClosingPosition: boolean, depositTokenIsSol: boolean, scopeRefreshIx: Instruction[], calcs: WithdrawLeverageCalcsResult, budgetAndPriorityFeeIxs: Instruction[] | undefined, swapQuoteIxsArray: SwapIxs<QuoteResponse>[], useV2Ixs: boolean, userSolBalanceLamports: number): Promise<LeverageIxsOutput[]>;
19
- export declare function getAdjustLeverageSwapInputs<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, obligation, depositedLamports, borrowedLamports, referrer, currentSlot, targetLeverage, priceCollToDebt, priceDebtToColl, slippagePct, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, useV2Ixs, withdrawSlotOffset, userSolBalanceLamports, }: AdjustLeverageSwapInputsProps<QuoteResponse>): Promise<{
19
+ export declare function getAdjustLeverageSwapInputs<QuoteResponse>({ owner, kaminoMarket, debtReserveAddress, collReserveAddress, obligation, depositedLamports, borrowedLamports, referrer, currentSlot, targetLeverage, priceCollToDebt, priceDebtToColl, slippagePct, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, useV2Ixs, withdrawSlotOffset, userSolBalanceLamports, }: AdjustLeverageSwapInputsProps<QuoteResponse>): Promise<{
20
20
  swapInputs: SwapInputs;
21
21
  flashLoanInfo: FlashLoanInfo;
22
22
  initialInputs: AdjustLeverageInitialInputs<QuoteResponse>;
23
23
  }>;
24
- export declare function getAdjustLeverageIxs<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, obligation, depositedLamports, borrowedLamports, referrer, currentSlot, targetLeverage, priceCollToDebt, priceDebtToColl, slippagePct, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, swapper, useV2Ixs, withdrawSlotOffset, userSolBalanceLamports, }: AdjustLeverageProps<QuoteResponse>): Promise<Array<AdjustLeverageIxsResponse<QuoteResponse>>>;
24
+ export declare function getAdjustLeverageIxs<QuoteResponse>({ owner, kaminoMarket, debtReserveAddress, collReserveAddress, obligation, depositedLamports, borrowedLamports, referrer, currentSlot, targetLeverage, priceCollToDebt, priceDebtToColl, slippagePct, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, swapper, useV2Ixs, withdrawSlotOffset, userSolBalanceLamports, }: AdjustLeverageProps<QuoteResponse>): Promise<Array<AdjustLeverageIxsResponse<QuoteResponse>>>;
25
25
  export declare const getSetupIxs: (owner: TransactionSigner, collTokenMint: Address, collReserve: KaminoReserve, debtTokenMint: Address, debtReserve: KaminoReserve, budgetAndPriorityFeeIxs: Instruction[] | undefined) => Promise<{
26
26
  budgetIxs: Instruction<string, readonly (import("@solana/kit").AccountMeta<string> | import("@solana/kit").AccountLookupMeta<string, string>)[]>[];
27
27
  createAtasIxs: Instruction<string, readonly (import("@solana/kit").AccountMeta<string> | import("@solana/kit").AccountLookupMeta<string, string>)[]>[];
@@ -1 +1 @@
1
- {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/leverage/operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/leverage/operations.ts"],"names":[],"mappings":"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"}
@@ -23,12 +23,18 @@ const token_1 = require("@solana-program/token");
23
23
  const token_2022_1 = require("@solana-program/token-2022");
24
24
  const consts_1 = require("../utils/consts");
25
25
  exports.WITHDRAW_SLOT_OFFSET = 150; // Offset for the withdraw slot to underestimate the exchange rate
26
- async function getDepositWithLeverageSwapInputs({ owner, kaminoMarket, debtTokenMint, collTokenMint, depositAmount, priceDebtToColl, slippagePct, obligation, referrer, currentSlot, targetLeverage, selectedTokenMint, obligationTypeTagOverride, scopeRefreshIx, budgetAndPriorityFeeIxs, quoteBufferBps, quoter, useV2Ixs, elevationGroupOverride, }) {
27
- const collReserve = kaminoMarket.getExistingReserveByMint(collTokenMint);
28
- const debtReserve = kaminoMarket.getExistingReserveByMint(debtTokenMint);
29
- const solTokenReserve = kaminoMarket.getReserveByMint(utils_1.WRAPPED_SOL_MINT);
26
+ async function getDepositWithLeverageSwapInputs({ owner, kaminoMarket, debtReserveAddress, collReserveAddress, depositAmount, priceDebtToColl, slippagePct, obligation, referrer, currentSlot, targetLeverage, selectedTokenMint, obligationTypeTagOverride, scopeRefreshIx, budgetAndPriorityFeeIxs, quoteBufferBps, quoter, useV2Ixs, elevationGroupOverride, }) {
27
+ const collReserve = kaminoMarket.getExistingReserveByAddress(collReserveAddress);
28
+ const debtReserve = kaminoMarket.getExistingReserveByAddress(debtReserveAddress);
29
+ const collTokenMint = collReserve.getLiquidityMint();
30
+ const debtTokenMint = debtReserve.getLiquidityMint();
31
+ const solTokenReserve = collReserve.getLiquidityMint() === utils_1.WRAPPED_SOL_MINT
32
+ ? collReserve
33
+ : debtReserve.getLiquidityMint() === utils_1.WRAPPED_SOL_MINT
34
+ ? debtReserve
35
+ : undefined;
30
36
  const flashLoanFee = collReserve.getFlashLoanFee() || new decimal_js_1.default(0);
31
- const selectedTokenIsCollToken = selectedTokenMint === collTokenMint;
37
+ const selectedTokenIsCollToken = selectedTokenMint === collReserve.getLiquidityMint();
32
38
  const depositTokenIsSol = !solTokenReserve ? false : selectedTokenMint === solTokenReserve.getLiquidityMint();
33
39
  const calcs = (0, calcs_1.depositLeverageCalcs)({
34
40
  depositAmount: depositAmount,
@@ -40,7 +46,7 @@ async function getDepositWithLeverageSwapInputs({ owner, kaminoMarket, debtToken
40
46
  flashLoanFee,
41
47
  });
42
48
  console.log('Ops Calcs', (0, classes_1.toJson)(calcs));
43
- const obligationType = checkObligationType(obligationTypeTagOverride, collTokenMint, debtTokenMint, kaminoMarket);
49
+ const obligationType = checkObligationType(obligationTypeTagOverride, collReserve.address, debtReserve.address, kaminoMarket);
44
50
  // Build the repay & withdraw collateral tx to get the number of accounts
45
51
  const klendIxs = (await buildDepositWithLeverageIxs(kaminoMarket, debtReserve, collReserve, owner, obligation ? obligation : obligationType, referrer, currentSlot, depositTokenIsSol, scopeRefreshIx, calcs, budgetAndPriorityFeeIxs, [
46
52
  {
@@ -88,12 +94,12 @@ async function getDepositWithLeverageSwapInputs({ owner, kaminoMarket, debtToken
88
94
  },
89
95
  };
90
96
  }
91
- async function getDepositWithLeverageIxs({ owner, kaminoMarket, debtTokenMint, collTokenMint, depositAmount, priceDebtToColl, slippagePct, obligation, referrer, currentSlot, targetLeverage, selectedTokenMint, obligationTypeTagOverride, scopeRefreshIx, budgetAndPriorityFeeIxs, quoteBufferBps, quoter, swapper, elevationGroupOverride, useV2Ixs, }) {
97
+ async function getDepositWithLeverageIxs({ owner, kaminoMarket, debtReserveAddress, collReserveAddress, depositAmount, priceDebtToColl, slippagePct, obligation, referrer, currentSlot, targetLeverage, selectedTokenMint, obligationTypeTagOverride, scopeRefreshIx, budgetAndPriorityFeeIxs, quoteBufferBps, quoter, swapper, elevationGroupOverride, useV2Ixs, }) {
92
98
  const { swapInputs, initialInputs } = await getDepositWithLeverageSwapInputs({
93
99
  owner,
94
100
  kaminoMarket,
95
- debtTokenMint,
96
- collTokenMint,
101
+ debtReserveAddress,
102
+ collReserveAddress,
97
103
  depositAmount,
98
104
  priceDebtToColl,
99
105
  slippagePct,
@@ -112,9 +118,13 @@ async function getDepositWithLeverageIxs({ owner, kaminoMarket, debtTokenMint, c
112
118
  const depositSwapper = swapper;
113
119
  const swapsArray = await depositSwapper(swapInputs, initialInputs.klendAccounts, initialInputs.swapQuote);
114
120
  // Strategy lookup table logic removed
115
- const collReserve = kaminoMarket.getReserveByMint(collTokenMint);
116
- const debtReserve = kaminoMarket.getReserveByMint(debtTokenMint);
117
- const solTokenReserve = kaminoMarket.getReserveByMint(utils_1.WRAPPED_SOL_MINT);
121
+ const collReserve = kaminoMarket.getExistingReserveByAddress(collReserveAddress);
122
+ const debtReserve = kaminoMarket.getExistingReserveByAddress(debtReserveAddress);
123
+ const solTokenReserve = collReserve.getLiquidityMint() === utils_1.WRAPPED_SOL_MINT
124
+ ? collReserve
125
+ : debtReserve.getLiquidityMint() === utils_1.WRAPPED_SOL_MINT
126
+ ? debtReserve
127
+ : undefined;
118
128
  const depositTokenIsSol = !solTokenReserve ? false : selectedTokenMint === solTokenReserve.getLiquidityMint();
119
129
  const depositWithLeverageIxs = await buildDepositWithLeverageIxs(kaminoMarket, debtReserve, collReserve, owner, initialInputs.obligation, referrer, currentSlot, depositTokenIsSol, scopeRefreshIx, initialInputs.calcs, budgetAndPriorityFeeIxs, swapsArray.map((swap) => {
120
130
  return {
@@ -167,9 +177,23 @@ async function buildDepositWithLeverageIxs(market, debtReserve, collReserve, own
167
177
  programId: market.programId,
168
178
  });
169
179
  // 3. Deposit initial tokens + borrowed tokens into reserve
170
- const kaminoDepositAndBorrowAction = await classes_1.KaminoAction.buildDepositAndBorrowTxns(market, (0, classes_2.numberToLamportsDecimal)(calcs.collTokenToDeposit, collReserve.stats.decimals).floor().toString(), collTokenMint, (0, classes_2.numberToLamportsDecimal)(calcs.debtTokenToBorrow, debtReserve.stats.decimals).ceil().toString(), debtTokenMint, owner, obligation, useV2Ixs, undefined, 0, false, elevationGroupOverride === 0 ? false : true, // emode
171
- { skipInitialization: true, skipLutCreation: true }, // to be checked and created in a setup tx in the UI
172
- referrer, currentSlot);
180
+ const kaminoDepositAndBorrowAction = await classes_1.KaminoAction.buildDepositAndBorrowTxns({
181
+ kaminoMarket: market,
182
+ depositAmount: (0, classes_2.numberToLamportsDecimal)(calcs.collTokenToDeposit, collReserve.stats.decimals).floor().toString(),
183
+ depositReserveAddress: collReserve.address,
184
+ borrowAmount: (0, classes_2.numberToLamportsDecimal)(calcs.debtTokenToBorrow, debtReserve.stats.decimals).ceil().toString(),
185
+ borrowReserveAddress: debtReserve.address,
186
+ owner,
187
+ obligation: obligation,
188
+ useV2Ixs,
189
+ scopeRefreshConfig: undefined,
190
+ extraComputeBudget: 0,
191
+ includeAtaIxs: false,
192
+ requestElevationGroup: elevationGroupOverride === 0 ? false : true, // emode
193
+ initUserMetadata: { skipInitialization: true, skipLutCreation: true }, // to be checked and created in a setup tx in the UI
194
+ referrer,
195
+ currentSlot,
196
+ });
173
197
  return swapQuoteIxsArray.map((swapQuoteIxs) => {
174
198
  // 4. Swap
175
199
  const { swapIxs } = swapQuoteIxs;
@@ -194,11 +218,13 @@ async function buildDepositWithLeverageIxs(market, debtReserve, collReserve, own
194
218
  };
195
219
  });
196
220
  }
197
- async function getWithdrawWithLeverageSwapInputs({ owner, kaminoMarket, debtTokenMint, collTokenMint, deposited, borrowed, obligation, referrer, currentSlot, withdrawAmount, priceCollToDebt, slippagePct, isClosingPosition, selectedTokenMint, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, useV2Ixs, userSolBalanceLamports, }) {
198
- const collReserve = kaminoMarket.getReserveByMint(collTokenMint);
199
- const debtReserve = kaminoMarket.getReserveByMint(debtTokenMint);
221
+ async function getWithdrawWithLeverageSwapInputs({ owner, kaminoMarket, debtReserveAddress, collReserveAddress, deposited, borrowed, obligation, referrer, currentSlot, withdrawAmount, priceCollToDebt, slippagePct, isClosingPosition, selectedTokenMint, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, useV2Ixs, userSolBalanceLamports, }) {
222
+ const collReserve = kaminoMarket.getExistingReserveByAddress(collReserveAddress);
223
+ const debtReserve = kaminoMarket.getExistingReserveByAddress(debtReserveAddress);
224
+ const collTokenMint = collReserve.getLiquidityMint();
225
+ const debtTokenMint = debtReserve.getLiquidityMint();
200
226
  const flashLoanFee = debtReserve.getFlashLoanFee() || new decimal_js_1.default(0);
201
- const selectedTokenIsCollToken = selectedTokenMint === collTokenMint;
227
+ const selectedTokenIsCollToken = selectedTokenMint === collReserve.getLiquidityMint();
202
228
  const inputTokenIsSol = selectedTokenMint === utils_1.WRAPPED_SOL_MINT;
203
229
  const calcs = (0, calcs_1.withdrawLeverageCalcs)(kaminoMarket, collReserve, debtReserve, priceCollToDebt, withdrawAmount, deposited, borrowed, currentSlot, isClosingPosition, selectedTokenIsCollToken, selectedTokenMint, obligation, flashLoanFee, slippagePct);
204
230
  const klendIxs = (await buildWithdrawWithLeverageIxs(kaminoMarket, debtReserve, collReserve, owner, obligation, referrer, currentSlot, isClosingPosition, inputTokenIsSol, scopeRefreshIx, calcs, budgetAndPriorityFeeIxs, [
@@ -239,15 +265,15 @@ async function getWithdrawWithLeverageSwapInputs({ owner, kaminoMarket, debtToke
239
265
  },
240
266
  };
241
267
  }
242
- async function getWithdrawWithLeverageIxs({ owner, kaminoMarket, debtTokenMint, collTokenMint, obligation, deposited, borrowed, referrer, currentSlot, withdrawAmount, priceCollToDebt, slippagePct, isClosingPosition, selectedTokenMint, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, swapper, useV2Ixs, userSolBalanceLamports, }) {
243
- const collReserve = kaminoMarket.getReserveByMint(collTokenMint);
244
- const debtReserve = kaminoMarket.getReserveByMint(debtTokenMint);
268
+ async function getWithdrawWithLeverageIxs({ owner, kaminoMarket, debtReserveAddress, collReserveAddress, obligation, deposited, borrowed, referrer, currentSlot, withdrawAmount, priceCollToDebt, slippagePct, isClosingPosition, selectedTokenMint, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, swapper, useV2Ixs, userSolBalanceLamports, }) {
269
+ const collReserve = kaminoMarket.getExistingReserveByAddress(collReserveAddress);
270
+ const debtReserve = kaminoMarket.getExistingReserveByAddress(debtReserveAddress);
245
271
  const inputTokenIsSol = selectedTokenMint === utils_1.WRAPPED_SOL_MINT;
246
272
  const { swapInputs, initialInputs } = await getWithdrawWithLeverageSwapInputs({
247
273
  owner,
248
274
  kaminoMarket,
249
- debtTokenMint,
250
- collTokenMint,
275
+ debtReserveAddress,
276
+ collReserveAddress,
251
277
  deposited,
252
278
  borrowed,
253
279
  obligation,
@@ -327,10 +353,27 @@ async function buildWithdrawWithLeverageIxs(market, debtReserve, collReserve, ow
327
353
  programId: market.programId,
328
354
  });
329
355
  // 3. Repay borrowed tokens and Withdraw tokens from reserve that will be swapped to repay flash loan
330
- const repayAndWithdrawAction = await classes_1.KaminoAction.buildRepayAndWithdrawTxns(market, isClosingPosition ? utils_1.U64_MAX : (0, classes_2.numberToLamportsDecimal)(calcs.repayAmount, debtReserve.stats.decimals).floor().toString(), debtTokenMint, isClosingPosition
331
- ? utils_1.U64_MAX
332
- : (0, classes_2.numberToLamportsDecimal)(calcs.depositTokenWithdrawAmount, collReserve.stats.decimals).ceil().toString(), collTokenMint, owner, currentSlot, obligation, useV2Ixs, undefined, 0, false, false, { skipInitialization: true, skipLutCreation: true }, // to be checked and created in a setup tx in the UI (won't be the case for withdraw anyway as this would be created in deposit)
333
- referrer);
356
+ const repayAndWithdrawAction = await classes_1.KaminoAction.buildRepayAndWithdrawTxns({
357
+ kaminoMarket: market,
358
+ repayAmount: isClosingPosition
359
+ ? utils_1.U64_MAX
360
+ : (0, classes_2.numberToLamportsDecimal)(calcs.repayAmount, debtReserve.stats.decimals).floor().toString(),
361
+ repayReserveAddress: debtReserve.address,
362
+ withdrawAmount: isClosingPosition
363
+ ? utils_1.U64_MAX
364
+ : (0, classes_2.numberToLamportsDecimal)(calcs.depositTokenWithdrawAmount, collReserve.stats.decimals).ceil().toString(),
365
+ withdrawReserveAddress: collReserve.address,
366
+ payer: owner,
367
+ currentSlot,
368
+ obligation,
369
+ useV2Ixs,
370
+ scopeRefreshConfig: undefined,
371
+ extraComputeBudget: 0,
372
+ includeAtaIxs: false,
373
+ requestElevationGroup: false,
374
+ initUserMetadata: { skipInitialization: true, skipLutCreation: true }, // to be checked and created in a setup tx in the UI (won't be the case for withdraw anyway as this would be created in deposit)
375
+ referrer,
376
+ });
334
377
  return swapQuoteIxsArray.map((swapQuoteIxs) => {
335
378
  const swapInstructions = (0, utils_1.removeBudgetIxs)(swapQuoteIxs.swapIxs);
336
379
  return {
@@ -352,9 +395,11 @@ async function buildWithdrawWithLeverageIxs(market, debtReserve, collReserve, ow
352
395
  };
353
396
  });
354
397
  }
355
- async function getAdjustLeverageSwapInputs({ owner, kaminoMarket, debtTokenMint, collTokenMint, obligation, depositedLamports, borrowedLamports, referrer, currentSlot, targetLeverage, priceCollToDebt, priceDebtToColl, slippagePct, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, useV2Ixs, withdrawSlotOffset, userSolBalanceLamports, }) {
356
- const collReserve = kaminoMarket.getReserveByMint(collTokenMint);
357
- const debtReserve = kaminoMarket.getReserveByMint(debtTokenMint);
398
+ async function getAdjustLeverageSwapInputs({ owner, kaminoMarket, debtReserveAddress, collReserveAddress, obligation, depositedLamports, borrowedLamports, referrer, currentSlot, targetLeverage, priceCollToDebt, priceDebtToColl, slippagePct, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, useV2Ixs, withdrawSlotOffset, userSolBalanceLamports, }) {
399
+ const collReserve = kaminoMarket.getExistingReserveByAddress(collReserveAddress);
400
+ const debtReserve = kaminoMarket.getExistingReserveByAddress(debtReserveAddress);
401
+ const collTokenMint = collReserve.getLiquidityMint();
402
+ const debtTokenMint = debtReserve.getLiquidityMint();
358
403
  const deposited = (0, classes_1.lamportsToNumberDecimal)(depositedLamports, collReserve.stats.decimals);
359
404
  const borrowed = (0, classes_1.lamportsToNumberDecimal)(borrowedLamports, debtReserve.stats.decimals);
360
405
  // Getting current flash loan fee
@@ -381,7 +426,7 @@ async function getAdjustLeverageSwapInputs({ owner, kaminoMarket, debtTokenMint,
381
426
  if (isDeposit) {
382
427
  const calcs = (0, calcs_1.adjustDepositLeverageCalcs)(debtReserve, adjustDepositPosition, adjustBorrowPosition, priceDebtToColl, flashLoanFee, slippagePct);
383
428
  // Build the repay & withdraw collateral tx to get the number of accounts
384
- const klendIxs = (await buildIncreaseLeverageIxs(owner, kaminoMarket, collTokenMint, debtTokenMint, obligation, referrer, currentSlot, calcs, scopeRefreshIx, [
429
+ const klendIxs = (await buildIncreaseLeverageIxs(owner, kaminoMarket, collReserveAddress, debtReserveAddress, obligation, referrer, currentSlot, calcs, scopeRefreshIx, [
385
430
  {
386
431
  preActionIxs: [],
387
432
  swapIxs: [],
@@ -429,7 +474,7 @@ async function getAdjustLeverageSwapInputs({ owner, kaminoMarket, debtTokenMint,
429
474
  }
430
475
  else {
431
476
  const calcs = (0, calcs_1.adjustWithdrawLeverageCalcs)(adjustDepositPosition, adjustBorrowPosition, flashLoanFee, slippagePct);
432
- const klendIxs = (await buildDecreaseLeverageIxs(owner, kaminoMarket, collTokenMint, debtTokenMint, obligation, referrer, currentSlot, calcs, scopeRefreshIx, [
477
+ const klendIxs = (await buildDecreaseLeverageIxs(owner, kaminoMarket, collReserveAddress, debtReserveAddress, obligation, referrer, currentSlot, calcs, scopeRefreshIx, [
433
478
  {
434
479
  preActionIxs: [],
435
480
  swapIxs: [],
@@ -476,12 +521,12 @@ async function getAdjustLeverageSwapInputs({ owner, kaminoMarket, debtTokenMint,
476
521
  };
477
522
  }
478
523
  }
479
- async function getAdjustLeverageIxs({ owner, kaminoMarket, debtTokenMint, collTokenMint, obligation, depositedLamports, borrowedLamports, referrer, currentSlot, targetLeverage, priceCollToDebt, priceDebtToColl, slippagePct, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, swapper, useV2Ixs, withdrawSlotOffset, userSolBalanceLamports, }) {
524
+ async function getAdjustLeverageIxs({ owner, kaminoMarket, debtReserveAddress, collReserveAddress, obligation, depositedLamports, borrowedLamports, referrer, currentSlot, targetLeverage, priceCollToDebt, priceDebtToColl, slippagePct, budgetAndPriorityFeeIxs, scopeRefreshIx, quoteBufferBps, quoter, swapper, useV2Ixs, withdrawSlotOffset, userSolBalanceLamports, }) {
480
525
  const { swapInputs, initialInputs } = await getAdjustLeverageSwapInputs({
481
526
  owner,
482
527
  kaminoMarket,
483
- debtTokenMint,
484
- collTokenMint,
528
+ debtReserveAddress,
529
+ collReserveAddress,
485
530
  obligation,
486
531
  depositedLamports,
487
532
  borrowedLamports,
@@ -502,7 +547,7 @@ async function getAdjustLeverageIxs({ owner, kaminoMarket, debtTokenMint, collTo
502
547
  if (initialInputs.isDeposit) {
503
548
  const depositSwapper = swapper;
504
549
  const swapsArray = await depositSwapper(swapInputs, initialInputs.klendAccounts, initialInputs.swapQuote);
505
- const increaseLeverageIxs = await buildIncreaseLeverageIxs(owner, kaminoMarket, collTokenMint, debtTokenMint, obligation, referrer, currentSlot, initialInputs.calcs, scopeRefreshIx, swapsArray.map((swap) => {
550
+ const increaseLeverageIxs = await buildIncreaseLeverageIxs(owner, kaminoMarket, collReserveAddress, debtReserveAddress, obligation, referrer, currentSlot, initialInputs.calcs, scopeRefreshIx, swapsArray.map((swap) => {
506
551
  return {
507
552
  preActionIxs: [],
508
553
  swapIxs: swap.swapIxs,
@@ -526,7 +571,7 @@ async function getAdjustLeverageIxs({ owner, kaminoMarket, debtTokenMint, collTo
526
571
  const withdrawSwapper = swapper;
527
572
  // 5. Get swap ixs
528
573
  const swapsArray = await withdrawSwapper(swapInputs, initialInputs.klendAccounts, initialInputs.swapQuote);
529
- const decreaseLeverageIxs = await buildDecreaseLeverageIxs(owner, kaminoMarket, collTokenMint, debtTokenMint, obligation, referrer, currentSlot, initialInputs.calcs, scopeRefreshIx, swapsArray.map((swap) => {
574
+ const decreaseLeverageIxs = await buildDecreaseLeverageIxs(owner, kaminoMarket, collReserveAddress, debtReserveAddress, obligation, referrer, currentSlot, initialInputs.calcs, scopeRefreshIx, swapsArray.map((swap) => {
530
575
  return {
531
576
  preActionIxs: [],
532
577
  swapIxs: swap.swapIxs,
@@ -549,9 +594,11 @@ async function getAdjustLeverageIxs({ owner, kaminoMarket, debtTokenMint, collTo
549
594
  /**
550
595
  * Deposit and borrow tokens if leverage increased
551
596
  */
552
- async function buildIncreaseLeverageIxs(owner, kaminoMarket, collTokenMint, debtTokenMint, obligation, referrer, currentSlot, calcs, scopeRefreshIx, swapQuoteIxsArray, budgetAndPriorityFeeIxs, useV2Ixs) {
553
- const collReserve = kaminoMarket.getExistingReserveByMint(collTokenMint);
554
- const debtReserve = kaminoMarket.getExistingReserveByMint(debtTokenMint);
597
+ async function buildIncreaseLeverageIxs(owner, kaminoMarket, collReserveAddress, debtReserveAddress, obligation, referrer, currentSlot, calcs, scopeRefreshIx, swapQuoteIxsArray, budgetAndPriorityFeeIxs, useV2Ixs) {
598
+ const collReserve = kaminoMarket.getExistingReserveByAddress(collReserveAddress);
599
+ const collTokenMint = collReserve.getLiquidityMint();
600
+ const debtReserve = kaminoMarket.getExistingReserveByAddress(debtReserveAddress);
601
+ const debtTokenMint = debtReserve.getLiquidityMint();
555
602
  const collTokenAta = await (0, utils_1.getAssociatedTokenAddress)(collTokenMint, owner.address, collReserve.getLiquidityTokenProgram());
556
603
  // 1. Create atas & budget txns
557
604
  const { budgetIxs, createAtasIxs } = await (0, exports.getSetupIxs)(owner, collTokenMint, collReserve, debtTokenMint, debtReserve, budgetAndPriorityFeeIxs);
@@ -569,10 +616,37 @@ async function buildIncreaseLeverageIxs(owner, kaminoMarket, collTokenMint, debt
569
616
  referrerTokenState: (0, kit_1.none)(),
570
617
  programId: kaminoMarket.programId,
571
618
  });
572
- const depositAction = await classes_1.KaminoAction.buildDepositTxns(kaminoMarket, (0, classes_2.numberToLamportsDecimal)(calcs.adjustDepositPosition, collReserve.stats.decimals).floor().toString(), collTokenMint, owner, obligation, useV2Ixs, undefined, 0, false, false, { skipInitialization: true, skipLutCreation: true }, referrer, currentSlot);
619
+ const depositAction = await classes_1.KaminoAction.buildDepositTxns({
620
+ kaminoMarket,
621
+ amount: (0, classes_2.numberToLamportsDecimal)(calcs.adjustDepositPosition, collReserve.stats.decimals).floor().toString(),
622
+ reserveAddress: collReserve.address,
623
+ owner,
624
+ obligation,
625
+ useV2Ixs,
626
+ scopeRefreshConfig: undefined,
627
+ extraComputeBudget: 0,
628
+ includeAtaIxs: false,
629
+ requestElevationGroup: false,
630
+ initUserMetadata: { skipInitialization: true, skipLutCreation: true },
631
+ referrer,
632
+ currentSlot,
633
+ });
573
634
  // 4. Borrow tokens in borrow token reserve that will be swapped to repay flash loan
574
- const borrowAction = await classes_1.KaminoAction.buildBorrowTxns(kaminoMarket, (0, classes_2.numberToLamportsDecimal)(calcs.borrowAmount, debtReserve.stats.decimals).ceil().toString(), debtTokenMint, owner, obligation, useV2Ixs, undefined, 0, false, false, { skipInitialization: true, skipLutCreation: true }, // to be checked and create in a setup tx in the UI (won't be the case for adjust anyway as this would be created in deposit)
575
- referrer, currentSlot);
635
+ const borrowAction = await classes_1.KaminoAction.buildBorrowTxns({
636
+ kaminoMarket,
637
+ amount: (0, classes_2.numberToLamportsDecimal)(calcs.borrowAmount, debtReserve.stats.decimals).ceil().toString(),
638
+ reserveAddress: debtReserve.address,
639
+ owner,
640
+ obligation,
641
+ useV2Ixs,
642
+ scopeRefreshConfig: undefined,
643
+ extraComputeBudget: 0,
644
+ includeAtaIxs: false,
645
+ requestElevationGroup: false,
646
+ initUserMetadata: { skipInitialization: true, skipLutCreation: true }, // to be checked and create in a setup tx in the UI (won't be the case for adjust anyway as this would be created in deposit)
647
+ referrer,
648
+ currentSlot,
649
+ });
576
650
  return swapQuoteIxsArray.map((swapQuoteIxs) => {
577
651
  const swapInstructions = (0, utils_1.removeBudgetIxs)(swapQuoteIxs.swapIxs);
578
652
  const ixs = [
@@ -599,9 +673,11 @@ async function buildIncreaseLeverageIxs(owner, kaminoMarket, collTokenMint, debt
599
673
  /**
600
674
  * Withdraw and repay tokens if leverage decreased
601
675
  */
602
- async function buildDecreaseLeverageIxs(owner, kaminoMarket, collTokenMint, debtTokenMint, obligation, referrer, currentSlot, calcs, scopeRefreshIx, swapQuoteIxsArray, budgetAndPriorityFeeIxs, useV2Ixs, withdrawSlotOffset = exports.WITHDRAW_SLOT_OFFSET, userSolBalanceLamports) {
603
- const collReserve = kaminoMarket.getExistingReserveByMint(collTokenMint);
604
- const debtReserve = kaminoMarket.getExistingReserveByMint(debtTokenMint);
676
+ async function buildDecreaseLeverageIxs(owner, kaminoMarket, collReserveAddress, debtReserveAddress, obligation, referrer, currentSlot, calcs, scopeRefreshIx, swapQuoteIxsArray, budgetAndPriorityFeeIxs, useV2Ixs, withdrawSlotOffset = exports.WITHDRAW_SLOT_OFFSET, userSolBalanceLamports) {
677
+ const collReserve = kaminoMarket.getExistingReserveByAddress(collReserveAddress);
678
+ const debtReserve = kaminoMarket.getExistingReserveByAddress(debtReserveAddress);
679
+ const collTokenMint = collReserve.getLiquidityMint();
680
+ const debtTokenMint = debtReserve.getLiquidityMint();
605
681
  const [debtTokenAta] = await (0, token_2022_1.findAssociatedTokenPda)({
606
682
  owner: owner.address,
607
683
  mint: debtTokenMint,
@@ -639,12 +715,39 @@ async function buildDecreaseLeverageIxs(owner, kaminoMarket, collTokenMint, debt
639
715
  programId: kaminoMarket.programId,
640
716
  });
641
717
  // 4. Actually do the repay of the flash borrowed amounts
642
- const repayAction = await classes_1.KaminoAction.buildRepayTxns(kaminoMarket, (0, classes_2.numberToLamportsDecimal)(decimal_js_1.default.abs(calcs.adjustBorrowPosition), debtReserve.stats.decimals).floor().toString(), debtTokenMint, owner, obligation, useV2Ixs, undefined, currentSlot, undefined, 0, false, false, { skipInitialization: true, skipLutCreation: true }, // to be checked and create in a setup tx in the UI (won't be the case for adjust anyway as this would be created in deposit)
643
- referrer);
718
+ const repayAction = await classes_1.KaminoAction.buildRepayTxns({
719
+ kaminoMarket,
720
+ amount: (0, classes_2.numberToLamportsDecimal)(decimal_js_1.default.abs(calcs.adjustBorrowPosition), debtReserve.stats.decimals).floor().toString(),
721
+ reserveAddress: debtReserve.address,
722
+ owner,
723
+ obligation,
724
+ useV2Ixs,
725
+ scopeRefreshConfig: undefined,
726
+ currentSlot,
727
+ payer: undefined,
728
+ extraComputeBudget: 0,
729
+ includeAtaIxs: false,
730
+ requestElevationGroup: false,
731
+ initUserMetadata: { skipInitialization: true, skipLutCreation: true }, // to be checked and create in a setup tx in the UI (won't be the case for adjust anyway as this would be created in deposit)
732
+ referrer,
733
+ });
644
734
  const withdrawSlot = currentSlot - BigInt(withdrawSlotOffset);
645
735
  // 6. Withdraw collateral (a little bit more to be able to pay for the slippage on swap)
646
- const withdrawAction = await classes_1.KaminoAction.buildWithdrawTxns(kaminoMarket, (0, classes_2.numberToLamportsDecimal)(calcs.withdrawAmountWithSlippageAndFlashLoanFee, collReserve.stats.decimals).ceil().toString(), collTokenMint, owner, obligation, useV2Ixs, undefined, 0, false, false, { skipInitialization: true, skipLutCreation: true }, // to be checked and create in a setup tx in the UI (won't be the case for adjust anyway as this would be created in deposit)
647
- referrer, withdrawSlot);
736
+ const withdrawAction = await classes_1.KaminoAction.buildWithdrawTxns({
737
+ kaminoMarket,
738
+ amount: (0, classes_2.numberToLamportsDecimal)(calcs.withdrawAmountWithSlippageAndFlashLoanFee, collReserve.stats.decimals).ceil().toString(),
739
+ reserveAddress: collReserve.address,
740
+ owner,
741
+ obligation,
742
+ useV2Ixs,
743
+ scopeRefreshConfig: undefined,
744
+ extraComputeBudget: 0,
745
+ includeAtaIxs: false,
746
+ requestElevationGroup: false,
747
+ initUserMetadata: { skipInitialization: true, skipLutCreation: true }, // to be checked and create in a setup tx in the UI (won't be the case for adjust anyway as this would be created in deposit)
748
+ referrer,
749
+ currentSlot: withdrawSlot,
750
+ });
648
751
  return swapQuoteIxsArray.map((swapQuoteIxs) => {
649
752
  const swapInstructions = (0, utils_1.removeBudgetIxs)(swapQuoteIxs.swapIxs);
650
753
  const ixs = [
@@ -706,7 +809,11 @@ const getScopeRefreshIxForObligationAndReserves = async (market, collReserve, de
706
809
  return scopeRefreshIxs;
707
810
  };
708
811
  exports.getScopeRefreshIxForObligationAndReserves = getScopeRefreshIxForObligationAndReserves;
709
- const checkObligationType = (obligationTypeTag, collTokenMint, debtTokenMint, kaminoMarket) => {
812
+ const checkObligationType = (obligationTypeTag, collReserveAddress, debtReserveAddress, kaminoMarket) => {
813
+ const collReserve = kaminoMarket.getExistingReserveByAddress(collReserveAddress);
814
+ const debtReserve = kaminoMarket.getExistingReserveByAddress(debtReserveAddress);
815
+ const collTokenMint = collReserve.getLiquidityMint();
816
+ const debtTokenMint = debtReserve.getLiquidityMint();
710
817
  let obligationType;
711
818
  if (obligationTypeTag === utils_1.ObligationTypeTag.Multiply) {
712
819
  // multiply
@@ -716,6 +823,14 @@ const checkObligationType = (obligationTypeTag, collTokenMint, debtTokenMint, ka
716
823
  // leverage
717
824
  obligationType = new utils_1.LeverageObligation(collTokenMint, debtTokenMint, kaminoMarket.programId);
718
825
  }
826
+ else if (obligationTypeTag === utils_1.ObligationTypeTag.MultiplyFixedRate) {
827
+ // multiply fixed rate
828
+ obligationType = new utils_1.MultiplyObligationFixedRate(collReserveAddress, debtReserveAddress, kaminoMarket.programId);
829
+ }
830
+ else if (obligationTypeTag === utils_1.ObligationTypeTag.LeverageFixedRate) {
831
+ // leverage fixed rate
832
+ obligationType = new utils_1.LeverageObligationFixedRate(collReserveAddress, debtReserveAddress, kaminoMarket.programId);
833
+ }
719
834
  else {
720
835
  throw Error('Obligation type tag not supported for leverage, please use 1 - multiply or 3 - leverage');
721
836
  }