@kamino-finance/klend-sdk 5.1.1 → 5.1.3
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/classes/manager.d.ts +20 -3
- package/dist/classes/manager.d.ts.map +1 -1
- package/dist/classes/manager.js +24 -2
- package/dist/classes/manager.js.map +1 -1
- package/dist/classes/vault.d.ts +29 -9
- package/dist/classes/vault.d.ts.map +1 -1
- package/dist/classes/vault.js +66 -54
- package/dist/classes/vault.js.map +1 -1
- package/dist/lib.d.ts +3 -0
- package/dist/lib.d.ts.map +1 -1
- package/dist/lib.js +4 -0
- package/dist/lib.js.map +1 -1
- package/dist/utils/rpc.js +2 -2
- package/dist/utils/rpc.js.map +1 -1
- package/package.json +3 -2
- package/src/classes/manager.ts +32 -2
- package/src/classes/vault.ts +84 -65
- package/src/lib.ts +6 -0
- package/src/utils/rpc.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vault.js","sourceRoot":"","sources":["../../src/classes/vault.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vault.js","sourceRoot":"","sources":["../../src/classes/vault.ts"],"names":[],"mappings":"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"}
|
package/dist/lib.d.ts
CHANGED
|
@@ -2,6 +2,9 @@ export * from './idl_codegen/instructions';
|
|
|
2
2
|
export * from './idl_codegen/accounts';
|
|
3
3
|
export * from './idl_codegen/programId';
|
|
4
4
|
export * from './idl_codegen/zero_padding';
|
|
5
|
+
export * from './idl_codegen_kamino_vault/instructions';
|
|
6
|
+
export * from './idl_codegen_kamino_vault/accounts/VaultState';
|
|
7
|
+
export * from './idl_codegen_kamino_vault/types';
|
|
5
8
|
export * from './classes';
|
|
6
9
|
export * from './utils';
|
|
7
10
|
export * from './leverage';
|
package/dist/lib.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAE3C,cAAc,yCAAyC,CAAC;AAExD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,kCAAkC,CAAC;AAEjD,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC"}
|
package/dist/lib.js
CHANGED
|
@@ -18,6 +18,10 @@ __exportStar(require("./idl_codegen/instructions"), exports);
|
|
|
18
18
|
__exportStar(require("./idl_codegen/accounts"), exports);
|
|
19
19
|
__exportStar(require("./idl_codegen/programId"), exports);
|
|
20
20
|
__exportStar(require("./idl_codegen/zero_padding"), exports);
|
|
21
|
+
__exportStar(require("./idl_codegen_kamino_vault/instructions"), exports);
|
|
22
|
+
// only export vault state, do not export Reserve as it's the same one in main klend /idl_codegen/accounts
|
|
23
|
+
__exportStar(require("./idl_codegen_kamino_vault/accounts/VaultState"), exports);
|
|
24
|
+
__exportStar(require("./idl_codegen_kamino_vault/types"), exports);
|
|
21
25
|
__exportStar(require("./classes"), exports);
|
|
22
26
|
__exportStar(require("./utils"), exports);
|
|
23
27
|
__exportStar(require("./leverage"), exports);
|
package/dist/lib.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C;AAC3C,yDAAuC;AACvC,0DAAwC;AACxC,6DAA2C;
|
|
1
|
+
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C;AAC3C,yDAAuC;AACvC,0DAAwC;AACxC,6DAA2C;AAE3C,0EAAwD;AACxD,0GAA0G;AAC1G,iFAA+D;AAC/D,mEAAiD;AAEjD,4CAA0B;AAC1B,0CAAwB;AACxB,6CAA2B;AAC3B,8CAA4B;AAC5B,uDAAqC"}
|
package/dist/utils/rpc.js
CHANGED
|
@@ -8,7 +8,7 @@ const web3_js_1 = require("@solana/web3.js");
|
|
|
8
8
|
const buffer_1 = require("buffer");
|
|
9
9
|
const axios_1 = __importDefault(require("axios"));
|
|
10
10
|
const zstd_wasm_1 = require("@bokuweb/zstd-wasm");
|
|
11
|
-
const
|
|
11
|
+
const uuid_1 = require("uuid");
|
|
12
12
|
(async () => {
|
|
13
13
|
await (0, zstd_wasm_1.init)();
|
|
14
14
|
})();
|
|
@@ -36,7 +36,7 @@ async function getProgramAccounts(connection, programId, configOrCommitment) {
|
|
|
36
36
|
...configWithoutEncoding,
|
|
37
37
|
},
|
|
38
38
|
],
|
|
39
|
-
id: (0,
|
|
39
|
+
id: (0, uuid_1.v4)(),
|
|
40
40
|
}, {
|
|
41
41
|
headers: {
|
|
42
42
|
Accept: 'application/json',
|
package/dist/utils/rpc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../src/utils/rpc.ts"],"names":[],"mappings":";;;;;AAyBA,gDA+CC;AAxED,6CAQyB;AACzB,mCAAgC;AAChC,kDAA0B;AAC1B,kDAAsD;AACtD
|
|
1
|
+
{"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../src/utils/rpc.ts"],"names":[],"mappings":";;;;;AAyBA,gDA+CC;AAxED,6CAQyB;AACzB,mCAAgC;AAChC,kDAA0B;AAC1B,kDAAsD;AACtD,+BAAoC;AAEpC,CAAC,KAAK,IAAI,EAAE;IACV,MAAM,IAAA,gBAAI,GAAE,CAAC;AACf,CAAC,CAAC,EAAE,CAAC;AAEL;;;;;;GAMG;AACI,KAAK,UAAU,kBAAkB,CACtC,UAAsB,EACtB,SAAoB,EACpB,kBAA0D;IAE1D,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;IAC1C,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,2BAA2B,CAAC,kBAAkB,CAAC,CAAC;IAC/E,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,qBAAqB,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;IACvE,oHAAoH;IACpH,uDAAuD;IACvD,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,IAAI,CAC/B,UAAU,CAAC,WAAW,EACtB;QACE,MAAM,EAAE,oBAAoB;QAC5B,OAAO,EAAE,KAAK;QACd,MAAM,EAAE;YACN,YAAY;YACZ;gBACE,QAAQ,EAAE,aAAa;gBACvB,UAAU;gBACV,GAAG,qBAAqB;aACzB;SACF;QACD,EAAE,EAAE,IAAA,SAAM,GAAE;KACb,EACD;QACE,OAAO,EAAE;YACP,MAAM,EAAE,kBAAkB;YAC1B,cAAc,EAAE,kBAAkB;YAClC,iBAAiB,EAAE,eAAe;YAClC,eAAe,EAAE,UAAU;SAC5B;KACF,CACF,CAAC;IAEF,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC;IAChC,IAAI,OAAO,IAAI,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,4BAAkB,CAAC,SAAS,CAAC,KAAK,EAAE,4CAA4C,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAC9G,CAAC;IAED,MAAM,GAAG,GAAG,SAAsB,CAAC;IACnC,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QAC/C,OAAO,EAAE,MAAM,sBAAsB,CAAC,OAAO,CAAC,OAAO,CAAC;QACtD,MAAM,EAAE,IAAI,mBAAS,CAAC,OAAO,CAAC,MAAM,CAAC;KACtC,CAAC,CAAC,CAAC;IACJ,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACnC,OAAO,CAA+B,CAAC;AACzC,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,WAAkC;IACtE,MAAM,IAAI,GAAG,IAAA,sBAAU,EAAC,eAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IACpE,OAAO;QACL,KAAK,EAAE,WAAW,CAAC,KAAK;QACxB,QAAQ,EAAE,WAAW,CAAC,QAAQ;QAC9B,UAAU,EAAE,WAAW,CAAC,UAAU;QAClC,SAAS,EAAE,WAAW,CAAC,SAAS;QAChC,IAAI,EAAE,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC;KACxB,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAClC,kBAAyE;IAEzE,IAAI,UAAkC,CAAC;IACvC,IAAI,MAA+C,CAAC;IACpD,IAAI,OAAO,kBAAkB,KAAK,QAAQ,EAAE,CAAC;QAC3C,UAAU,GAAG,kBAAkB,CAAC;IAClC,CAAC;SAAM,IAAI,kBAAkB,EAAE,CAAC;QAC9B,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,GAAG,eAAe,EAAE,GAAG,kBAAkB,CAAC;QACnF,UAAU,GAAG,mBAAmB,CAAC;QACjC,MAAM,GAAG,eAAe,CAAC;IAC3B,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AAChC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kamino-finance/klend-sdk",
|
|
3
|
-
"version": "5.1.
|
|
3
|
+
"version": "5.1.3",
|
|
4
4
|
"description": "Typescript SDK for interacting with the Kamino Lending (klend) protocol",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -65,7 +65,8 @@
|
|
|
65
65
|
"buffer": "^6.0.3",
|
|
66
66
|
"commander": "^9.3.0",
|
|
67
67
|
"decimal.js": "^10.4.3",
|
|
68
|
-
"exponential-backoff": "^3.1.1"
|
|
68
|
+
"exponential-backoff": "^3.1.1",
|
|
69
|
+
"uuid": "^10.0.0"
|
|
69
70
|
},
|
|
70
71
|
"devDependencies": {
|
|
71
72
|
"@orca-so/sdk": "^1.2.25",
|
package/src/classes/manager.ts
CHANGED
|
@@ -17,6 +17,7 @@ import {
|
|
|
17
17
|
ReserveOverview,
|
|
18
18
|
VaultHolder,
|
|
19
19
|
VaultHoldings,
|
|
20
|
+
VaultHoldingsWithUSDValue,
|
|
20
21
|
} from './vault';
|
|
21
22
|
import {
|
|
22
23
|
AddAssetToMarketParams,
|
|
@@ -385,6 +386,18 @@ export class KaminoManager {
|
|
|
385
386
|
return this._vaultClient.getTokensPerShareSingleVault(vault, slot);
|
|
386
387
|
}
|
|
387
388
|
|
|
389
|
+
/**
|
|
390
|
+
* This method calculates the price of one vault share(kToken)
|
|
391
|
+
* @param vault - vault to calculate sharePrice for
|
|
392
|
+
* @param slot - current slot, used to estimate the interest earned in the different reserves with allocation from the vault
|
|
393
|
+
* @param tokenPrice - the price of the vault token (e.g. SOL) in USD
|
|
394
|
+
* @returns - share value in USD
|
|
395
|
+
*/
|
|
396
|
+
async getSharePriceInUSD(vault: KaminoVault, slot: number, tokenPrice: Decimal): Promise<Decimal> {
|
|
397
|
+
const tokensPerShare = await this.getTokensPerShareSingleVault(vault, slot);
|
|
398
|
+
return tokensPerShare.mul(tokenPrice);
|
|
399
|
+
}
|
|
400
|
+
|
|
388
401
|
/**
|
|
389
402
|
* This method returns the user shares balance for a given vault
|
|
390
403
|
* @param user - user to calculate the shares balance for
|
|
@@ -515,11 +528,11 @@ export class KaminoManager {
|
|
|
515
528
|
};
|
|
516
529
|
|
|
517
530
|
/**
|
|
518
|
-
* This will return an
|
|
531
|
+
* This will return an VaultHoldings object which contains the amount available (uninvested) in vault, total amount invested in reseves and a breakdown of the amount invested in each reserve
|
|
519
532
|
* @param vault - the kamino vault to get available liquidity to withdraw for
|
|
520
533
|
* @param slot - current slot
|
|
521
534
|
* @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
|
|
522
|
-
* @returns an
|
|
535
|
+
* @returns an VaultHoldings object
|
|
523
536
|
*/
|
|
524
537
|
async getVaultHoldings(
|
|
525
538
|
vault: VaultState,
|
|
@@ -529,6 +542,23 @@ export class KaminoManager {
|
|
|
529
542
|
return this._vaultClient.getVaultHoldings(vault, slot, vaultReserves);
|
|
530
543
|
}
|
|
531
544
|
|
|
545
|
+
/**
|
|
546
|
+
* This will return an VaultHoldingsWithUSDValue object which contains an holdings field representing the amount available (uninvested) in vault, total amount invested in reseves and a breakdown of the amount invested in each reserve and additional fields for the total USD value of the available and invested amounts
|
|
547
|
+
* @param vault - the kamino vault to get available liquidity to withdraw for
|
|
548
|
+
* @param slot - current slot
|
|
549
|
+
* @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
|
|
550
|
+
* @param price - the price of the token in the vault (e.g. USDC)
|
|
551
|
+
* @returns an VaultHoldingsWithUSDValue object with details about the tokens available and invested in the vault, denominated in tokens and USD
|
|
552
|
+
*/
|
|
553
|
+
async getVaultHoldingsWithPrice(
|
|
554
|
+
vault: VaultState,
|
|
555
|
+
slot: number,
|
|
556
|
+
price: Decimal,
|
|
557
|
+
vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>
|
|
558
|
+
): Promise<VaultHoldingsWithUSDValue> {
|
|
559
|
+
return this._vaultClient.getVaultHoldingsWithPrice(vault, slot, price, vaultReserves);
|
|
560
|
+
}
|
|
561
|
+
|
|
532
562
|
/**
|
|
533
563
|
* This will return an overview of each reserve that is part of the vault allocation
|
|
534
564
|
* @param vault - the kamino vault to get available liquidity to withdraw for
|
package/src/classes/vault.ts
CHANGED
|
@@ -4,9 +4,9 @@ import {
|
|
|
4
4
|
Connection,
|
|
5
5
|
Keypair,
|
|
6
6
|
PublicKey,
|
|
7
|
+
SystemProgram,
|
|
7
8
|
SYSVAR_INSTRUCTIONS_PUBKEY,
|
|
8
9
|
SYSVAR_RENT_PUBKEY,
|
|
9
|
-
SystemProgram,
|
|
10
10
|
TransactionInstruction,
|
|
11
11
|
} from '@solana/web3.js';
|
|
12
12
|
import { TOKEN_PROGRAM_ID, unpackAccount } from '@solana/spl-token';
|
|
@@ -23,8 +23,6 @@ import {
|
|
|
23
23
|
WRAPPED_SOL_MINT,
|
|
24
24
|
} from '../lib';
|
|
25
25
|
import {
|
|
26
|
-
// closeVault,
|
|
27
|
-
// CloseVaultAccounts,
|
|
28
26
|
DepositAccounts,
|
|
29
27
|
DepositArgs,
|
|
30
28
|
giveUpPendingFees,
|
|
@@ -51,12 +49,12 @@ import { VaultConfigFieldKind } from '../idl_codegen_kamino_vault/types';
|
|
|
51
49
|
import { VaultState } from '../idl_codegen_kamino_vault/accounts';
|
|
52
50
|
import Decimal from 'decimal.js';
|
|
53
51
|
import { numberToLamportsDecimal, parseTokenSymbol } from './utils';
|
|
54
|
-
import { deposit } from '../idl_codegen_kamino_vault/instructions
|
|
55
|
-
import { withdraw } from '../idl_codegen_kamino_vault/instructions
|
|
52
|
+
import { deposit } from '../idl_codegen_kamino_vault/instructions';
|
|
53
|
+
import { withdraw } from '../idl_codegen_kamino_vault/instructions';
|
|
56
54
|
import { PROGRAM_ID } from '../idl_codegen/programId';
|
|
57
55
|
import { DEFAULT_RECENT_SLOT_DURATION_MS, ReserveWithAddress } from './reserve';
|
|
58
56
|
import { Fraction } from './fraction';
|
|
59
|
-
import { lendingMarketAuthPda } from '../utils
|
|
57
|
+
import { lendingMarketAuthPda } from '../utils';
|
|
60
58
|
import bs58 from 'bs58';
|
|
61
59
|
import { getProgramAccounts } from '../utils/rpc';
|
|
62
60
|
|
|
@@ -390,6 +388,7 @@ export class KaminoVaultClient {
|
|
|
390
388
|
* @param user - user to deposit
|
|
391
389
|
* @param vault - vault to deposit into
|
|
392
390
|
* @param tokenAmount - token amount to be deposited, in decimals (will be converted in lamports)
|
|
391
|
+
* @param vaultReservesMap - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
|
|
393
392
|
* @returns - an array of instructions to be used to be executed
|
|
394
393
|
*/
|
|
395
394
|
async depositIxs(
|
|
@@ -573,7 +572,8 @@ export class KaminoVaultClient {
|
|
|
573
572
|
|
|
574
573
|
/**
|
|
575
574
|
* This will trigger invest by balancing, based on weights, the reserve allocations of the vault. It can either withdraw or deposit into reserves to balance them. This is a function that should be cranked
|
|
576
|
-
* @param
|
|
575
|
+
* @param payer wallet that pays the tx
|
|
576
|
+
* @param vault - vault to invest from
|
|
577
577
|
* @returns - an array of invest instructions for each invest action required for the vault reserves
|
|
578
578
|
*/
|
|
579
579
|
async investAllReservesIxs(payer: PublicKey, vault: KaminoVault): Promise<TransactionInstruction[]> {
|
|
@@ -595,7 +595,8 @@ export class KaminoVaultClient {
|
|
|
595
595
|
|
|
596
596
|
/**
|
|
597
597
|
* This will trigger invest by balancing, based on weights, the reserve allocation of the vault. It can either withdraw or deposit into the given reserve to balance it
|
|
598
|
-
* @param
|
|
598
|
+
* @param payer wallet pubkey
|
|
599
|
+
* @param vault - vault to invest from
|
|
599
600
|
* @param reserve - reserve to invest into or disinvest from
|
|
600
601
|
* @returns - an array of invest instructions for each invest action required for the vault reserves
|
|
601
602
|
*/
|
|
@@ -782,8 +783,8 @@ export class KaminoVaultClient {
|
|
|
782
783
|
}
|
|
783
784
|
const userSharesAccount = unpackAccount(userSharesAta, userSharesAccountInfo);
|
|
784
785
|
|
|
785
|
-
return new Decimal(
|
|
786
|
-
new Decimal(10).pow(vaultState.sharesMintDecimals.
|
|
786
|
+
return new Decimal(userSharesAccount.amount.toString()).div(
|
|
787
|
+
new Decimal(10).pow(vaultState.sharesMintDecimals.toString())
|
|
787
788
|
);
|
|
788
789
|
}
|
|
789
790
|
|
|
@@ -818,7 +819,7 @@ export class KaminoVaultClient {
|
|
|
818
819
|
vaultUserShareBalance.set(
|
|
819
820
|
vaults[index].address,
|
|
820
821
|
new Decimal(userShareAtaAccount.lamports).div(
|
|
821
|
-
new Decimal(10).pow(vaults[index].state!.sharesMintDecimals.
|
|
822
|
+
new Decimal(10).pow(vaults[index].state!.sharesMintDecimals.toString())
|
|
822
823
|
)
|
|
823
824
|
);
|
|
824
825
|
}
|
|
@@ -831,16 +832,21 @@ export class KaminoVaultClient {
|
|
|
831
832
|
* This method calculates the token per shar value. This will always change based on interest earned from the vault, but calculating it requires a bunch of rpc requests. Caching this for a short duration would be optimal
|
|
832
833
|
* @param vault - vault to calculate tokensPerShare for
|
|
833
834
|
* @param slot - current slot, used to estimate the interest earned in the different reserves with allocation from the vault
|
|
835
|
+
* @param vaultReservesMap - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
|
|
834
836
|
* @returns - token per share value
|
|
835
837
|
*/
|
|
836
|
-
async getTokensPerShareSingleVault(
|
|
838
|
+
async getTokensPerShareSingleVault(
|
|
839
|
+
vault: KaminoVault,
|
|
840
|
+
slot: number,
|
|
841
|
+
vaultReservesMap?: PubkeyHashMap<PublicKey, KaminoReserve>
|
|
842
|
+
): Promise<Decimal> {
|
|
837
843
|
const vaultState = await vault.getState(this._connection);
|
|
838
|
-
const
|
|
844
|
+
const vaultReservesState = vaultReservesMap ? vaultReservesMap : await this.loadVaultReserves(vaultState);
|
|
839
845
|
|
|
840
|
-
|
|
846
|
+
let totalVaultLiquidityAmount = new Decimal(vaultState.tokenAvailable.toString());
|
|
841
847
|
vaultState.vaultAllocationStrategy.forEach((allocationStrategy) => {
|
|
842
848
|
if (!allocationStrategy.reserve.equals(PublicKey.default)) {
|
|
843
|
-
const reserve =
|
|
849
|
+
const reserve = vaultReservesState.get(allocationStrategy.reserve);
|
|
844
850
|
if (reserve === undefined) {
|
|
845
851
|
throw new Error(`Reserve ${allocationStrategy.reserve.toBase58()} not found`);
|
|
846
852
|
}
|
|
@@ -852,61 +858,39 @@ export class KaminoVaultClient {
|
|
|
852
858
|
.floor()
|
|
853
859
|
.toNumber()
|
|
854
860
|
);
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
861
|
+
if (reserveCollExchangeRate.gt(0)) {
|
|
862
|
+
const reserveAllocationLiquidityAmount = new Decimal(allocationStrategy.cTokenAllocation.toString()).div(
|
|
863
|
+
reserveCollExchangeRate
|
|
864
|
+
);
|
|
865
|
+
totalVaultLiquidityAmount = totalVaultLiquidityAmount.add(reserveAllocationLiquidityAmount);
|
|
866
|
+
}
|
|
859
867
|
}
|
|
860
868
|
});
|
|
869
|
+
if (totalVaultLiquidityAmount.isZero()) {
|
|
870
|
+
return new Decimal(0);
|
|
871
|
+
}
|
|
861
872
|
|
|
862
873
|
return new Decimal(vaultState.sharesIssued.toString()).div(totalVaultLiquidityAmount);
|
|
863
874
|
}
|
|
864
875
|
|
|
865
876
|
/**
|
|
866
877
|
* This method calculates the token per share value. This will always change based on interest earned from the vault, but calculating it requires a bunch of rpc requests. Caching this for a short duration would be optimal
|
|
867
|
-
* @param vault - vault to calculate tokensPerShare for
|
|
868
878
|
* @param slot - current slot, used to estimate the interest earned in the different reserves with allocation from the vault
|
|
879
|
+
* @param vaultsOverride
|
|
880
|
+
* @param vaultReservesMap
|
|
869
881
|
* @returns - token per share value
|
|
870
882
|
*/
|
|
871
883
|
async getTokensPerShareAllVaults(
|
|
872
884
|
slot: number,
|
|
873
|
-
vaultsOverride?: Array<KaminoVault
|
|
885
|
+
vaultsOverride?: Array<KaminoVault>,
|
|
886
|
+
vaultReservesMap?: PubkeyHashMap<PublicKey, KaminoReserve>
|
|
874
887
|
): Promise<PubkeyHashMap<PublicKey, Decimal>> {
|
|
875
888
|
const vaults = vaultsOverride ? vaultsOverride : await this.getAllVaults();
|
|
876
889
|
const vaultTokensPerShare = new PubkeyHashMap<PublicKey, Decimal>();
|
|
877
|
-
|
|
878
|
-
const
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
}
|
|
882
|
-
const reserves = await this.loadVaultReserves(vaultState);
|
|
883
|
-
|
|
884
|
-
const totalVaultLiquidityAmount = new Decimal(vaultState.tokenAvailable.toString());
|
|
885
|
-
vaultState.vaultAllocationStrategy.forEach((allocationStrategy) => {
|
|
886
|
-
if (!allocationStrategy.reserve.equals(PublicKey.default)) {
|
|
887
|
-
const reserve = reserves.get(allocationStrategy.reserve);
|
|
888
|
-
if (reserve === undefined) {
|
|
889
|
-
throw new Error(`Reserve ${allocationStrategy.reserve.toBase58()} not found`);
|
|
890
|
-
}
|
|
891
|
-
const reserveCollExchangeRate = reserve.getEstimatedCollateralExchangeRate(
|
|
892
|
-
slot,
|
|
893
|
-
new Fraction(reserve.state.liquidity.absoluteReferralRateSf)
|
|
894
|
-
.toDecimal()
|
|
895
|
-
.div(reserve.state.config.protocolTakeRatePct / 100)
|
|
896
|
-
.floor()
|
|
897
|
-
.toNumber()
|
|
898
|
-
);
|
|
899
|
-
const reserveAllocationLiquidityAmount = new Decimal(allocationStrategy.cTokenAllocation.toString()).div(
|
|
900
|
-
reserveCollExchangeRate
|
|
901
|
-
);
|
|
902
|
-
totalVaultLiquidityAmount.add(reserveAllocationLiquidityAmount);
|
|
903
|
-
}
|
|
904
|
-
});
|
|
905
|
-
vaultTokensPerShare.set(
|
|
906
|
-
vault.address,
|
|
907
|
-
new Decimal(vaultState.sharesIssued.toString()).div(totalVaultLiquidityAmount)
|
|
908
|
-
);
|
|
909
|
-
});
|
|
890
|
+
for (const vault of vaults) {
|
|
891
|
+
const tokensPerShare = await this.getTokensPerShareSingleVault(vault, slot, vaultReservesMap);
|
|
892
|
+
vaultTokensPerShare.set(vault.address, tokensPerShare);
|
|
893
|
+
}
|
|
910
894
|
|
|
911
895
|
return vaultTokensPerShare;
|
|
912
896
|
}
|
|
@@ -928,12 +912,10 @@ export class KaminoVaultClient {
|
|
|
928
912
|
},
|
|
929
913
|
];
|
|
930
914
|
|
|
931
|
-
const
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
}),
|
|
936
|
-
]);
|
|
915
|
+
const kaminoVaults = await getProgramAccounts(this._connection, this._kaminoVaultProgramId, {
|
|
916
|
+
commitment: this._connection.commitment ?? 'processed',
|
|
917
|
+
filters,
|
|
918
|
+
});
|
|
937
919
|
|
|
938
920
|
return kaminoVaults.map((kaminoVault) => {
|
|
939
921
|
if (kaminoVault.account === null) {
|
|
@@ -991,7 +973,7 @@ export class KaminoVaultClient {
|
|
|
991
973
|
|
|
992
974
|
/**
|
|
993
975
|
* This will get the list of all reserve pubkeys that the vault has allocations for
|
|
994
|
-
* @param
|
|
976
|
+
* @param vault - the vault state to load reserves for
|
|
995
977
|
* @returns a hashmap from each reserve pubkey to the reserve state
|
|
996
978
|
*/
|
|
997
979
|
getAllVaultReserves(vault: VaultState): PublicKey[] {
|
|
@@ -1000,7 +982,7 @@ export class KaminoVaultClient {
|
|
|
1000
982
|
|
|
1001
983
|
/**
|
|
1002
984
|
* This will get the list of all reserve pubkeys that the vault has allocations for ex
|
|
1003
|
-
* @param
|
|
985
|
+
* @param vault - the vault state to load reserves for
|
|
1004
986
|
* @returns a hashmap from each reserve pubkey to the reserve state
|
|
1005
987
|
*/
|
|
1006
988
|
getVaultReserves(vault: VaultState): PublicKey[] {
|
|
@@ -1053,11 +1035,11 @@ export class KaminoVaultClient {
|
|
|
1053
1035
|
}
|
|
1054
1036
|
|
|
1055
1037
|
/**
|
|
1056
|
-
* This will return an
|
|
1038
|
+
* This will return an VaultHoldings object which contains the amount available (uninvested) in vault, total amount invested in reseves and a breakdown of the amount invested in each reserve
|
|
1057
1039
|
* @param vault - the kamino vault to get available liquidity to withdraw for
|
|
1058
1040
|
* @param slot - current slot
|
|
1059
1041
|
* @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
|
|
1060
|
-
* @returns an
|
|
1042
|
+
* @returns an VaultHoldings object
|
|
1061
1043
|
*/
|
|
1062
1044
|
async getVaultHoldings(
|
|
1063
1045
|
vault: VaultState,
|
|
@@ -1094,6 +1076,34 @@ export class KaminoVaultClient {
|
|
|
1094
1076
|
return vaultHoldings;
|
|
1095
1077
|
}
|
|
1096
1078
|
|
|
1079
|
+
/**
|
|
1080
|
+
* This will return an VaultHoldingsWithUSDValue object which contains an holdings field representing the amount available (uninvested) in vault, total amount invested in reseves and a breakdown of the amount invested in each reserve and additional fields for the total USD value of the available and invested amounts
|
|
1081
|
+
* @param vault - the kamino vault to get available liquidity to withdraw for
|
|
1082
|
+
* @param slot - current slot
|
|
1083
|
+
* @param vaultReserves - optional parameter; a hashmap from each reserve pubkey to the reserve state. If provided the function will be significantly faster as it will not have to fetch the reserves
|
|
1084
|
+
* @param price - the price of the token in the vault (e.g. USDC)
|
|
1085
|
+
* @returns an VaultHoldingsWithUSDValue object with details about the tokens available and invested in the vault, denominated in tokens and USD
|
|
1086
|
+
*/
|
|
1087
|
+
async getVaultHoldingsWithPrice(
|
|
1088
|
+
vault: VaultState,
|
|
1089
|
+
slot: number,
|
|
1090
|
+
price: Decimal,
|
|
1091
|
+
vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>
|
|
1092
|
+
): Promise<VaultHoldingsWithUSDValue> {
|
|
1093
|
+
const holdings = await this.getVaultHoldings(vault, slot, vaultReserves);
|
|
1094
|
+
|
|
1095
|
+
const investedInReservesUSD = new PubkeyHashMap<PublicKey, Decimal>();
|
|
1096
|
+
holdings.investedInReserves.forEach((amount, reserve) => {
|
|
1097
|
+
investedInReservesUSD.set(reserve, amount.mul(price));
|
|
1098
|
+
});
|
|
1099
|
+
return {
|
|
1100
|
+
holdings: holdings,
|
|
1101
|
+
availableUSD: holdings.available.mul(price),
|
|
1102
|
+
investedUSD: holdings.invested.mul(price),
|
|
1103
|
+
investedInReservesUSD: investedInReservesUSD,
|
|
1104
|
+
};
|
|
1105
|
+
}
|
|
1106
|
+
|
|
1097
1107
|
/**
|
|
1098
1108
|
* This will return an overview of each reserve that is part of the vault allocation
|
|
1099
1109
|
* @param vault - the kamino vault to get available liquidity to withdraw for
|
|
@@ -1164,7 +1174,9 @@ export class KaminoVaultClient {
|
|
|
1164
1174
|
totalAPY = totalAPY.add(weightedAPY);
|
|
1165
1175
|
totalWeights = totalWeights.add(weight);
|
|
1166
1176
|
});
|
|
1167
|
-
|
|
1177
|
+
if (totalWeights.isZero()) {
|
|
1178
|
+
return new Decimal(0);
|
|
1179
|
+
}
|
|
1168
1180
|
return totalAPY.div(totalWeights);
|
|
1169
1181
|
}
|
|
1170
1182
|
} // KaminoVaultClient
|
|
@@ -1282,6 +1294,13 @@ export type VaultHoldings = {
|
|
|
1282
1294
|
investedInReserves: PubkeyHashMap<PublicKey, Decimal>;
|
|
1283
1295
|
};
|
|
1284
1296
|
|
|
1297
|
+
export type VaultHoldingsWithUSDValue = {
|
|
1298
|
+
holdings: VaultHoldings;
|
|
1299
|
+
availableUSD: Decimal;
|
|
1300
|
+
investedUSD: Decimal;
|
|
1301
|
+
investedInReservesUSD: PubkeyHashMap<PublicKey, Decimal>;
|
|
1302
|
+
};
|
|
1303
|
+
|
|
1285
1304
|
export type ReserveOverview = {
|
|
1286
1305
|
supplyAPY: Decimal;
|
|
1287
1306
|
uUtilizationRatio: Decimal;
|
package/src/lib.ts
CHANGED
|
@@ -2,6 +2,12 @@ export * from './idl_codegen/instructions';
|
|
|
2
2
|
export * from './idl_codegen/accounts';
|
|
3
3
|
export * from './idl_codegen/programId';
|
|
4
4
|
export * from './idl_codegen/zero_padding';
|
|
5
|
+
|
|
6
|
+
export * from './idl_codegen_kamino_vault/instructions';
|
|
7
|
+
// only export vault state, do not export Reserve as it's the same one in main klend /idl_codegen/accounts
|
|
8
|
+
export * from './idl_codegen_kamino_vault/accounts/VaultState';
|
|
9
|
+
export * from './idl_codegen_kamino_vault/types';
|
|
10
|
+
|
|
5
11
|
export * from './classes';
|
|
6
12
|
export * from './utils';
|
|
7
13
|
export * from './leverage';
|
package/src/utils/rpc.ts
CHANGED
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
import { Buffer } from 'buffer';
|
|
11
11
|
import axios from 'axios';
|
|
12
12
|
import { init, decompress } from '@bokuweb/zstd-wasm';
|
|
13
|
-
import {
|
|
13
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
14
14
|
|
|
15
15
|
(async () => {
|
|
16
16
|
await init();
|
|
@@ -46,7 +46,7 @@ export async function getProgramAccounts(
|
|
|
46
46
|
...configWithoutEncoding,
|
|
47
47
|
},
|
|
48
48
|
],
|
|
49
|
-
id:
|
|
49
|
+
id: uuidv4(),
|
|
50
50
|
},
|
|
51
51
|
{
|
|
52
52
|
headers: {
|