@kamino-finance/klend-sdk 5.13.21-beta.0 → 5.13.21

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 (128) hide show
  1. package/dist/classes/farm_utils.d.ts.map +1 -1
  2. package/dist/classes/farm_utils.js +10 -3
  3. package/dist/classes/farm_utils.js.map +1 -1
  4. package/dist/classes/manager.d.ts +12 -5
  5. package/dist/classes/manager.d.ts.map +1 -1
  6. package/dist/classes/manager.js +300 -39
  7. package/dist/classes/manager.js.map +1 -1
  8. package/dist/classes/obligation.d.ts.map +1 -1
  9. package/dist/classes/obligation.js +0 -14
  10. package/dist/classes/obligation.js.map +1 -1
  11. package/dist/classes/reserve.d.ts +14 -5
  12. package/dist/classes/reserve.d.ts.map +1 -1
  13. package/dist/classes/reserve.js +463 -91
  14. package/dist/classes/reserve.js.map +1 -1
  15. package/dist/classes/utils.d.ts +0 -1
  16. package/dist/classes/utils.d.ts.map +1 -1
  17. package/dist/classes/utils.js +0 -12
  18. package/dist/classes/utils.js.map +1 -1
  19. package/dist/classes/vault.d.ts +2 -1
  20. package/dist/classes/vault.d.ts.map +1 -1
  21. package/dist/classes/vault.js +9 -5
  22. package/dist/classes/vault.js.map +1 -1
  23. package/dist/client_kamino_manager.d.ts.map +1 -1
  24. package/dist/client_kamino_manager.js +26 -27
  25. package/dist/client_kamino_manager.js.map +1 -1
  26. package/dist/idl.json +9 -186
  27. package/dist/idl_codegen/accounts/LendingMarket.d.ts +3 -24
  28. package/dist/idl_codegen/accounts/LendingMarket.d.ts.map +1 -1
  29. package/dist/idl_codegen/accounts/LendingMarket.js +7 -25
  30. package/dist/idl_codegen/accounts/LendingMarket.js.map +1 -1
  31. package/dist/idl_codegen/accounts/index.d.ts +0 -2
  32. package/dist/idl_codegen/accounts/index.d.ts.map +1 -1
  33. package/dist/idl_codegen/accounts/index.js +1 -3
  34. package/dist/idl_codegen/accounts/index.js.map +1 -1
  35. package/dist/idl_codegen/errors/custom.d.ts +1 -25
  36. package/dist/idl_codegen/errors/custom.d.ts.map +1 -1
  37. package/dist/idl_codegen/errors/custom.js +1 -43
  38. package/dist/idl_codegen/errors/custom.js.map +1 -1
  39. package/dist/idl_codegen/instructions/idlMissingTypes.d.ts +1 -2
  40. package/dist/idl_codegen/instructions/idlMissingTypes.d.ts.map +1 -1
  41. package/dist/idl_codegen/instructions/idlMissingTypes.js +1 -2
  42. package/dist/idl_codegen/instructions/idlMissingTypes.js.map +1 -1
  43. package/dist/idl_codegen/instructions/index.d.ts +0 -6
  44. package/dist/idl_codegen/instructions/index.d.ts.map +1 -1
  45. package/dist/idl_codegen/instructions/index.js +1 -7
  46. package/dist/idl_codegen/instructions/index.js.map +1 -1
  47. package/dist/idl_codegen/instructions/updateReserveConfig.d.ts +3 -4
  48. package/dist/idl_codegen/instructions/updateReserveConfig.d.ts.map +1 -1
  49. package/dist/idl_codegen/instructions/updateReserveConfig.js +3 -5
  50. package/dist/idl_codegen/instructions/updateReserveConfig.js.map +1 -1
  51. package/dist/idl_codegen/instructions/withdrawProtocolFee.d.ts +2 -2
  52. package/dist/idl_codegen/instructions/withdrawProtocolFee.d.ts.map +1 -1
  53. package/dist/idl_codegen/instructions/withdrawProtocolFee.js +6 -2
  54. package/dist/idl_codegen/instructions/withdrawProtocolFee.js.map +1 -1
  55. package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts +7 -33
  56. package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts.map +1 -1
  57. package/dist/idl_codegen/types/UpdateLendingMarketMode.js +12 -60
  58. package/dist/idl_codegen/types/UpdateLendingMarketMode.js.map +1 -1
  59. package/dist/idl_codegen/types/index.d.ts +2 -6
  60. package/dist/idl_codegen/types/index.d.ts.map +1 -1
  61. package/dist/idl_codegen/types/index.js +1 -3
  62. package/dist/idl_codegen/types/index.js.map +1 -1
  63. package/dist/utils/accountListing.d.ts +1 -1
  64. package/dist/utils/accountListing.d.ts.map +1 -1
  65. package/dist/utils/accountListing.js +2 -2
  66. package/dist/utils/accountListing.js.map +1 -1
  67. package/dist/utils/lookupTable.d.ts.map +1 -1
  68. package/dist/utils/lookupTable.js +6 -1
  69. package/dist/utils/lookupTable.js.map +1 -1
  70. package/dist/utils/managerTypes.d.ts.map +1 -1
  71. package/dist/utils/managerTypes.js +4 -10
  72. package/dist/utils/managerTypes.js.map +1 -1
  73. package/dist/utils/seeds.d.ts +0 -16
  74. package/dist/utils/seeds.d.ts.map +1 -1
  75. package/dist/utils/seeds.js +1 -23
  76. package/dist/utils/seeds.js.map +1 -1
  77. package/package.json +1 -1
  78. package/src/classes/farm_utils.ts +11 -3
  79. package/src/classes/manager.ts +401 -51
  80. package/src/classes/obligation.ts +0 -16
  81. package/src/classes/reserve.ts +783 -119
  82. package/src/classes/utils.ts +0 -12
  83. package/src/classes/vault.ts +18 -7
  84. package/src/client_kamino_manager.ts +34 -42
  85. package/src/idl.json +9 -186
  86. package/src/idl_codegen/accounts/LendingMarket.ts +9 -41
  87. package/src/idl_codegen/accounts/index.ts +0 -2
  88. package/src/idl_codegen/errors/custom.ts +0 -45
  89. package/src/idl_codegen/instructions/idlMissingTypes.ts +2 -4
  90. package/src/idl_codegen/instructions/index.ts +0 -9
  91. package/src/idl_codegen/instructions/updateReserveConfig.ts +5 -7
  92. package/src/idl_codegen/instructions/withdrawProtocolFee.ts +8 -4
  93. package/src/idl_codegen/types/UpdateLendingMarketMode.ts +13 -73
  94. package/src/idl_codegen/types/index.ts +2 -16
  95. package/src/utils/accountListing.ts +3 -2
  96. package/src/utils/lookupTable.ts +7 -1
  97. package/src/utils/managerTypes.ts +4 -10
  98. package/src/utils/seeds.ts +0 -25
  99. package/dist/classes/configItems.d.ts +0 -166
  100. package/dist/classes/configItems.d.ts.map +0 -1
  101. package/dist/classes/configItems.js +0 -202
  102. package/dist/classes/configItems.js.map +0 -1
  103. package/dist/idl_codegen/accounts/GlobalConfig.d.ts +0 -40
  104. package/dist/idl_codegen/accounts/GlobalConfig.d.ts.map +0 -1
  105. package/dist/idl_codegen/accounts/GlobalConfig.js +0 -116
  106. package/dist/idl_codegen/accounts/GlobalConfig.js.map +0 -1
  107. package/dist/idl_codegen/instructions/initGlobalConfig.d.ts +0 -10
  108. package/dist/idl_codegen/instructions/initGlobalConfig.d.ts.map +0 -1
  109. package/dist/idl_codegen/instructions/initGlobalConfig.js +0 -19
  110. package/dist/idl_codegen/instructions/initGlobalConfig.js.map +0 -1
  111. package/dist/idl_codegen/instructions/updateGlobalConfig.d.ts +0 -13
  112. package/dist/idl_codegen/instructions/updateGlobalConfig.d.ts.map +0 -1
  113. package/dist/idl_codegen/instructions/updateGlobalConfig.js +0 -61
  114. package/dist/idl_codegen/instructions/updateGlobalConfig.js.map +0 -1
  115. package/dist/idl_codegen/instructions/updateGlobalConfigAdmin.d.ts +0 -7
  116. package/dist/idl_codegen/instructions/updateGlobalConfigAdmin.d.ts.map +0 -1
  117. package/dist/idl_codegen/instructions/updateGlobalConfigAdmin.js +0 -16
  118. package/dist/idl_codegen/instructions/updateGlobalConfigAdmin.js.map +0 -1
  119. package/dist/idl_codegen/types/UpdateGlobalConfigMode.d.ts +0 -32
  120. package/dist/idl_codegen/types/UpdateGlobalConfigMode.d.ts.map +0 -1
  121. package/dist/idl_codegen/types/UpdateGlobalConfigMode.js +0 -108
  122. package/dist/idl_codegen/types/UpdateGlobalConfigMode.js.map +0 -1
  123. package/src/classes/configItems.ts +0 -295
  124. package/src/idl_codegen/accounts/GlobalConfig.ts +0 -125
  125. package/src/idl_codegen/instructions/initGlobalConfig.ts +0 -30
  126. package/src/idl_codegen/instructions/updateGlobalConfig.ts +0 -47
  127. package/src/idl_codegen/instructions/updateGlobalConfigAdmin.ts +0 -24
  128. package/src/idl_codegen/types/UpdateGlobalConfigMode.ts +0 -90
