torchsdk 10.2.6 → 10.4.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/program.js CHANGED
@@ -3,142 +3,87 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getRaydiumMigrationAccounts = exports.getRaydiumObservationPda = exports.getRaydiumVaultPda = exports.getRaydiumLpMintPda = exports.getRaydiumPoolStatePda = exports.getRaydiumAuthorityPda = exports.orderTokensForRaydium = exports.calculateBondingProgress = exports.calculatePrice = exports.calculateSolOut = exports.calculateTokensOut = exports.getProgram = exports.getTreasuryLockTokenAccount = exports.getShortConfigPda = exports.getShortPositionPda = exports.getTreasuryLockPda = exports.getVaultWalletLinkPda = exports.getTorchVaultPda = exports.getCollateralVaultPda = exports.getLoanPositionPda = exports.getStarRecordPda = exports.getUserStatsPda = exports.getProtocolTreasuryPda = exports.getTokenTreasuryPda = exports.getVoteRecordPda = exports.getUserPositionPda = exports.getTreasuryTokenAccount = exports.getBondingCurvePda = exports.getGlobalConfigPda = exports.decodeString = exports.PROGRAM_ID = void 0;
6
+ exports.getRaydiumMigrationAccounts = exports.getRaydiumObservationPda = exports.getRaydiumVaultPda = exports.getRaydiumLpMintPda = exports.getRaydiumPoolStatePda = exports.getRaydiumAuthorityPda = exports.orderTokensForRaydium = exports.calculateBondingProgress = exports.calculatePrice = exports.calculateSolOut = exports.calculateTokensOut = exports.getProgram = exports.getTreasuryLockTokenAccount = exports.getShortConfigPda = exports.getShortPositionPda = exports.getTreasuryLockPda = exports.getVaultWalletLinkPda = exports.getTorchVaultPda = exports.getCollateralVaultPda = exports.getLoanPositionPda = exports.getStarRecordPda = exports.getUserStatsPda = exports.getProtocolTreasuryPda = exports.getTokenTreasuryPda = exports.getUserPositionPda = exports.getTreasuryTokenAccount = exports.getBondingCurvePda = exports.getGlobalConfigPda = exports.decodeString = exports.PROGRAM_ID = void 0;
7
7
  const anchor_1 = require("@coral-xyz/anchor");
8
8
  const web3_js_1 = require("@solana/web3.js");
9
9
  const constants_1 = require("./constants");
10
10
  Object.defineProperty(exports, "PROGRAM_ID", { enumerable: true, get: function () { return constants_1.PROGRAM_ID; } });
11
11
  const spl_token_1 = require("@solana/spl-token");
12
12
  const torch_market_json_1 = __importDefault(require("./torch_market.json"));
13
- // Helper to decode byte arrays to strings
14
- const decodeString = (bytes) => {
15
- return Buffer.from(bytes).toString('utf8').replace(/\0/g, '');
16
- };
13
+ // treasury SOL rate decays linearly from 17.5% at bonding start to 2.5% at completion
14
+ const TREASURY_SOL_MAX_BPS = 1750;
15
+ const TREASURY_SOL_MIN_BPS = 250;
16
+ // creator SOL share grows from 0.2% → 1% during bonding (carved from treasury rate)
17
+ const CREATOR_SOL_MIN_BPS = 20;
18
+ const CREATOR_SOL_MAX_BPS = 100;
19
+ const decodeString = (bytes) => Buffer.from(bytes).toString('utf8').replace(/\0/g, '');
17
20
  exports.decodeString = decodeString;
18
- // PDA derivation helpers
19
- const getGlobalConfigPda = () => {
20
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.GLOBAL_CONFIG_SEED)], constants_1.PROGRAM_ID);
21
- };
21
+ const getGlobalConfigPda = () => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.GLOBAL_CONFIG_SEED)], constants_1.PROGRAM_ID);
22
22
  exports.getGlobalConfigPda = getGlobalConfigPda;
23
- const getBondingCurvePda = (mint) => {
24
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.BONDING_CURVE_SEED), mint.toBuffer()], constants_1.PROGRAM_ID);
25
- };
23
+ const getBondingCurvePda = (mint) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.BONDING_CURVE_SEED), mint.toBuffer()], constants_1.PROGRAM_ID);
26
24
  exports.getBondingCurvePda = getBondingCurvePda;
27
- // [V13] Treasury's token account (ATA) - holds vote vault tokens during bonding
28
- const getTreasuryTokenAccount = (mint, treasury) => {
29
- return (0, spl_token_1.getAssociatedTokenAddressSync)(mint, treasury, true, // allowOwnerOffCurve (PDA)
30
- constants_1.TOKEN_2022_PROGRAM_ID);
31
- };
25
+ const getTreasuryTokenAccount = (mint, treasury) => (0, spl_token_1.getAssociatedTokenAddressSync)(mint, treasury, true, constants_1.TOKEN_2022_PROGRAM_ID);
32
26
  exports.getTreasuryTokenAccount = getTreasuryTokenAccount;
33
- const getUserPositionPda = (bondingCurve, user) => {
34
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.USER_POSITION_SEED), bondingCurve.toBuffer(), user.toBuffer()], constants_1.PROGRAM_ID);
35
- };
27
+ const getUserPositionPda = (bondingCurve, user) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.USER_POSITION_SEED), bondingCurve.toBuffer(), user.toBuffer()], constants_1.PROGRAM_ID);
36
28
  exports.getUserPositionPda = getUserPositionPda;
37
- const getVoteRecordPda = (bondingCurve, voter) => {
38
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.VOTE_SEED), bondingCurve.toBuffer(), voter.toBuffer()], constants_1.PROGRAM_ID);
39
- };
40
- exports.getVoteRecordPda = getVoteRecordPda;
41
- const getTokenTreasuryPda = (mint) => {
42
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.TREASURY_SEED), mint.toBuffer()], constants_1.PROGRAM_ID);
43
- };
29
+ const getTokenTreasuryPda = (mint) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.TREASURY_SEED), mint.toBuffer()], constants_1.PROGRAM_ID);
44
30
  exports.getTokenTreasuryPda = getTokenTreasuryPda;
