@coinbarrel/sdk 1.0.0 → 1.1.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/README.md +91 -58
- package/dist/accounts.d.ts +1 -0
- package/dist/accounts.d.ts.map +1 -1
- package/dist/accounts.js +12 -5
- package/dist/accounts.js.map +1 -1
- package/dist/constants.d.ts +1 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +2 -0
- package/dist/constants.js.map +1 -1
- package/dist/curve.d.ts +5 -1
- package/dist/curve.d.ts.map +1 -1
- package/dist/curve.js +56 -28
- package/dist/curve.js.map +1 -1
- package/dist/index.d.ts +36 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +43 -0
- package/dist/index.js.map +1 -1
- package/dist/metadata.d.ts +113 -0
- package/dist/metadata.d.ts.map +1 -0
- package/dist/metadata.js +247 -0
- package/dist/metadata.js.map +1 -0
- package/dist/pool.d.ts.map +1 -1
- package/dist/pool.js +16 -10
- package/dist/pool.js.map +1 -1
- package/package.json +1 -1
package/dist/pool.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import { SystemProgram, TransactionInstruction, } from "@solana/web3.js";
|
|
6
6
|
import { TOKEN_PROGRAM_ID, getAssociatedTokenAddressSync, createAssociatedTokenAccountInstruction, createCloseAccountInstruction, getAccount, } from "@solana/spl-token";
|
|
7
7
|
import { DISCRIMINATORS, NATIVE_MINT } from "./constants.js";
|
|
8
|
-
import { getPoolPda, getPoolAuthorityPda,
|
|
8
|
+
import { getPoolPda, getPoolAuthorityPda, getHolderRewardPda, } from "./pda.js";
|
|
9
9
|
import { getPoolState, getPoolBalances } from "./accounts.js";
|
|
10
10
|
// ============= Buffer Helpers =============
|
|
11
11
|
function writeU64LE(n) {
|
|
@@ -85,15 +85,17 @@ export async function getSwapTokenToSolQuote(connection, tokenMint, tokensIn, pr
|
|
|
85
85
|
*/
|
|
86
86
|
export async function buildSwapSolToTokenInstruction(connection, params, programId) {
|
|
87
87
|
const { tokenMint, user, lamportsIn, minimumAmountOut } = params;
|
|
88
|
-
// Fetch pool state to get fee recipients (enforced on-chain)
|
|
88
|
+
// Fetch pool state to get fee recipients and vault addresses (enforced on-chain)
|
|
89
89
|
const state = await getPoolState(connection, tokenMint, programId);
|
|
90
90
|
if (!state) {
|
|
91
91
|
throw new Error("Pool not found for this token");
|
|
92
92
|
}
|
|
93
|
+
// Determine which vault is WSOL and which is the token based on stored mints
|
|
94
|
+
const isTokenANative = state.tokenAMint.equals(NATIVE_MINT);
|
|
95
|
+
const wsolVault = isTokenANative ? state.tokenAVault : state.tokenBVault;
|
|
96
|
+
const tokenVault = isTokenANative ? state.tokenBVault : state.tokenAVault;
|
|
93
97
|
const pool = getPoolPda(tokenMint, programId);
|
|
94
98
|
const authority = getPoolAuthorityPda(pool, programId);
|
|
95
|
-
const wsolVault = getPoolWsolVaultPda(pool, programId);
|
|
96
|
-
const tokenVault = getPoolTokenVaultPda(pool, tokenMint, programId);
|
|
97
99
|
const userTokenAta = getAssociatedTokenAddressSync(tokenMint, user);
|
|
98
100
|
const holderRewardAccount = getHolderRewardPda(tokenMint, user, programId);
|
|
99
101
|
const instructions = [];
|
|
@@ -138,15 +140,17 @@ export async function buildSwapSolToTokenInstruction(connection, params, program
|
|
|
138
140
|
*/
|
|
139
141
|
export async function buildSwapTokenToSolInstruction(connection, params, programId) {
|
|
140
142
|
const { tokenMint, user, amountIn, minimumLamportsOut } = params;
|
|
141
|
-
// Fetch pool state to get fee recipients (enforced on-chain)
|
|
143
|
+
// Fetch pool state to get fee recipients and vault addresses (enforced on-chain)
|
|
142
144
|
const state = await getPoolState(connection, tokenMint, programId);
|
|
143
145
|
if (!state) {
|
|
144
146
|
throw new Error("Pool not found for this token");
|
|
145
147
|
}
|
|
148
|
+
// Determine which vault is WSOL and which is the token based on stored mints
|
|
149
|
+
const isTokenANative = state.tokenAMint.equals(NATIVE_MINT);
|
|
150
|
+
const wsolVault = isTokenANative ? state.tokenAVault : state.tokenBVault;
|
|
151
|
+
const tokenVault = isTokenANative ? state.tokenBVault : state.tokenAVault;
|
|
146
152
|
const pool = getPoolPda(tokenMint, programId);
|
|
147
153
|
const authority = getPoolAuthorityPda(pool, programId);
|
|
148
|
-
const wsolVault = getPoolWsolVaultPda(pool, programId);
|
|
149
|
-
const tokenVault = getPoolTokenVaultPda(pool, tokenMint, programId);
|
|
150
154
|
const userTokenAta = getAssociatedTokenAddressSync(tokenMint, user);
|
|
151
155
|
const userWsolAta = getAssociatedTokenAddressSync(NATIVE_MINT, user);
|
|
152
156
|
const holderRewardAccount = getHolderRewardPda(tokenMint, user, programId);
|
|
@@ -193,15 +197,17 @@ export async function buildSwapTokenToSolInstruction(connection, params, program
|
|
|
193
197
|
*/
|
|
194
198
|
export async function buildSwapTokenToSolMaxInstruction(connection, params, programId) {
|
|
195
199
|
const { tokenMint, user } = params;
|
|
196
|
-
// Fetch pool state to get fee recipients (enforced on-chain)
|
|
200
|
+
// Fetch pool state to get fee recipients and vault addresses (enforced on-chain)
|
|
197
201
|
const state = await getPoolState(connection, tokenMint, programId);
|
|
198
202
|
if (!state) {
|
|
199
203
|
throw new Error("Pool not found for this token");
|
|
200
204
|
}
|
|
205
|
+
// Determine which vault is WSOL and which is the token based on stored mints
|
|
206
|
+
const isTokenANative = state.tokenAMint.equals(NATIVE_MINT);
|
|
207
|
+
const wsolVault = isTokenANative ? state.tokenAVault : state.tokenBVault;
|
|
208
|
+
const tokenVault = isTokenANative ? state.tokenBVault : state.tokenAVault;
|
|
201
209
|
const pool = getPoolPda(tokenMint, programId);
|
|
202
210
|
const authority = getPoolAuthorityPda(pool, programId);
|
|
203
|
-
const wsolVault = getPoolWsolVaultPda(pool, programId);
|
|
204
|
-
const tokenVault = getPoolTokenVaultPda(pool, tokenMint, programId);
|
|
205
211
|
const userTokenAta = getAssociatedTokenAddressSync(tokenMint, user);
|
|
206
212
|
const userWsolAta = getAssociatedTokenAddressSync(NATIVE_MINT, user);
|
|
207
213
|
const holderRewardAccount = getHolderRewardPda(tokenMint, user, programId);
|
package/dist/pool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool.js","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAGL,aAAa,EACb,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,gBAAgB,EAEhB,6BAA6B,EAC7B,uCAAuC,EAEvC,6BAA6B,EAC7B,UAAU,GACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,
|
|
1
|
+
{"version":3,"file":"pool.js","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"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"}
|