@carrot-protocol/clend-vaults-rpc 0.0.2 → 0.0.3-pub2-dev-be4bd59
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/addresses.d.ts +4 -0
- package/dist/addresses.js +14 -0
- package/dist/addresses.js.map +1 -0
- package/dist/idl/clend_vaults.d.ts +1556 -0
- package/dist/idl/clend_vaults.js +3 -0
- package/dist/idl/clend_vaults.js.map +1 -0
- package/dist/idl/clend_vaults.json +1550 -0
- package/dist/index.js +22 -0
- package/dist/index.js.map +1 -0
- package/dist/math.d.ts +38 -0
- package/dist/math.js +79 -0
- package/dist/math.js.map +1 -0
- package/dist/program.d.ts +27 -0
- package/dist/program.js +294 -0
- package/dist/program.js.map +1 -0
- package/dist/rpc.d.ts +56 -0
- package/dist/rpc.js +685 -0
- package/dist/rpc.js.map +1 -0
- package/dist/state.d.ts +48 -0
- package/dist/state.js +108 -0
- package/dist/state.js.map +1 -0
- package/dist/swapper.d.ts +58 -0
- package/dist/swapper.js +109 -0
- package/dist/swapper.js.map +1 -0
- package/dist/utils.d.ts +2 -0
- package/dist/utils.js +10 -0
- package/dist/utils.js.map +1 -0
- package/package.json +7 -2
- package/.prettierignore +0 -2
- package/makefile +0 -18
- package/src/addresses.ts +0 -19
- package/src/idl/clend_vaults.json +0 -1550
- package/src/idl/clend_vaults.ts +0 -1556
- package/src/math.ts +0 -103
- package/src/program.ts +0 -551
- package/src/rpc.ts +0 -1354
- package/src/state.ts +0 -188
- package/src/swapper.ts +0 -221
- package/src/utils.ts +0 -7
- package/tsconfig.json +0 -18
- /package/{src/index.ts → dist/index.d.ts} +0 -0
package/dist/rpc.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc.js","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"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"}
|
package/dist/state.d.ts
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { BN, web3 } from "@coral-xyz/anchor";
|
|
2
|
+
import { Mint } from "@solana/spl-token";
|
|
3
|
+
export interface Vault {
|
|
4
|
+
address: web3.PublicKey;
|
|
5
|
+
sharesMint: web3.PublicKey;
|
|
6
|
+
sharesDecimals: number;
|
|
7
|
+
sharesSupply: BN;
|
|
8
|
+
manager: web3.PublicKey;
|
|
9
|
+
assets: VaultAsset[];
|
|
10
|
+
clendAccounts: VaultClendAccount[];
|
|
11
|
+
}
|
|
12
|
+
export interface VaultAsset {
|
|
13
|
+
mint: VaultAssetMint;
|
|
14
|
+
oracle: web3.PublicKey;
|
|
15
|
+
reserve: VaultAssetReserve;
|
|
16
|
+
status: number;
|
|
17
|
+
}
|
|
18
|
+
export interface VaultAssetMint {
|
|
19
|
+
address: web3.PublicKey;
|
|
20
|
+
decimals: number;
|
|
21
|
+
}
|
|
22
|
+
export interface VaultAssetReserve {
|
|
23
|
+
address: web3.PublicKey;
|
|
24
|
+
amount: BN;
|
|
25
|
+
amountUi: number;
|
|
26
|
+
}
|
|
27
|
+
export interface VaultClendAccount {
|
|
28
|
+
address: web3.PublicKey;
|
|
29
|
+
status: number;
|
|
30
|
+
}
|
|
31
|
+
export interface VaultEquity {
|
|
32
|
+
address: web3.PublicKey;
|
|
33
|
+
vaultEquity: number;
|
|
34
|
+
clendAccountEquity: {
|
|
35
|
+
address: web3.PublicKey;
|
|
36
|
+
equity: number;
|
|
37
|
+
}[];
|
|
38
|
+
reserveEquity: {
|
|
39
|
+
address: web3.PublicKey;
|
|
40
|
+
equity: number;
|
|
41
|
+
}[];
|
|
42
|
+
}
|
|
43
|
+
export declare function parseVaultAccount(address: web3.PublicKey, vaultAccountInfo: web3.AccountInfo<Buffer>, connection: web3.Connection): Promise<Vault>;
|
|
44
|
+
export declare function getReserves(reserves: web3.PublicKey[], connection: web3.Connection): Promise<VaultAssetReserve[]>;
|
|
45
|
+
export declare function parseReserve(address: web3.PublicKey, tokenAmount: web3.TokenAmount): VaultAssetReserve;
|
|
46
|
+
export declare function getMintState(mint: web3.PublicKey, connection: web3.Connection): Promise<Mint>;
|
|
47
|
+
export declare function parseNumber(value: any): number;
|
|
48
|
+
export declare function parsePk(value: any): web3.PublicKey;
|
package/dist/state.js
ADDED
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseVaultAccount = parseVaultAccount;
|
|
4
|
+
exports.getReserves = getReserves;
|
|
5
|
+
exports.parseReserve = parseReserve;
|
|
6
|
+
exports.getMintState = getMintState;
|
|
7
|
+
exports.parseNumber = parseNumber;
|
|
8
|
+
exports.parsePk = parsePk;
|
|
9
|
+
const anchor_1 = require("@coral-xyz/anchor");
|
|
10
|
+
const program_1 = require("./program");
|
|
11
|
+
const spl_token_1 = require("@solana/spl-token");
|
|
12
|
+
async function parseVaultAccount(address, vaultAccountInfo, connection) {
|
|
13
|
+
const program = new program_1.ClendVaultsProgram();
|
|
14
|
+
const vaultDataRaw = program.program.coder.accounts.decode("vault", vaultAccountInfo.data);
|
|
15
|
+
// filter out unused slots
|
|
16
|
+
// presuming equal amounts of each asset type
|
|
17
|
+
const reserves = vaultDataRaw.assets
|
|
18
|
+
.map((asset) => parsePk(asset.reserve))
|
|
19
|
+
.filter((r) => !r.equals(anchor_1.web3.PublicKey.default));
|
|
20
|
+
const mints = vaultDataRaw.assets
|
|
21
|
+
.map((asset) => parsePk(asset.mint))
|
|
22
|
+
.filter((m) => !m.equals(anchor_1.web3.PublicKey.default));
|
|
23
|
+
const oracles = vaultDataRaw.assets
|
|
24
|
+
.map((asset) => parsePk(asset.oracle))
|
|
25
|
+
.filter((o) => !o.equals(anchor_1.web3.PublicKey.default));
|
|
26
|
+
const vaultReserveData = await getReserves(reserves, connection);
|
|
27
|
+
const assets = [];
|
|
28
|
+
for (let i = 0; i < mints.length; i++) {
|
|
29
|
+
const asset = vaultDataRaw.assets[i];
|
|
30
|
+
const reserve = vaultReserveData.find((r) => r.address.equals(reserves[i]));
|
|
31
|
+
const oracle = oracles[i];
|
|
32
|
+
const mint = mints[i];
|
|
33
|
+
let mintDecimals = undefined;
|
|
34
|
+
try {
|
|
35
|
+
const mintState = await getMintState(mint, connection);
|
|
36
|
+
mintDecimals = parseNumber(mintState.decimals);
|
|
37
|
+
}
|
|
38
|
+
catch (e) {
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
assets.push({
|
|
42
|
+
mint: {
|
|
43
|
+
address: mint,
|
|
44
|
+
decimals: mintDecimals,
|
|
45
|
+
},
|
|
46
|
+
oracle,
|
|
47
|
+
reserve,
|
|
48
|
+
status: parseNumber(asset.status),
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
const clendAccounts = vaultDataRaw.clendAccounts
|
|
52
|
+
.map((clendAccount) => ({
|
|
53
|
+
address: parsePk(clendAccount.address),
|
|
54
|
+
status: parseNumber(clendAccount.status),
|
|
55
|
+
}))
|
|
56
|
+
.filter((ca) => !ca.address.equals(anchor_1.web3.PublicKey.default));
|
|
57
|
+
const sharesMint = parsePk(vaultDataRaw.shares);
|
|
58
|
+
const sharesMintState = await getMintState(sharesMint, connection);
|
|
59
|
+
const vaultData = {
|
|
60
|
+
address,
|
|
61
|
+
sharesMint,
|
|
62
|
+
sharesDecimals: parseNumber(sharesMintState.decimals),
|
|
63
|
+
sharesSupply: new anchor_1.BN(sharesMintState.supply.toString()),
|
|
64
|
+
manager: parsePk(vaultDataRaw.manager),
|
|
65
|
+
clendAccounts,
|
|
66
|
+
assets,
|
|
67
|
+
};
|
|
68
|
+
return vaultData;
|
|
69
|
+
}
|
|
70
|
+
async function getReserves(reserves, connection) {
|
|
71
|
+
const reservesData = [];
|
|
72
|
+
for (const reserve of reserves) {
|
|
73
|
+
const tokenAccountBalanceResponse = await connection.getTokenAccountBalance(reserve);
|
|
74
|
+
const r = parseReserve(reserve, tokenAccountBalanceResponse.value);
|
|
75
|
+
reservesData.push(r);
|
|
76
|
+
}
|
|
77
|
+
return reservesData;
|
|
78
|
+
}
|
|
79
|
+
function parseReserve(address, tokenAmount) {
|
|
80
|
+
return {
|
|
81
|
+
address,
|
|
82
|
+
amount: new anchor_1.BN(tokenAmount.amount),
|
|
83
|
+
amountUi: parseNumber(tokenAmount.uiAmount),
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
async function getMintState(mint, connection) {
|
|
87
|
+
const mintAccountInfo = await connection.getAccountInfo(mint);
|
|
88
|
+
if (!mintAccountInfo) {
|
|
89
|
+
throw new Error(`Mint account not found: ${mint.toString()}`);
|
|
90
|
+
}
|
|
91
|
+
return (0, spl_token_1.unpackMint)(mint, mintAccountInfo, mintAccountInfo.owner);
|
|
92
|
+
}
|
|
93
|
+
function parseNumber(value) {
|
|
94
|
+
const n = Number(value);
|
|
95
|
+
if (isNaN(n)) {
|
|
96
|
+
throw new Error(`Error Parsing Number: inputValue: ${value}, error: ${n}`);
|
|
97
|
+
}
|
|
98
|
+
return n;
|
|
99
|
+
}
|
|
100
|
+
function parsePk(value) {
|
|
101
|
+
try {
|
|
102
|
+
return new anchor_1.web3.PublicKey(value);
|
|
103
|
+
}
|
|
104
|
+
catch (e) {
|
|
105
|
+
throw new Error(`Error Parsing Public Key: inputValue: ${value}, error: ${e}`);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { ISwapper } from "@carrot-protocol/clend-rpc";
|
|
2
|
+
import { BN, web3 } from "@coral-xyz/anchor";
|
|
3
|
+
export declare class ClendVaultsJupSwapper implements ISwapper {
|
|
4
|
+
private readonly jupiterApi;
|
|
5
|
+
private readonly connection;
|
|
6
|
+
private readonly clendVaultsProgram;
|
|
7
|
+
constructor(connection: web3.Connection, apiKey?: string);
|
|
8
|
+
/**
|
|
9
|
+
* Implements the getQuote method from the ISwapper interface.
|
|
10
|
+
* It takes a standardized QuoteRequest and returns a standardized SwapQuote.
|
|
11
|
+
*/
|
|
12
|
+
getQuote(request: QuoteRequest): Promise<SwapQuote>;
|
|
13
|
+
/**
|
|
14
|
+
* Implements the getSwapIxns method from the ISwapper interface.
|
|
15
|
+
* It takes a standardized SwapQuote and returns standardized SwapIxns.
|
|
16
|
+
*/
|
|
17
|
+
getSwapIxns(quote: SwapQuote): Promise<SwapIxns>;
|
|
18
|
+
}
|
|
19
|
+
type SwapMode = "ExactIn" | "ExactOut";
|
|
20
|
+
/**
|
|
21
|
+
* A standardized request object for getting a swap quote.
|
|
22
|
+
*/
|
|
23
|
+
interface QuoteRequest {
|
|
24
|
+
payer: web3.PublicKey;
|
|
25
|
+
inputMint: web3.PublicKey;
|
|
26
|
+
inputMintDecimals: number;
|
|
27
|
+
outputMint: web3.PublicKey;
|
|
28
|
+
outputMintDecimals: number;
|
|
29
|
+
inputAmount: BN;
|
|
30
|
+
swapMode: SwapMode;
|
|
31
|
+
slippageBps: number;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* A standardized response from a getQuote call.
|
|
35
|
+
*/
|
|
36
|
+
interface SwapQuote {
|
|
37
|
+
/** The public key of the account swapping. */
|
|
38
|
+
payer: web3.PublicKey;
|
|
39
|
+
/** The final amount of the input token, considering fees or adjustments. */
|
|
40
|
+
inAmount: BN;
|
|
41
|
+
/** The optimistic expected amount of the output token. */
|
|
42
|
+
outAmount: BN;
|
|
43
|
+
/** The minimum output or maximum input amount after applying slippage. */
|
|
44
|
+
otherAmountThreshold: BN;
|
|
45
|
+
/** A generic property for the swapper to pass its own specific data
|
|
46
|
+
* (e.g., the full Jupiter API response) from its getQuote method
|
|
47
|
+
* to its getSwapIxns method.
|
|
48
|
+
*/
|
|
49
|
+
swapperData: any;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* The standardized set of instructions and lookup tables returned by a swapper.
|
|
53
|
+
*/
|
|
54
|
+
interface SwapIxns {
|
|
55
|
+
ixns: web3.TransactionInstruction[];
|
|
56
|
+
luts: web3.PublicKey[];
|
|
57
|
+
}
|
|
58
|
+
export {};
|
package/dist/swapper.js
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ClendVaultsJupSwapper = void 0;
|
|
4
|
+
const anchor_1 = require("@coral-xyz/anchor");
|
|
5
|
+
const api_1 = require("@jup-ag/api");
|
|
6
|
+
const addresses_1 = require("./addresses");
|
|
7
|
+
const token_1 = require("@coral-xyz/anchor/dist/cjs/utils/token");
|
|
8
|
+
const spl_token_1 = require("@solana/spl-token");
|
|
9
|
+
const state_1 = require("./state");
|
|
10
|
+
const program_1 = require("./program");
|
|
11
|
+
const QUOTE_URL = "https://api.jup.ag/swap/v1/quote";
|
|
12
|
+
class ClendVaultsJupSwapper {
|
|
13
|
+
constructor(connection, apiKey) {
|
|
14
|
+
this.jupiterApi = (0, api_1.createJupiterApiClient)({
|
|
15
|
+
basePath: QUOTE_URL,
|
|
16
|
+
apiKey,
|
|
17
|
+
});
|
|
18
|
+
this.connection = connection;
|
|
19
|
+
this.clendVaultsProgram = new program_1.ClendVaultsProgram();
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Implements the getQuote method from the ISwapper interface.
|
|
23
|
+
* It takes a standardized QuoteRequest and returns a standardized SwapQuote.
|
|
24
|
+
*/
|
|
25
|
+
async getQuote(request) {
|
|
26
|
+
const { inputMint, outputMint, inputAmount, swapMode, slippageBps, payer } = request;
|
|
27
|
+
const quoteResponse = await this.jupiterApi.quoteGet({
|
|
28
|
+
inputMint: inputMint.toBase58(),
|
|
29
|
+
outputMint: outputMint.toBase58(),
|
|
30
|
+
amount: inputAmount.toNumber(),
|
|
31
|
+
slippageBps,
|
|
32
|
+
swapMode,
|
|
33
|
+
onlyDirectRoutes: true,
|
|
34
|
+
});
|
|
35
|
+
// Populate the standardized SwapQuote object
|
|
36
|
+
return {
|
|
37
|
+
payer,
|
|
38
|
+
inAmount: new anchor_1.BN(quoteResponse.inAmount),
|
|
39
|
+
outAmount: new anchor_1.BN(quoteResponse.outAmount),
|
|
40
|
+
otherAmountThreshold: new anchor_1.BN(quoteResponse.otherAmountThreshold),
|
|
41
|
+
swapperData: {
|
|
42
|
+
quoteResponse,
|
|
43
|
+
inputMint,
|
|
44
|
+
outputMint,
|
|
45
|
+
vault: payer,
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Implements the getSwapIxns method from the ISwapper interface.
|
|
51
|
+
* It takes a standardized SwapQuote and returns standardized SwapIxns.
|
|
52
|
+
*/
|
|
53
|
+
async getSwapIxns(quote) {
|
|
54
|
+
// Cast the swapperData object back to its specific type
|
|
55
|
+
const { inputMint, outputMint, vault, quoteResponse } = quote.swapperData;
|
|
56
|
+
const { swapInstruction, addressLookupTableAddresses, setupInstructions, cleanupInstruction, } = await this.jupiterApi.swapInstructionsPost({
|
|
57
|
+
swapRequest: {
|
|
58
|
+
userPublicKey: vault.toBase58(),
|
|
59
|
+
payer: quote.payer.toBase58(),
|
|
60
|
+
quoteResponse: quoteResponse,
|
|
61
|
+
computeUnitPriceMicroLamports: 1,
|
|
62
|
+
wrapAndUnwrapSol: false, // TODO: may need to change this
|
|
63
|
+
destinationTokenAccount: undefined,
|
|
64
|
+
useSharedAccounts: false,
|
|
65
|
+
feeAccount: undefined,
|
|
66
|
+
skipUserAccountsRpcCalls: true,
|
|
67
|
+
},
|
|
68
|
+
});
|
|
69
|
+
const swapIx = transformResponseIx(swapInstruction);
|
|
70
|
+
const swapRemainingAccounts = swapIx.keys.map((key) => ({
|
|
71
|
+
pubkey: key.pubkey,
|
|
72
|
+
// If the account is the vault PDA, mark it as NOT a signer for the client transaction.
|
|
73
|
+
isSigner: key.pubkey.equals(vault) ? false : key.isSigner,
|
|
74
|
+
isWritable: key.isWritable,
|
|
75
|
+
}));
|
|
76
|
+
const swapData = swapIx.data;
|
|
77
|
+
const vaultAssetInReserve = (0, spl_token_1.getAssociatedTokenAddressSync)(inputMint, vault, true, token_1.TOKEN_PROGRAM_ID);
|
|
78
|
+
const vaultAssetOutReserve = (0, spl_token_1.getAssociatedTokenAddressSync)(outputMint, vault, true, token_1.TOKEN_PROGRAM_ID);
|
|
79
|
+
const vaultAccountInfo = await this.connection.getAccountInfo(vault);
|
|
80
|
+
if (!vaultAccountInfo) {
|
|
81
|
+
throw new Error(`Vault account not found: ${vault.toString()}`);
|
|
82
|
+
}
|
|
83
|
+
const vaultState = await (0, state_1.parseVaultAccount)(vault, vaultAccountInfo, this.connection);
|
|
84
|
+
const ixns = await this.clendVaultsProgram.swap(vault, vaultState.manager, inputMint, outputMint, vaultAssetInReserve, vaultAssetOutReserve, swapData, swapRemainingAccounts, addresses_1.JUPITER_SWAP_PROGRAM_ID);
|
|
85
|
+
const allIxs = [...ixns];
|
|
86
|
+
// Populate the standardized SwapIxns object
|
|
87
|
+
return {
|
|
88
|
+
ixns: allIxs,
|
|
89
|
+
luts: addressLookupTableAddresses.map((key) => new anchor_1.web3.PublicKey(key)),
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
exports.ClendVaultsJupSwapper = ClendVaultsJupSwapper;
|
|
94
|
+
// Helper functions remain the same
|
|
95
|
+
function transformResponseIxs(instructions) {
|
|
96
|
+
return instructions.map(transformResponseIx);
|
|
97
|
+
}
|
|
98
|
+
function transformResponseIx(instruction) {
|
|
99
|
+
return new anchor_1.web3.TransactionInstruction({
|
|
100
|
+
programId: new anchor_1.web3.PublicKey(instruction.programId),
|
|
101
|
+
keys: instruction.accounts.map((account) => ({
|
|
102
|
+
pubkey: new anchor_1.web3.PublicKey(account.pubkey),
|
|
103
|
+
isSigner: account.isSigner,
|
|
104
|
+
isWritable: account.isWritable,
|
|
105
|
+
})),
|
|
106
|
+
data: Buffer.from(instruction.data, "base64"),
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=swapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"swapper.js","sourceRoot":"","sources":["../src/swapper.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.d.ts
ADDED
package/dist/utils.js
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getDummyProvider = getDummyProvider;
|
|
4
|
+
const anchor_1 = require("@coral-xyz/anchor");
|
|
5
|
+
function getDummyProvider() {
|
|
6
|
+
const connection = new anchor_1.web3.Connection("http://localhost:8899");
|
|
7
|
+
const wallet = new anchor_1.Wallet(anchor_1.web3.Keypair.generate());
|
|
8
|
+
return new anchor_1.AnchorProvider(connection, wallet, {});
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;AAEA,4CAIC;AAND,8CAAiE;AAEjE,SAAgB,gBAAgB;IAC9B,MAAM,UAAU,GAAG,IAAI,aAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,IAAI,eAAM,CAAC,aAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnD,OAAO,IAAI,uBAAc,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;AACpD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@carrot-protocol/clend-vaults-rpc",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3-pub2-dev-be4bd59",
|
|
4
4
|
"description": "clend vaults rpc client",
|
|
5
|
-
"main": "index.js",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
6
7
|
"scripts": {
|
|
7
8
|
"clean": "rm -rf *.tgz dist node_modules package-lock.json",
|
|
8
9
|
"build": "npm i && tsc && npm pack",
|
|
@@ -11,6 +12,10 @@
|
|
|
11
12
|
"test": "for file in test/*.test.ts; do npx ts-mocha -p ./tsconfig.json -t 1000000 \"$file\" || exit 1; done",
|
|
12
13
|
"version-check": "current_version=$(node -p -e \"require('./package.json').version\") && if npm view @carrot-protocol/clend-vaults-rpc@$current_version > /dev/null 2>&1; then echo \"Version $current_version already exists. Please bump it in package.json\"; exit 1; fi"
|
|
13
14
|
},
|
|
15
|
+
"files": [
|
|
16
|
+
"dist",
|
|
17
|
+
"package.json"
|
|
18
|
+
],
|
|
14
19
|
"author": "",
|
|
15
20
|
"license": "ISC",
|
|
16
21
|
"devDependencies": {
|
package/.prettierignore
DELETED
package/makefile
DELETED
package/src/addresses.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { web3 } from "@coral-xyz/anchor";
|
|
2
|
-
|
|
3
|
-
// Program id from your IDL
|
|
4
|
-
export const CLEND_VAULTS_PROGRAM_ID = new web3.PublicKey(
|
|
5
|
-
"CVAU7TAbdfv7s6rxSmcNKg2AGswZAChXaovoKdvxVs5Q",
|
|
6
|
-
);
|
|
7
|
-
|
|
8
|
-
// PDA: ["vault", shares_mint]
|
|
9
|
-
export function getVaultPda(sharesMint: web3.PublicKey): web3.PublicKey {
|
|
10
|
-
return web3.PublicKey.findProgramAddressSync(
|
|
11
|
-
[Buffer.from("vault"), sharesMint.toBuffer()],
|
|
12
|
-
CLEND_VAULTS_PROGRAM_ID,
|
|
13
|
-
)[0];
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
// Jupiter program id used by your `swap` instruction
|
|
17
|
-
export const JUPITER_SWAP_PROGRAM_ID = new web3.PublicKey(
|
|
18
|
-
"JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4",
|
|
19
|
-
);
|