45
- // V11: Protocol treasury PDA
46
- const getProtocolTreasuryPda = () => {
47
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.PROTOCOL_TREASURY_SEED)], constants_1.PROGRAM_ID);
48
- };
31
+ const getProtocolTreasuryPda = () => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.PROTOCOL_TREASURY_SEED)], constants_1.PROGRAM_ID);
49
32
  exports.getProtocolTreasuryPda = getProtocolTreasuryPda;
50
- // V4: User stats PDA
51
- const getUserStatsPda = (user) => {
52
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.USER_STATS_SEED), user.toBuffer()], constants_1.PROGRAM_ID);
53
- };
33
+ const getUserStatsPda = (user) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.USER_STATS_SEED), user.toBuffer()], constants_1.PROGRAM_ID);
54
34
  exports.getUserStatsPda = getUserStatsPda;
55
- // V10: Star record PDA (per user-token, not user-creator)
56
- const getStarRecordPda = (user, mint) => {
57
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.STAR_RECORD_SEED), user.toBuffer(), mint.toBuffer()], constants_1.PROGRAM_ID);
58
- };
35
+ const getStarRecordPda = (user, mint) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.STAR_RECORD_SEED), user.toBuffer(), mint.toBuffer()], constants_1.PROGRAM_ID);
59
36
  exports.getStarRecordPda = getStarRecordPda;
60
- // V2.4: Loan position PDA (per user-token)
61
- const getLoanPositionPda = (mint, borrower) => {
62
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.LOAN_SEED), mint.toBuffer(), borrower.toBuffer()], constants_1.PROGRAM_ID);
63
- };
37
+ const getLoanPositionPda = (mint, borrower) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.LOAN_SEED), mint.toBuffer(), borrower.toBuffer()], constants_1.PROGRAM_ID);
64
38
  exports.getLoanPositionPda = getLoanPositionPda;
65
- // V2.4: Collateral vault PDA (per token)
66
- const getCollateralVaultPda = (mint) => {
67
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.COLLATERAL_VAULT_SEED), mint.toBuffer()], constants_1.PROGRAM_ID);
68
- };
39
+ const getCollateralVaultPda = (mint) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.COLLATERAL_VAULT_SEED), mint.toBuffer()], constants_1.PROGRAM_ID);
69
40
  exports.getCollateralVaultPda = getCollateralVaultPda;
70
- // V2.0: Torch Vault PDA (per creator)
71
- const getTorchVaultPda = (creator) => {
72
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.TORCH_VAULT_SEED), creator.toBuffer()], constants_1.PROGRAM_ID);
73
- };
41
+ const getTorchVaultPda = (creator) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.TORCH_VAULT_SEED), creator.toBuffer()], constants_1.PROGRAM_ID);
74
42
  exports.getTorchVaultPda = getTorchVaultPda;
75
- // V2.0: Vault Wallet Link PDA (per wallet)
76
- const getVaultWalletLinkPda = (wallet) => {
77
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.VAULT_WALLET_LINK_SEED), wallet.toBuffer()], constants_1.PROGRAM_ID);
78
- };
43
+ const getVaultWalletLinkPda = (wallet) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.VAULT_WALLET_LINK_SEED), wallet.toBuffer()], constants_1.PROGRAM_ID);
79
44
  exports.getVaultWalletLinkPda = getVaultWalletLinkPda;
80
- // V27: Treasury Lock PDA (per mint)
81
- const getTreasuryLockPda = (mint) => {
82
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.TREASURY_LOCK_SEED), mint.toBuffer()], constants_1.PROGRAM_ID);
83
- };
45
+ const getTreasuryLockPda = (mint) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.TREASURY_LOCK_SEED), mint.toBuffer()], constants_1.PROGRAM_ID);
84
46
  exports.getTreasuryLockPda = getTreasuryLockPda;
85
- // V5: Short position PDA (per user-token)
86
- const getShortPositionPda = (mint, shorter) => {
87
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.SHORT_SEED), mint.toBuffer(), shorter.toBuffer()], constants_1.PROGRAM_ID);
88
- };
47
+ const getShortPositionPda = (mint, shorter) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.SHORT_SEED), mint.toBuffer(), shorter.toBuffer()], constants_1.PROGRAM_ID);
89
48
  exports.getShortPositionPda = getShortPositionPda;
90
- // V5: Short config PDA (per token)
91
- const getShortConfigPda = (mint) => {
92
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.SHORT_CONFIG_SEED), mint.toBuffer()], constants_1.PROGRAM_ID);
93
- };
49
+ const getShortConfigPda = (mint) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from(constants_1.SHORT_CONFIG_SEED), mint.toBuffer()], constants_1.PROGRAM_ID);
94
50
  exports.getShortConfigPda = getShortConfigPda;
95
- // V27: Treasury Lock's Token-2022 ATA
96
51
  const getTreasuryLockTokenAccount = (mint, treasuryLock) => {
97
52
  return (0, spl_token_1.getAssociatedTokenAddressSync)(mint, treasuryLock, true, // allowOwnerOffCurve (PDA)
98
53
  constants_1.TOKEN_2022_PROGRAM_ID);
99
54
  };
100
55
  exports.getTreasuryLockTokenAccount = getTreasuryLockTokenAccount;
101
- // Get program instance
102
- const getProgram = (provider) => {
103
- return new anchor_1.Program(torch_market_json_1.default, provider);
104
- };
56
+ const getProgram = (provider) => new anchor_1.Program(torch_market_json_1.default, provider);
105
57
  exports.getProgram = getProgram;
