torchsdk 4.0.1 → 4.1.1
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/constants.d.ts +1 -6
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +7 -7
- package/dist/constants.js.map +1 -1
- package/dist/ephemeral.d.ts +3 -3
- package/dist/ephemeral.d.ts.map +1 -1
- package/dist/ephemeral.js +6 -1
- package/dist/ephemeral.js.map +1 -1
- package/dist/index.d.ts +2 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -5
- package/dist/index.js.map +1 -1
- package/dist/quotes.d.ts +5 -0
- package/dist/quotes.d.ts.map +1 -1
- package/dist/quotes.js +79 -2
- package/dist/quotes.js.map +1 -1
- package/dist/transactions.d.ts +26 -13
- package/dist/transactions.d.ts.map +1 -1
- package/dist/transactions.js +246 -176
- package/dist/transactions.js.map +1 -1
- package/dist/types.d.ts +27 -4
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/readme.md +99 -295
package/dist/constants.d.ts
CHANGED
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
import { PublicKey } from '@solana/web3.js';
|
|
2
2
|
export declare const PROGRAM_ID: PublicKey;
|
|
3
3
|
export declare const getRaydiumCpmmProgram: () => PublicKey;
|
|
4
|
-
/** @deprecated Use getRaydiumCpmmProgram() for dynamic network support */
|
|
5
|
-
export declare const RAYDIUM_CPMM_PROGRAM: PublicKey;
|
|
6
4
|
export declare const WSOL_MINT: PublicKey;
|
|
7
5
|
export declare const getRaydiumAmmConfig: () => PublicKey;
|
|
8
|
-
/** @deprecated Use getRaydiumAmmConfig() for dynamic network support */
|
|
9
|
-
export declare const RAYDIUM_AMM_CONFIG: PublicKey;
|
|
10
6
|
export declare const getRaydiumFeeReceiver: () => PublicKey;
|
|
11
|
-
/** @deprecated Use getRaydiumFeeReceiver() for dynamic network support */
|
|
12
|
-
export declare const RAYDIUM_FEE_RECEIVER: PublicKey;
|
|
13
7
|
export declare const MEMO_PROGRAM_ID: PublicKey;
|
|
8
|
+
export declare const getAddressLookupTableAddress: () => PublicKey;
|
|
14
9
|
export declare const TOKEN_2022_PROGRAM_ID: PublicKey;
|
|
15
10
|
export declare const GLOBAL_CONFIG_SEED = "global_config";
|
|
16
11
|
export declare const BONDING_CURVE_SEED = "bonding_curve";
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAG3C,eAAO,MAAM,UAAU,WAAgE,CAAA;AAUvF,eAAO,MAAM,qBAAqB,iBAIjC,CAAA;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAG3C,eAAO,MAAM,UAAU,WAAgE,CAAA;AAUvF,eAAO,MAAM,qBAAqB,iBAIjC,CAAA;AAED,eAAO,MAAM,SAAS,WAA+D,CAAA;AAGrF,eAAO,MAAM,mBAAmB,iBAI/B,CAAA;AAGD,eAAO,MAAM,qBAAqB,iBAIjC,CAAA;AAGD,eAAO,MAAM,eAAe,WAA+D,CAAA;AAI3F,eAAO,MAAM,4BAA4B,QAAO,SAI/C,CAAA;AAGD,eAAO,MAAM,qBAAqB,WAA+D,CAAA;AAGjG,eAAO,MAAM,kBAAkB,kBAAkB,CAAA;AACjD,eAAO,MAAM,kBAAkB,kBAAkB,CAAA;AAEjD,eAAO,MAAM,aAAa,aAAa,CAAA;AACvC,eAAO,MAAM,kBAAkB,kBAAkB,CAAA;AACjD,eAAO,MAAM,SAAS,SAAS,CAAA;AAC/B,eAAO,MAAM,sBAAsB,0BAA0B,CAAA;AAC7D,eAAO,MAAM,eAAe,eAAe,CAAA;AAC3C,eAAO,MAAM,gBAAgB,gBAAgB,CAAA;AAC7C,eAAO,MAAM,SAAS,SAAS,CAAA;AAC/B,eAAO,MAAM,qBAAqB,qBAAqB,CAAA;AACvD,eAAO,MAAM,gBAAgB,gBAAgB,CAAA;AAC7C,eAAO,MAAM,sBAAsB,iBAAiB,CAAA;AACpD,eAAO,MAAM,kBAAkB,kBAAkB,CAAA;AAGjD,eAAO,MAAM,YAAY,QAA6B,CAAA;AACtD,eAAO,MAAM,cAAc,IAAI,CAAA;AAG/B,eAAO,MAAM,YAAY,EAAE,MAAM,EAkChC,CAAA;AAGD,eAAO,MAAM,iBAAiB,EAAE,MAAM,EAGrC,CAAA;AAGD,eAAO,MAAM,gBAAgB,aAAgB,CAAA;AAC7C,eAAO,MAAM,gBAAgB,QAA+B,CAAA"}
|
package/dist/constants.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TOKEN_MULTIPLIER = exports.LAMPORTS_PER_SOL = exports.BLACKLISTED_MINTS = exports.LEGACY_MINTS = exports.TOKEN_DECIMALS = exports.TOTAL_SUPPLY = exports.TREASURY_LOCK_SEED = exports.VAULT_WALLET_LINK_SEED = exports.TORCH_VAULT_SEED = exports.COLLATERAL_VAULT_SEED = exports.LOAN_SEED = exports.STAR_RECORD_SEED = exports.USER_STATS_SEED = exports.PROTOCOL_TREASURY_SEED = exports.VOTE_SEED = exports.USER_POSITION_SEED = exports.TREASURY_SEED = exports.BONDING_CURVE_SEED = exports.GLOBAL_CONFIG_SEED = exports.TOKEN_2022_PROGRAM_ID = exports.
|
|
3
|
+
exports.TOKEN_MULTIPLIER = exports.LAMPORTS_PER_SOL = exports.BLACKLISTED_MINTS = exports.LEGACY_MINTS = exports.TOKEN_DECIMALS = exports.TOTAL_SUPPLY = exports.TREASURY_LOCK_SEED = exports.VAULT_WALLET_LINK_SEED = exports.TORCH_VAULT_SEED = exports.COLLATERAL_VAULT_SEED = exports.LOAN_SEED = exports.STAR_RECORD_SEED = exports.USER_STATS_SEED = exports.PROTOCOL_TREASURY_SEED = exports.VOTE_SEED = exports.USER_POSITION_SEED = exports.TREASURY_SEED = exports.BONDING_CURVE_SEED = exports.GLOBAL_CONFIG_SEED = exports.TOKEN_2022_PROGRAM_ID = exports.getAddressLookupTableAddress = exports.MEMO_PROGRAM_ID = exports.getRaydiumFeeReceiver = exports.getRaydiumAmmConfig = exports.WSOL_MINT = exports.getRaydiumCpmmProgram = exports.PROGRAM_ID = void 0;
|
|
4
4
|
const web3_js_1 = require("@solana/web3.js");
|
|
5
5
|
// Program ID - Mainnet/Devnet (deployed program)
|
|
6
6
|
exports.PROGRAM_ID = new web3_js_1.PublicKey('8hbUkonssSEEtkqzwM7ZcZrD9evacM92TcWSooVF4BeT');
|
|
@@ -14,8 +14,6 @@ const getRaydiumCpmmProgram = () => new web3_js_1.PublicKey(isDevnet()
|
|
|
14
14
|
? 'CPMDWBwJDtYax9qW7AyRuVC19Cc4L4Vcy4n2BHAbHkCW'
|
|
15
15
|
: 'CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C');
|
|
16
16
|
exports.getRaydiumCpmmProgram = getRaydiumCpmmProgram;
|
|
17
|
-
/** @deprecated Use getRaydiumCpmmProgram() for dynamic network support */
|
|
18
|
-
exports.RAYDIUM_CPMM_PROGRAM = (0, exports.getRaydiumCpmmProgram)();
|
|
19
17
|
// WSOL Mint (same on all networks)
|
|
20
18
|
exports.WSOL_MINT = new web3_js_1.PublicKey('So11111111111111111111111111111111111111112');
|
|
21
19
|
// Raydium AMM Config (different on mainnet vs devnet)
|
|
@@ -23,17 +21,19 @@ const getRaydiumAmmConfig = () => new web3_js_1.PublicKey(isDevnet()
|
|
|
23
21
|
? '9zSzfkYy6awexsHvmggeH36pfVUdDGyCcwmjT3AQPBj6'
|
|
24
22
|
: 'D4FPEruKEHrG5TenZ2mpDGEfu1iUvTiqBxvpU8HLBvC2');
|
|
25
23
|
exports.getRaydiumAmmConfig = getRaydiumAmmConfig;
|
|
26
|
-
/** @deprecated Use getRaydiumAmmConfig() for dynamic network support */
|
|
27
|
-
exports.RAYDIUM_AMM_CONFIG = (0, exports.getRaydiumAmmConfig)();
|
|
28
24
|
// Raydium Fee Receiver (different on mainnet vs devnet)
|
|
29
25
|
const getRaydiumFeeReceiver = () => new web3_js_1.PublicKey(isDevnet()
|
|
30
26
|
? 'G11FKBRaAkHAKuLCgLM6K6NUc9rTjPAznRCjZifrTQe2'
|
|
31
27
|
: 'DNXgeM9EiiaAbaWvwjHj9fQQLAX5ZsfHyvmYUNRAdNC8');
|
|
32
28
|
exports.getRaydiumFeeReceiver = getRaydiumFeeReceiver;
|
|
33
|
-
/** @deprecated Use getRaydiumFeeReceiver() for dynamic network support */
|
|
34
|
-
exports.RAYDIUM_FEE_RECEIVER = (0, exports.getRaydiumFeeReceiver)();
|
|
35
29
|
// SPL Memo Program
|
|
36
30
|
exports.MEMO_PROGRAM_ID = new web3_js_1.PublicKey('MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr');
|
|
31
|
+
// Address Lookup Table (different on mainnet vs devnet)
|
|
32
|
+
// These compress repeated accounts (program IDs, PDAs) from 32 bytes to 1 byte per tx.
|
|
33
|
+
const getAddressLookupTableAddress = () => new web3_js_1.PublicKey(isDevnet()
|
|
34
|
+
? '3umSStZSLJNk5QstxeQB12a2MSDh4o8RgSzT76gigJ8P'
|
|
35
|
+
: 'GQzbU32oN3znZa3uWFKGc9cBukpQbYYJSirKstMuFF3i');
|
|
36
|
+
exports.getAddressLookupTableAddress = getAddressLookupTableAddress;
|
|
37
37
|
// Token-2022 Program (for Token Extensions)
|
|
38
38
|
exports.TOKEN_2022_PROGRAM_ID = new web3_js_1.PublicKey('TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb');
|
|
39
39
|
// PDA Seeds (must match the Rust program)
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,6CAA2C;AAE3C,iDAAiD;AACpC,QAAA,UAAU,GAAG,IAAI,mBAAS,CAAC,8CAA8C,CAAC,CAAA;AAEvF,2EAA2E;AAC3E,6EAA6E;AAC7E,2EAA2E;AAC3E,MAAM,QAAQ,GAAG,GAAY,EAAE,CAC5B,UAAkB,CAAC,iBAAiB,KAAK,QAAQ;IAClD,CAAC,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,aAAa,KAAK,QAAQ,CAAC,CAAA;AAE7E,wDAAwD;AACjD,MAAM,qBAAqB,GAAG,GAAG,EAAE,CAAC,IAAI,mBAAS,CACtD,QAAQ,EAAE;IACR,CAAC,CAAC,8CAA8C;IAChD,CAAC,CAAC,8CAA8C,CACnD,CAAA;AAJY,QAAA,qBAAqB,yBAIjC;AACD,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|
package/dist/ephemeral.d.ts
CHANGED
|
@@ -12,14 +12,14 @@
|
|
|
12
12
|
* 3. SDK uses agent.sign(tx) for all vault operations
|
|
13
13
|
* 4. On shutdown, keys are GC'd. Authority unlinks the wallet.
|
|
14
14
|
*/
|
|
15
|
-
import { Keypair, Transaction } from '@solana/web3.js';
|
|
15
|
+
import { Keypair, Transaction, VersionedTransaction } from '@solana/web3.js';
|
|
16
16
|
export interface EphemeralAgent {
|
|
17
17
|
/** Base58 public key — pass this to linkWallet */
|
|
18
18
|
publicKey: string;
|
|
19
|
-
/** Raw keypair for advanced usage
|
|
19
|
+
/** Raw keypair for advanced usage */
|
|
20
20
|
keypair: Keypair;
|
|
21
21
|
/** Sign a transaction with the ephemeral key */
|
|
22
|
-
sign(tx: Transaction): Transaction;
|
|
22
|
+
sign(tx: Transaction | VersionedTransaction): Transaction | VersionedTransaction;
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
25
|
* Create an ephemeral agent keypair.
|
package/dist/ephemeral.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ephemeral.d.ts","sourceRoot":"","sources":["../src/ephemeral.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"ephemeral.d.ts","sourceRoot":"","sources":["../src/ephemeral.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAE5E,MAAM,WAAW,cAAc;IAC7B,kDAAkD;IAClD,SAAS,EAAE,MAAM,CAAA;IACjB,qCAAqC;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,gDAAgD;IAChD,IAAI,CAAC,EAAE,EAAE,WAAW,GAAG,oBAAoB,GAAG,WAAW,GAAG,oBAAoB,CAAA;CACjF;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,QAAO,cAcvC,CAAA"}
|
package/dist/ephemeral.js
CHANGED
|
@@ -30,7 +30,12 @@ const createEphemeralAgent = () => {
|
|
|
30
30
|
publicKey: keypair.publicKey.toBase58(),
|
|
31
31
|
keypair,
|
|
32
32
|
sign: (tx) => {
|
|
33
|
-
tx.
|
|
33
|
+
if (tx instanceof web3_js_1.VersionedTransaction) {
|
|
34
|
+
tx.sign([keypair]);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
tx.partialSign(keypair);
|
|
38
|
+
}
|
|
34
39
|
return tx;
|
|
35
40
|
},
|
|
36
41
|
};
|
package/dist/ephemeral.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ephemeral.js","sourceRoot":"","sources":["../src/ephemeral.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"ephemeral.js","sourceRoot":"","sources":["../src/ephemeral.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAEH,6CAA4E;AAW5E;;;;;;;GAOG;AACI,MAAM,oBAAoB,GAAG,GAAmB,EAAE;IACvD,MAAM,OAAO,GAAG,iBAAO,CAAC,QAAQ,EAAE,CAAA;IAClC,OAAO;QACL,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE;QACvC,OAAO;QACP,IAAI,EAAE,CAAC,EAAsC,EAAE,EAAE;YAC/C,IAAI,EAAE,YAAY,8BAAoB,EAAE,CAAC;gBACvC,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;YACpB,CAAC;iBAAM,CAAC;gBACN,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;YACzB,CAAC;YACD,OAAO,EAAE,CAAA;QACX,CAAC;KACF,CAAA;AACH,CAAC,CAAA;AAdY,QAAA,oBAAoB,wBAchC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -11,11 +11,10 @@
|
|
|
11
11
|
*/
|
|
12
12
|
export { getTokens, getToken, getTokenMetadata, getHolders, getMessages, getLendingInfo, getLoanPosition, getAllLoanPositions, getVault, getVaultForWallet, getVaultWalletLink, } from './tokens';
|
|
13
13
|
export { getBuyQuote, getSellQuote, getBorrowQuote } from './quotes';
|
|
14
|
-
export { buildBuyTransaction, buildDirectBuyTransaction, buildSellTransaction, buildCreateTokenTransaction, buildStarTransaction, buildMigrateTransaction, buildBorrowTransaction, buildRepayTransaction, buildLiquidateTransaction, buildClaimProtocolRewardsTransaction, buildReclaimFailedTokenTransaction, buildCreateVaultTransaction, buildDepositVaultTransaction, buildWithdrawVaultTransaction, buildLinkWalletTransaction, buildUnlinkWalletTransaction, buildTransferAuthorityTransaction, buildWithdrawTokensTransaction,
|
|
14
|
+
export { buildBuyTransaction, buildDirectBuyTransaction, sendBuy, sendDirectBuy, buildSellTransaction, buildCreateTokenTransaction, buildStarTransaction, buildMigrateTransaction, buildBorrowTransaction, buildRepayTransaction, buildLiquidateTransaction, buildClaimProtocolRewardsTransaction, buildReclaimFailedTokenTransaction, buildCreateVaultTransaction, buildDepositVaultTransaction, buildWithdrawVaultTransaction, buildLinkWalletTransaction, buildUnlinkWalletTransaction, buildTransferAuthorityTransaction, buildWithdrawTokensTransaction, buildHarvestFeesTransaction, buildSwapFeesToSolTransaction, } from './transactions';
|
|
15
15
|
export { createEphemeralAgent } from './ephemeral';
|
|
16
16
|
export type { EphemeralAgent } from './ephemeral';
|
|
17
17
|
export { verifySaid, confirmTransaction } from './said';
|
|
18
|
-
export type { TokenStatus, TokenSummary, TokenDetail, TokenSortOption, TokenStatusFilter, TokenListParams, TokenListResult, Holder, HoldersResult, BuyQuoteResult, SellQuoteResult, BorrowQuoteResult, BuyParams, DirectBuyParams, SellParams, CreateTokenParams, StarParams, MigrateParams, TransactionResult, BuyTransactionResult, CreateTokenResult, BorrowParams, RepayParams, LiquidateParams, ClaimProtocolRewardsParams, ReclaimParams, LendingInfo, LoanPositionInfo, LoanPositionWithKey, AllLoanPositionsResult, TokenMessage, MessagesResult, SaidVerification, ConfirmResult, VaultInfo, VaultWalletLinkInfo, CreateVaultParams, DepositVaultParams, WithdrawVaultParams, LinkWalletParams, UnlinkWalletParams, TransferAuthorityParams, WithdrawTokensParams,
|
|
19
|
-
export { getRaydiumMigrationAccounts } from './program';
|
|
18
|
+
export type { TokenStatus, TokenSummary, TokenDetail, TokenSortOption, TokenStatusFilter, TokenListParams, TokenListResult, Holder, HoldersResult, BuyQuoteResult, SellQuoteResult, BorrowQuoteResult, BuyParams, DirectBuyParams, SellParams, CreateTokenParams, StarParams, MigrateParams, TransactionResult, BuyTransactionResult, CreateTokenResult, BorrowParams, RepayParams, LiquidateParams, ClaimProtocolRewardsParams, ReclaimParams, LendingInfo, LoanPositionInfo, LoanPositionWithKey, AllLoanPositionsResult, TokenMessage, MessagesResult, SaidVerification, ConfirmResult, WalletAdapter, VaultInfo, VaultWalletLinkInfo, CreateVaultParams, DepositVaultParams, WithdrawVaultParams, LinkWalletParams, UnlinkWalletParams, TransferAuthorityParams, WithdrawTokensParams, HarvestFeesParams, SwapFeesToSolParams, TokenMetadataResult, } from './types';
|
|
20
19
|
export { PROGRAM_ID, LAMPORTS_PER_SOL, TOKEN_MULTIPLIER, TOTAL_SUPPLY, LEGACY_MINTS } from './constants';
|
|
21
20
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EACL,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,WAAW,EACX,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,QAAQ,EACR,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,UAAU,CAAA;AAGjB,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAGpE,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,oBAAoB,EACpB,2BAA2B,EAC3B,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,yBAAyB,EACzB,oCAAoC,EACpC,kCAAkC,EAClC,2BAA2B,EAC3B,4BAA4B,EAC5B,6BAA6B,EAC7B,0BAA0B,EAC1B,4BAA4B,EAC5B,iCAAiC,EACjC,8BAA8B,EAC9B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EACL,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,WAAW,EACX,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,QAAQ,EACR,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,UAAU,CAAA;AAGjB,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAGpE,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,OAAO,EACP,aAAa,EACb,oBAAoB,EACpB,2BAA2B,EAC3B,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,yBAAyB,EACzB,oCAAoC,EACpC,kCAAkC,EAClC,2BAA2B,EAC3B,4BAA4B,EAC5B,6BAA6B,EAC7B,0BAA0B,EAC1B,4BAA4B,EAC5B,iCAAiC,EACjC,8BAA8B,EAC9B,2BAA2B,EAC3B,6BAA6B,GAC9B,MAAM,gBAAgB,CAAA;AAGvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAClD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAGjD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAGvD,YAAY,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,MAAM,EACN,aAAa,EACb,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,eAAe,EACf,0BAA0B,EAC1B,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,SAAS,EACT,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* const tx = await buildBuyTransaction(connection, { mint, buyer, amount_sol: 100_000_000 });
|
|
12
12
|
*/
|
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.LEGACY_MINTS = exports.TOTAL_SUPPLY = exports.TOKEN_MULTIPLIER = exports.LAMPORTS_PER_SOL = exports.PROGRAM_ID = exports.
|
|
14
|
+
exports.LEGACY_MINTS = exports.TOTAL_SUPPLY = exports.TOKEN_MULTIPLIER = exports.LAMPORTS_PER_SOL = exports.PROGRAM_ID = exports.confirmTransaction = exports.verifySaid = exports.createEphemeralAgent = exports.buildSwapFeesToSolTransaction = exports.buildHarvestFeesTransaction = exports.buildWithdrawTokensTransaction = exports.buildTransferAuthorityTransaction = exports.buildUnlinkWalletTransaction = exports.buildLinkWalletTransaction = exports.buildWithdrawVaultTransaction = exports.buildDepositVaultTransaction = exports.buildCreateVaultTransaction = exports.buildReclaimFailedTokenTransaction = exports.buildClaimProtocolRewardsTransaction = exports.buildLiquidateTransaction = exports.buildRepayTransaction = exports.buildBorrowTransaction = exports.buildMigrateTransaction = exports.buildStarTransaction = exports.buildCreateTokenTransaction = exports.buildSellTransaction = exports.sendDirectBuy = exports.sendBuy = exports.buildDirectBuyTransaction = exports.buildBuyTransaction = exports.getBorrowQuote = exports.getSellQuote = exports.getBuyQuote = exports.getVaultWalletLink = exports.getVaultForWallet = exports.getVault = exports.getAllLoanPositions = exports.getLoanPosition = exports.getLendingInfo = exports.getMessages = exports.getHolders = exports.getTokenMetadata = exports.getToken = exports.getTokens = void 0;
|
|
15
15
|
// Token data
|
|
16
16
|
var tokens_1 = require("./tokens");
|
|
17
17
|
Object.defineProperty(exports, "getTokens", { enumerable: true, get: function () { return tokens_1.getTokens; } });
|
|
@@ -34,6 +34,8 @@ Object.defineProperty(exports, "getBorrowQuote", { enumerable: true, get: functi
|
|
|
34
34
|
var transactions_1 = require("./transactions");
|
|
35
35
|
Object.defineProperty(exports, "buildBuyTransaction", { enumerable: true, get: function () { return transactions_1.buildBuyTransaction; } });
|
|
36
36
|
Object.defineProperty(exports, "buildDirectBuyTransaction", { enumerable: true, get: function () { return transactions_1.buildDirectBuyTransaction; } });
|
|
37
|
+
Object.defineProperty(exports, "sendBuy", { enumerable: true, get: function () { return transactions_1.sendBuy; } });
|
|
38
|
+
Object.defineProperty(exports, "sendDirectBuy", { enumerable: true, get: function () { return transactions_1.sendDirectBuy; } });
|
|
37
39
|
Object.defineProperty(exports, "buildSellTransaction", { enumerable: true, get: function () { return transactions_1.buildSellTransaction; } });
|
|
38
40
|
Object.defineProperty(exports, "buildCreateTokenTransaction", { enumerable: true, get: function () { return transactions_1.buildCreateTokenTransaction; } });
|
|
39
41
|
Object.defineProperty(exports, "buildStarTransaction", { enumerable: true, get: function () { return transactions_1.buildStarTransaction; } });
|
|
@@ -50,7 +52,6 @@ Object.defineProperty(exports, "buildLinkWalletTransaction", { enumerable: true,
|
|
|
50
52
|
Object.defineProperty(exports, "buildUnlinkWalletTransaction", { enumerable: true, get: function () { return transactions_1.buildUnlinkWalletTransaction; } });
|
|
51
53
|
Object.defineProperty(exports, "buildTransferAuthorityTransaction", { enumerable: true, get: function () { return transactions_1.buildTransferAuthorityTransaction; } });
|
|
52
54
|
Object.defineProperty(exports, "buildWithdrawTokensTransaction", { enumerable: true, get: function () { return transactions_1.buildWithdrawTokensTransaction; } });
|
|
53
|
-
Object.defineProperty(exports, "buildVaultSwapTransaction", { enumerable: true, get: function () { return transactions_1.buildVaultSwapTransaction; } });
|
|
54
55
|
Object.defineProperty(exports, "buildHarvestFeesTransaction", { enumerable: true, get: function () { return transactions_1.buildHarvestFeesTransaction; } });
|
|
55
56
|
Object.defineProperty(exports, "buildSwapFeesToSolTransaction", { enumerable: true, get: function () { return transactions_1.buildSwapFeesToSolTransaction; } });
|
|
56
57
|
// Ephemeral Agent
|
|
@@ -60,9 +61,6 @@ Object.defineProperty(exports, "createEphemeralAgent", { enumerable: true, get:
|
|
|
60
61
|
var said_1 = require("./said");
|
|
61
62
|
Object.defineProperty(exports, "verifySaid", { enumerable: true, get: function () { return said_1.verifySaid; } });
|
|
62
63
|
Object.defineProperty(exports, "confirmTransaction", { enumerable: true, get: function () { return said_1.confirmTransaction; } });
|
|
63
|
-
// PDA derivation
|
|
64
|
-
var program_1 = require("./program");
|
|
65
|
-
Object.defineProperty(exports, "getRaydiumMigrationAccounts", { enumerable: true, get: function () { return program_1.getRaydiumMigrationAccounts; } });
|
|
66
64
|
// Constants (for advanced usage)
|
|
67
65
|
var constants_1 = require("./constants");
|
|
68
66
|
Object.defineProperty(exports, "PROGRAM_ID", { enumerable: true, get: function () { return constants_1.PROGRAM_ID; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AAEH,aAAa;AACb,mCAYiB;AAXf,mGAAA,SAAS,OAAA;AACT,kGAAA,QAAQ,OAAA;AACR,0GAAA,gBAAgB,OAAA;AAChB,oGAAA,UAAU,OAAA;AACV,qGAAA,WAAW,OAAA;AACX,wGAAA,cAAc,OAAA;AACd,yGAAA,eAAe,OAAA;AACf,6GAAA,mBAAmB,OAAA;AACnB,kGAAA,QAAQ,OAAA;AACR,2GAAA,iBAAiB,OAAA;AACjB,4GAAA,kBAAkB,OAAA;AAGpB,SAAS;AACT,mCAAoE;AAA3D,qGAAA,WAAW,OAAA;AAAE,sGAAA,YAAY,OAAA;AAAE,wGAAA,cAAc,OAAA;AAElD,uBAAuB;AACvB,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AAEH,aAAa;AACb,mCAYiB;AAXf,mGAAA,SAAS,OAAA;AACT,kGAAA,QAAQ,OAAA;AACR,0GAAA,gBAAgB,OAAA;AAChB,oGAAA,UAAU,OAAA;AACV,qGAAA,WAAW,OAAA;AACX,wGAAA,cAAc,OAAA;AACd,yGAAA,eAAe,OAAA;AACf,6GAAA,mBAAmB,OAAA;AACnB,kGAAA,QAAQ,OAAA;AACR,2GAAA,iBAAiB,OAAA;AACjB,4GAAA,kBAAkB,OAAA;AAGpB,SAAS;AACT,mCAAoE;AAA3D,qGAAA,WAAW,OAAA;AAAE,sGAAA,YAAY,OAAA;AAAE,wGAAA,cAAc,OAAA;AAElD,uBAAuB;AACvB,+CAuBuB;AAtBrB,mHAAA,mBAAmB,OAAA;AACnB,yHAAA,yBAAyB,OAAA;AACzB,uGAAA,OAAO,OAAA;AACP,6GAAA,aAAa,OAAA;AACb,oHAAA,oBAAoB,OAAA;AACpB,2HAAA,2BAA2B,OAAA;AAC3B,oHAAA,oBAAoB,OAAA;AACpB,uHAAA,uBAAuB,OAAA;AACvB,sHAAA,sBAAsB,OAAA;AACtB,qHAAA,qBAAqB,OAAA;AACrB,yHAAA,yBAAyB,OAAA;AACzB,oIAAA,oCAAoC,OAAA;AACpC,kIAAA,kCAAkC,OAAA;AAClC,2HAAA,2BAA2B,OAAA;AAC3B,4HAAA,4BAA4B,OAAA;AAC5B,6HAAA,6BAA6B,OAAA;AAC7B,0HAAA,0BAA0B,OAAA;AAC1B,4HAAA,4BAA4B,OAAA;AAC5B,iIAAA,iCAAiC,OAAA;AACjC,8HAAA,8BAA8B,OAAA;AAC9B,2HAAA,2BAA2B,OAAA;AAC3B,6HAAA,6BAA6B,OAAA;AAG/B,kBAAkB;AAClB,yCAAkD;AAAzC,iHAAA,oBAAoB,OAAA;AAG7B,gBAAgB;AAChB,+BAAuD;AAA9C,kGAAA,UAAU,OAAA;AAAE,0GAAA,kBAAkB,OAAA;AAqDvC,iCAAiC;AACjC,yCAAwG;AAA/F,uGAAA,UAAU,OAAA;AAAE,6GAAA,gBAAgB,OAAA;AAAE,6GAAA,gBAAgB,OAAA;AAAE,yGAAA,YAAY,OAAA;AAAE,yGAAA,YAAY,OAAA"}
|
package/dist/quotes.d.ts
CHANGED
|
@@ -2,15 +2,20 @@
|
|
|
2
2
|
* Quote calculations
|
|
3
3
|
*
|
|
4
4
|
* Get expected output for buy/sell operations.
|
|
5
|
+
* Works for both bonding curve tokens and migrated (Raydium DEX) tokens.
|
|
5
6
|
*/
|
|
6
7
|
import { Connection } from '@solana/web3.js';
|
|
7
8
|
import { BuyQuoteResult, SellQuoteResult, BorrowQuoteResult } from './types';
|
|
8
9
|
/**
|
|
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.
|
|
10
13
|
*/
|
|
11
14
|
export declare const getBuyQuote: (connection: Connection, mintStr: string, amountSolLamports: number) => Promise<BuyQuoteResult>;
|
|
12
15
|
/**
|
|
13
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.
|
|
14
19
|
*/
|
|
15
20
|
export declare const getSellQuote: (connection: Connection, mintStr: string, amountTokens: number) => Promise<SellQuoteResult>;
|
|
16
21
|
/**
|
package/dist/quotes.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quotes.d.ts","sourceRoot":"","sources":["../src/quotes.ts"],"names":[],"mappings":"AAAA
|
|
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,CAmExB,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"}
|
package/dist/quotes.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Quote calculations
|
|
4
4
|
*
|
|
5
5
|
* Get expected output for buy/sell operations.
|
|
6
|
+
* Works for both bonding curve tokens and migrated (Raydium DEX) tokens.
|
|
6
7
|
*/
|
|
7
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
9
|
exports.getBorrowQuote = exports.getSellQuote = exports.getBuyQuote = void 0;
|
|
@@ -10,8 +11,40 @@ const web3_js_1 = require("@solana/web3.js");
|
|
|
10
11
|
const program_1 = require("./program");
|
|
11
12
|
const constants_1 = require("./constants");
|
|
12
13
|
const tokens_1 = require("./tokens");
|
|
14
|
+
// Raydium CPMM trade fee: 0.25% (25 bps) — standard for Raydium CPMM pools
|
|
15
|
+
const RAYDIUM_FEE_BPS = 25;
|
|
16
|
+
/**
|
|
17
|
+
* Fetch Raydium pool reserves for a migrated token.
|
|
18
|
+
*/
|
|
19
|
+
const fetchPoolReserves = async (connection, mint) => {
|
|
20
|
+
const raydium = (0, program_1.getRaydiumMigrationAccounts)(mint);
|
|
21
|
+
const [vault0Info, vault1Info] = await Promise.all([
|
|
22
|
+
connection.getTokenAccountBalance(raydium.token0Vault),
|
|
23
|
+
connection.getTokenAccountBalance(raydium.token1Vault),
|
|
24
|
+
]);
|
|
25
|
+
const vault0Amount = BigInt(vault0Info.value.amount);
|
|
26
|
+
const vault1Amount = BigInt(vault1Info.value.amount);
|
|
27
|
+
if (raydium.isWsolToken0) {
|
|
28
|
+
return { solReserves: vault0Amount, tokenReserves: vault1Amount };
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
return { solReserves: vault1Amount, tokenReserves: vault0Amount };
|
|
32
|
+
}
|
|
33
|
+
};
|
|
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
|
+
*/
|
|
40
|
+
const cpmmSwap = (amountIn, reserveIn, reserveOut, feeBps = RAYDIUM_FEE_BPS) => {
|
|
41
|
+
const effectiveInput = (amountIn * BigInt(10000 - feeBps)) / BigInt(10000);
|
|
42
|
+
return (effectiveInput * reserveOut) / (reserveIn + effectiveInput);
|
|
43
|
+
};
|
|
13
44
|
/**
|
|
14
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.
|
|
15
48
|
*/
|
|
16
49
|
const getBuyQuote = async (connection, mintStr, amountSolLamports) => {
|
|
17
50
|
const mint = new web3_js_1.PublicKey(mintStr);
|
|
@@ -20,9 +53,31 @@ const getBuyQuote = async (connection, mintStr, amountSolLamports) => {
|
|
|
20
53
|
throw new Error(`Token not found: ${mintStr}`);
|
|
21
54
|
}
|
|
22
55
|
const { bondingCurve } = tokenData;
|
|
56
|
+
// Migrated token — quote from Raydium DEX pool
|
|
23
57
|
if (bondingCurve.bonding_complete) {
|
|
24
|
-
|
|
58
|
+
const { solReserves, tokenReserves } = await fetchPoolReserves(connection, mint);
|
|
59
|
+
const amountSol = BigInt(amountSolLamports);
|
|
60
|
+
const tokensOut = cpmmSwap(amountSol, solReserves, tokenReserves);
|
|
61
|
+
// Price = sol per token (in lamports per base unit)
|
|
62
|
+
const priceBefore = Number(solReserves) / Number(tokenReserves);
|
|
63
|
+
const priceAfter = Number(solReserves + amountSol) / Number(tokenReserves - tokensOut);
|
|
64
|
+
const priceImpact = ((priceAfter - priceBefore) / priceBefore) * 100;
|
|
65
|
+
// Price in human-readable: SOL per display token (with 6 decimals)
|
|
66
|
+
const pricePerTokenSol = (priceBefore * constants_1.TOKEN_MULTIPLIER) / constants_1.LAMPORTS_PER_SOL;
|
|
67
|
+
const minOutput = (tokensOut * BigInt(99)) / BigInt(100);
|
|
68
|
+
return {
|
|
69
|
+
input_sol: Number(amountSol),
|
|
70
|
+
output_tokens: Number(tokensOut),
|
|
71
|
+
tokens_to_user: Number(tokensOut),
|
|
72
|
+
tokens_to_treasury: 0,
|
|
73
|
+
protocol_fee_sol: 0,
|
|
74
|
+
price_per_token_sol: pricePerTokenSol,
|
|
75
|
+
price_impact_percent: priceImpact,
|
|
76
|
+
min_output_tokens: Number(minOutput),
|
|
77
|
+
source: 'dex',
|
|
78
|
+
};
|
|
25
79
|
}
|
|
80
|
+
// Bonding curve token — use bonding math
|
|
26
81
|
const virtualSol = BigInt(bondingCurve.virtual_sol_reserves.toString());
|
|
27
82
|
const virtualTokens = BigInt(bondingCurve.virtual_token_reserves.toString());
|
|
28
83
|
const realSol = BigInt(bondingCurve.real_sol_reserves.toString());
|
|
@@ -42,11 +97,14 @@ const getBuyQuote = async (connection, mintStr, amountSolLamports) => {
|
|
|
42
97
|
price_per_token_sol: (priceBefore * constants_1.TOKEN_MULTIPLIER) / constants_1.LAMPORTS_PER_SOL,
|
|
43
98
|
price_impact_percent: priceImpact,
|
|
44
99
|
min_output_tokens: Number(minOutput),
|
|
100
|
+
source: 'bonding',
|
|
45
101
|
};
|
|
46
102
|
};
|
|
47
103
|
exports.getBuyQuote = getBuyQuote;
|
|
48
104
|
/**
|
|
49
105
|
* Get a sell quote: how much SOL for a given token amount.
|
|
106
|
+
*
|
|
107
|
+
* Works for both bonding curve and migrated (Raydium DEX) tokens.
|
|
50
108
|
*/
|
|
51
109
|
const getSellQuote = async (connection, mintStr, amountTokens) => {
|
|
52
110
|
const mint = new web3_js_1.PublicKey(mintStr);
|
|
@@ -55,9 +113,27 @@ const getSellQuote = async (connection, mintStr, amountTokens) => {
|
|
|
55
113
|
throw new Error(`Token not found: ${mintStr}`);
|
|
56
114
|
}
|
|
57
115
|
const { bondingCurve } = tokenData;
|
|
116
|
+
// Migrated token — quote from Raydium DEX pool
|
|
58
117
|
if (bondingCurve.bonding_complete) {
|
|
59
|
-
|
|
118
|
+
const { solReserves, tokenReserves } = await fetchPoolReserves(connection, mint);
|
|
119
|
+
const tokenAmount = BigInt(amountTokens);
|
|
120
|
+
const solOut = cpmmSwap(tokenAmount, tokenReserves, solReserves);
|
|
121
|
+
const priceBefore = Number(solReserves) / Number(tokenReserves);
|
|
122
|
+
const priceAfter = Number(solReserves - solOut) / Number(tokenReserves + tokenAmount);
|
|
123
|
+
const priceImpact = ((priceBefore - priceAfter) / priceBefore) * 100;
|
|
124
|
+
const pricePerTokenSol = (priceBefore * constants_1.TOKEN_MULTIPLIER) / constants_1.LAMPORTS_PER_SOL;
|
|
125
|
+
const minOutput = (solOut * BigInt(99)) / BigInt(100);
|
|
126
|
+
return {
|
|
127
|
+
input_tokens: Number(tokenAmount),
|
|
128
|
+
output_sol: Number(solOut),
|
|
129
|
+
protocol_fee_sol: 0,
|
|
130
|
+
price_per_token_sol: pricePerTokenSol,
|
|
131
|
+
price_impact_percent: priceImpact,
|
|
132
|
+
min_output_sol: Number(minOutput),
|
|
133
|
+
source: 'dex',
|
|
134
|
+
};
|
|
60
135
|
}
|
|
136
|
+
// Bonding curve token — use bonding math
|
|
61
137
|
const virtualSol = BigInt(bondingCurve.virtual_sol_reserves.toString());
|
|
62
138
|
const virtualTokens = BigInt(bondingCurve.virtual_token_reserves.toString());
|
|
63
139
|
const tokenAmount = BigInt(amountTokens);
|
|
@@ -73,6 +149,7 @@ const getSellQuote = async (connection, mintStr, amountTokens) => {
|
|
|
73
149
|
price_per_token_sol: (priceBefore * constants_1.TOKEN_MULTIPLIER) / constants_1.LAMPORTS_PER_SOL,
|
|
74
150
|
price_impact_percent: priceImpact,
|
|
75
151
|
min_output_sol: Number(minOutput),
|
|
152
|
+
source: 'bonding',
|
|
76
153
|
};
|
|
77
154
|
};
|
|
78
155
|
exports.getSellQuote = getSellQuote;
|
package/dist/quotes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quotes.js","sourceRoot":"","sources":["../src/quotes.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"quotes.js","sourceRoot":"","sources":["../src/quotes.ts"],"names":[],"mappings":"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"}
|
package/dist/transactions.d.ts
CHANGED
|
@@ -4,8 +4,14 @@
|
|
|
4
4
|
* Build unsigned transactions for buy, sell, create, star, vault, and lending.
|
|
5
5
|
* Agents sign these locally and submit to the network.
|
|
6
6
|
*/
|
|
7
|
-
import { Connection } from '@solana/web3.js';
|
|
8
|
-
import { BuyParams, DirectBuyParams, SellParams, CreateTokenParams, StarParams, MigrateParams, BorrowParams, RepayParams, LiquidateParams, ClaimProtocolRewardsParams,
|
|
7
|
+
import { Connection, AddressLookupTableAccount } from '@solana/web3.js';
|
|
8
|
+
import { BuyParams, DirectBuyParams, SellParams, CreateTokenParams, StarParams, MigrateParams, BorrowParams, RepayParams, LiquidateParams, ClaimProtocolRewardsParams, HarvestFeesParams, SwapFeesToSolParams, CreateVaultParams, DepositVaultParams, WithdrawVaultParams, WithdrawTokensParams, LinkWalletParams, UnlinkWalletParams, TransferAuthorityParams, ReclaimParams, TransactionResult, BuyTransactionResult, CreateTokenResult, WalletAdapter } from './types';
|
|
9
|
+
/**
|
|
10
|
+
* Fetch the Torch ALT for this network. Cached per connection instance.
|
|
11
|
+
*/
|
|
12
|
+
export declare const fetchAddressLookupTable: (connection: Connection) => Promise<AddressLookupTableAccount | null>;
|
|
13
|
+
/** Clear the cached ALT (useful after deploying a new table). */
|
|
14
|
+
export declare const clearAltCache: () => void;
|
|
9
15
|
/**
|
|
10
16
|
* Build an unsigned vault-funded buy transaction.
|
|
11
17
|
*
|
|
@@ -27,6 +33,24 @@ export declare const buildBuyTransaction: (connection: Connection, params: BuyPa
|
|
|
27
33
|
* @returns Unsigned transaction and descriptive message
|
|
28
34
|
*/
|
|
29
35
|
export declare const buildDirectBuyTransaction: (connection: Connection, params: DirectBuyParams) => Promise<BuyTransactionResult>;
|
|
36
|
+
/**
|
|
37
|
+
* Build, simulate, and submit a vault-funded buy via signAndSendTransaction.
|
|
38
|
+
*
|
|
39
|
+
* This is the recommended path for Phantom and other browser wallets.
|
|
40
|
+
* The wallet receives the final, immutable transaction for atomic sign+send,
|
|
41
|
+
* which avoids false-positive "malicious dapp" warnings.
|
|
42
|
+
*
|
|
43
|
+
* @returns Transaction signature on success
|
|
44
|
+
*/
|
|
45
|
+
export declare const sendBuy: (connection: Connection, wallet: WalletAdapter, params: Omit<BuyParams, "buyer">) => Promise<string>;
|
|
46
|
+
/**
|
|
47
|
+
* Build, simulate, and submit a direct buy (no vault) via signAndSendTransaction.
|
|
48
|
+
*
|
|
49
|
+
* Same Phantom-friendly flow as sendBuy but buyer pays from their own wallet.
|
|
50
|
+
*
|
|
51
|
+
* @returns Transaction signature on success
|
|
52
|
+
*/
|
|
53
|
+
export declare const sendDirectBuy: (connection: Connection, wallet: WalletAdapter, params: Omit<DirectBuyParams, "buyer">) => Promise<string>;
|
|
30
54
|
/**
|
|
31
55
|
* Build an unsigned sell transaction.
|
|
32
56
|
*
|
|
@@ -195,17 +219,6 @@ export declare const buildWithdrawTokensTransaction: (connection: Connection, pa
|
|
|
195
219
|
* @returns Unsigned transaction and descriptive message
|
|
196
220
|
*/
|
|
197
221
|
export declare const buildMigrateTransaction: (connection: Connection, params: MigrateParams) => Promise<TransactionResult>;
|
|
198
|
-
/**
|
|
199
|
-
* Build an unsigned vault-routed DEX swap transaction.
|
|
200
|
-
*
|
|
201
|
-
* Executes a Raydium CPMM swap through the vault PDA for migrated Torch tokens.
|
|
202
|
-
* Full custody preserved — all value flows through the vault.
|
|
203
|
-
*
|
|
204
|
-
* @param connection - Solana RPC connection
|
|
205
|
-
* @param params - Swap parameters (mint, signer, vault_creator, amount_in, minimum_amount_out, is_buy)
|
|
206
|
-
* @returns Unsigned transaction and descriptive message
|
|
207
|
-
*/
|
|
208
|
-
export declare const buildVaultSwapTransaction: (connection: Connection, params: VaultSwapParams) => Promise<TransactionResult>;
|
|
209
222
|
/**
|
|
210
223
|
* Build an unsigned harvest-fees transaction.
|
|
211
224
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactions.d.ts","sourceRoot":"","sources":["../src/transactions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,UAAU,
|
|
1
|
+
{"version":3,"file":"transactions.d.ts","sourceRoot":"","sources":["../src/transactions.ts"],"names":[],"mappings":"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"}
|