@kamino-finance/klend-sdk 7.1.1 → 7.1.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 (150) hide show
  1. package/dist/@codegen/unstaking_pool/accounts/PoolState.d.ts +53 -0
  2. package/dist/@codegen/unstaking_pool/accounts/PoolState.d.ts.map +1 -0
  3. package/dist/@codegen/unstaking_pool/accounts/PoolState.js +167 -0
  4. package/dist/@codegen/unstaking_pool/accounts/PoolState.js.map +1 -0
  5. package/dist/@codegen/unstaking_pool/accounts/UnstakeTicket.d.ts +41 -0
  6. package/dist/@codegen/unstaking_pool/accounts/UnstakeTicket.d.ts.map +1 -0
  7. package/dist/@codegen/unstaking_pool/accounts/UnstakeTicket.js +143 -0
  8. package/dist/@codegen/unstaking_pool/accounts/UnstakeTicket.js.map +1 -0
  9. package/dist/@codegen/unstaking_pool/accounts/index.d.ts +5 -0
  10. package/dist/@codegen/unstaking_pool/accounts/index.d.ts.map +1 -0
  11. package/dist/@codegen/unstaking_pool/accounts/index.js +8 -0
  12. package/dist/@codegen/unstaking_pool/accounts/index.js.map +1 -0
  13. package/dist/@codegen/unstaking_pool/errors/anchor.d.ts +435 -0
  14. package/dist/@codegen/unstaking_pool/errors/anchor.d.ts.map +1 -0
  15. package/dist/@codegen/unstaking_pool/errors/anchor.js +767 -0
  16. package/dist/@codegen/unstaking_pool/errors/anchor.js.map +1 -0
  17. package/dist/@codegen/unstaking_pool/errors/custom.d.ts +259 -0
  18. package/dist/@codegen/unstaking_pool/errors/custom.d.ts.map +1 -0
  19. package/dist/@codegen/unstaking_pool/errors/custom.js +458 -0
  20. package/dist/@codegen/unstaking_pool/errors/custom.js.map +1 -0
  21. package/dist/@codegen/unstaking_pool/errors/index.d.ts +6 -0
  22. package/dist/@codegen/unstaking_pool/errors/index.d.ts.map +1 -0
  23. package/dist/@codegen/unstaking_pool/errors/index.js +86 -0
  24. package/dist/@codegen/unstaking_pool/errors/index.js.map +1 -0
  25. package/dist/@codegen/unstaking_pool/instructions/burn.d.ts +21 -0
  26. package/dist/@codegen/unstaking_pool/instructions/burn.d.ts.map +1 -0
  27. package/dist/@codegen/unstaking_pool/instructions/burn.js +67 -0
  28. package/dist/@codegen/unstaking_pool/instructions/burn.js.map +1 -0
  29. package/dist/@codegen/unstaking_pool/instructions/changeTicketAuthority.d.ts +8 -0
  30. package/dist/@codegen/unstaking_pool/instructions/changeTicketAuthority.d.ts.map +1 -0
  31. package/dist/@codegen/unstaking_pool/instructions/changeTicketAuthority.js +16 -0
  32. package/dist/@codegen/unstaking_pool/instructions/changeTicketAuthority.js.map +1 -0
  33. package/dist/@codegen/unstaking_pool/instructions/collect.d.ts +16 -0
  34. package/dist/@codegen/unstaking_pool/instructions/collect.d.ts.map +1 -0
  35. package/dist/@codegen/unstaking_pool/instructions/collect.js +24 -0
  36. package/dist/@codegen/unstaking_pool/instructions/collect.js.map +1 -0
  37. package/dist/@codegen/unstaking_pool/instructions/index.d.ts +17 -0
  38. package/dist/@codegen/unstaking_pool/instructions/index.d.ts.map +1 -0
  39. package/dist/@codegen/unstaking_pool/instructions/index.js +20 -0
  40. package/dist/@codegen/unstaking_pool/instructions/index.js.map +1 -0
  41. package/dist/@codegen/unstaking_pool/instructions/initializePool.d.ts +14 -0
  42. package/dist/@codegen/unstaking_pool/instructions/initializePool.d.ts.map +1 -0
  43. package/dist/@codegen/unstaking_pool/instructions/initializePool.js +22 -0
  44. package/dist/@codegen/unstaking_pool/instructions/initializePool.js.map +1 -0
  45. package/dist/@codegen/unstaking_pool/instructions/mint.d.ts +24 -0
  46. package/dist/@codegen/unstaking_pool/instructions/mint.d.ts.map +1 -0
  47. package/dist/@codegen/unstaking_pool/instructions/mint.js +74 -0
  48. package/dist/@codegen/unstaking_pool/instructions/mint.js.map +1 -0
  49. package/dist/@codegen/unstaking_pool/instructions/splitTicket.d.ts +15 -0
  50. package/dist/@codegen/unstaking_pool/instructions/splitTicket.d.ts.map +1 -0
  51. package/dist/@codegen/unstaking_pool/instructions/splitTicket.js +62 -0
  52. package/dist/@codegen/unstaking_pool/instructions/splitTicket.js.map +1 -0
  53. package/dist/@codegen/unstaking_pool/instructions/updateAdmin.d.ts +7 -0
  54. package/dist/@codegen/unstaking_pool/instructions/updateAdmin.d.ts.map +1 -0
  55. package/dist/@codegen/unstaking_pool/instructions/updateAdmin.js +19 -0
  56. package/dist/@codegen/unstaking_pool/instructions/updateAdmin.js.map +1 -0
  57. package/dist/@codegen/unstaking_pool/instructions/updatePoolConfig.d.ts +13 -0
  58. package/dist/@codegen/unstaking_pool/instructions/updatePoolConfig.d.ts.map +1 -0
  59. package/dist/@codegen/unstaking_pool/instructions/updatePoolConfig.js +60 -0
  60. package/dist/@codegen/unstaking_pool/instructions/updatePoolConfig.js.map +1 -0
  61. package/dist/@codegen/unstaking_pool/programId.d.ts +4 -0
  62. package/dist/@codegen/unstaking_pool/programId.d.ts.map +1 -0
  63. package/dist/@codegen/unstaking_pool/programId.js +9 -0
  64. package/dist/@codegen/unstaking_pool/programId.js.map +1 -0
  65. package/dist/@codegen/unstaking_pool/types/PoolConfigField.d.ts +45 -0
  66. package/dist/@codegen/unstaking_pool/types/PoolConfigField.d.ts.map +1 -0
  67. package/dist/@codegen/unstaking_pool/types/PoolConfigField.js +132 -0
  68. package/dist/@codegen/unstaking_pool/types/PoolConfigField.js.map +1 -0
  69. package/dist/@codegen/unstaking_pool/types/index.d.ts +5 -0
  70. package/dist/@codegen/unstaking_pool/types/index.d.ts.map +1 -0
  71. package/dist/@codegen/unstaking_pool/types/index.js +39 -0
  72. package/dist/@codegen/unstaking_pool/types/index.js.map +1 -0
  73. package/dist/@codegen/unstaking_pool/utils/borshAddress.d.ts +4 -0
  74. package/dist/@codegen/unstaking_pool/utils/borshAddress.d.ts.map +1 -0
  75. package/dist/@codegen/unstaking_pool/utils/borshAddress.js +30 -0
  76. package/dist/@codegen/unstaking_pool/utils/borshAddress.js.map +1 -0
  77. package/dist/@codegen/unstaking_pool/utils/index.d.ts +2 -0
  78. package/dist/@codegen/unstaking_pool/utils/index.d.ts.map +1 -0
  79. package/dist/@codegen/unstaking_pool/utils/index.js +18 -0
  80. package/dist/@codegen/unstaking_pool/utils/index.js.map +1 -0
  81. package/dist/classes/action.d.ts.map +1 -1
  82. package/dist/classes/action.js +5 -5
  83. package/dist/classes/action.js.map +1 -1
  84. package/dist/classes/index.d.ts +5 -0
  85. package/dist/classes/index.d.ts.map +1 -1
  86. package/dist/classes/index.js +5 -0
  87. package/dist/classes/index.js.map +1 -1
  88. package/dist/classes/manager.d.ts.map +1 -1
  89. package/dist/classes/manager.js +2 -3
  90. package/dist/classes/manager.js.map +1 -1
  91. package/dist/classes/stakePool.d.ts +8 -0
  92. package/dist/classes/stakePool.d.ts.map +1 -0
  93. package/dist/classes/stakePool.js +18 -0
  94. package/dist/classes/stakePool.js.map +1 -0
  95. package/dist/classes/standardStakePool.d.ts +76 -0
  96. package/dist/classes/standardStakePool.d.ts.map +1 -0
  97. package/dist/classes/standardStakePool.js +400 -0
  98. package/dist/classes/standardStakePool.js.map +1 -0
  99. package/dist/classes/unstakingPool.d.ts +115 -0
  100. package/dist/classes/unstakingPool.d.ts.map +1 -0
  101. package/dist/classes/unstakingPool.js +372 -0
  102. package/dist/classes/unstakingPool.js.map +1 -0
  103. package/dist/classes/unstakingPoolTypes.d.ts +10 -0
  104. package/dist/classes/unstakingPoolTypes.d.ts.map +1 -0
  105. package/dist/classes/unstakingPoolTypes.js +3 -0
  106. package/dist/classes/unstakingPoolTypes.js.map +1 -0
  107. package/dist/classes/vault.d.ts +0 -9
  108. package/dist/classes/vault.d.ts.map +1 -1
  109. package/dist/classes/vault.js +6 -41
  110. package/dist/classes/vault.js.map +1 -1
  111. package/dist/lib.d.ts +1 -0
  112. package/dist/lib.d.ts.map +1 -1
  113. package/dist/lib.js +3 -1
  114. package/dist/lib.js.map +1 -1
  115. package/dist/utils/lookupTable.d.ts +9 -0
  116. package/dist/utils/lookupTable.d.ts.map +1 -1
  117. package/dist/utils/lookupTable.js +37 -0
  118. package/dist/utils/lookupTable.js.map +1 -1
  119. package/package.json +3 -1
  120. package/src/@codegen/unstaking_pool/accounts/PoolState.ts +188 -0
  121. package/src/@codegen/unstaking_pool/accounts/UnstakeTicket.ts +156 -0
  122. package/src/@codegen/unstaking_pool/accounts/index.ts +4 -0
  123. package/src/@codegen/unstaking_pool/errors/anchor.ts +773 -0
  124. package/src/@codegen/unstaking_pool/errors/custom.ts +477 -0
  125. package/src/@codegen/unstaking_pool/errors/index.ts +68 -0
  126. package/src/@codegen/unstaking_pool/instructions/burn.ts +70 -0
  127. package/src/@codegen/unstaking_pool/instructions/changeTicketAuthority.ts +37 -0
  128. package/src/@codegen/unstaking_pool/instructions/collect.ts +53 -0
  129. package/src/@codegen/unstaking_pool/instructions/index.ts +19 -0
  130. package/src/@codegen/unstaking_pool/instructions/initializePool.ts +49 -0
  131. package/src/@codegen/unstaking_pool/instructions/mint.ts +80 -0
  132. package/src/@codegen/unstaking_pool/instructions/splitTicket.ts +59 -0
  133. package/src/@codegen/unstaking_pool/instructions/updateAdmin.ts +39 -0
  134. package/src/@codegen/unstaking_pool/instructions/updatePoolConfig.ts +58 -0
  135. package/src/@codegen/unstaking_pool/programId.ts +9 -0
  136. package/src/@codegen/unstaking_pool/types/PoolConfigField.ts +121 -0
  137. package/src/@codegen/unstaking_pool/types/index.ts +12 -0
  138. package/src/@codegen/unstaking_pool/utils/borshAddress.ts +43 -0
  139. package/src/@codegen/unstaking_pool/utils/index.ts +1 -0
  140. package/src/classes/action.ts +10 -5
  141. package/src/classes/index.ts +5 -0
  142. package/src/classes/manager.ts +3 -4
  143. package/src/classes/stakePool.ts +21 -0
  144. package/src/classes/standardStakePool.ts +487 -0
  145. package/src/classes/unstakingPool.ts +504 -0
  146. package/src/classes/unstakingPoolTypes.ts +12 -0
  147. package/src/classes/vault.ts +43 -56
  148. package/src/idl/unstaking_pool.json +662 -0
  149. package/src/lib.ts +1 -0
  150. package/src/utils/lookupTable.ts +48 -0