@@ -1 +1 @@
1
- {"version":3,"file":"farm_utils.d.ts","sourceRoot":"","sources":["../../src/classes/farm_utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,EAET,SAAS,EAKV,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,OAAO,MAAM,oBAAoB,CAAC;AAEzC,eAAO,MAAM,2BAA2B,EAAE,SAAyE,CAAC;AAEpH,wBAAsB,eAAe,CACnC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,eAAe,EAAE,OAAO,EACxB,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAuBnC;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,SAAS,CAAC,CAGpB;AAED,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,OAAO,EAC1B,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,sBAAsB,CAAC,CAkBjC;AAGD,wBAAsB,gCAAgC,CACpD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,SAAS,GACxB,OAAO,CAAC,sBAAsB,CAAC,CAKjC;AAED,wBAAsB,4BAA4B,CAChD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,OAAO,EAC1B,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,6BAA6B,CAAC,CASxC;AAED,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,OAAO,EAClB,aAAa,EAAE,SAAS,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAK/B;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,OAAO,CAAC,CAGlB;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,sBAAsB,CAAC,CAGjC;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAEhG;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,sBAAsB,EAAE,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,SAAS,EAAE,sBAAsB,CAAC;IAClC,UAAU,EAAE,sBAAsB,CAAC;CACpC,CAAC"}
1
+ {"version":3,"file":"farm_utils.d.ts","sourceRoot":"","sources":["../../src/classes/farm_utils.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,SAAS,EAET,SAAS,EAKV,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,OAAO,MAAM,oBAAoB,CAAC;AAEzC,eAAO,MAAM,2BAA2B,EAAE,SAAyE,CAAC;AAEpH,wBAAsB,eAAe,CACnC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,eAAe,EAAE,OAAO,EACxB,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAuBnC;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,SAAS,CAAC,CAGpB;AAED,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,OAAO,EAC1B,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,sBAAsB,CAAC,CAiBjC;AAGD,wBAAsB,gCAAgC,CACpD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,SAAS,GACxB,OAAO,CAAC,sBAAsB,CAAC,CAKjC;AAED,wBAAsB,4BAA4B,CAChD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,OAAO,EAC1B,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,6BAA6B,CAAC,CASxC;AAED,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,OAAO,EAClB,aAAa,EAAE,SAAS,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAK/B;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,OAAO,CAAC,CAWlB;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,sBAAsB,CAAC,CAGjC;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAEhG;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,sBAAsB,EAAE,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,SAAS,EAAE,sBAAsB,CAAC;IAClC,UAAU,EAAE,sBAAsB,CAAC;CACpC,CAAC"}
@@ -13,6 +13,7 @@ exports.getSetupFarmIxsWithFarm = getSetupFarmIxsWithFarm;
13
13
  exports.getUserSharesInFarm = getUserSharesInFarm;
14
14
  exports.setVaultIdForFarmIx = setVaultIdForFarmIx;
15
15
  exports.getSharesInFarmUserPosition = getSharesInFarmUserPosition;
16
+ const anchor_1 = require("@coral-xyz/anchor");
16
17
  const farms_sdk_1 = require("@kamino-finance/farms-sdk");
17
18
  const web3_js_1 = require("@solana/web3.js");
18
19
  const decimal_1 = __importDefault(require("decimal.js/decimal"));
@@ -54,9 +55,8 @@ async function getFarmUnstakeIx(connection, user, lamportsToUnstake, farmAddress
54
55
  if (!userState) {
55
56
  throw new Error(`User state not found for ${user}`);
56
57
  }
57
- const x = new decimal_1.default(lamportsToUnstake.toString()).mul(farms_sdk_1.WAD);
58
- console.log('lamportsToUnstake', lamportsToUnstake.toString());
59
- return farmClient.unstakeIx(user, farmAddress, x.toString(), scopePricesArg);
58
+ const scaledLamportsToUnstake = new anchor_1.BN(lamportsToUnstake.floor().toString()).mul(new anchor_1.BN(farms_sdk_1.WAD.toString()));
59
+ return farmClient.unstakeIx(user, farmAddress, scaledLamportsToUnstake.toString(), scopePricesArg);
60
60
  }
61
61
  // withdrawing from a farm is a 2 step operation: first we unstake the tokens from the farm, then we withdraw them
62
62
  async function getFarmWithdrawUnstakedDepositIx(connection, user, farm, stakeTokenMint) {
@@ -81,6 +81,13 @@ async function getSetupFarmIxsWithFarm(connection, farmAdmin, farmTokenMint) {
81
81
  }
82
82
  async function getUserSharesInFarm(connection, user, farm, farmTokenDecimals) {
83
83
  const farmClient = new farms_sdk_1.Farms(connection);
84
+ const userStatePDA = (0, farms_sdk_1.getUserStatePDA)(farmClient.getProgramID(), farm, user);
85
+ // if the user state does not exist, return 0
86
+ const userState = await connection.getAccountInfo(userStatePDA);
87
+ if (!userState) {
88
+ return new decimal_1.default(0);
89
+ }
90
+ // if the user state exists, return the user shares
84
91
  return farmClient.getUserTokensInUndelegatedFarm(user, farm, farmTokenDecimals);
85
92
  }
86
93
  async function setVaultIdForFarmIx(connection, farmAdmin, farm, vault) {
@@ -1 +1 @@
1
- {"version":3,"file":"farm_utils.js","sourceRoot":"","sources":["../../src/classes/farm_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"farm_utils.js","sourceRoot":"","sources":["../../src/classes/farm_utils.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,13 @@
1
1
  import { AccountInfo, Connection, Keypair, ParsedAccountData, PublicKey, TransactionInstruction } from '@solana/web3.js';
2
2
  import { KaminoVault, KaminoVaultClient, KaminoVaultConfig, MarketOverview, ReserveAllocationConfig, ReserveOverview, SimulatedVaultHoldingsWithEarnedInterest, VaultFees, VaultFeesPct, VaultHolder, VaultHoldings, VaultHoldingsWithUSDValue, VaultOverview, VaultReserveTotalBorrowedAndInvested } from './vault';
3
- import { AddAssetToMarketParams, CreateKaminoMarketParams, ENV, KaminoMarket, KaminoReserve, LendingMarket, MarketWithAddress, PubkeyHashMap, Reserve, ReserveWithAddress, ScopeOracleConfig } from '../lib';
4
- import { ReserveConfig, UpdateLendingMarketModeKind } from '../idl_codegen/types';
3
+ import { AddAssetToMarketParams, CreateKaminoMarketParams, ENV, KaminoMarket, KaminoReserve, LendingMarket, LendingMarketFields, MarketWithAddress, PubkeyHashMap, Reserve, ReserveWithAddress, ScopeOracleConfig } from '../lib';
4
+ import { ReserveConfig } from '../idl_codegen/types';
5
5
  import Decimal from 'decimal.js';
6
6
  import { VaultState } from '../idl_codegen_kamino_vault/accounts';
7
7
  import { VaultConfigFieldKind } from '../idl_codegen_kamino_vault/types';
8
8
  import { AcceptVaultOwnershipIxs, APYs, DepositIxs, InitVaultIxs, ReserveAllocationOverview, SyncVaultLUTIxs, UpdateReserveAllocationIxs, UpdateVaultConfigIxs, UserSharesForVault, WithdrawAndBlockReserveIxs, WithdrawIxs } from './vault_types';
9
9
  import { FarmState } from '@kamino-finance/farms-sdk/dist';
10
10
  import { WalletType } from '../utils/multisig';
11
- import { ConfigUpdater } from './configItems';
12
11
  /**
13
12
  * KaminoManager is a class that provides a high-level interface to interact with the Kamino Lend and Kamino Vault programs, in order to create and manage a market, as well as vaults
14
13
  */
@@ -258,7 +257,7 @@ export declare class KaminoManager {
258
257
  * Get all lending markets
259
258
  * @returns an array of all lending markets
260
259
  */
261
- getAllMarkets(): Promise<KaminoMarket[]>;
260
+ getAllMarkets(programId?: PublicKey): Promise<KaminoMarket[]>;
262
261
  /**
263
262
  * Get all vaults for owner
264
263
  * @param owner the pubkey of the vaults owner
@@ -394,6 +393,10 @@ export declare class KaminoManager {
394
393
  * @returns a struct of simulated management and interest fees
395
394
  */
396
395
  calculateSimulatedFees(vaultState: VaultState, simulatedCurrentHoldingsWithInterest?: SimulatedVaultHoldingsWithEarnedInterest, currentTimestamp?: Date): Promise<VaultFees>;
396
+ /**
397
+ * This will compute the PDA that is used as delegatee in Farms program to compute the user state PDA
398
+ */
399
+ computeUserFarmStateForUserInVault(farmProgramID: PublicKey, vault: PublicKey, user: PublicKey): [PublicKey, number];
397
400
  /**
398
401
  * This will load the onchain state for all the reserves that the vault has allocations for
399
402
  * @param vaultState - the vault state to load reserves for
@@ -499,5 +502,9 @@ export declare class KaminoManager {
499
502
  */
500
503
  private static getWalletInfo;
501
504
  }
502
- export declare const MARKET_UPDATER: ConfigUpdater<UpdateLendingMarketModeKind, LendingMarket>;
505
+ export type BaseLendingMarketKey = keyof LendingMarketFields;
506
+ declare const EXCLUDED_LENDING_MARKET_KEYS: readonly ["version", "bumpSeed", "reserved0", "reserved1", "padding1", "padding2", "elevationGroupPadding", "quoteCurrency"];
507
+ export type ExcludedLendingMarketKey = (typeof EXCLUDED_LENDING_MARKET_KEYS)[number];
508
+ export type LendingMarketKey = Exclude<BaseLendingMarketKey, ExcludedLendingMarketKey>;
509
+ export {};
503
510
  //# sourceMappingURL=manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/classes/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/classes/manager.ts"],"names":[],"mappings":"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"}
@@ -36,7 +36,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
36
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.MARKET_UPDATER = exports.KaminoManager = void 0;
39
+ exports.KaminoManager = void 0;
40
40
  const web3_js_1 = require("@solana/web3.js");
41
41
  const vault_1 = require("./vault");
42
42
  const lib_1 = require("../lib");
@@ -54,7 +54,6 @@ const types_2 = require("../idl_codegen_kamino_vault/types");
54
54
  const sbv2_lite_1 = __importDefault(require("@switchboard-xyz/sbv2-lite"));
55
55
  const multisig_1 = require("../utils/multisig");
56
56
  const vault_2 = require("../utils/vault");
57
- const configItems_1 = require("./configItems");
58
57
  /**
59
58
  * KaminoManager is a class that provides a high-level interface to interact with the Kamino Lend and Kamino Vault programs, in order to create and manage a market, as well as vaults
60
59
  */
@@ -255,7 +254,7 @@ class KaminoManager {
255
254
  : (await lib_1.Reserve.fetch(this._connection, reserve, this._kaminoLendProgramId));
256
255
  const ixs = [];
257
256
  if (!reserveState || updateEntireConfig) {
258
- ixs.push((0, lib_1.updateEntireReserveConfigIx)(marketWithAddress.state.lendingMarketOwner, marketWithAddress.address, reserve, config, this._kaminoLendProgramId));
257
+ ixs.push((0, lib_1.updateEntireReserveConfigIx)(marketWithAddress, reserve, config, this._kaminoLendProgramId));
259
258
  }
260
259
  else {
261
260
  ixs.push(...(0, lib_1.parseForChangesReserveConfigAndGetIxs)(marketWithAddress, reserveState, reserve, config, this._kaminoLendProgramId));
@@ -444,9 +443,9 @@ class KaminoManager {
444
443
  * Get all lending markets
445
444
  * @returns an array of all lending markets
446
445
  */
447
- async getAllMarkets() {
446
+ async getAllMarkets(programId = programId_1.PROGRAM_ID) {
448
447
  // Get all lending markets
449
- const marketGenerator = (0, lib_1.getAllLendingMarketAccounts)(this.getConnection());
448
+ const marketGenerator = (0, lib_1.getAllLendingMarketAccounts)(this.getConnection(), programId);
450
449
  const slotDuration = await (0, lib_1.getMedianSlotDurationInMsFromLastEpochs)();
451
450
  const lendingMarketPairs = [];
452
451
  for await (const pair of marketGenerator) {
@@ -705,6 +704,12 @@ class KaminoManager {
705
704
  async calculateSimulatedFees(vaultState, simulatedCurrentHoldingsWithInterest, currentTimestamp) {
706
705
  return this._vaultClient.calculateSimulatedFees(vaultState, simulatedCurrentHoldingsWithInterest, currentTimestamp);
707
706
  }
707
+ /**
708
+ * This will compute the PDA that is used as delegatee in Farms program to compute the user state PDA
709
+ */
710
+ computeUserFarmStateForUserInVault(farmProgramID, vault, user) {
711
+ return this._vaultClient.computeUserFarmStateDelegateePDAForUserInVault(farmProgramID, vault, user);
712
+ }
708
713
  /**
709
714
  * This will load the onchain state for all the reserves that the vault has allocations for
710
715
  * @param vaultState - the vault state to load reserves for
@@ -901,49 +906,305 @@ class KaminoManager {
901
906
  }
902
907
  } // KaminoManager
903
908
  exports.KaminoManager = KaminoManager;
904
- exports.MARKET_UPDATER = new configItems_1.ConfigUpdater(types_1.UpdateLendingMarketMode.fromDecoded, lib_1.LendingMarket, (config) => ({
905
- [types_1.UpdateLendingMarketMode.UpdateOwner.kind]: config.lendingMarketOwnerCached,
906
- [types_1.UpdateLendingMarketMode.UpdateImmutableFlag.kind]: config.immutable,
907
- [types_1.UpdateLendingMarketMode.UpdateEmergencyMode.kind]: config.emergencyMode,
908
- [types_1.UpdateLendingMarketMode.UpdateLiquidationCloseFactor.kind]: config.liquidationMaxDebtCloseFactorPct,
909
- [types_1.UpdateLendingMarketMode.UpdateLiquidationMaxValue.kind]: config.maxLiquidatableDebtMarketValueAtOnce,
910
- [types_1.UpdateLendingMarketMode.DeprecatedUpdateGlobalUnhealthyBorrow.kind]: [], // deprecated
911
- [types_1.UpdateLendingMarketMode.UpdateGlobalAllowedBorrow.kind]: config.globalAllowedBorrowValue,
912
- [types_1.UpdateLendingMarketMode.UpdateRiskCouncil.kind]: config.riskCouncil,
913
- [types_1.UpdateLendingMarketMode.UpdateMinFullLiquidationThreshold.kind]: config.minFullLiquidationValueThreshold,
914
- [types_1.UpdateLendingMarketMode.UpdateInsolvencyRiskLtv.kind]: config.insolvencyRiskUnhealthyLtvPct,
915
- [types_1.UpdateLendingMarketMode.UpdateElevationGroup.kind]: (0, configItems_1.arrayElementConfigItems)(config.elevationGroups),
916
- [types_1.UpdateLendingMarketMode.UpdateReferralFeeBps.kind]: config.referralFeeBps,
917
- [types_1.UpdateLendingMarketMode.DeprecatedUpdateMultiplierPoints.kind]: [], // deprecated
918
- [types_1.UpdateLendingMarketMode.UpdatePriceRefreshTriggerToMaxAgePct.kind]: config.priceRefreshTriggerToMaxAgePct,
919
- [types_1.UpdateLendingMarketMode.UpdateAutodeleverageEnabled.kind]: config.autodeleverageEnabled,
920
- [types_1.UpdateLendingMarketMode.UpdateBorrowingDisabled.kind]: config.borrowDisabled,
921
- [types_1.UpdateLendingMarketMode.UpdateMinNetValueObligationPostAction.kind]: config.minNetValueInObligationSf,
922
- [types_1.UpdateLendingMarketMode.UpdateMinValueLtvSkipPriorityLiqCheck.kind]: config.minValueSkipLiquidationLtvChecks,
923
- [types_1.UpdateLendingMarketMode.UpdateMinValueBfSkipPriorityLiqCheck.kind]: config.minValueSkipLiquidationBfChecks,
924
- [types_1.UpdateLendingMarketMode.UpdatePaddingFields.kind]: [], // we do not update padding this way
925
- [types_1.UpdateLendingMarketMode.UpdateName.kind]: config.name,
926
- [types_1.UpdateLendingMarketMode.UpdateIndividualAutodeleverageMarginCallPeriodSecs.kind]: config.individualAutodeleverageMarginCallPeriodSecs,
927
- [types_1.UpdateLendingMarketMode.UpdateInitialDepositAmount.kind]: config.minInitialDepositAmount,
928
- [types_1.UpdateLendingMarketMode.UpdateObligationOrderCreationEnabled.kind]: config.obligationOrderCreationEnabled,
929
- [types_1.UpdateLendingMarketMode.UpdateObligationOrderExecutionEnabled.kind]: config.obligationOrderExecutionEnabled,
930
- }));
909
+ const EXCLUDED_LENDING_MARKET_KEYS = [
910
+ 'version',
911
+ 'bumpSeed',
912
+ 'reserved0',
913
+ 'reserved1',
914
+ 'padding1',
915
+ 'padding2',
916
+ 'elevationGroupPadding',
917
+ 'quoteCurrency',
918
+ ];
919
+ function isExcludedLendingMarketKey(value) {
920
+ return EXCLUDED_LENDING_MARKET_KEYS.includes(value);
921
+ }
922
+ const updateLendingMarketConfig = (key, market, newMarket) => {
923
+ const updateLendingMarketIxsArgs = [];
924
+ switch (key) {
925
+ case 'lendingMarketOwner': {
926
+ if (!market.lendingMarketOwner.equals(newMarket.lendingMarketOwner)) {
927
+ updateLendingMarketIxsArgs.push({
928
+ mode: types_1.UpdateLendingMarketMode.UpdateOwner.discriminator,
929
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateOwner.discriminator, newMarket.lendingMarketOwner),
930
+ });
931
+ }
932
+ break;
933
+ }
934
+ case 'lendingMarketOwnerCached':
935
+ if (!market.lendingMarketOwnerCached.equals(newMarket.lendingMarketOwnerCached)) {
936
+ updateLendingMarketIxsArgs.push({
937
+ mode: types_1.UpdateLendingMarketMode.UpdateOwner.discriminator,
938
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateOwner.discriminator, newMarket.lendingMarketOwnerCached),
939
+ });
940
+ }
941
+ break;
942
+ case 'referralFeeBps':
943
+ if (market.referralFeeBps !== newMarket.referralFeeBps) {
944
+ updateLendingMarketIxsArgs.push({
945
+ mode: types_1.UpdateLendingMarketMode.UpdateReferralFeeBps.discriminator,
946
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateReferralFeeBps.discriminator, newMarket.referralFeeBps),
947
+ });
948
+ }
949
+ break;
950
+ case 'emergencyMode':
951
+ if (market.emergencyMode !== newMarket.emergencyMode) {
952
+ updateLendingMarketIxsArgs.push({
953
+ mode: types_1.UpdateLendingMarketMode.UpdateEmergencyMode.discriminator,
954
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateEmergencyMode.discriminator, newMarket.emergencyMode),
955
+ });
956
+ }
957
+ break;
958
+ case 'autodeleverageEnabled':
959
+ if (market.autodeleverageEnabled !== newMarket.autodeleverageEnabled) {
960
+ updateLendingMarketIxsArgs.push({
961
+ mode: types_1.UpdateLendingMarketMode.UpdateAutodeleverageEnabled.discriminator,
962
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateAutodeleverageEnabled.discriminator, newMarket.autodeleverageEnabled),
963
+ });
964
+ }
965
+ break;
966
+ case 'borrowDisabled':
967
+ if (market.borrowDisabled !== newMarket.borrowDisabled) {
968
+ updateLendingMarketIxsArgs.push({
969
+ mode: types_1.UpdateLendingMarketMode.UpdateBorrowingDisabled.discriminator,
970
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateBorrowingDisabled.discriminator, newMarket.borrowDisabled),
971
+ });
972
+ }
973
+ break;
974
+ case 'priceRefreshTriggerToMaxAgePct':
975
+ if (market.priceRefreshTriggerToMaxAgePct !== newMarket.priceRefreshTriggerToMaxAgePct) {
976
+ updateLendingMarketIxsArgs.push({
977
+ mode: types_1.UpdateLendingMarketMode.UpdatePriceRefreshTriggerToMaxAgePct.discriminator,
978
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdatePriceRefreshTriggerToMaxAgePct.discriminator, newMarket.priceRefreshTriggerToMaxAgePct),
979
+ });
980
+ }
981
+ break;
982
+ case 'liquidationMaxDebtCloseFactorPct':
983
+ if (market.liquidationMaxDebtCloseFactorPct !== newMarket.liquidationMaxDebtCloseFactorPct) {
984
+ updateLendingMarketIxsArgs.push({
985
+ mode: types_1.UpdateLendingMarketMode.UpdateLiquidationCloseFactor.discriminator,
986
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateLiquidationCloseFactor.discriminator, newMarket.liquidationMaxDebtCloseFactorPct),
987
+ });
988
+ }
989
+ break;
990
+ case 'insolvencyRiskUnhealthyLtvPct':
991
+ if (market.insolvencyRiskUnhealthyLtvPct !== newMarket.insolvencyRiskUnhealthyLtvPct) {
992
+ updateLendingMarketIxsArgs.push({
993
+ mode: types_1.UpdateLendingMarketMode.UpdateInsolvencyRiskLtv.discriminator,
994
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateInsolvencyRiskLtv.discriminator, newMarket.insolvencyRiskUnhealthyLtvPct),
995
+ });
996
+ }
997
+ break;
998
+ case 'minFullLiquidationValueThreshold':
999
+ if (!market.minFullLiquidationValueThreshold.eq(newMarket.minFullLiquidationValueThreshold)) {
1000
+ updateLendingMarketIxsArgs.push({
1001
+ mode: types_1.UpdateLendingMarketMode.UpdateMinFullLiquidationThreshold.discriminator,
1002
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateMinFullLiquidationThreshold.discriminator, newMarket.minFullLiquidationValueThreshold.toNumber()),
1003
+ });
1004
+ }
1005
+ break;
1006
+ case 'maxLiquidatableDebtMarketValueAtOnce':
1007
+ if (!market.maxLiquidatableDebtMarketValueAtOnce.eq(newMarket.maxLiquidatableDebtMarketValueAtOnce)) {
1008
+ updateLendingMarketIxsArgs.push({
1009
+ mode: types_1.UpdateLendingMarketMode.UpdateLiquidationMaxValue.discriminator,
1010
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateLiquidationMaxValue.discriminator, newMarket.maxLiquidatableDebtMarketValueAtOnce.toNumber()),
1011
+ });
1012
+ }
1013
+ break;
1014
+ case 'globalAllowedBorrowValue':
1015
+ if (!market.globalAllowedBorrowValue.eq(newMarket.globalAllowedBorrowValue)) {
1016
+ updateLendingMarketIxsArgs.push({
1017
+ mode: types_1.UpdateLendingMarketMode.UpdateGlobalAllowedBorrow.discriminator,
1018
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateGlobalAllowedBorrow.discriminator, newMarket.globalAllowedBorrowValue.toNumber()),
1019
+ });
1020
+ }
1021
+ break;
1022
+ case 'riskCouncil':
1023
+ if (!market.riskCouncil.equals(newMarket.riskCouncil)) {
1024
+ updateLendingMarketIxsArgs.push({
1025
+ mode: types_1.UpdateLendingMarketMode.UpdateRiskCouncil.discriminator,
1026
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateRiskCouncil.discriminator, newMarket.riskCouncil),
1027
+ });
1028
+ }
1029
+ break;
1030
+ case 'elevationGroups':
1031
+ let elevationGroupsDiffs = 0;
1032
+ for (let i = 0; i < market.elevationGroups.length; i++) {
1033
+ if (market.elevationGroups[i].id !== newMarket.elevationGroups[i].id ||
1034
+ market.elevationGroups[i].maxLiquidationBonusBps !== newMarket.elevationGroups[i].maxLiquidationBonusBps ||
1035
+ market.elevationGroups[i].ltvPct !== newMarket.elevationGroups[i].ltvPct ||
1036
+ market.elevationGroups[i].liquidationThresholdPct !== newMarket.elevationGroups[i].liquidationThresholdPct ||
1037
+ market.elevationGroups[i].allowNewLoans !== newMarket.elevationGroups[i].allowNewLoans ||
1038
+ market.elevationGroups[i].maxReservesAsCollateral !== newMarket.elevationGroups[i].maxReservesAsCollateral ||
1039
+ !market.elevationGroups[i].debtReserve.equals(newMarket.elevationGroups[i].debtReserve)) {
1040
+ updateLendingMarketIxsArgs.push({
1041
+ mode: types_1.UpdateLendingMarketMode.UpdateElevationGroup.discriminator,
1042
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateElevationGroup.discriminator, newMarket.elevationGroups[i]),
1043
+ });
1044
+ elevationGroupsDiffs++;
1045
+ }
1046
+ }
1047
+ if (elevationGroupsDiffs > 1) {
1048
+ throw new Error('Can only update 1 elevation group at a time');
1049
+ }
1050
+ break;
1051
+ case 'minNetValueInObligationSf':
1052
+ if (!market.minNetValueInObligationSf.eq(newMarket.minNetValueInObligationSf)) {
1053
+ updateLendingMarketIxsArgs.push({
1054
+ mode: types_1.UpdateLendingMarketMode.UpdateMinNetValueObligationPostAction.discriminator,
1055
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateMinNetValueObligationPostAction.discriminator, newMarket.minNetValueInObligationSf.toString()),
1056
+ });
1057
+ }
1058
+ break;
1059
+ case 'minValueSkipLiquidationBfChecks':
1060
+ if (!market.minValueSkipLiquidationBfChecks.eq(newMarket.minValueSkipLiquidationBfChecks)) {
1061
+ updateLendingMarketIxsArgs.push({
1062
+ mode: types_1.UpdateLendingMarketMode.UpdateMinValueBfSkipPriorityLiqCheck.discriminator,
1063
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateMinValueBfSkipPriorityLiqCheck.discriminator, newMarket.minValueSkipLiquidationBfChecks.toNumber()),
1064
+ });
1065
+ }
1066
+ break;
1067
+ case 'minValueSkipLiquidationLtvChecks':
1068
+ if (!market.minValueSkipLiquidationLtvChecks.eq(newMarket.minValueSkipLiquidationLtvChecks)) {
1069
+ updateLendingMarketIxsArgs.push({
1070
+ mode: types_1.UpdateLendingMarketMode.UpdateMinValueLtvSkipPriorityLiqCheck.discriminator,
1071
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateMinValueLtvSkipPriorityLiqCheck.discriminator, newMarket.minValueSkipLiquidationLtvChecks.toNumber()),
1072
+ });
1073
+ }
1074
+ break;
1075
+ case 'individualAutodeleverageMarginCallPeriodSecs':
1076
+ if (market.individualAutodeleverageMarginCallPeriodSecs !== newMarket.individualAutodeleverageMarginCallPeriodSecs) {
1077
+ updateLendingMarketIxsArgs.push({
1078
+ mode: types_1.UpdateLendingMarketMode.UpdateIndividualAutodeleverageMarginCallPeriodSecs.discriminator,
1079
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateIndividualAutodeleverageMarginCallPeriodSecs.discriminator, newMarket.individualAutodeleverageMarginCallPeriodSecs.toNumber()),
1080
+ });
1081
+ }
1082
+ break;
1083
+ case 'name':
1084
+ if (!(0, lib_1.sameLengthArrayEquals)(market.name, newMarket.name)) {
1085
+ updateLendingMarketIxsArgs.push({
1086
+ mode: types_1.UpdateLendingMarketMode.UpdateName.discriminator,
1087
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateName.discriminator, newMarket.name),
1088
+ });
1089
+ }
1090
+ break;
1091
+ case 'minInitialDepositAmount':
1092
+ if (!market.minInitialDepositAmount.eq(newMarket.minInitialDepositAmount)) {
1093
+ updateLendingMarketIxsArgs.push({
1094
+ mode: types_1.UpdateLendingMarketMode.UpdateInitialDepositAmount.discriminator,
1095
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateInitialDepositAmount.discriminator, newMarket.minInitialDepositAmount.toNumber()),
1096
+ });
1097
+ }
1098
+ break;
1099
+ case 'obligationOrdersEnabled':
1100
+ if (market.obligationOrdersEnabled !== newMarket.obligationOrdersEnabled) {
1101
+ updateLendingMarketIxsArgs.push({
1102
+ mode: types_1.UpdateLendingMarketMode.UpdateObligationOrdersEnabled.discriminator,
1103
+ value: updateMarketConfigEncodedValue(types_1.UpdateLendingMarketMode.UpdateObligationOrdersEnabled.discriminator, newMarket.obligationOrdersEnabled),
1104
+ });
1105
+ }
1106
+ break;
1107
+ default:
1108
+ (0, lib_1.assertNever)(key);
1109
+ }
1110
+ return updateLendingMarketIxsArgs;
1111
+ };
931
1112
  function parseForChangesMarketConfigAndGetIxs(marketWithAddress, newMarket, programId) {
932
- const encodedMarketUpdates = exports.MARKET_UPDATER.encodeAllUpdates(marketWithAddress.state, newMarket);
933
- return encodedMarketUpdates.map((encodedMarketUpdate) => updateMarketConfigIx(marketWithAddress, encodedMarketUpdate.mode, encodedMarketUpdate.value, programId));
1113
+ const market = marketWithAddress.state;
1114
+ const updateLendingMarketIxsArgs = [];
1115
+ for (const key in market.toJSON()) {
1116
+ if (isExcludedLendingMarketKey(key)) {
1117
+ continue;
1118
+ }
1119
+ updateLendingMarketIxsArgs.push(...updateLendingMarketConfig(key, market, newMarket));
1120
+ }
1121
+ const ixs = [];
1122
+ updateLendingMarketIxsArgs.forEach((updateLendingMarketConfigArgs) => {
1123
+ ixs.push(updateMarketConfigIx(marketWithAddress, updateLendingMarketConfigArgs.mode, updateLendingMarketConfigArgs.value, programId));
1124
+ });
1125
+ return ixs;
934
1126
  }
935
- function updateMarketConfigIx(marketWithAddress, mode, value, programId) {
1127
+ function updateMarketConfigEncodedValue(discriminator, value) {
1128
+ let buffer = Buffer.alloc(72);
1129
+ let pkBuffer;
1130
+ let valueBigInt;
1131
+ let valueArray;
1132
+ switch (discriminator) {
1133
+ case types_1.UpdateLendingMarketMode.UpdateEmergencyMode.discriminator:
1134
+ case types_1.UpdateLendingMarketMode.UpdateLiquidationCloseFactor.discriminator:
1135
+ case types_1.UpdateLendingMarketMode.UpdateInsolvencyRiskLtv.discriminator:
1136
+ case types_1.UpdateLendingMarketMode.UpdatePriceRefreshTriggerToMaxAgePct.discriminator:
1137
+ case types_1.UpdateLendingMarketMode.UpdateAutodeleverageEnabled.discriminator:
1138
+ case types_1.UpdateLendingMarketMode.UpdateObligationOrdersEnabled.discriminator:
1139
+ case types_1.UpdateLendingMarketMode.UpdateBorrowingDisabled.discriminator:
1140
+ buffer.writeUIntLE(value, 0, 1);
1141
+ break;
1142
+ case types_1.UpdateLendingMarketMode.UpdateReferralFeeBps.discriminator:
1143
+ buffer.writeUInt16LE(value, 0);
1144
+ break;
1145
+ case types_1.UpdateLendingMarketMode.UpdateLiquidationMaxValue.discriminator:
1146
+ case types_1.UpdateLendingMarketMode.UpdateGlobalAllowedBorrow.discriminator:
1147
+ case types_1.UpdateLendingMarketMode.UpdateMinFullLiquidationThreshold.discriminator:
1148
+ case types_1.UpdateLendingMarketMode.UpdateMinValueBfSkipPriorityLiqCheck.discriminator:
1149
+ case types_1.UpdateLendingMarketMode.UpdateMinValueLtvSkipPriorityLiqCheck.discriminator:
1150
+ case types_1.UpdateLendingMarketMode.UpdateIndividualAutodeleverageMarginCallPeriodSecs.discriminator:
1151
+ case types_1.UpdateLendingMarketMode.UpdateInitialDepositAmount.discriminator:
1152
+ value = value;
1153
+ buffer.writeBigUint64LE(BigInt(value), 0);
1154
+ break;
1155
+ case types_1.UpdateLendingMarketMode.UpdateOwner.discriminator:
1156
+ case types_1.UpdateLendingMarketMode.UpdateRiskCouncil.discriminator:
1157
+ pkBuffer = value.toBuffer();
1158
+ pkBuffer.copy(buffer, 0);
1159
+ break;
1160
+ case types_1.UpdateLendingMarketMode.UpdateElevationGroup.discriminator:
1161
+ buffer = serializeElevationGroup(value);
1162
+ break;
1163
+ case types_1.UpdateLendingMarketMode.UpdateMinNetValueObligationPostAction.discriminator:
1164
+ valueBigInt = BigInt(value);
1165
+ for (let i = 0; i < 16; i++) {
1166
+ buffer[15 - i] = Number((valueBigInt >> BigInt(i * 8)) & BigInt(0xff));
1167
+ }
1168
+ break;
1169
+ case types_1.UpdateLendingMarketMode.UpdateName.discriminator:
1170
+ valueArray = value;
1171
+ for (let i = 0; i < valueArray.length; i++) {
1172
+ buffer.writeUIntLE(valueArray[i], i, 1);
1173
+ }
1174
+ break;
1175
+ case types_1.UpdateLendingMarketMode.UpdatePaddingFields.discriminator:
1176
+ case types_1.UpdateLendingMarketMode.DeprecatedUpdateGlobalUnhealthyBorrow.discriminator:
1177
+ case types_1.UpdateLendingMarketMode.DeprecatedUpdateMultiplierPoints.discriminator:
1178
+ // Deliberately skipped - we are not updating padding or deprecated fields using this method
1179
+ break;
1180
+ default:
1181
+ (0, lib_1.assertNever)(discriminator);
1182
+ }
1183
+ return buffer;
1184
+ }
1185
+ function updateMarketConfigIx(marketWithAddress, modeDiscriminator, value, programId) {
936
1186
  const accounts = {
937
1187
  lendingMarketOwner: marketWithAddress.state.lendingMarketOwner,
938
1188
  lendingMarket: marketWithAddress.address,
939
1189
  };
940
1190
  const args = {
941
- mode: new anchor.BN(mode.discriminator),
942
- // NOTE: the Market's update handler expects a `[u8; 72]` (contrary to e.g. the Reserve's update handler accepting
943
- // `Vec<u8>`). Hence, we need to add explicit padding here:
944
- value: [...value, ...Array(72 - value.length).fill(0)],
1191
+ mode: new anchor.BN(modeDiscriminator),
1192
+ value: [...value],
945
1193
  };
946
1194
  const ix = (0, lib_1.updateLendingMarket)(args, accounts, programId);
947
1195
  return ix;
948
1196
  }
1197
+ function serializeElevationGroup(elevationGroup) {
1198
+ const buffer = Buffer.alloc(72);
1199
+ buffer.writeUInt16LE(elevationGroup.maxLiquidationBonusBps, 0);
1200
+ buffer.writeUIntLE(elevationGroup.id, 2, 1);
1201
+ buffer.writeUIntLE(elevationGroup.ltvPct, 3, 1);
1202
+ buffer.writeUIntLE(elevationGroup.liquidationThresholdPct, 4, 1);
1203
+ buffer.writeUIntLE(elevationGroup.allowNewLoans, 5, 1);
1204
+ buffer.writeUIntLE(elevationGroup.maxReservesAsCollateral, 6, 1);
1205
+ buffer.writeUIntLE(elevationGroup.padding0, 7, 1);
1206
+ const debtReserveBuffer = elevationGroup.debtReserve.toBuffer();
1207
+ debtReserveBuffer.copy(buffer, 8);
1208
+ return buffer;
1209
+ }
949
1210
  //# sourceMappingURL=manager.js.map