@kamino-finance/klend-sdk 5.13.1 → 5.13.2

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 (106) hide show
  1. package/dist/classes/action.d.ts +32 -31
  2. package/dist/classes/action.d.ts.map +1 -1
  3. package/dist/classes/action.js +126 -95
  4. package/dist/classes/action.js.map +1 -1
  5. package/dist/classes/index.d.ts +3 -2
  6. package/dist/classes/index.d.ts.map +1 -1
  7. package/dist/classes/index.js +3 -2
  8. package/dist/classes/index.js.map +1 -1
  9. package/dist/classes/manager.d.ts +7 -7
  10. package/dist/classes/manager.d.ts.map +1 -1
  11. package/dist/classes/manager.js +46 -46
  12. package/dist/classes/manager.js.map +1 -1
  13. package/dist/classes/obligationOrder.d.ts +1 -1
  14. package/dist/classes/obligationOrder.d.ts.map +1 -1
  15. package/dist/classes/reserve.d.ts +2 -2
  16. package/dist/classes/reserve.d.ts.map +1 -1
  17. package/dist/classes/reserve.js +70 -70
  18. package/dist/classes/reserve.js.map +1 -1
  19. package/dist/classes/shared.d.ts +13 -0
  20. package/dist/classes/shared.d.ts.map +1 -1
  21. package/dist/classes/utils.d.ts +1 -9
  22. package/dist/classes/utils.d.ts.map +1 -1
  23. package/dist/classes/utils.js +4 -51
  24. package/dist/classes/utils.js.map +1 -1
  25. package/dist/classes/vault.d.ts +5 -3
  26. package/dist/classes/vault.d.ts.map +1 -1
  27. package/dist/classes/vault.js +50 -41
  28. package/dist/classes/vault.js.map +1 -1
  29. package/dist/classes/{types.d.ts → vault_types.d.ts} +2 -15
  30. package/dist/classes/vault_types.d.ts.map +1 -0
  31. package/dist/classes/{types.js → vault_types.js} +1 -1
  32. package/dist/classes/vault_types.js.map +1 -0
  33. package/dist/client_kamino_manager.d.ts.map +1 -1
  34. package/dist/client_kamino_manager.js +25 -26
  35. package/dist/client_kamino_manager.js.map +1 -1
  36. package/dist/lending_operations/repay_with_collateral_operations.js +6 -6
  37. package/dist/lending_operations/repay_with_collateral_operations.js.map +1 -1
  38. package/dist/lending_operations/swap_collateral_operations.d.ts +6 -6
  39. package/dist/lending_operations/swap_collateral_operations.d.ts.map +1 -1
  40. package/dist/lending_operations/swap_collateral_operations.js +61 -61
  41. package/dist/lending_operations/swap_collateral_operations.js.map +1 -1
  42. package/dist/leverage/calcs.d.ts +0 -1
  43. package/dist/leverage/calcs.d.ts.map +1 -1
  44. package/dist/leverage/calcs.js +5 -8
  45. package/dist/leverage/calcs.js.map +1 -1
  46. package/dist/leverage/operations.d.ts +5 -5
  47. package/dist/leverage/operations.d.ts.map +1 -1
  48. package/dist/leverage/operations.js +73 -73
  49. package/dist/leverage/operations.js.map +1 -1
  50. package/dist/leverage/types.d.ts +1 -1
  51. package/dist/leverage/types.d.ts.map +1 -1
  52. package/dist/leverage/utils.d.ts +2 -2
  53. package/dist/leverage/utils.d.ts.map +1 -1
  54. package/dist/leverage/utils.js +5 -5
  55. package/dist/leverage/utils.js.map +1 -1
  56. package/dist/referrals/instructions.d.ts +3 -3
  57. package/dist/referrals/instructions.d.ts.map +1 -1
  58. package/dist/referrals/instructions.js +10 -10
  59. package/dist/referrals/instructions.js.map +1 -1
  60. package/dist/referrals/operations.js +6 -6
  61. package/dist/referrals/operations.js.map +1 -1
  62. package/dist/utils/ata.d.ts +3 -3
  63. package/dist/utils/ata.d.ts.map +1 -1
  64. package/dist/utils/ata.js +22 -22
  65. package/dist/utils/ata.js.map +1 -1
  66. package/dist/utils/instruction.d.ts +2 -2
  67. package/dist/utils/instruction.d.ts.map +1 -1
  68. package/dist/utils/instruction.js +12 -12
  69. package/dist/utils/instruction.js.map +1 -1
  70. package/dist/utils/lookupTable.js +6 -6
  71. package/dist/utils/lookupTable.js.map +1 -1
  72. package/dist/utils/userMetadata.d.ts +1 -1
  73. package/dist/utils/userMetadata.d.ts.map +1 -1
  74. package/dist/utils/userMetadata.js +3 -3
  75. package/dist/utils/userMetadata.js.map +1 -1
  76. package/package.json +1 -1
  77. package/src/classes/action.ts +143 -102
  78. package/src/classes/index.ts +5 -2
  79. package/src/classes/manager.ts +54 -51
  80. package/src/classes/obligationOrder.ts +1 -1
  81. package/src/classes/reserve.ts +126 -132
  82. package/src/classes/shared.ts +15 -0
  83. package/src/classes/utils.ts +3 -52
  84. package/src/classes/vault.ts +53 -42
  85. package/src/classes/{types.ts → vault_types.ts} +1 -16
  86. package/src/client.ts +16 -16
  87. package/src/client_kamino_manager.ts +25 -25
  88. package/src/lending_operations/repay_with_collateral_operations.ts +13 -13
  89. package/src/lending_operations/swap_collateral_operations.ts +85 -85
  90. package/src/leverage/calcs.ts +2 -6
  91. package/src/leverage/operations.ts +84 -84
  92. package/src/leverage/types.ts +1 -1
  93. package/src/leverage/utils.ts +5 -5
  94. package/src/referrals/instructions.ts +6 -6
  95. package/src/referrals/operations.ts +9 -9
  96. package/src/utils/ata.ts +18 -18
  97. package/src/utils/instruction.ts +10 -10
  98. package/src/utils/lookupTable.ts +6 -6
  99. package/src/utils/userMetadata.ts +1 -1
  100. package/dist/classes/types.d.ts.map +0 -1
  101. package/dist/classes/types.js.map +0 -1
  102. package/dist/classes/types_utils.d.ts +0 -14
  103. package/dist/classes/types_utils.d.ts.map +0 -1
  104. package/dist/classes/types_utils.js +0 -50
  105. package/dist/classes/types_utils.js.map +0 -1
  106. package/src/classes/types_utils.ts +0 -49