@@ -7,6 +7,8 @@ import {
7
7
  getDeactivateLookupTableInstruction,
8
8
  getExtendLookupTableInstruction,
9
9
  } from '@solana-program/address-lookup-table';
10
+ import { DEFAULT_PUBLIC_KEY } from './pubkey';
11
+ import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
10
12
 
11
13
  export async function printAddressLookupTable(rpc: Rpc<GetAccountInfoApi>, lookupTablePk: Address): Promise<void> {
12
14
  const lookupTableAccount = (await fetchAddressLookupTable(rpc, lookupTablePk)).data;
@@ -114,3 +116,49 @@ export async function getAccountsInLut(rpc: Rpc<GetAccountInfoApi>, lookupTable:
114
116
  const lutState = await fetchAddressLookupTable(rpc, lookupTable);
115
117
  return lutState.data.addresses;
116
118
  }
119
+ /**
120
+ * This method inserts the missing keys from the provided keys into an existent lookup table
121
+ * @param authority - payer wallet pubkey
122
+ * @param lookupTable - lookup table to insert the keys into
123
+ * @param keys - keys to insert into the lookup table
124
+ * @param [accountsInLut] - the existent accounts in the lookup table. Optional. If provided, the function will not fetch the accounts in the lookup table
125
+ * @returns - an array of instructions to insert the missing keys into the lookup table
126
+ */
127
+ export async function insertIntoLookupTableIxs(
128
+ rpc: Rpc<GetAccountInfoApi>,
129
+ authority: TransactionSigner,
130
+ lookupTable: Address,
131
+ keys: Address[],
132
+ accountsInLut?: Address[]
133
+ ): Promise<Instruction[]> {
134
+ let lutContentsList = accountsInLut;
135
+ if (!accountsInLut) {
136
+ lutContentsList = await getAccountsInLut(rpc, lookupTable);
137
+ } else {
138
+ lutContentsList = accountsInLut;
139
+ }
140
+
141
+ const lutContents = new Set<Address>(lutContentsList);
142
+
143
+ const missingAccounts = keys.filter((key) => !lutContents.has(key) && key !== DEFAULT_PUBLIC_KEY);
144
+ // deduplicate missing accounts and remove default accounts and convert it back to an array
145
+ const missingAccountsList = [...new Set<Address>(missingAccounts)];
146
+
147
+ const chunkSize = 20;
148
+ const ixs: Instruction[] = [];
149
+
150
+ for (let i = 0; i < missingAccountsList.length; i += chunkSize) {
151
+ const chunk = missingAccountsList.slice(i, i + chunkSize);
152
+ ixs.push(
153
+ getExtendLookupTableInstruction({
154
+ payer: authority,
155
+ authority,
156
+ address: lookupTable,
157
+ systemProgram: SYSTEM_PROGRAM_ADDRESS,
158
+ addresses: chunk,
159
+ })
160
+ );
161
+ }
162
+
163
+ return ixs;
164
+ }