@kamino-finance/klend-sdk 6.0.5 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/@codegen/kvault/accounts/Reserve.js +1 -1
- package/dist/@codegen/kvault/accounts/VaultState.d.ts +6 -6
- package/dist/@codegen/kvault/accounts/VaultState.d.ts.map +1 -1
- package/dist/@codegen/kvault/accounts/VaultState.js +12 -12
- package/dist/@codegen/kvault/accounts/VaultState.js.map +1 -1
- package/dist/@codegen/kvault/errors/custom.d.ts +9 -1
- package/dist/@codegen/kvault/errors/custom.d.ts.map +1 -1
- package/dist/@codegen/kvault/errors/custom.js +15 -1
- package/dist/@codegen/kvault/errors/custom.js.map +1 -1
- package/dist/@codegen/kvault/types/VaultConfigField.d.ts +26 -0
- package/dist/@codegen/kvault/types/VaultConfigField.d.ts.map +1 -1
- package/dist/@codegen/kvault/types/VaultConfigField.js +49 -1
- package/dist/@codegen/kvault/types/VaultConfigField.js.map +1 -1
- package/dist/@codegen/kvault/types/index.d.ts +2 -2
- package/dist/@codegen/kvault/types/index.d.ts.map +1 -1
- package/dist/@codegen/kvault/types/index.js.map +1 -1
- package/dist/classes/action.d.ts +1 -1
- package/dist/classes/action.d.ts.map +1 -1
- package/dist/classes/action.js +26 -11
- package/dist/classes/action.js.map +1 -1
- package/dist/classes/manager.d.ts +25 -6
- package/dist/classes/manager.d.ts.map +1 -1
- package/dist/classes/manager.js +59 -27
- package/dist/classes/manager.js.map +1 -1
- package/dist/classes/market.d.ts +7 -2
- package/dist/classes/market.d.ts.map +1 -1
- package/dist/classes/market.js +12 -6
- package/dist/classes/market.js.map +1 -1
- package/dist/classes/vault.d.ts +22 -3
- package/dist/classes/vault.d.ts.map +1 -1
- package/dist/classes/vault.js +73 -40
- package/dist/classes/vault.js.map +1 -1
- package/dist/classes/vault_types.d.ts +9 -1
- package/dist/classes/vault_types.d.ts.map +1 -1
- package/dist/client/commands/borrow.d.ts.map +1 -1
- package/dist/client/commands/borrow.js +2 -1
- package/dist/client/commands/borrow.js.map +1 -1
- package/dist/client/commands/deposit.d.ts.map +1 -1
- package/dist/client/commands/deposit.js +2 -1
- package/dist/client/commands/deposit.js.map +1 -1
- package/dist/client/commands/repay.d.ts.map +1 -1
- package/dist/client/commands/repay.js +2 -1
- package/dist/client/commands/repay.js.map +1 -1
- package/dist/client/commands/withdraw.d.ts.map +1 -1
- package/dist/client/commands/withdraw.js +2 -1
- package/dist/client/commands/withdraw.js.map +1 -1
- package/dist/leverage/operations.d.ts.map +1 -1
- package/dist/leverage/operations.js +8 -5
- package/dist/leverage/operations.js.map +1 -1
- package/dist/manager/client_kamino_manager.js +10 -3
- package/dist/manager/client_kamino_manager.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/managerTypes.d.ts +2 -3
- package/dist/utils/managerTypes.d.ts.map +1 -1
- package/dist/utils/managerTypes.js +37 -34
- package/dist/utils/managerTypes.js.map +1 -1
- package/dist/utils/map.d.ts +2 -0
- package/dist/utils/map.d.ts.map +1 -0
- package/dist/utils/map.js +13 -0
- package/dist/utils/map.js.map +1 -0
- package/dist/utils/oracle.d.ts +2 -1
- package/dist/utils/oracle.d.ts.map +1 -1
- package/dist/utils/oracle.js +4 -4
- package/dist/utils/oracle.js.map +1 -1
- package/dist/utils/vault.js +2 -2
- package/dist/utils/vault.js.map +1 -1
- package/dist/utils/vaultAllocation.d.ts +21 -0
- package/dist/utils/vaultAllocation.d.ts.map +1 -0
- package/dist/utils/vaultAllocation.js +71 -0
- package/dist/utils/vaultAllocation.js.map +1 -0
- package/package.json +2 -2
- package/src/@codegen/kvault/accounts/Reserve.ts +1 -1
- package/src/@codegen/kvault/accounts/VaultState.ts +16 -16
- package/src/@codegen/kvault/errors/custom.ts +14 -0
- package/src/@codegen/kvault/types/VaultConfigField.ts +60 -0
- package/src/@codegen/kvault/types/index.ts +4 -0
- package/src/classes/action.ts +26 -11
- package/src/classes/manager.ts +92 -30
- package/src/classes/market.ts +15 -9
- package/src/classes/vault.ts +125 -42
- package/src/classes/vault_types.ts +11 -1
- package/src/client/commands/borrow.ts +2 -1
- package/src/client/commands/deposit.ts +2 -1
- package/src/client/commands/repay.ts +2 -1
- package/src/client/commands/withdraw.ts +2 -1
- package/src/idl/kvault.json +34 -12
- package/src/leverage/operations.ts +9 -10
- package/src/manager/client_kamino_manager.ts +15 -3
- package/src/utils/index.ts +1 -0
- package/src/utils/managerTypes.ts +29 -28
- package/src/utils/map.ts +8 -0
- package/src/utils/oracle.ts +4 -3
- package/src/utils/vault.ts +2 -2
- package/src/utils/vaultAllocation.ts +93 -0
package/dist/classes/vault.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
import BN from 'bn.js';
|
|
1
2
|
import { Address, GetAccountInfoApi, IAccountMeta, IInstruction, ProgramDerivedAddress, Rpc, Slot, SolanaRpcApi, TransactionSigner } from '@solana/kit';
|
|
2
3
|
import { KaminoMarket, KaminoReserve, Reserve } from '../lib';
|
|
3
4
|
import { VaultConfigFieldKind } from '../@codegen/kvault/types';
|
|
4
5
|
import { VaultState } from '../@codegen/kvault/accounts';
|
|
5
6
|
import Decimal from 'decimal.js';
|
|
6
7
|
import { ReserveWithAddress } from './reserve';
|
|
7
|
-
import { AcceptVaultOwnershipIxs, APYs, DepositIxs, InitVaultIxs, ReserveAllocationOverview, SyncVaultLUTIxs, UpdateReserveAllocationIxs, UpdateVaultConfigIxs, UserSharesForVault, WithdrawAndBlockReserveIxs, WithdrawIxs } from './vault_types';
|
|
8
|
+
import { AcceptVaultOwnershipIxs, APYs, DepositIxs, DisinvestAllReservesIxs, InitVaultIxs, ReserveAllocationOverview, SyncVaultLUTIxs, UpdateReserveAllocationIxs, UpdateVaultConfigIxs, UserSharesForVault, VaultComputedAllocation, WithdrawAndBlockReserveIxs, WithdrawIxs } from './vault_types';
|
|
8
9
|
import { FarmIncentives, FarmState } from '@kamino-finance/farms-sdk/dist';
|
|
9
10
|
export declare const kaminoVaultId: Address<"KvauGMspG5k6rtzrqqn7WNn3oZdyKqLKwK2XWQ8FLjd">;
|
|
10
11
|
export declare const kaminoVaultStagingId: Address<"stKvQfwRsQiKnLtMNVLHKS3exFJmZFsgfzBPWHECUYK">;
|
|
@@ -60,6 +61,15 @@ export declare class KaminoVaultClient {
|
|
|
60
61
|
* @returns - a struct with an instruction to update the reserve allocation and an optional list of instructions to update the lookup table for the allocation changes
|
|
61
62
|
*/
|
|
62
63
|
updateReserveAllocationIxs(vault: KaminoVault, reserveAllocationConfig: ReserveAllocationConfig, vaultAdminAuthority?: TransactionSigner): Promise<UpdateReserveAllocationIxs>;
|
|
64
|
+
/**
|
|
65
|
+
* This method updates the unallocated weight and cap of a vault (both are optional, if not provided the current values will be used)
|
|
66
|
+
* @param vault - the vault to update the unallocated weight and cap for
|
|
67
|
+
* @param [vaultAdminAuthority] - vault admin - a noop vaultAdminAuthority is provided when absent for multisigs
|
|
68
|
+
* @param [unallocatedWeight] - the new unallocated weight to set. If not provided, the current unallocated weight will be used
|
|
69
|
+
* @param [unallocatedCap] - the new unallocated cap to set. If not provided, the current unallocated cap will be used
|
|
70
|
+
* @returns - a list of instructions to update the unallocated weight and cap
|
|
71
|
+
*/
|
|
72
|
+
updateVaultUnallocatedWeightAndCapIxs(vault: KaminoVault, vaultAdminAuthority?: TransactionSigner, unallocatedWeight?: BN, unallocatedCap?: BN): Promise<IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[]>;
|
|
63
73
|
/**
|
|
64
74
|
* This method withdraws all the funds from a reserve and blocks it from being invested by setting its weight and ctoken allocation to 0
|
|
65
75
|
* @param vault - the vault to withdraw the funds from
|
|
@@ -73,9 +83,17 @@ export declare class KaminoVaultClient {
|
|
|
73
83
|
* @param vault - the vault to withdraw the invested funds from
|
|
74
84
|
* @param [vaultReservesMap] - optional parameter to pass a map of the vault reserves. If not provided, the reserves will be loaded from the vault
|
|
75
85
|
* @param [payer] - optional parameter to pass a different payer for the transaction. If not provided, the admin of the vault will be used; this is the payer for the invest ixs and it should have an ATA and some lamports (2x no_of_reserves) of the token vault
|
|
76
|
-
* @returns - a struct with an instruction to update the reserve allocation and an
|
|
86
|
+
* @returns - a struct with an instruction to update the reserve allocations (set weight and ctoken allocation to 0) and an a list of instructions to disinvest the funds in the reserves
|
|
77
87
|
*/
|
|
78
88
|
withdrawEverythingFromAllReservesAndBlockInvest(vault: KaminoVault, vaultReservesMap?: Map<Address, KaminoReserve>, payer?: TransactionSigner): Promise<WithdrawAndBlockReserveIxs>;
|
|
89
|
+
/**
|
|
90
|
+
* This method disinvests all the funds from all the reserves and set their weight to 0; for vaults that are managed by external bot/crank, the bot can change the weight and invest in the reserves again
|
|
91
|
+
* @param vault - the vault to disinvest the invested funds from
|
|
92
|
+
* @param [vaultReservesMap] - optional parameter to pass a map of the vault reserves. If not provided, the reserves will be loaded from the vault
|
|
93
|
+
* @param [payer] - optional parameter to pass a different payer for the transaction. If not provided, the admin of the vault will be used; this is the payer for the invest ixs and it should have an ATA and some lamports (2x no_of_reserves) of the token vault
|
|
94
|
+
* @returns - a struct with an instruction to update the reserve allocations to 0 weight and a list of instructions to disinvest the funds in the reserves
|
|
95
|
+
*/
|
|
96
|
+
disinvestAllReservesIxs(vault: KaminoVault, vaultReservesMap?: Map<Address, KaminoReserve>, payer?: TransactionSigner): Promise<DisinvestAllReservesIxs>;
|
|
79
97
|
/**
|
|
80
98
|
* This method removes a reserve from the vault allocation strategy if already part of the allocation strategy
|
|
81
99
|
* @param vault - vault to remove the reserve from
|
|
@@ -216,7 +234,8 @@ export declare class KaminoVaultClient {
|
|
|
216
234
|
* @param [currentSlot] - the latest confirmed slot. Optional. If provided the function will be faster as it will not have to fetch the latest slot
|
|
217
235
|
* @returns - a map from each reserve to how many tokens should be invested into
|
|
218
236
|
*/
|
|
219
|
-
getVaultComputedReservesAllocation(vaultState: VaultState, slot?: Slot, vaultReserves?: Map<Address, KaminoReserve>, currentSlot?: Slot): Promise<
|
|
237
|
+
getVaultComputedReservesAllocation(vaultState: VaultState, slot?: Slot, vaultReserves?: Map<Address, KaminoReserve>, currentSlot?: Slot): Promise<VaultComputedAllocation>;
|
|
238
|
+
private computeReservesAllocation;
|
|
220
239
|
/**
|
|
221
240
|
* This method returns the user shares balance for a given vault
|
|
222
241
|
* @param user - user to calculate the shares balance for
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../src/classes/vault.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,OAAO,EAKP,iBAAiB,EAMjB,YAAY,EACZ,YAAY,EAEZ,qBAAqB,EACrB,GAAG,EACH,IAAI,EACJ,YAAY,EACZ,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EAOL,YAAY,EACZ,aAAa,EAEb,OAAO,EAGR,MAAM,QAAQ,CAAC;AA+BhB,OAAO,EAAoB,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,OAAO,MAAM,YAAY,CAAC;AAGjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAY/C,OAAO,EACL,uBAAuB,EACvB,IAAI,EACJ,UAAU,EACV,YAAY,EACZ,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,oBAAoB,EACpB,kBAAkB,EAClB,0BAA0B,EAC1B,WAAW,EACZ,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAwB3E,eAAO,MAAM,aAAa,wDAAyD,CAAC;AACpF,eAAO,MAAM,oBAAoB,wDAAyD,CAAC;AAO3F,eAAO,MAAM,aAAa,aAAa,CAAC;AAExC,eAAO,MAAM,mBAAmB,EAAE,OAAgE,CAAC;AAEnG,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAK7C;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAU;IAChD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAU;IAC/C,oBAAoB,EAAE,MAAM,CAAC;gBAG3B,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,EACtB,oBAAoB,EAAE,MAAM,EAC5B,oBAAoB,CAAC,EAAE,OAAO,EAC9B,mBAAmB,CAAC,EAAE,OAAO;IAQ/B,aAAa;IAIb,YAAY;IAIZ,OAAO;IAIP;;;;;OAKG;IACG,UAAU,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,UAAU;IAwB9D;;;;OAIG;IACG,cAAc,CAClB,WAAW,EAAE,iBAAiB,GAC7B,OAAO,CAAC;QAAE,KAAK,EAAE,iBAAiB,CAAC;QAAC,GAAG,EAAE,OAAO,CAAC;QAAC,YAAY,EAAE,YAAY,CAAA;KAAE,CAAC;IAiJlF;;;;;;;;;;OAUG;IACG,sBAAsB,CAC1B,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,EACtB,UAAU,EAAE,iBAAiB,EAC7B,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,OAAO,EACnB,kBAAkB,EAAE,OAAO,EAC3B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM;IAanB;;;;;;OAMG;IACG,0BAA0B,CAC9B,KAAK,EAAE,WAAW,EAClB,uBAAuB,EAAE,uBAAuB,EAChD,mBAAmB,CAAC,EAAE,iBAAiB,GACtC,OAAO,CAAC,0BAA0B,CAAC;IAyDtC;;;;;;OAMG;IACG,uCAAuC,CAC3C,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,OAAO,EAChB,mBAAmB,CAAC,EAAE,iBAAiB,GACtC,OAAO,CAAC,0BAA0B,CAAC;IAqCtC;;;;;;OAMG;IACG,+CAA+C,CACnD,KAAK,EAAE,WAAW,EAClB,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,EAC9C,KAAK,CAAC,EAAE,iBAAiB,GACxB,OAAO,CAAC,0BAA0B,CAAC;IAgCtC;;;;;;OAMG;IACG,6BAA6B,CACjC,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,OAAO,EAChB,mBAAmB,CAAC,EAAE,iBAAiB,GACtC,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAqBpC;;;;;;;OAOG;IACG,oBAAoB,CACxB,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,oBAAoB,EAC1B,KAAK,EAAE,MAAM,EACb,mBAAmB,CAAC,EAAE,iBAAiB,GACtC,OAAO,CAAC,oBAAoB,CAAC;IAmFhC;;;;;;OAMG;IACG,eAAe,CACnB,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,OAAO,EACb,eAAe,GAAE,OAAc,EAC/B,mBAAmB,CAAC,EAAE,iBAAiB,GACtC,OAAO,CAAC,oBAAoB,CAAC;IAQhC;;;;;;;OAOG;IACH,OAAO,CAAC,gCAAgC;IAwCxC;;;;;OAKG;IACG,uBAAuB,CAC3B,KAAK,EAAE,WAAW,EAClB,YAAY,CAAC,EAAE,iBAAiB,GAC/B,OAAO,CAAC,uBAAuB,CAAC;IA4CnC;;;;;;OAMG;IACG,mBAAmB,CACvB,KAAK,EAAE,WAAW,EAClB,iBAAiB,EAAE,OAAO,EAC1B,mBAAmB,CAAC,EAAE,iBAAiB,GACtC,OAAO,CAAC,YAAY,CAAC;IAqBxB;;;;;;;;OAQG;IACG,sBAAsB,CAC1B,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE,IAAI,EACV,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,EAC9C,mBAAmB,CAAC,EAAE,iBAAiB,GACtC,OAAO,CAAC,YAAY,EAAE,CAAC;IA8E1B;;;;;;;;OAQG;IACG,UAAU,CACd,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE,OAAO,EACpB,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,EAC9C,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,UAAU,CAAC;IA+EtB;;;;;;;OAOG;IACG,cAAc,CAClB,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,WAAW,EAClB,YAAY,CAAC,EAAE,OAAO,EACtB,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,YAAY,EAAE,CAAC;IAiB1B;;;;;;;;;OASG;IACG,WAAW,CACf,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,WAAW,EAClB,qBAAqB,EAAE,OAAO,EAC9B,IAAI,EAAE,IAAI,EACV,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,EAC9C,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,WAAW,CAAC;YA2HT,wBAAwB;YA6BxB,sBAAsB;IAqHpC;;;;;OAKG;IACG,oBAAoB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IA8FjG;;;;;;;;OAQG;IACG,sBAAsB,CAC1B,KAAK,EAAE,iBAAiB,EACxB,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,kBAAkB,EAC3B,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,EAC9C,iBAAiB,GAAE,OAAc,GAChC,OAAO,CAAC,YAAY,EAAE,CAAC;IA4C1B,oEAAoE;IACpE,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;IAO1C,qCAAqC;IACrC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM;YAI1B,UAAU;YAyDV,uBAAuB;YAgCvB,qBAAqB;IA2CnC;;;;;;OAMG;IACG,uBAAuB,CAC3B,SAAS,EAAE,iBAAiB,EAC5B,KAAK,EAAE,WAAW,EAClB,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,GAC7C,OAAO,CAAC,eAAe,CAAC;IA6E3B,OAAO,CAAC,+BAA+B;IAavC;;;;;;;OAOG;IACG,wBAAwB,CAC5B,SAAS,EAAE,iBAAiB,EAC5B,WAAW,EAAE,OAAO,EACpB,IAAI,EAAE,OAAO,EAAE,EACf,aAAa,CAAC,EAAE,OAAO,EAAE,GACxB,OAAO,CAAC,YAAY,EAAE,CAAC;IAiC1B;;;;;;OAMG;IACG,kCAAkC,CACtC,UAAU,EAAE,UAAU,EACtB,IAAI,CAAC,EAAE,IAAI,EACX,aAAa,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,EAC3C,WAAW,CAAC,EAAE,IAAI,GACjB,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IA2DjC;;;;;OAKG;IACG,+BAA+B,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAiCrG;;;;;OAKG;IACG,6BAA6B,CACjC,IAAI,EAAE,OAAO,EACb,cAAc,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,GAClC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;IAsE5C;;;;OAIG;IACH,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,YAAY;IAOrD;;;;;;;OAOG;IACG,4BAA4B,CAChC,KAAK,EAAE,WAAW,EAClB,IAAI,CAAC,EAAE,IAAI,EACX,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,EAC9C,WAAW,CAAC,EAAE,IAAI,GACjB,OAAO,CAAC,OAAO,CAAC;IAmBnB;;;;;;OAMG;IACG,0BAA0B,CAC9B,IAAI,EAAE,IAAI,EACV,cAAc,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,EACnC,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,GAC7C,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAWjC;;;OAGG;IACG,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAiB5C;;;;OAIG;IACG,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAwBzD,sBAAsB;IAoBpC;;;;OAIG;IACG,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;YAW9D,eAAe;IAI7B;;;;;;OAMG;IACH,oBAAoB,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO;IA6BzF;;;;OAIG;IACH,4BAA4B,CAAC,UAAU,EAAE,UAAU,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;IAqB3E;;;;OAIG;IACH,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,GAAG,CAAC,OAAO,EAAE,yBAAyB,CAAC;IAmBpF;;;;;;OAMG;YACW,gDAAgD;IAuC9D;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,EAAE;IAM9C;;;;OAIG;IACG,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAIrF;;;;OAIG;IACG,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAwCpF;;;;;;;OAOG;IACG,mBAAmB,CACvB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,EACV,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,EAC9C,aAAa,CAAC,EAAE,YAAY,EAAE,GAC7B,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IA6FxC;;;;;;;OAOG;IACG,gBAAgB,CACpB,KAAK,EAAE,UAAU,EACjB,IAAI,CAAC,EAAE,IAAI,EACX,aAAa,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,EAC3C,WAAW,CAAC,EAAE,IAAI,GACjB,OAAO,CAAC,aAAa,CAAC;IAiFzB;;;;;;;;OAQG;IACG,yBAAyB,CAC7B,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,OAAO,EACd,IAAI,CAAC,EAAE,IAAI,EACX,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,EAC9C,WAAW,CAAC,EAAE,IAAI,GACjB,OAAO,CAAC,yBAAyB,CAAC;IAiBrC;;;;;;;;;OASG;IACG,gBAAgB,CACpB,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,OAAO,EACd,IAAI,CAAC,EAAE,IAAI,EACX,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,EAC9C,aAAa,CAAC,EAAE,YAAY,EAAE,EAC9B,WAAW,CAAC,EAAE,IAAI,GACjB,OAAO,CAAC,aAAa,CAAC;IA2DzB;;;;;;OAMG;IACG,2BAA2B,CAC/B,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,IAAI,EACV,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,GAC7C,OAAO,CAAC,oCAAoC,CAAC;IA8ChD;;;;;;OAMG;IACG,uBAAuB,CAC3B,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,IAAI,EACV,aAAa,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,GAC1C,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IA+BzC;;;;;;OAMG;IACG,sBAAsB,CAC1B,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,IAAI,EACV,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,GAC7C,OAAO,CAAC,IAAI,CAAC;IAsChB;;;;;;OAMG;IACG,iBAAiB,CACrB,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,IAAI,EACV,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,GAC7C,OAAO,CAAC,IAAI,CAAC;IAwChB;;;;OAIG;IACG,0BAA0B,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,oCAAoC,CAAC;IASvG;;;;;;;;OAQG;IACG,sCAAsC,CAC1C,UAAU,EAAE,UAAU,EACtB,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,EAC9C,IAAI,CAAC,EAAE,IAAI,EACX,cAAc,CAAC,EAAE,OAAO,EACxB,WAAW,CAAC,EAAE,IAAI,GACjB,OAAO,CAAC,wCAAwC,CAAC;IAuBpD;;;;;;OAMG;IACG,sBAAsB,CAC1B,UAAU,EAAE,UAAU,EACtB,oCAAoC,CAAC,EAAE,wCAAwC,EAC/E,gBAAgB,CAAC,EAAE,IAAI,GACtB,OAAO,CAAC,SAAS,CAAC;IA6BrB;;OAEG;IACH,8CAA8C,CAC5C,cAAc,EAAE,OAAO,EACvB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,qBAAqB,CAAC;IAOjC;;;;;;OAMG;IACG,kBAAkB,CAAC,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,cAAc,CAAC;IAiB5G,OAAO,CAAC,uCAAuC;CAsBhD;AAED,qBAAa,WAAW;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI,CAAC;IACrC,SAAS,EAAE,OAAO,CAAC;gBAEP,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,UAAU,EAAE,SAAS,GAAE,OAAuB;IAMnF,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAa1D,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAQ7D,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;CAI7D;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,6BAA6B;IAC7B,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;IAClC,mCAAmC;IACnC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,gCAAgC;IAChC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,iFAAiF;IACjF,QAAQ,CAAC,4BAA4B,EAAE,OAAO,CAAC;IAC/C,gFAAgF;IAChF,QAAQ,CAAC,2BAA2B,EAAE,OAAO,CAAC;IAC9C,wEAAwE;IACxE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,gHAAgH;IAChH,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,yKAAyK;IACzK,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;gBACpB,IAAI,EAAE;QAChB,KAAK,EAAE,iBAAiB,CAAC;QACzB,SAAS,EAAE,OAAO,CAAC;QACnB,kBAAkB,EAAE,OAAO,CAAC;QAC5B,4BAA4B,EAAE,OAAO,CAAC;QACtC,2BAA2B,EAAE,OAAO,CAAC;QACrC,IAAI,EAAE,MAAM,CAAC;QACb,gBAAgB,EAAE,MAAM,CAAC;QACzB,cAAc,EAAE,MAAM,CAAC;KACxB;IAWD,oBAAoB,IAAI,MAAM;IAI9B,mBAAmB,IAAI,MAAM;CAG9B;AAED,qBAAa,uBAAuB;IAClC,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACrC,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;gBAE3B,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,EAAE,oBAAoB,EAAE,OAAO;IAMtG,wBAAwB,IAAI,OAAO;IAInC,eAAe,IAAI,OAAO;IAI1B,iBAAiB,IAAI,OAAO;CAG7B;AAED,wBAAsB,iBAAiB,CACrC,YAAY,EAAE,OAAO,EACrB,cAAc,EAAE,OAAO,EACvB,oBAAoB,EAAE,OAAO,GAC5B,OAAO,CAAC,OAAO,CAAC,CAWlB;AAED,wBAAsB,oBAAoB,CAAC,oBAAoB,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAO1F;AAUD,MAAM,MAAM,WAAW,GAAG;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,kBAAkB,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1C,WAAW,EAAE,OAAO,CAAC;IACrB,qBAAqB,EAAE,OAAO,CAAC;CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAAG;IACrD,QAAQ,EAAE,aAAa,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,EAAE,aAAa,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,qBAAqB,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,qBAAqB,EAAE,OAAO,CAAC;IAC/B,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,uBAAuB,EAAE,OAAO,CAAC;IACjC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,0BAA0B,EAAE,OAAO,CAAC;IACpC,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;IAC5C,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,OAAO,CAAC;IACd,iBAAiB,EAAE,OAAO,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,WAAW,EAAE,yBAAyB,CAAC;IACvC,gBAAgB,EAAE,GAAG,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAChD,gBAAgB,EAAE,GAAG,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAC/C,oBAAoB,EAAE,IAAI,CAAC;IAC3B,eAAe,EAAE,IAAI,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,kBAAkB,EAAE,OAAO,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,aAAa,CAAC,QAAQ,EAAE,aAAa,QAOpD"}
|
|
1
|
+
{"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../src/classes/vault.ts"],"names":[],"mappings":"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"}
|
package/dist/classes/vault.js
CHANGED
|
@@ -34,6 +34,7 @@ const signer_1 = require("../utils/signer");
|
|
|
34
34
|
const address_lookup_table_1 = require("@solana-program/address-lookup-table");
|
|
35
35
|
const farms_sdk_1 = require("@kamino-finance/farms-sdk");
|
|
36
36
|
const apy_1 = require("@kamino-finance/farms-sdk/dist/utils/apy");
|
|
37
|
+
const vaultAllocation_1 = require("../utils/vaultAllocation");
|
|
37
38
|
exports.kaminoVaultId = (0, kit_1.address)('KvauGMspG5k6rtzrqqn7WNn3oZdyKqLKwK2XWQ8FLjd');
|
|
38
39
|
exports.kaminoVaultStagingId = (0, kit_1.address)('stKvQfwRsQiKnLtMNVLHKS3exFJmZFsgfzBPWHECUYK');
|
|
39
40
|
const TOKEN_VAULT_SEED = 'token_vault';
|
|
@@ -257,6 +258,29 @@ class KaminoVaultClient {
|
|
|
257
258
|
};
|
|
258
259
|
return updateReserveAllocationIxs;
|
|
259
260
|
}
|
|
261
|
+
/**
|
|
262
|
+
* This method updates the unallocated weight and cap of a vault (both are optional, if not provided the current values will be used)
|
|
263
|
+
* @param vault - the vault to update the unallocated weight and cap for
|
|
264
|
+
* @param [vaultAdminAuthority] - vault admin - a noop vaultAdminAuthority is provided when absent for multisigs
|
|
265
|
+
* @param [unallocatedWeight] - the new unallocated weight to set. If not provided, the current unallocated weight will be used
|
|
266
|
+
* @param [unallocatedCap] - the new unallocated cap to set. If not provided, the current unallocated cap will be used
|
|
267
|
+
* @returns - a list of instructions to update the unallocated weight and cap
|
|
268
|
+
*/
|
|
269
|
+
async updateVaultUnallocatedWeightAndCapIxs(vault, vaultAdminAuthority, unallocatedWeight, unallocatedCap) {
|
|
270
|
+
const vaultState = await vault.getState(this.getConnection());
|
|
271
|
+
const unallocatedWeightToUse = unallocatedWeight ? unallocatedWeight : vaultState.unallocatedWeight;
|
|
272
|
+
const unallocatedCapToUse = unallocatedCap ? unallocatedCap : vaultState.unallocatedTokensCap;
|
|
273
|
+
const ixs = [];
|
|
274
|
+
if (!unallocatedWeightToUse.eq(vaultState.unallocatedWeight)) {
|
|
275
|
+
const updateVaultUnallocatedWeightIx = await this.updateVaultConfigIxs(vault, new types_1.VaultConfigField.UnallocatedWeight(), unallocatedWeightToUse.toString(), vaultAdminAuthority);
|
|
276
|
+
ixs.push(updateVaultUnallocatedWeightIx.updateVaultConfigIx);
|
|
277
|
+
}
|
|
278
|
+
if (!unallocatedCapToUse.eq(vaultState.unallocatedTokensCap)) {
|
|
279
|
+
const updateVaultUnallocatedCapIx = await this.updateVaultConfigIxs(vault, new types_1.VaultConfigField.UnallocatedTokensCap(), unallocatedCapToUse.toString(), vaultAdminAuthority);
|
|
280
|
+
ixs.push(updateVaultUnallocatedCapIx.updateVaultConfigIx);
|
|
281
|
+
}
|
|
282
|
+
return ixs;
|
|
283
|
+
}
|
|
260
284
|
/**
|
|
261
285
|
* This method withdraws all the funds from a reserve and blocks it from being invested by setting its weight and ctoken allocation to 0
|
|
262
286
|
* @param vault - the vault to withdraw the funds from
|
|
@@ -296,7 +320,7 @@ class KaminoVaultClient {
|
|
|
296
320
|
* @param vault - the vault to withdraw the invested funds from
|
|
297
321
|
* @param [vaultReservesMap] - optional parameter to pass a map of the vault reserves. If not provided, the reserves will be loaded from the vault
|
|
298
322
|
* @param [payer] - optional parameter to pass a different payer for the transaction. If not provided, the admin of the vault will be used; this is the payer for the invest ixs and it should have an ATA and some lamports (2x no_of_reserves) of the token vault
|
|
299
|
-
* @returns - a struct with an instruction to update the reserve allocation and an
|
|
323
|
+
* @returns - a struct with an instruction to update the reserve allocations (set weight and ctoken allocation to 0) and an a list of instructions to disinvest the funds in the reserves
|
|
300
324
|
*/
|
|
301
325
|
async withdrawEverythingFromAllReservesAndBlockInvest(vault, vaultReservesMap, payer) {
|
|
302
326
|
const vaultState = await vault.getState(this.getConnection());
|
|
@@ -323,6 +347,42 @@ class KaminoVaultClient {
|
|
|
323
347
|
withdrawAndBlockReserveIxs.investIxs = investIxs;
|
|
324
348
|
return withdrawAndBlockReserveIxs;
|
|
325
349
|
}
|
|
350
|
+
/**
|
|
351
|
+
* This method disinvests all the funds from all the reserves and set their weight to 0; for vaults that are managed by external bot/crank, the bot can change the weight and invest in the reserves again
|
|
352
|
+
* @param vault - the vault to disinvest the invested funds from
|
|
353
|
+
* @param [vaultReservesMap] - optional parameter to pass a map of the vault reserves. If not provided, the reserves will be loaded from the vault
|
|
354
|
+
* @param [payer] - optional parameter to pass a different payer for the transaction. If not provided, the admin of the vault will be used; this is the payer for the invest ixs and it should have an ATA and some lamports (2x no_of_reserves) of the token vault
|
|
355
|
+
* @returns - a struct with an instruction to update the reserve allocations to 0 weight and a list of instructions to disinvest the funds in the reserves
|
|
356
|
+
*/
|
|
357
|
+
async disinvestAllReservesIxs(vault, vaultReservesMap, payer) {
|
|
358
|
+
const vaultState = await vault.getState(this.getConnection());
|
|
359
|
+
const reserves = this.getVaultReserves(vaultState);
|
|
360
|
+
const disinvestAllReservesIxs = {
|
|
361
|
+
updateReserveAllocationIxs: [],
|
|
362
|
+
investIxs: [],
|
|
363
|
+
};
|
|
364
|
+
if (!vaultReservesMap) {
|
|
365
|
+
vaultReservesMap = await this.loadVaultReserves(vaultState);
|
|
366
|
+
}
|
|
367
|
+
for (const reserve of reserves) {
|
|
368
|
+
const reserveWithAddress = {
|
|
369
|
+
address: reserve,
|
|
370
|
+
state: vaultReservesMap.get(reserve).state,
|
|
371
|
+
};
|
|
372
|
+
const existingReserveAllocation = vaultState.vaultAllocationStrategy.find((allocation) => allocation.reserve === reserve);
|
|
373
|
+
if (!existingReserveAllocation) {
|
|
374
|
+
continue;
|
|
375
|
+
}
|
|
376
|
+
const reserveAllocationConfig = new ReserveAllocationConfig(reserveWithAddress, 0, new decimal_js_1.default(existingReserveAllocation.tokenAllocationCap.toString()));
|
|
377
|
+
// update allocation to have 0 weight and 0 cap
|
|
378
|
+
const updateAllocIxs = await this.updateReserveAllocationIxs(vault, reserveAllocationConfig, payer);
|
|
379
|
+
disinvestAllReservesIxs.updateReserveAllocationIxs.push(updateAllocIxs.updateReserveAllocationIx);
|
|
380
|
+
}
|
|
381
|
+
const investPayer = payer ? payer : (0, signer_1.noopSigner)(vaultState.vaultAdminAuthority);
|
|
382
|
+
const investIxs = await this.investAllReservesIxs(investPayer, vault);
|
|
383
|
+
disinvestAllReservesIxs.investIxs = investIxs;
|
|
384
|
+
return disinvestAllReservesIxs;
|
|
385
|
+
}
|
|
326
386
|
/**
|
|
327
387
|
* This method removes a reserve from the vault allocation strategy if already part of the allocation strategy
|
|
328
388
|
* @param vault - vault to remove the reserve from
|
|
@@ -873,7 +933,7 @@ class KaminoVaultClient {
|
|
|
873
933
|
for (let index = 0; index < allReserves.length; index++) {
|
|
874
934
|
const reservePubkey = allReserves[index];
|
|
875
935
|
const reserveState = allReservesStateMap.get(reservePubkey);
|
|
876
|
-
const computedAllocation = computedReservesAllocation.get(reservePubkey);
|
|
936
|
+
const computedAllocation = computedReservesAllocation.targetReservesAllocation.get(reservePubkey);
|
|
877
937
|
const currentCTokenAllocation = curentVaultAllocations.get(reservePubkey).ctokenAllocation;
|
|
878
938
|
const currentAllocationCap = curentVaultAllocations.get(reservePubkey).tokenAllocationCap;
|
|
879
939
|
const reserveCollExchangeRate = reserveState.getCollateralExchangeRate();
|
|
@@ -1198,6 +1258,8 @@ class KaminoVaultClient {
|
|
|
1198
1258
|
* @returns - a map from each reserve to how many tokens should be invested into
|
|
1199
1259
|
*/
|
|
1200
1260
|
async getVaultComputedReservesAllocation(vaultState, slot, vaultReserves, currentSlot) {
|
|
1261
|
+
// 1. Read the states
|
|
1262
|
+
const holdings = await this.getVaultHoldings(vaultState, slot, vaultReserves, currentSlot);
|
|
1201
1263
|
// if there are no vault reserves or all have weight 0 everything has to be in Available
|
|
1202
1264
|
const allReservesPubkeys = this.getVaultReserves(vaultState);
|
|
1203
1265
|
const reservesAllocations = this.getVaultAllocations(vaultState);
|
|
@@ -1210,46 +1272,17 @@ class KaminoVaultClient {
|
|
|
1210
1272
|
allReservesPubkeys.forEach((reserve) => {
|
|
1211
1273
|
computedHoldings.set(reserve, new decimal_js_1.default(0));
|
|
1212
1274
|
});
|
|
1213
|
-
return
|
|
1275
|
+
return {
|
|
1276
|
+
targetUnallocatedAmount: holdings.totalAUMIncludingFees.sub(holdings.pendingFees),
|
|
1277
|
+
targetReservesAllocation: computedHoldings,
|
|
1278
|
+
};
|
|
1214
1279
|
}
|
|
1215
|
-
const holdings = await this.getVaultHoldings(vaultState, slot, vaultReserves, currentSlot);
|
|
1216
1280
|
const initialVaultAllocations = this.getVaultAllocations(vaultState);
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
const expectedHoldingsDistribution = new Map();
|
|
1223
|
-
allReserves.forEach((reserve) => {
|
|
1224
|
-
expectedHoldingsDistribution.set(reserve, new decimal_js_1.default(0));
|
|
1225
|
-
});
|
|
1226
|
-
let totalLeftToInvest = holdings.totalAUMIncludingFees.sub(holdings.pendingFees);
|
|
1227
|
-
let currentAllocationSum = totalAllocation;
|
|
1228
|
-
const ONE = new decimal_js_1.default(1);
|
|
1229
|
-
while (totalLeftToInvest.gt(ONE)) {
|
|
1230
|
-
const totalLeftover = totalLeftToInvest;
|
|
1231
|
-
for (const reserve of allReserves) {
|
|
1232
|
-
const reserveWithWeight = initialVaultAllocations.get(reserve);
|
|
1233
|
-
const targetAllocation = reserveWithWeight.targetWeight.mul(totalLeftover).div(currentAllocationSum);
|
|
1234
|
-
const reserveCap = reserveWithWeight.tokenAllocationCap;
|
|
1235
|
-
let amountToInvest = decimal_js_1.default.min(targetAllocation, totalLeftToInvest);
|
|
1236
|
-
if (reserveCap.gt(kliquidity_sdk_1.ZERO)) {
|
|
1237
|
-
amountToInvest = decimal_js_1.default.min(amountToInvest, reserveCap);
|
|
1238
|
-
}
|
|
1239
|
-
totalLeftToInvest = totalLeftToInvest.sub(amountToInvest);
|
|
1240
|
-
if (amountToInvest.eq(reserveCap) && reserveCap.gt(kliquidity_sdk_1.ZERO)) {
|
|
1241
|
-
currentAllocationSum = currentAllocationSum.sub(reserveWithWeight.targetWeight);
|
|
1242
|
-
}
|
|
1243
|
-
const reserveHasPreallocation = expectedHoldingsDistribution.has(reserve);
|
|
1244
|
-
if (reserveHasPreallocation) {
|
|
1245
|
-
expectedHoldingsDistribution.set(reserve, expectedHoldingsDistribution.get(reserve).add(amountToInvest));
|
|
1246
|
-
}
|
|
1247
|
-
else {
|
|
1248
|
-
expectedHoldingsDistribution.set(reserve, amountToInvest);
|
|
1249
|
-
}
|
|
1250
|
-
}
|
|
1251
|
-
}
|
|
1252
|
-
return expectedHoldingsDistribution;
|
|
1281
|
+
// 2. Compute the allocation
|
|
1282
|
+
return this.computeReservesAllocation(holdings.totalAUMIncludingFees.sub(holdings.pendingFees), new decimal_js_1.default(vaultState.unallocatedWeight.toString()), new decimal_js_1.default(vaultState.unallocatedTokensCap.toString()), initialVaultAllocations);
|
|
1283
|
+
}
|
|
1284
|
+
computeReservesAllocation(vaultAUM, vaultUnallocatedWeight, vaultUnallocatedCap, initialVaultAllocations) {
|
|
1285
|
+
return (0, vaultAllocation_1.computeReservesAllocation)(vaultAUM, vaultUnallocatedWeight, vaultUnallocatedCap, initialVaultAllocations);
|
|
1253
1286
|
}
|
|
1254
1287
|
/**
|
|
1255
1288
|
* This method returns the user shares balance for a given vault
|