@@ -1,12 +1,15 @@
1
1
  export * from './action';
2
2
  export * from './curve';
3
+ export * from './fraction';
3
4
  export * from './market';
4
5
  export * from './obligation';
6
+ export * from './obligationOrder';
5
7
  export * from './reserve';
6
8
  export * from './shared';
7
9
  export * from './utils';
10
+
8
11
  export * from './jupiterPerps';
12
+
9
13
  export * from './manager';
10
14
  export * from './vault';
11
- export * from './fraction';
12
- export * from './types';
15
+ export * from './vault_types';
@@ -90,7 +90,7 @@ import {
90
90
  UpdateVaultConfigIxs,
91
91
  UserSharesForVault,
92
92
  WithdrawIxs,
93
- } from './types';
93
+ } from './vault_types';
94
94
  import { FarmState } from '@kamino-finance/farms-sdk/dist';
95
95
  import SwitchboardProgram from '@switchboard-xyz/sbv2-lite';
96
96
 
@@ -134,17 +134,15 @@ export class KaminoManager {
134
134
  * This is a function that helps quickly setting up a reserve for an asset with a default config. The config can be modified later on.
135
135
  * @param params.admin - the admin of the market
136
136
  * @returns market keypair - keypair used for market account creation -> to be signed with when executing the transaction
137
- * @returns ixns - an array of ixns for creating and initializing the market account
137
+ * @returns ixs - an array of ixs for creating and initializing the market account
138
138
  */
139
- async createMarketIxs(
140
- params: CreateKaminoMarketParams
141
- ): Promise<{ market: Keypair; ixns: TransactionInstruction[] }> {
139
+ async createMarketIxs(params: CreateKaminoMarketParams): Promise<{ market: Keypair; ixs: TransactionInstruction[] }> {
142
140
  const marketAccount = Keypair.generate();
143
141
  const size = LendingMarket.layout.span + 8;
144
142
  const [lendingMarketAuthority, _] = lendingMarketAuthPda(marketAccount.publicKey, this._kaminoLendProgramId);
145
- const createMarketIxns: TransactionInstruction[] = [];
143
+ const createMarketIxs: TransactionInstruction[] = [];
146
144
 
147
- createMarketIxns.push(
145
+ createMarketIxs.push(
148
146
  SystemProgram.createAccount({
149
147
  fromPubkey: params.admin,
150
148
  newAccountPubkey: marketAccount.publicKey,
@@ -166,9 +164,9 @@ export class KaminoManager {
166
164
  quoteCurrency: Array(32).fill(0),
167
165
  };
168
166
 
169
- createMarketIxns.push(initLendingMarket(args, accounts, this._kaminoLendProgramId));
167
+ createMarketIxs.push(initLendingMarket(args, accounts, this._kaminoLendProgramId));
170
168
 
171
- return { market: marketAccount, ixns: createMarketIxns };
169
+ return { market: marketAccount, ixs: createMarketIxs };
172
170
  }
173
171
 
174
172
  /**
@@ -177,11 +175,11 @@ export class KaminoManager {
177
175
  * @param params.marketAddress - the market to create a reserve for, only the market admin can create a reserve for the market
178
176
  * @param params.assetConfig - an object that helps generate a default reserve config with some inputs which have to be configured before calling this function
179
177
  * @returns reserve - keypair used for reserve creation -> to be signed with when executing the transaction
180
- * @returns txnIxns - an array of arrays of ixns -> first array for reserve creation, second for updating it with correct params
178
+ * @returns txnIxs - an array of arrays of ixs -> first array for reserve creation, second for updating it with correct params
181
179
  */
182
180
  async addAssetToMarketIxs(
183
181
  params: AddAssetToMarketParams
184
- ): Promise<{ reserve: Keypair; txnIxns: TransactionInstruction[][] }> {
182
+ ): Promise<{ reserve: Keypair; txnIxs: TransactionInstruction[][] }> {
185
183
  const market = await LendingMarket.fetch(this._connection, params.marketAddress, this._kaminoLendProgramId);
186
184
  if (!market) {
187
185
  throw new Error('Market not found');
@@ -208,11 +206,11 @@ export class KaminoManager {
208
206
  false
209
207
  );
210
208
 
211
- const txnIxns: TransactionInstruction[][] = [];
212
- txnIxns.push(createReserveInstructions);
213
- txnIxns.push(updateReserveInstructions);
209
+ const txnIxs: TransactionInstruction[][] = [];
210
+ txnIxs.push(createReserveInstructions);
211
+ txnIxs.push(updateReserveInstructions);
214
212
 
215
- return { reserve: reserveAccount, txnIxns };
213
+ return { reserve: reserveAccount, txnIxs };
216
214
  }
217
215
 
218
216
  /**
@@ -325,7 +323,7 @@ export class KaminoManager {
325
323
  * @param config - the new reserve configuration to be used for the update
326
324
  * @param reserveStateOverride - the reserve state, useful to provide, if already fetched outside this method, in order to avoid an extra rpc call to fetch it. Make sure the reserveConfig has not been updated since fetching the reserveState that you pass in.
327
325
  * @param updateEntireConfig - when set to false, it will only update fields that are different between @param config and reserveState.config, set to true it will always update entire reserve config. An entire reserveConfig update might be too large for a multisig transaction
328
- * @returns - an array of multiple update ixns. If there are many fields that are being updated without the updateEntireConfig=true, multiple transactions might be required to fit all ixns.
326
+ * @returns - an array of multiple update ixs. If there are many fields that are being updated without the updateEntireConfig=true, multiple transactions might be required to fit all ixs.
329
327
  */
330
328
  async updateReserveIxs(
331
329
  marketWithAddress: MarketWithAddress,
@@ -337,12 +335,12 @@ export class KaminoManager {
337
335
  const reserveState = reserveStateOverride
338
336
  ? reserveStateOverride
339
337
  : (await Reserve.fetch(this._connection, reserve, this._kaminoLendProgramId))!;
340
- const ixns: TransactionInstruction[] = [];
338
+ const ixs: TransactionInstruction[] = [];
341
339
 
342
340
  if (!reserveState || updateEntireConfig) {
343
- ixns.push(updateEntireReserveConfigIx(marketWithAddress, reserve, config, this._kaminoLendProgramId));
341
+ ixs.push(updateEntireReserveConfigIx(marketWithAddress, reserve, config, this._kaminoLendProgramId));
344
342
  } else {
345
- ixns.push(
343
+ ixs.push(
346
344
  ...parseForChangesReserveConfigAndGetIxs(
347
345
  marketWithAddress,
348
346
  reserveState,
@@ -353,7 +351,7 @@ export class KaminoManager {
353
351
  );
354
352
  }
355
353
 
356
- return ixns;
354
+ return ixs;
357
355
  }
358
356
 
359
357
  /**
@@ -986,8 +984,13 @@ export class KaminoManager {
986
984
  *
987
985
  * @returns a hashmap from each reserve pubkey to the market overview of the collaterals that can be used and the min and max loan to value ratio in that market
988
986
  */
989
- async getVaultCollaterals(vaultState: VaultState, slot: number): Promise<PubkeyHashMap<PublicKey, MarketOverview>> {
990
- return this._vaultClient.getVaultCollaterals(vaultState, slot);
987
+ async getVaultCollaterals(
988
+ vaultState: VaultState,
989
+ slot: number,
990
+ vaultReservesMap?: PubkeyHashMap<PublicKey, KaminoReserve>,
991
+ kaminoMarkets?: KaminoMarket[]
992
+ ): Promise<PubkeyHashMap<PublicKey, MarketOverview>> {
993
+ return this._vaultClient.getVaultCollaterals(vaultState, slot, vaultReservesMap, kaminoMarkets);
991
994
  }
992
995
 
993
996
  /**
@@ -1140,11 +1143,11 @@ const updateLendingMarketConfig = (
1140
1143
  market: LendingMarket,
1141
1144
  newMarket: LendingMarket
1142
1145
  ): { mode: number; value: Buffer }[] => {
1143
- const updateLendingMarketIxnsArgs: { mode: number; value: Buffer }[] = [];
1146
+ const updateLendingMarketIxsArgs: { mode: number; value: Buffer }[] = [];
1144
1147
  switch (key) {
1145
1148
  case 'lendingMarketOwner': {
1146
1149
  if (!market.lendingMarketOwner.equals(newMarket.lendingMarketOwner)) {
1147
- updateLendingMarketIxnsArgs.push({
1150
+ updateLendingMarketIxsArgs.push({
1148
1151
  mode: UpdateLendingMarketMode.UpdateOwner.discriminator,
1149
1152
  value: updateMarketConfigEncodedValue(
1150
1153
  UpdateLendingMarketMode.UpdateOwner.discriminator,
@@ -1156,7 +1159,7 @@ const updateLendingMarketConfig = (
1156
1159
  }
1157
1160
  case 'lendingMarketOwnerCached':
1158
1161
  if (!market.lendingMarketOwnerCached.equals(newMarket.lendingMarketOwnerCached)) {
1159
- updateLendingMarketIxnsArgs.push({
1162
+ updateLendingMarketIxsArgs.push({
1160
1163
  mode: UpdateLendingMarketMode.UpdateOwner.discriminator,
1161
1164
  value: updateMarketConfigEncodedValue(
1162
1165
  UpdateLendingMarketMode.UpdateOwner.discriminator,
@@ -1167,7 +1170,7 @@ const updateLendingMarketConfig = (
1167
1170
  break;
1168
1171
  case 'referralFeeBps':
1169
1172
  if (market.referralFeeBps !== newMarket.referralFeeBps) {
1170
- updateLendingMarketIxnsArgs.push({
1173
+ updateLendingMarketIxsArgs.push({
1171
1174
  mode: UpdateLendingMarketMode.UpdateReferralFeeBps.discriminator,
1172
1175
  value: updateMarketConfigEncodedValue(
1173
1176
  UpdateLendingMarketMode.UpdateReferralFeeBps.discriminator,
@@ -1178,7 +1181,7 @@ const updateLendingMarketConfig = (
1178
1181
  break;
1179
1182
  case 'emergencyMode':
1180
1183
  if (market.emergencyMode !== newMarket.emergencyMode) {
1181
- updateLendingMarketIxnsArgs.push({
1184
+ updateLendingMarketIxsArgs.push({
1182
1185
  mode: UpdateLendingMarketMode.UpdateEmergencyMode.discriminator,
1183
1186
  value: updateMarketConfigEncodedValue(
1184
1187
  UpdateLendingMarketMode.UpdateEmergencyMode.discriminator,
@@ -1189,7 +1192,7 @@ const updateLendingMarketConfig = (
1189
1192
  break;
1190
1193
  case 'autodeleverageEnabled':
1191
1194
  if (market.autodeleverageEnabled !== newMarket.autodeleverageEnabled) {
1192
- updateLendingMarketIxnsArgs.push({
1195
+ updateLendingMarketIxsArgs.push({
1193
1196
  mode: UpdateLendingMarketMode.UpdateAutodeleverageEnabled.discriminator,
1194
1197
  value: updateMarketConfigEncodedValue(
1195
1198
  UpdateLendingMarketMode.UpdateAutodeleverageEnabled.discriminator,
@@ -1200,7 +1203,7 @@ const updateLendingMarketConfig = (
1200
1203
  break;
1201
1204
  case 'borrowDisabled':
1202
1205
  if (market.borrowDisabled !== newMarket.borrowDisabled) {
1203
- updateLendingMarketIxnsArgs.push({
1206
+ updateLendingMarketIxsArgs.push({
1204
1207
  mode: UpdateLendingMarketMode.UpdateBorrowingDisabled.discriminator,
1205
1208
  value: updateMarketConfigEncodedValue(
1206
1209
  UpdateLendingMarketMode.UpdateBorrowingDisabled.discriminator,
@@ -1211,7 +1214,7 @@ const updateLendingMarketConfig = (
1211
1214
  break;
1212
1215
  case 'priceRefreshTriggerToMaxAgePct':
1213
1216
  if (market.priceRefreshTriggerToMaxAgePct !== newMarket.priceRefreshTriggerToMaxAgePct) {
1214
- updateLendingMarketIxnsArgs.push({
1217
+ updateLendingMarketIxsArgs.push({
1215
1218
  mode: UpdateLendingMarketMode.UpdatePriceRefreshTriggerToMaxAgePct.discriminator,
1216
1219
  value: updateMarketConfigEncodedValue(
1217
1220
  UpdateLendingMarketMode.UpdatePriceRefreshTriggerToMaxAgePct.discriminator,
@@ -1222,7 +1225,7 @@ const updateLendingMarketConfig = (
1222
1225
  break;
1223
1226
  case 'liquidationMaxDebtCloseFactorPct':
1224
1227
  if (market.liquidationMaxDebtCloseFactorPct !== newMarket.liquidationMaxDebtCloseFactorPct) {
1225
- updateLendingMarketIxnsArgs.push({
1228
+ updateLendingMarketIxsArgs.push({
1226
1229
  mode: UpdateLendingMarketMode.UpdateLiquidationCloseFactor.discriminator,
1227
1230
  value: updateMarketConfigEncodedValue(
1228
1231
  UpdateLendingMarketMode.UpdateLiquidationCloseFactor.discriminator,
@@ -1233,7 +1236,7 @@ const updateLendingMarketConfig = (
1233
1236
  break;
1234
1237
  case 'insolvencyRiskUnhealthyLtvPct':
1235
1238
  if (market.insolvencyRiskUnhealthyLtvPct !== newMarket.insolvencyRiskUnhealthyLtvPct) {
1236
- updateLendingMarketIxnsArgs.push({
1239
+ updateLendingMarketIxsArgs.push({
1237
1240
  mode: UpdateLendingMarketMode.UpdateInsolvencyRiskLtv.discriminator,
1238
1241
  value: updateMarketConfigEncodedValue(
1239
1242
  UpdateLendingMarketMode.UpdateInsolvencyRiskLtv.discriminator,
@@ -1244,7 +1247,7 @@ const updateLendingMarketConfig = (
1244
1247
  break;
1245
1248
  case 'minFullLiquidationValueThreshold':
1246
1249
  if (!market.minFullLiquidationValueThreshold.eq(newMarket.minFullLiquidationValueThreshold)) {
1247
- updateLendingMarketIxnsArgs.push({
1250
+ updateLendingMarketIxsArgs.push({
1248
1251
  mode: UpdateLendingMarketMode.UpdateMinFullLiquidationThreshold.discriminator,
1249
1252
  value: updateMarketConfigEncodedValue(
1250
1253
  UpdateLendingMarketMode.UpdateMinFullLiquidationThreshold.discriminator,
@@ -1255,7 +1258,7 @@ const updateLendingMarketConfig = (
1255
1258
  break;
1256
1259
  case 'maxLiquidatableDebtMarketValueAtOnce':
1257
1260
  if (!market.maxLiquidatableDebtMarketValueAtOnce.eq(newMarket.maxLiquidatableDebtMarketValueAtOnce)) {
1258
- updateLendingMarketIxnsArgs.push({
1261
+ updateLendingMarketIxsArgs.push({
1259
1262
  mode: UpdateLendingMarketMode.UpdateLiquidationMaxValue.discriminator,
1260
1263
  value: updateMarketConfigEncodedValue(
1261
1264
  UpdateLendingMarketMode.UpdateLiquidationMaxValue.discriminator,
@@ -1266,7 +1269,7 @@ const updateLendingMarketConfig = (
1266
1269
  break;
1267
1270
  case 'globalAllowedBorrowValue':
1268
1271
  if (!market.globalAllowedBorrowValue.eq(newMarket.globalAllowedBorrowValue)) {
1269
- updateLendingMarketIxnsArgs.push({
1272
+ updateLendingMarketIxsArgs.push({
1270
1273
  mode: UpdateLendingMarketMode.UpdateGlobalAllowedBorrow.discriminator,
1271
1274
  value: updateMarketConfigEncodedValue(
1272
1275
  UpdateLendingMarketMode.UpdateGlobalAllowedBorrow.discriminator,
@@ -1277,7 +1280,7 @@ const updateLendingMarketConfig = (
1277
1280
  break;
1278
1281
  case 'riskCouncil':
1279
1282
  if (!market.riskCouncil.equals(newMarket.riskCouncil)) {
1280
- updateLendingMarketIxnsArgs.push({
1283
+ updateLendingMarketIxsArgs.push({
1281
1284
  mode: UpdateLendingMarketMode.UpdateRiskCouncil.discriminator,
1282
1285
  value: updateMarketConfigEncodedValue(
1283
1286
  UpdateLendingMarketMode.UpdateRiskCouncil.discriminator,
@@ -1298,7 +1301,7 @@ const updateLendingMarketConfig = (
1298
1301
  market.elevationGroups[i].maxReservesAsCollateral !== newMarket.elevationGroups[i].maxReservesAsCollateral ||
1299
1302
  !market.elevationGroups[i].debtReserve.equals(newMarket.elevationGroups[i].debtReserve)
1300
1303
  ) {
1301
- updateLendingMarketIxnsArgs.push({
1304
+ updateLendingMarketIxsArgs.push({
1302
1305
  mode: UpdateLendingMarketMode.UpdateElevationGroup.discriminator,
1303
1306
  value: updateMarketConfigEncodedValue(
1304
1307
  UpdateLendingMarketMode.UpdateElevationGroup.discriminator,
@@ -1314,7 +1317,7 @@ const updateLendingMarketConfig = (
1314
1317
  break;
1315
1318
  case 'minNetValueInObligationSf':
1316
1319
  if (!market.minNetValueInObligationSf.eq(newMarket.minNetValueInObligationSf)) {
1317
- updateLendingMarketIxnsArgs.push({
1320
+ updateLendingMarketIxsArgs.push({
1318
1321
  mode: UpdateLendingMarketMode.UpdateMinNetValueObligationPostAction.discriminator,
1319
1322
  value: updateMarketConfigEncodedValue(
1320
1323
  UpdateLendingMarketMode.UpdateMinNetValueObligationPostAction.discriminator,
@@ -1325,7 +1328,7 @@ const updateLendingMarketConfig = (
1325
1328
  break;
1326
1329
  case 'minValueSkipLiquidationBfChecks':
1327
1330
  if (!market.minValueSkipLiquidationBfChecks.eq(newMarket.minValueSkipLiquidationBfChecks)) {
1328
- updateLendingMarketIxnsArgs.push({
1331
+ updateLendingMarketIxsArgs.push({
1329
1332
  mode: UpdateLendingMarketMode.UpdateMinValueBfSkipPriorityLiqCheck.discriminator,
1330
1333
  value: updateMarketConfigEncodedValue(
1331
1334
  UpdateLendingMarketMode.UpdateMinValueBfSkipPriorityLiqCheck.discriminator,
@@ -1336,7 +1339,7 @@ const updateLendingMarketConfig = (
1336
1339
  break;
1337
1340
  case 'minValueSkipLiquidationLtvChecks':
1338
1341
  if (!market.minValueSkipLiquidationLtvChecks.eq(newMarket.minValueSkipLiquidationLtvChecks)) {
1339
- updateLendingMarketIxnsArgs.push({
1342
+ updateLendingMarketIxsArgs.push({
1340
1343
  mode: UpdateLendingMarketMode.UpdateMinValueLtvSkipPriorityLiqCheck.discriminator,
1341
1344
  value: updateMarketConfigEncodedValue(
1342
1345
  UpdateLendingMarketMode.UpdateMinValueLtvSkipPriorityLiqCheck.discriminator,
@@ -1349,7 +1352,7 @@ const updateLendingMarketConfig = (
1349
1352
  if (
1350
1353
  market.individualAutodeleverageMarginCallPeriodSecs !== newMarket.individualAutodeleverageMarginCallPeriodSecs
1351
1354
  ) {
1352
- updateLendingMarketIxnsArgs.push({
1355
+ updateLendingMarketIxsArgs.push({
1353
1356
  mode: UpdateLendingMarketMode.UpdateIndividualAutodeleverageMarginCallPeriodSecs.discriminator,
1354
1357
  value: updateMarketConfigEncodedValue(
1355
1358
  UpdateLendingMarketMode.UpdateIndividualAutodeleverageMarginCallPeriodSecs.discriminator,
@@ -1360,7 +1363,7 @@ const updateLendingMarketConfig = (
1360
1363
  break;
1361
1364
  case 'name':
1362
1365
  if (!sameLengthArrayEquals(market.name, newMarket.name)) {
1363
- updateLendingMarketIxnsArgs.push({
1366
+ updateLendingMarketIxsArgs.push({
1364
1367
  mode: UpdateLendingMarketMode.UpdateName.discriminator,
1365
1368
  value: updateMarketConfigEncodedValue(UpdateLendingMarketMode.UpdateName.discriminator, newMarket.name),
1366
1369
  });
@@ -1368,7 +1371,7 @@ const updateLendingMarketConfig = (
1368
1371
  break;
1369
1372
  case 'minInitialDepositAmount':
1370
1373
  if (!market.minInitialDepositAmount.eq(newMarket.minInitialDepositAmount)) {
1371
- updateLendingMarketIxnsArgs.push({
1374
+ updateLendingMarketIxsArgs.push({
1372
1375
  mode: UpdateLendingMarketMode.UpdateInitialDepositAmount.discriminator,
1373
1376
  value: updateMarketConfigEncodedValue(
1374
1377
  UpdateLendingMarketMode.UpdateInitialDepositAmount.discriminator,
@@ -1379,7 +1382,7 @@ const updateLendingMarketConfig = (
1379
1382
  break;
1380
1383
  case 'obligationOrdersEnabled':
1381
1384
  if (market.obligationOrdersEnabled !== newMarket.obligationOrdersEnabled) {
1382
- updateLendingMarketIxnsArgs.push({
1385
+ updateLendingMarketIxsArgs.push({
1383
1386
  mode: UpdateLendingMarketMode.UpdateObligationOrdersEnabled.discriminator,
1384
1387
  value: updateMarketConfigEncodedValue(
1385
1388
  UpdateLendingMarketMode.UpdateObligationOrdersEnabled.discriminator,
@@ -1391,7 +1394,7 @@ const updateLendingMarketConfig = (
1391
1394
  default:
1392
1395
  assertNever(key);
1393
1396
  }
1394
- return updateLendingMarketIxnsArgs;
1397
+ return updateLendingMarketIxsArgs;
1395
1398
  };
1396
1399
 
1397
1400
  function parseForChangesMarketConfigAndGetIxs(
@@ -1400,19 +1403,19 @@ function parseForChangesMarketConfigAndGetIxs(
1400
1403
  programId: PublicKey
1401
1404
  ): TransactionInstruction[] {
1402
1405
  const market = marketWithAddress.state;
1403
- const updateLendingMarketIxnsArgs: { mode: number; value: Buffer }[] = [];
1406
+ const updateLendingMarketIxsArgs: { mode: number; value: Buffer }[] = [];
1404
1407
 
1405
1408
  for (const key in market.toJSON()) {
1406
1409
  if (isExcludedLendingMarketKey(key)) {
1407
1410
  continue;
1408
1411
  }
1409
- updateLendingMarketIxnsArgs.push(...updateLendingMarketConfig(key as LendingMarketKey, market, newMarket));
1412
+ updateLendingMarketIxsArgs.push(...updateLendingMarketConfig(key as LendingMarketKey, market, newMarket));
1410
1413
  }
1411
1414
 
1412
- const ixns: TransactionInstruction[] = [];
1415
+ const ixs: TransactionInstruction[] = [];
1413
1416
 
1414
- updateLendingMarketIxnsArgs.forEach((updateLendingMarketConfigArgs) => {
1415
- ixns.push(
1417
+ updateLendingMarketIxsArgs.forEach((updateLendingMarketConfigArgs) => {
1418
+ ixs.push(
1416
1419
  updateMarketConfigIx(
1417
1420
  marketWithAddress,
1418
1421
  updateLendingMarketConfigArgs.mode,
@@ -1422,7 +1425,7 @@ function parseForChangesMarketConfigAndGetIxs(
1422
1425
  );
1423
1426
  });
1424
1427
 
1425
- return ixns;
1428
+ return ixs;
1426
1429
  }
1427
1430
 
1428
1431
  function updateMarketConfigEncodedValue(
@@ -5,7 +5,7 @@ import { orThrow, roundNearest } from './utils';
5
5
  import Decimal from 'decimal.js';
6
6
  import BN from 'bn.js';
7
7
  import { KaminoObligation, Position } from './obligation';
8
- import { TokenAmount } from './types';
8
+ import { TokenAmount } from './shared';
9
9
  import { ONE_HUNDRED_PCT_IN_BPS } from '../utils';
10
10
  import { getSingleElement } from '../utils/validations';
11
11