106
- // [V36] Treasury SOL rate: 17.5% 2.5% (was 15%→2.5% — increased to deepen treasury after vote vault removal)
107
- const TREASURY_SOL_MAX_BPS = 1750; // 17.5% at start
108
- const TREASURY_SOL_MIN_BPS = 250; // 2.5% at completion
109
- // [V34] Creator SOL share: 0.2% → 1% during bonding (carved from treasury rate)
110
- const CREATOR_SOL_MIN_BPS = 20; // 0.2% at start
111
- const CREATOR_SOL_MAX_BPS = 100; // 1% at completion
112
- // Calculate tokens out for a given SOL amount (V2.3: dynamic treasury rate, V34: creator share)
58
+ // tokens out for a given SOL amount
113
59
  const calculateTokensOut = (solAmount, virtualSolReserves, virtualTokenReserves, realSolReserves = BigInt(0), // V2.3: needed for dynamic rate calculation
114
60
  protocolFeeBps = 50, // [V4.0] 0.5% protocol fee (90% protocol treasury, 10% dev)
115
61
  treasuryFeeBps = 0, // [V10] 0% token treasury fee (removed — treasury funded by dynamic SOL rate + transfer fees)
116
62
  bondingTarget = BigInt('200000000000')) => {
117
- // Calculate protocol fee (1%)
63
+ // calculate protocol fee (1%)
118
64
  const protocolFee = (solAmount * BigInt(protocolFeeBps)) / BigInt(10000);
119
- // Calculate treasury fee (1%)
65
+ // calculate treasury fee (1%)
120
66
  const treasuryFee = (solAmount * BigInt(treasuryFeeBps)) / BigInt(10000);
121
67
  const solAfterFees = solAmount - protocolFee - treasuryFee;
122
- // [V25] Flat 20% → 5% treasury rate across all tiers
68
+ // flat 20% → 5% treasury rate across all tiers
123
69
  const resolvedTarget = bondingTarget === BigInt(0) ? BigInt('200000000000') : bondingTarget;
124
- // V2.3: Dynamic treasury rate - decays from 20% to 5% as bonding progresses
70
+ // dynamic treasury rate - decays from 20% to 5% as bonding progresses
125
71
  const rateRange = BigInt(TREASURY_SOL_MAX_BPS - TREASURY_SOL_MIN_BPS);
126
72
  const decay = (realSolReserves * rateRange) / resolvedTarget;
127
73
  const treasuryRateBps = Math.max(TREASURY_SOL_MAX_BPS - Number(decay), TREASURY_SOL_MIN_BPS);
128
- // [V34] Creator rate - grows from 0.2% to 1% (inverse of treasury decay)
74
+ // creator rate - grows from 0.2% to 1% (inverse of treasury decay)
129
75
  const creatorRange = BigInt(CREATOR_SOL_MAX_BPS - CREATOR_SOL_MIN_BPS);
130
76
  const creatorGrowth = (realSolReserves * creatorRange) / resolvedTarget;
131
77
  const creatorRateBps = Math.min(CREATOR_SOL_MIN_BPS + Number(creatorGrowth), CREATOR_SOL_MAX_BPS);
132
- // Split remaining SOL: total rate → creator + treasury + curve
78
+ // split remaining SOL: total rate → creator + treasury + curve
133
79
  const totalSplit = (solAfterFees * BigInt(treasuryRateBps)) / BigInt(10000);
134
80
  const solToCreator = (solAfterFees * BigInt(creatorRateBps)) / BigInt(10000);
135
81
  const solToTreasurySplit = totalSplit - solToCreator;
136
82
  const solToCurve = solAfterFees - totalSplit;
137
- // Total to treasury = flat fee + dynamic split (minus creator)
83
+ // total to treasury = flat fee + dynamic split (minus creator)
138
84
  const solToTreasury = treasuryFee + solToTreasurySplit;
139
- // Calculate tokens using constant product formula (based on SOL going to curve)
85
+ // constant product: tokens out for the SOL that enters the curve
140
86
  const tokensOut = (virtualTokenReserves * solToCurve) / (virtualSolReserves + solToCurve);
141
- // [V36] 100% of tokens go to buyer (vote vault removed)
142
87
  const tokensToUser = tokensOut;
143
88
  return {
144
89
  tokensOut,
@@ -153,32 +98,32 @@ bondingTarget = BigInt('200000000000')) => {
153
98
  };
154
99
  };
155
100
  exports.calculateTokensOut = calculateTokensOut;
156
- // Calculate SOL out for a given token amount (no sell fee)
101
+ // calculate SOL out for a given token amount (no sell fee)
157
102
  const calculateSolOut = (tokenAmount, virtualSolReserves, virtualTokenReserves) => {
158
- // Calculate SOL using inverse formula
103
+ // calculate SOL using inverse formula
159
104
  const solOut = (virtualSolReserves * tokenAmount) / (virtualTokenReserves + tokenAmount);
160
- // No fees on sells - user gets full amount
105
+ // no fees on sells - user gets full amount
161
106
  return { solOut, solToUser: solOut };
162
107
  };
163
108
  exports.calculateSolOut = calculateSolOut;
164
- // Calculate current token price in SOL
109
+ // calculate current token price in SOL
165
110
  const calculatePrice = (virtualSolReserves, virtualTokenReserves) => {
166
- // Price = virtualSol / virtualTokens
111
+ // price = virtualSol / virtualTokens
167
112
  return Number(virtualSolReserves) / Number(virtualTokenReserves);
168
113
  };
169
114
  exports.calculatePrice = calculatePrice;
170
- // Calculate bonding progress percentage
171
115
  const calculateBondingProgress = (realSolReserves) => {
172
116
  const target = BigInt('200000000000'); // 200 SOL in lamports
173
- if (realSolReserves >= target)
117
+ if (realSolReserves >= target) {
174
118
  return 100;
119
+ }
175
120
  return (Number(realSolReserves) / Number(target)) * 100;
176
121
  };
177
122
  exports.calculateBondingProgress = calculateBondingProgress;
178
123
  // ============================================================================
179
- // RAYDIUM CPMM PDA DERIVATION (V5)
124
+ // RAYDIUM CPMM PDA DERIVATION
180
125
  // ============================================================================
181
- // Order tokens for Raydium (token_0 < token_1 by pubkey bytes)
126
+ // order tokens for Raydium (token_0 < token_1 by pubkey bytes)
182
127
  const orderTokensForRaydium = (tokenA, tokenB) => {
183
128
  const aBytes = tokenA.toBuffer();
184
129
  const bBytes = tokenB.toBuffer();
@@ -190,36 +135,20 @@ const orderTokensForRaydium = (tokenA, tokenB) => {
190
135
  return { token0: tokenB, token1: tokenA, isToken0First: false };
191
136
  }
192
137
  }
193
- // Equal - shouldn't happen
138
+ // equal - shouldn't happen
194
139
  return { token0: tokenA, token1: tokenB, isToken0First: true };
195
140
  };
196
141
  exports.orderTokensForRaydium = orderTokensForRaydium;
197
- // Raydium authority PDA
198
- const getRaydiumAuthorityPda = () => {
199
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('vault_and_lp_mint_auth_seed')], (0, constants_1.getRaydiumCpmmProgram)());
200
- };
142
+ const getRaydiumAuthorityPda = () => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('vault_and_lp_mint_auth_seed')], (0, constants_1.getRaydiumCpmmProgram)());
201
143
  exports.getRaydiumAuthorityPda = getRaydiumAuthorityPda;
202
- // Raydium pool state PDA
203
- const getRaydiumPoolStatePda = (ammConfig, token0Mint, token1Mint) => {
204
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('pool'), ammConfig.toBuffer(), token0Mint.toBuffer(), token1Mint.toBuffer()], (0, constants_1.getRaydiumCpmmProgram)());
205
- };
144
+ const getRaydiumPoolStatePda = (ammConfig, token0Mint, token1Mint) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('pool'), ammConfig.toBuffer(), token0Mint.toBuffer(), token1Mint.toBuffer()], (0, constants_1.getRaydiumCpmmProgram)());
206
145
  exports.getRaydiumPoolStatePda = getRaydiumPoolStatePda;
207
- // Raydium LP mint PDA
208
- const getRaydiumLpMintPda = (poolState) => {
209
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('pool_lp_mint'), poolState.toBuffer()], (0, constants_1.getRaydiumCpmmProgram)());
210
- };
146
+ const getRaydiumLpMintPda = (poolState) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('pool_lp_mint'), poolState.toBuffer()], (0, constants_1.getRaydiumCpmmProgram)());
211
147
  exports.getRaydiumLpMintPda = getRaydiumLpMintPda;
212
- // Raydium pool vault PDA
213
- const getRaydiumVaultPda = (poolState, tokenMint) => {
214
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('pool_vault'), poolState.toBuffer(), tokenMint.toBuffer()], (0, constants_1.getRaydiumCpmmProgram)());
215
- };
148
+ const getRaydiumVaultPda = (poolState, tokenMint) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('pool_vault'), poolState.toBuffer(), tokenMint.toBuffer()], (0, constants_1.getRaydiumCpmmProgram)());
216
149
  exports.getRaydiumVaultPda = getRaydiumVaultPda;
217
- // Raydium observation state PDA
218
- const getRaydiumObservationPda = (poolState) => {
219
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('observation'), poolState.toBuffer()], (0, constants_1.getRaydiumCpmmProgram)());
220
- };
150
+ const getRaydiumObservationPda = (poolState) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('observation'), poolState.toBuffer()], (0, constants_1.getRaydiumCpmmProgram)());
221
151
  exports.getRaydiumObservationPda = getRaydiumObservationPda;
222
- // Get all Raydium accounts needed for migration
223
152
  const getRaydiumMigrationAccounts = (tokenMint) => {
224
153
  const { token0, token1, isToken0First } = (0, exports.orderTokensForRaydium)(constants_1.WSOL_MINT, tokenMint);
225
154
  const isWsolToken0 = isToken0First;
@@ -1 +1 @@
1
- {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
package/dist/quotes.d.ts CHANGED
@@ -6,22 +6,7 @@
6
6
  */
7
7
  import { Connection } from '@solana/web3.js';
8
8
  import { BuyQuoteResult, SellQuoteResult, BorrowQuoteResult } from './types';
9
- /**
10
- * Get a buy quote: how many tokens for a given SOL amount.
11
- *
12
- * Works for both bonding curve and migrated (Raydium DEX) tokens.
13
- */
14
9
  export declare const getBuyQuote: (connection: Connection, mintStr: string, amountSolLamports: number) => Promise<BuyQuoteResult>;
15
- /**
16
- * Get a sell quote: how much SOL for a given token amount.
17
- *
18
- * Works for both bonding curve and migrated (Raydium DEX) tokens.
19
- */
20
10
  export declare const getSellQuote: (connection: Connection, mintStr: string, amountTokens: number) => Promise<SellQuoteResult>;
21
- /**
22
- * Get a borrow quote: maximum borrowable SOL for a given collateral amount on a migrated token.
23
- *
24
- * @param collateralAmount - Collateral in token base units (with 6 decimals)
25
- */
26
11
  export declare const getBorrowQuote: (connection: Connection, mintStr: string, collateralAmount: number) => Promise<BorrowQuoteResult>;
27
12
  //# sourceMappingURL=quotes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"quotes.d.ts","sourceRoot":"","sources":["../src/quotes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAa,MAAM,iBAAiB,CAAA;AAIvD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AA2C5E;;;;GAIG;AACH,eAAO,MAAM,WAAW,GACtB,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,mBAAmB,MAAM,KACxB,OAAO,CAAC,cAAc,CAiExB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,GACvB,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,cAAc,MAAM,KACnB,OAAO,CAAC,eAAe,CAwDzB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,GACzB,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,kBAAkB,MAAM,KACvB,OAAO,CAAC,iBAAiB,CAqC3B,CAAA"}
1
+ {"version":3,"file":"quotes.d.ts","sourceRoot":"","sources":["../src/quotes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,UAAU,EAAa,MAAM,iBAAiB,CAAA;AASvD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAuC5E,eAAO,MAAM,WAAW,GACtB,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,mBAAmB,MAAM,KACxB,OAAO,CAAC,cAAc,CAgExB,CAAA;AAID,eAAO,MAAM,YAAY,GACvB,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,cAAc,MAAM,KACnB,OAAO,CAAC,eAAe,CA+CzB,CAAA;AAID,eAAO,MAAM,cAAc,GACzB,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,kBAAkB,MAAM,KACvB,OAAO,CAAC,iBAAiB,CA8B3B,CAAA"}
package/dist/quotes.js CHANGED
@@ -1,21 +1,19 @@
1
1
  "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getBorrowQuote = exports.getSellQuote = exports.getBuyQuote = void 0;
2
4
  /**
3
5
  * Quote calculations
4
6
  *
5
7
  * Get expected output for buy/sell operations.
6
8
  * Works for both bonding curve tokens and migrated (Raydium DEX) tokens.
7
9
  */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.getBorrowQuote = exports.getSellQuote = exports.getBuyQuote = void 0;
10
10
  const web3_js_1 = require("@solana/web3.js");
11
11
  const program_1 = require("./program");
12
12
  const constants_1 = require("./constants");
13
13
  const tokens_1 = require("./tokens");
14
- // Raydium CPMM trade fee: 0.25% (25 bps) — standard for Raydium CPMM pools
14
+ // raydium CPMM trade fee: 0.25% (25 bps) — standard for Raydium CPMM pools
15
15
  const RAYDIUM_FEE_BPS = 25;
16
- /**
17
- * Fetch Raydium pool reserves for a migrated token.
18
- */
16
+ // fetch Raydium pool reserves for a migrated token.
19
17
  const fetchPoolReserves = async (connection, mint) => {
20
18
  const raydium = (0, program_1.getRaydiumMigrationAccounts)(mint);
21
19
  const [vault0Info, vault1Info] = await Promise.all([
@@ -31,21 +29,15 @@ const fetchPoolReserves = async (connection, mint) => {
31
29
  return { solReserves: vault1Amount, tokenReserves: vault0Amount };
32
30
  }
33
31
  };
34
- /**
35
- * CPMM swap calculation: constant product with fee.
36
- *
37
- * effective_input = input * (10000 - fee_bps) / 10000
38
- * output = effective_input * reserve_out / (reserve_in + effective_input)
39
- */
32
+ // CPMM swap calculation: constant product with fee.
33
+ // effective_input = input * (10000 - fee_bps) / 10000
34
+ // output = effective_input * reserve_out / (reserve_in + effective_input)
40
35
  const cpmmSwap = (amountIn, reserveIn, reserveOut, feeBps = RAYDIUM_FEE_BPS) => {
41
36
  const effectiveInput = (amountIn * BigInt(10000 - feeBps)) / BigInt(10000);
42
37
  return (effectiveInput * reserveOut) / (reserveIn + effectiveInput);
43
38
  };
44
- /**
45
- * Get a buy quote: how many tokens for a given SOL amount.
46
- *
47
- * Works for both bonding curve and migrated (Raydium DEX) tokens.
48
- */
39
+ // get a buy quote: how many tokens for a given SOL amount.
40
+ // works for both bonding curve and migrated (Raydium DEX) tokens.
49
41
  const getBuyQuote = async (connection, mintStr, amountSolLamports) => {
50
42
  const mint = new web3_js_1.PublicKey(mintStr);
51
43
  const tokenData = await (0, tokens_1.fetchTokenRaw)(connection, mint);
@@ -53,16 +45,16 @@ const getBuyQuote = async (connection, mintStr, amountSolLamports) => {
53
45
  throw new Error(`Token not found: ${mintStr}`);
54
46
  }
55
47
  const { bondingCurve } = tokenData;
56
- // Migrated token — quote from Raydium DEX pool
48
+ // migrated token — quote from Raydium DEX pool
57
49
  if (bondingCurve.bonding_complete) {
58
50
  const { solReserves, tokenReserves } = await fetchPoolReserves(connection, mint);
59
51
  const amountSol = BigInt(amountSolLamports);
60
52
  const tokensOut = cpmmSwap(amountSol, solReserves, tokenReserves);
61
- // Price = sol per token (in lamports per base unit)
53
+ // price = sol per token (in lamports per base unit)
62
54
  const priceBefore = Number(solReserves) / Number(tokenReserves);
63
55
  const priceAfter = Number(solReserves + amountSol) / Number(tokenReserves - tokensOut);
64
56
  const priceImpact = ((priceAfter - priceBefore) / priceBefore) * 100;
65
- // Price in human-readable: SOL per display token (with 6 decimals)
57
+ // price in human-readable: SOL per display token (with 6 decimals)
66
58
  const pricePerTokenSol = (priceBefore * constants_1.TOKEN_MULTIPLIER) / constants_1.LAMPORTS_PER_SOL;
67
59
  const minOutput = (tokensOut * BigInt(99)) / BigInt(100);
68
60
  return {
@@ -76,7 +68,7 @@ const getBuyQuote = async (connection, mintStr, amountSolLamports) => {
76
68
  source: 'dex',
77
69
  };
78
70
  }
79
- // Bonding curve token — use bonding math
71
+ // bonding curve token — use bonding math
80
72
  const virtualSol = BigInt(bondingCurve.virtual_sol_reserves.toString());
81
73
  const virtualTokens = BigInt(bondingCurve.virtual_token_reserves.toString());
82
74
  const realSol = BigInt(bondingCurve.real_sol_reserves.toString());
@@ -99,11 +91,8 @@ const getBuyQuote = async (connection, mintStr, amountSolLamports) => {
99
91
  };
100
92
  };
101
93
  exports.getBuyQuote = getBuyQuote;
102
- /**
103
- * Get a sell quote: how much SOL for a given token amount.
104
- *
105
- * Works for both bonding curve and migrated (Raydium DEX) tokens.
106
- */
94
+ // get a sell quote: how much SOL for a given token amount.
95
+ // works for both bonding curve and migrated (Raydium DEX) tokens.
107
96
  const getSellQuote = async (connection, mintStr, amountTokens) => {
108
97
  const mint = new web3_js_1.PublicKey(mintStr);
109
98
  const tokenData = await (0, tokens_1.fetchTokenRaw)(connection, mint);
@@ -111,7 +100,7 @@ const getSellQuote = async (connection, mintStr, amountTokens) => {
111
100
  throw new Error(`Token not found: ${mintStr}`);
112
101
  }
113
102
  const { bondingCurve } = tokenData;
114
- // Migrated token — quote from Raydium DEX pool
103
+ // migrated token — quote from Raydium DEX pool
115
104
  if (bondingCurve.bonding_complete) {
116
105
  const { solReserves, tokenReserves } = await fetchPoolReserves(connection, mint);
117
106
  const tokenAmount = BigInt(amountTokens);
@@ -131,7 +120,7 @@ const getSellQuote = async (connection, mintStr, amountTokens) => {
131
120
  source: 'dex',
132
121
  };
133
122
  }
134
- // Bonding curve token — use bonding math
123
+ // bonding curve token — use bonding math
135
124
  const virtualSol = BigInt(bondingCurve.virtual_sol_reserves.toString());
136
125
  const virtualTokens = BigInt(bondingCurve.virtual_token_reserves.toString());
137
126
  const tokenAmount = BigInt(amountTokens);
@@ -151,11 +140,8 @@ const getSellQuote = async (connection, mintStr, amountTokens) => {
151
140
  };
152
141
  };
153
142
  exports.getSellQuote = getSellQuote;
154
- /**
155
- * Get a borrow quote: maximum borrowable SOL for a given collateral amount on a migrated token.
156
- *
157
- * @param collateralAmount - Collateral in token base units (with 6 decimals)
158
- */
143
+ // get a borrow quote: maximum borrowable SOL for a given collateral amount on a migrated token.
144
+ // collateralAmount in token base units (with 6 decimals).
159
145
  const getBorrowQuote = async (connection, mintStr, collateralAmount) => {
160
146
  const TRANSFER_FEE_BPS = 7;
161
147
  const [lending, detail] = await Promise.all([
@@ -169,13 +155,13 @@ const getBorrowQuote = async (connection, mintStr, collateralAmount) => {
169
155
  const ltvMaxSol = collateralValueSol * (lending.max_ltv_bps / 10000);
170
156
  // 2. Pool available
171
157
  const treasurySol = detail.treasury_sol_balance * constants_1.LAMPORTS_PER_SOL;
172
- const maxLendableSol = treasurySol * lending.utilization_cap_bps / 10000;
158
+ const maxLendableSol = (treasurySol * lending.utilization_cap_bps) / 10000;
173
159
  const totalLent = lending.total_sol_lent ?? 0;
174
160
  const poolAvailableSol = Math.max(0, maxLendableSol - totalLent);
175
161
  // 3. Per-user cap (accounts for transfer fee reducing net collateral)
176
162
  const netCollateral = collateralAmount * (1 - TRANSFER_FEE_BPS / 10000);
177
163
  const borrowMultiplier = lending.borrow_share_multiplier || 5;
178
- const perUserCapSol = maxLendableSol * netCollateral * borrowMultiplier / Number(constants_1.TOTAL_SUPPLY);
164
+ const perUserCapSol = (maxLendableSol * netCollateral * borrowMultiplier) / Number(constants_1.TOTAL_SUPPLY);
179
165
  const maxBorrowSol = Math.max(0, Math.min(ltvMaxSol, poolAvailableSol, perUserCapSol));
180
166
  return {
181
167
  max_borrow_sol: Math.floor(maxBorrowSol),
@@ -1 +1 @@
1
- {"version":3,"file":"quotes.js","sourceRoot":"","sources":["../src/quotes.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,6CAAuD;AACvD,uCAA4G;AAC5G,2CAA8E;AAC9E,qCAAkE;AAGlE,2EAA2E;AAC3E,MAAM,eAAe,GAAG,EAAE,CAAA;AAE1B;;GAEG;AACH,MAAM,iBAAiB,GAAG,KAAK,EAC7B,UAAsB,EACtB,IAAe,EAC0C,EAAE;IAC3D,MAAM,OAAO,GAAG,IAAA,qCAA2B,EAAC,IAAI,CAAC,CAAA;IACjD,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACjD,UAAU,CAAC,sBAAsB,CAAC,OAAO,CAAC,WAAW,CAAC;QACtD,UAAU,CAAC,sBAAsB,CAAC,OAAO,CAAC,WAAW,CAAC;KACvD,CAAC,CAAA;IACF,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACpD,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAEpD,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,CAAA;IACnE,CAAC;SAAM,CAAC;QACN,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,CAAA;IACnE,CAAC;AACH,CAAC,CAAA;AAED;;;;;GAKG;AACH,MAAM,QAAQ,GAAG,CACf,QAAgB,EAChB,SAAiB,EACjB,UAAkB,EAClB,SAAiB,eAAe,EACxB,EAAE;IACV,MAAM,cAAc,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAC1E,OAAO,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,GAAG,cAAc,CAAC,CAAA;AACrE,CAAC,CAAA;AAED;;;;GAIG;AACI,MAAM,WAAW,GAAG,KAAK,EAC9B,UAAsB,EACtB,OAAe,EACf,iBAAyB,EACA,EAAE;IAC3B,MAAM,IAAI,GAAG,IAAI,mBAAS,CAAC,OAAO,CAAC,CAAA;IACnC,MAAM,SAAS,GAAG,MAAM,IAAA,sBAAa,EAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IAEvD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAA;IAChD,CAAC;IAED,MAAM,EAAE,YAAY,EAAE,GAAG,SAAS,CAAA;IAElC,+CAA+C;IAC/C,IAAI,YAAY,CAAC,gBAAgB,EAAE,CAAC;QAClC,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;QAChF,MAAM,SAAS,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAA;QAC3C,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,CAAC,CAAA;QAEjE,oDAAoD;QACpD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA;QAC/D,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,MAAM,CAAC,aAAa,GAAG,SAAS,CAAC,CAAA;QACtF,MAAM,WAAW,GAAG,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,WAAW,CAAC,GAAG,GAAG,CAAA;QAEpE,mEAAmE;QACnE,MAAM,gBAAgB,GAAG,CAAC,WAAW,GAAG,4BAAgB,CAAC,GAAG,4BAAgB,CAAA;QAE5E,MAAM,SAAS,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QAExD,OAAO;YACL,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC;YAC5B,aAAa,EAAE,MAAM,CAAC,SAAS,CAAC;YAChC,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC;YACjC,gBAAgB,EAAE,CAAC;YACnB,mBAAmB,EAAE,gBAAgB;YACrC,oBAAoB,EAAE,WAAW;YACjC,iBAAiB,EAAE,MAAM,CAAC,SAAS,CAAC;YACpC,MAAM,EAAE,KAAK;SACd,CAAA;IACH,CAAC;IAED,yCAAyC;IACzC,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC,CAAA;IACvE,MAAM,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC5E,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAA;IACjE,MAAM,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAA;IACpE,MAAM,SAAS,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAA;IAE3C,MAAM,MAAM,GAAG,IAAA,4BAAkB,EAAC,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,aAAa,CAAC,CAAA;IAEzG,MAAM,WAAW,GAAG,IAAA,wBAAc,EAAC,UAAU,EAAE,aAAa,CAAC,CAAA;IAC7D,MAAM,UAAU,GAAG,IAAA,wBAAc,EAC/B,UAAU,GAAG,MAAM,CAAC,UAAU,EAC9B,aAAa,GAAG,MAAM,CAAC,SAAS,CACjC,CAAA;IACD,MAAM,WAAW,GAAG,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,WAAW,CAAC,GAAG,GAAG,CAAA;IACpE,MAAM,SAAS,GAAG,CAAC,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAElE,OAAO;QACL,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC;QAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;QACvC,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;QAC3C,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;QAC5C,mBAAmB,EAAE,CAAC,WAAW,GAAG,4BAAgB,CAAC,GAAG,4BAAgB;QACxE,oBAAoB,EAAE,WAAW;QACjC,iBAAiB,EAAE,MAAM,CAAC,SAAS,CAAC;QACpC,MAAM,EAAE,SAAS;KAClB,CAAA;AACH,CAAC,CAAA;AArEY,QAAA,WAAW,eAqEvB;AAED;;;;GAIG;AACI,MAAM,YAAY,GAAG,KAAK,EAC/B,UAAsB,EACtB,OAAe,EACf,YAAoB,EACM,EAAE;IAC5B,MAAM,IAAI,GAAG,IAAI,mBAAS,CAAC,OAAO,CAAC,CAAA;IACnC,MAAM,SAAS,GAAG,MAAM,IAAA,sBAAa,EAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IAEvD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAA;IAChD,CAAC;IAED,MAAM,EAAE,YAAY,EAAE,GAAG,SAAS,CAAA;IAElC,+CAA+C;IAC/C,IAAI,YAAY,CAAC,gBAAgB,EAAE,CAAC;QAClC,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;QAChF,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,CAAA;QAEhE,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA;QAC/D,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC,aAAa,GAAG,WAAW,CAAC,CAAA;QACrF,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,GAAG,UAAU,CAAC,GAAG,WAAW,CAAC,GAAG,GAAG,CAAA;QAEpE,MAAM,gBAAgB,GAAG,CAAC,WAAW,GAAG,4BAAgB,CAAC,GAAG,4BAAgB,CAAA;QAE5E,MAAM,SAAS,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QAErD,OAAO;YACL,YAAY,EAAE,MAAM,CAAC,WAAW,CAAC;YACjC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC;YAC1B,gBAAgB,EAAE,CAAC;YACnB,mBAAmB,EAAE,gBAAgB;YACrC,oBAAoB,EAAE,WAAW;YACjC,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC;YACjC,MAAM,EAAE,KAAK;SACd,CAAA;IACH,CAAC;IAED,yCAAyC;IACzC,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC,CAAA;IACvE,MAAM,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC5E,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;IAExC,MAAM,MAAM,GAAG,IAAA,yBAAe,EAAC,WAAW,EAAE,UAAU,EAAE,aAAa,CAAC,CAAA;IAEtE,MAAM,WAAW,GAAG,IAAA,wBAAc,EAAC,UAAU,EAAE,aAAa,CAAC,CAAA;IAC7D,MAAM,UAAU,GAAG,IAAA,wBAAc,EAAC,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,WAAW,CAAC,CAAA;IAC1F,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,GAAG,UAAU,CAAC,GAAG,WAAW,CAAC,GAAG,GAAG,CAAA;IACpE,MAAM,SAAS,GAAG,CAAC,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAE/D,OAAO;QACL,YAAY,EAAE,MAAM,CAAC,WAAW,CAAC;QACjC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;QACpC,gBAAgB,EAAE,CAAC;QACnB,mBAAmB,EAAE,CAAC,WAAW,GAAG,4BAAgB,CAAC,GAAG,4BAAgB;QACxE,oBAAoB,EAAE,WAAW;QACjC,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC;QACjC,MAAM,EAAE,SAAS;KAClB,CAAA;AACH,CAAC,CAAA;AA5DY,QAAA,YAAY,gBA4DxB;AAED;;;;GAIG;AACI,MAAM,cAAc,GAAG,KAAK,EACjC,UAAsB,EACtB,OAAe,EACf,gBAAwB,EACI,EAAE;IAC9B,MAAM,gBAAgB,GAAG,CAAC,CAAA;IAE1B,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC1C,IAAA,uBAAc,EAAC,UAAU,EAAE,OAAO,CAAC;QACnC,IAAA,iBAAQ,EAAC,UAAU,EAAE,OAAO,CAAC;KAC9B,CAAC,CAAA;IAEF,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAA;IACtC,MAAM,uBAAuB,GAAG,gBAAgB,GAAG,4BAAgB,CAAA;IACnE,MAAM,kBAAkB,GAAG,uBAAuB,GAAG,aAAa,GAAG,4BAAgB,CAAA;IAErF,aAAa;IACb,MAAM,SAAS,GAAG,kBAAkB,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,CAAA;IAEpE,oBAAoB;IACpB,MAAM,WAAW,GAAG,MAAM,CAAC,oBAAoB,GAAG,4BAAgB,CAAA;IAClE,MAAM,cAAc,GAAG,WAAW,GAAG,OAAO,CAAC,mBAAmB,GAAG,KAAK,CAAA;IACxE,MAAM,SAAS,GAAG,OAAO,CAAC,cAAc,IAAI,CAAC,CAAA;IAC7C,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC,CAAA;IAEhE,sEAAsE;IACtE,MAAM,aAAa,GAAG,gBAAgB,GAAG,CAAC,CAAC,GAAG,gBAAgB,GAAG,KAAK,CAAC,CAAA;IACvE,MAAM,gBAAgB,GAAG,OAAO,CAAC,uBAAuB,IAAI,CAAC,CAAA;IAC7D,MAAM,aAAa,GAAG,cAAc,GAAG,aAAa,GAAG,gBAAgB,GAAG,MAAM,CAAC,wBAAY,CAAC,CAAA;IAE9F,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC,CAAA;IAEtF,OAAO;QACL,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;QACxC,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;QACpD,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAClC,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;QAChD,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QAC3C,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,yBAAyB,EAAE,OAAO,CAAC,yBAAyB;KAC7D,CAAA;AACH,CAAC,CAAA;AAzCY,QAAA,cAAc,kBAyC1B"}
1
+ {"version":3,"file":"quotes.js","sourceRoot":"","sources":["../src/quotes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"said.d.ts","sourceRoot":"","sources":["../src/said.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE5C,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAQzD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAU,QAAQ,MAAM,KAAG,OAAO,CAAC,gBAAgB,CAgBzE,CAAA;AAMD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB,GAC7B,YAAY,UAAU,EACtB,WAAW,MAAM,EACjB,QAAQ,MAAM,KACb,OAAO,CAAC,aAAa,CAkDvB,CAAA"}
1
+ {"version":3,"file":"said.d.ts","sourceRoot":"","sources":["../src/said.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE5C,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAQzD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAU,QAAQ,MAAM,KAAG,OAAO,CAAC,gBAAgB,CAgBzE,CAAA;AAMD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB,GAC7B,YAAY,UAAU,EACtB,WAAW,MAAM,EACjB,QAAQ,MAAM,KACb,OAAO,CAAC,aAAa,CA8CvB,CAAA"}
package/dist/said.js CHANGED
@@ -75,14 +75,11 @@ const confirmTransaction = async (connection, signature, wallet) => {
75
75
  const isCreateToken = logs.some((log) => log.includes('Instruction: CreateToken') || log.includes('create_token'));
76
76
  const isBuy = logs.some((log) => log.includes('Instruction: Buy') || log.includes('Program log: Buy'));
77
77
  const isSell = logs.some((log) => log.includes('Instruction: Sell') || log.includes('Program log: Sell'));
78
- const isVote = logs.some((log) => log.includes('Instruction: Vote') || log.includes('Program log: Vote'));
79
78
  let event_type = 'unknown';
80
79
  if (isCreateToken)
81
80
  event_type = 'token_launch';
82
81
  else if (isBuy || isSell)
83
82
  event_type = 'trade_complete';
84
- else if (isVote)
85
- event_type = 'governance_vote';
86
83
  return { confirmed: true, event_type };
87
84
  };
88
85
  exports.confirmTransaction = confirmTransaction;
package/dist/said.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"said.js","sourceRoot":"","sources":["../src/said.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"said.js","sourceRoot":"","sources":["../src/said.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAGvD,OAAO,EACL,YAAY,EACZ,QAAQ,EAgBT,MAAM,WAAW,CAAA;AAalB,OAAO,EAEL,WAAW,EAEX,eAAe,EACf,eAAe,EAEf,aAAa,EAEb,cAAc,EAEd,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EAEjB,sBAAsB,EACtB,SAAS,EACT,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,SAAS,CAAA;AAoMhB,QAAA,MAAM,aAAa,GACjB,YAAY,UAAU,EACtB,MAAM,SAAS,KACd,OAAO,CAAC;IAAE,YAAY,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,CAwB1E,CAAA;AAMD;;GAEG;AACH,eAAO,MAAM,SAAS,GACpB,YAAY,UAAU,EACtB,SAAQ,eAAoB,KAC3B,OAAO,CAAC,eAAe,CAWzB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC3B,YAAY,UAAU,EACtB,SAAS,MAAM,KACd,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAUpC,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,GAAU,YAAY,UAAU,EAAE,SAAS,MAAM,KAAG,OAAO,CAAC,WAAW,CAiF3F,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,GACrB,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,QAAO,MAAW,KACjB,OAAO,CAAC,aAAa,CA6DvB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,GACtB,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,QAAO,MAAW,EAClB,OAAO;IAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,KAAK,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,KAC/D,OAAO,CAAC,cAAc,CA6JxB,CAAA;AA+BD;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GACzB,YAAY,UAAU,EACtB,SAAS,MAAM,KACd,OAAO,CAAC,WAAW,CA+ErB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAC1B,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,WAAW,MAAM,KAChB,OAAO,CAAC,gBAAgB,CA6F1B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC3B,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,WAAW,MAAM,KAChB,OAAO,CAAC,iBAAiB,CA6F3B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAC9B,YAAY,UAAU,EACtB,SAAS,MAAM,KACd,OAAO,CAAC,sBAAsB,CA8GhC,CAAA;AAMD;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GACnB,YAAY,UAAU,EACtB,YAAY,MAAM,KACjB,OAAO,CAAC,SAAS,GAAG,IAAI,CAuB1B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAC5B,YAAY,UAAU,EACtB,WAAW,MAAM,KAChB,OAAO,CAAC,SAAS,GAAG,IAAI,CA6B1B,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,YAAY,UAAU,EACtB,WAAW,MAAM,KAChB,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAiBpC,CAAA;AAGD,OAAO,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAMvD,OAAO,EACL,YAAY,EACZ,QAAQ,EAgBT,MAAM,WAAW,CAAA;AAYlB,OAAO,EAEL,WAAW,EAEX,eAAe,EACf,eAAe,EAEf,aAAa,EAEb,cAAc,EAEd,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EAEjB,sBAAsB,EACtB,SAAS,EACT,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,SAAS,CAAA;AAqMhB,QAAA,MAAM,aAAa,GACjB,YAAY,UAAU,EACtB,MAAM,SAAS,KACd,OAAO,CAAC;IAAE,YAAY,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,CAwB1E,CAAA;AAMD;;GAEG;AACH,eAAO,MAAM,SAAS,GACpB,YAAY,UAAU,EACtB,SAAQ,eAAoB,KAC3B,OAAO,CAAC,eAAe,CAWzB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC3B,YAAY,UAAU,EACtB,SAAS,MAAM,KACd,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAUpC,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,GAAU,YAAY,UAAU,EAAE,SAAS,MAAM,KAAG,OAAO,CAAC,WAAW,CA6F3F,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,GACrB,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,QAAO,MAAW,KACjB,OAAO,CAAC,aAAa,CA6DvB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,GACtB,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,QAAO,MAAW,EAClB,OAAO;IAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,KAAK,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,KAC/D,OAAO,CAAC,cAAc,CA2JxB,CAAA;AA+BD;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GACzB,YAAY,UAAU,EACtB,SAAS,MAAM,KACd,OAAO,CAAC,WAAW,CAkFrB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAC1B,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,WAAW,MAAM,KAChB,OAAO,CAAC,gBAAgB,CA6F1B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC3B,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,WAAW,MAAM,KAChB,OAAO,CAAC,iBAAiB,CA6F3B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAC9B,YAAY,UAAU,EACtB,SAAS,MAAM,KACd,OAAO,CAAC,sBAAsB,CAiHhC,CAAA;AAMD;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GACnB,YAAY,UAAU,EACtB,YAAY,MAAM,KACjB,OAAO,CAAC,SAAS,GAAG,IAAI,CAuB1B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAC5B,YAAY,UAAU,EACtB,WAAW,MAAM,KAChB,OAAO,CAAC,SAAS,GAAG,IAAI,CA2B1B,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,YAAY,UAAU,EACtB,WAAW,MAAM,KAChB,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAoBpC,CAAA;AAGD,OAAO,EAAE,aAAa,EAAE,CAAA"}