sol-parser-sdk-nodejs 0.4.0 → 0.5.5
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 +22 -4
- package/README_CN.md +22 -4
- package/dist/accounts/mod.d.ts +1 -0
- package/dist/accounts/mod.js +53 -6
- package/dist/accounts/pumpfun.d.ts +16 -0
- package/dist/accounts/pumpfun.js +538 -0
- package/dist/accounts/rust_aliases.d.ts +1 -0
- package/dist/accounts/rust_aliases.js +3 -1
- package/dist/core/account_dispatcher_rpc.js +5 -26
- package/dist/core/account_fill_meteora.d.ts +1 -2
- package/dist/core/account_fill_meteora.js +0 -2
- package/dist/core/account_fill_pumpfun.js +92 -13
- package/dist/core/account_fill_pumpswap.js +50 -0
- package/dist/core/account_fill_raydium_launchlab.d.ts +4 -0
- package/dist/core/account_fill_raydium_launchlab.js +20 -0
- package/dist/core/dex_event.d.ts +283 -17
- package/dist/core/pumpfun_fee_enrich.d.ts +5 -0
- package/dist/core/pumpfun_fee_enrich.js +131 -0
- package/dist/core/unified_parser.js +2 -0
- package/dist/grpc/client.d.ts +26 -1
- package/dist/grpc/client.js +279 -0
- package/dist/grpc/log_instr_dedup.d.ts +2 -0
- package/dist/grpc/log_instr_dedup.js +378 -0
- package/dist/grpc/order_buffer.d.ts +27 -0
- package/dist/grpc/order_buffer.js +166 -0
- package/dist/grpc/program_ids.d.ts +5 -3
- package/dist/grpc/program_ids.js +12 -5
- package/dist/grpc/types.d.ts +17 -6
- package/dist/grpc/types.js +265 -153
- package/dist/grpc/yellowstone_parse.d.ts +3 -1
- package/dist/grpc/yellowstone_parse.js +13 -10
- package/dist/index.d.ts +9 -7
- package/dist/index.js +33 -7
- package/dist/instr/meteora_damm_ix.js +4 -1
- package/dist/instr/meteora_dlmm_ix.d.ts +2 -0
- package/dist/instr/meteora_dlmm_ix.js +134 -0
- package/dist/instr/meteora_pools_ix.d.ts +2 -0
- package/dist/instr/meteora_pools_ix.js +78 -0
- package/dist/instr/mod.d.ts +4 -1
- package/dist/instr/mod.js +45 -18
- package/dist/instr/program_ids.d.ts +1 -5
- package/dist/instr/program_ids.js +4 -6
- package/dist/instr/pump_fees_ix.d.ts +2 -0
- package/dist/instr/pump_fees_ix.js +166 -0
- package/dist/instr/pumpfun_ix.js +272 -1
- package/dist/instr/pumpswap_ix.js +36 -2
- package/dist/instr/raydium_clmm_ix.js +73 -52
- package/dist/instr/raydium_launchlab_ix.d.ts +8 -0
- package/dist/instr/raydium_launchlab_ix.js +125 -0
- package/dist/instr/rust_aliases.d.ts +3 -0
- package/dist/instr/rust_aliases.js +7 -1
- package/dist/logs/discriminator_lut.d.ts +1 -1
- package/dist/logs/discriminator_lut.js +2 -0
- package/dist/logs/optimized_matcher.js +130 -25
- package/dist/logs/program_log_discriminators.d.ts +10 -0
- package/dist/logs/program_log_discriminators.js +10 -0
- package/dist/logs/pump.d.ts +2 -0
- package/dist/logs/pump.js +122 -2
- package/dist/logs/pump_amm.js +1 -1
- package/dist/logs/pump_fees.d.ts +23 -0
- package/dist/logs/pump_fees.js +364 -0
- package/dist/logs/raydium_launchlab.d.ts +10 -0
- package/dist/logs/raydium_launchlab.js +84 -0
- package/dist/rpc_transaction.d.ts +2 -0
- package/dist/rpc_transaction.js +14 -6
- package/dist/shredstream/client.d.ts +4 -1
- package/dist/shredstream/client.js +18 -14
- package/dist/shredstream/index.d.ts +1 -1
- package/dist/shredstream/index.js +1 -1
- package/dist/shredstream/instruction_parse.d.ts +3 -3
- package/dist/shredstream/instruction_parse.js +38 -13
- package/dist/util/market.d.ts +18 -0
- package/dist/util/market.js +54 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -5,8 +5,10 @@ export { bigintToJsonReplacer, dexEventToJsonString } from "./core/json_utils.js
|
|
|
5
5
|
export type { EventMetadata } from "./core/metadata.js";
|
|
6
6
|
export type { ParseError } from "./core/error.js";
|
|
7
7
|
export { formatParseError } from "./core/error.js";
|
|
8
|
+
export { enrichCreateV2FromCreateEvents, enrichCreateV2ObservedFeeRecipient, enrichPumpfunTradesFromCreateInstructions, enrichPumpfunSameTxPostMerge, } from "./core/pumpfun_fee_enrich.js";
|
|
8
9
|
export { parseTransactionEvents, parseLogsOnly, parseTransactionWithListener, parseTransactionEventsStreaming, parseLogsStreaming, parseTransactionWithStreamingListener, parseLog, parseLog as parse_log, nowUs, type EventListener, type StreamingEventListener, } from "./core/unified_parser.js";
|
|
9
10
|
export { nowMicros, nowNanos, elapsedMicrosSince } from "./core/clock.js";
|
|
11
|
+
export { sqrtPriceX64ToPrice, vaultPriceFromBalances, normalizeBuySellFromTokenDelta, normalizeBuySellFromInputMint, type NumericAmount, type NormalizedTradeSide, } from "./util/market.js";
|
|
10
12
|
export { AccountPubkeyCache, buildAccountPubkeysWithCache, buildAccountPubkeysWithCache as build_account_pubkeys_with_cache, } from "./core/account_pubkey_cache.js";
|
|
11
13
|
export { warmupParser, isWarmedUp } from "./warmup.js";
|
|
12
14
|
export { parseTransactionFromRpc, parseRpcTransaction, fillAccountsFromTransactionDataRpc, fillDataRpc, applyAccountFillsToLogEvents, convertRpcToGrpc, convert_rpc_to_grpc, type ConvertRpcToGrpcOk, type ConvertRpcToGrpcErr, } from "./rpc_parser.js";
|
|
@@ -14,10 +16,10 @@ export { parseDexEventsFromGrpcTransactionInfo, grpcTxIndexFromInfo, } from "./g
|
|
|
14
16
|
export { pubkeyBytesToBs58, collectAccountKeysBs58, lamportBalanceDeltas, heuristicSolCounterpartiesForWatchedKeys, tokenBalanceRawAmount, splTokenCounterpartyByOwner, collectWatchTransferCounterpartyPairs, tryYellowstoneSignature, } from "./grpc/transaction_meta.js";
|
|
15
17
|
/** Rust `grpc::transaction_meta` 蛇形命名别名(便于从 Rust 迁移) */
|
|
16
18
|
export { pubkeyBytesToBs58 as pubkey_bytes_to_bs58, collectAccountKeysBs58 as collect_account_keys_bs58, lamportBalanceDeltas as lamport_balance_deltas, heuristicSolCounterpartiesForWatchedKeys as heuristic_sol_counterparties_for_watched_keys, tokenBalanceRawAmount as token_balance_raw_amount, splTokenCounterpartyByOwner as spl_token_counterparty_by_owner, collectWatchTransferCounterpartyPairs as collect_watch_transfer_counterparty_pairs, tryYellowstoneSignature as try_yellowstone_signature, } from "./grpc/transaction_meta.js";
|
|
17
|
-
export { type OrderMode, type Protocol, type ClientConfig, type StreamingConfig, type TransactionFilter, type AccountFilter, type AccountFilterData, type AccountFilterMemcmp, type SlotFilter, type EventType, type StreamingEventType, type EventTypeFilter, defaultClientConfig, lowLatencyClientConfig, highThroughputClientConfig, newTransactionFilter, transactionFilterFromProgramIds, newAccountFilter, newSlotFilter, slotFilterMinSlot, slotFilterMaxSlot, accountFilterFromProgramOwners, accountFilterMemcmp, eventTypeFilterIncludeOnly, eventTypeFilterExclude, eventTypeFilterIncludesPumpfun, eventTypeFilterIncludesPumpswap, eventTypeFilterIncludesMeteoraDammV2, eventTypeFilterIncludesRaydiumClmm, eventTypeFilterIncludesRaydiumCpmm, eventTypeFilterIncludesRaydiumAmmV4, eventTypeFilterIncludesOrcaWhirlpool,
|
|
19
|
+
export { type OrderMode, type Protocol, type ClientConfig, type StreamingConfig, type TransactionFilter, type AccountFilter, type AccountFilterData, type AccountFilterMemcmp, type SlotFilter, type EventType, type StreamingEventType, type EventTypeFilter, defaultClientConfig, lowLatencyClientConfig, highThroughputClientConfig, newTransactionFilter, transactionFilterFromProgramIds, newAccountFilter, newSlotFilter, slotFilterMinSlot, slotFilterMaxSlot, accountFilterFromProgramOwners, accountFilterMemcmp, eventTypeFilterIncludeOnly, eventTypeFilterExclude, eventTypeFilterIncludesPumpfun, eventTypeFilterIncludesPumpswap, eventTypeFilterIncludesMeteoraDammV2, eventTypeFilterIncludesMeteoraDbc, eventTypeFilterIncludesMeteoraPools, eventTypeFilterIncludesMeteoraDlmm, eventTypeFilterIncludesRaydiumClmm, eventTypeFilterIncludesRaydiumCpmm, eventTypeFilterIncludesRaydiumAmmV4, eventTypeFilterIncludesOrcaWhirlpool, eventTypeFilterIncludesRaydiumLaunchlab, eventTypeFilterIncludesPumpFees, eventTypeFilterAllowsInstructionParsing, ALL_EVENT_TYPES, } from "./grpc/types.js";
|
|
18
20
|
export { ALL_EVENT_TYPES as all_event_types } from "./grpc/types.js";
|
|
19
21
|
export type { StreamingConfig as streaming_config } from "./grpc/types.js";
|
|
20
|
-
export { PROTOCOL_PROGRAM_IDS, PUMPFUN_PROGRAM_ID, PUMPSWAP_PROGRAM_ID, PUMPSWAP_FEES_PROGRAM_ID,
|
|
22
|
+
export { PROTOCOL_PROGRAM_IDS, PUMPFUN_PROGRAM_ID, PUMPSWAP_PROGRAM_ID, PUMPSWAP_FEES_PROGRAM_ID, PUMP_FEES_PROGRAM_ID, RAYDIUM_LAUNCHLAB_PROGRAM_ID, RAYDIUM_CPMM_PROGRAM_ID, RAYDIUM_CLMM_PROGRAM_ID, RAYDIUM_AMM_V4_PROGRAM_ID, ORCA_WHIRLPOOL_PROGRAM_ID, METEORA_POOLS_PROGRAM_ID, METEORA_DAMM_V2_PROGRAM_ID, METEORA_DLMM_PROGRAM_ID, METEORA_DBC_PROGRAM_ID, getProgramIdsForProtocols, transactionFilterForProtocols, accountFilterForProtocols, } from "./grpc/program_ids.js";
|
|
21
23
|
export { PROTOCOL_PROGRAM_IDS as protocol_program_ids, getProgramIdsForProtocols as get_program_ids_for_protocols, transactionFilterForProtocols as transaction_filter_for_protocols, accountFilterForProtocols as account_filter_for_protocols, } from "./grpc/program_ids.js";
|
|
22
24
|
/** Rust `grpc::types` 蛇形命名别名 */
|
|
23
25
|
export { defaultClientConfig as default_client_config, lowLatencyClientConfig as low_latency_client_config, highThroughputClientConfig as high_throughput_client_config, newTransactionFilter as new_transaction_filter, transactionFilterFromProgramIds as transaction_filter_from_program_ids, newAccountFilter as new_account_filter, newSlotFilter as new_slot_filter, slotFilterMinSlot as slot_filter_min_slot, slotFilterMaxSlot as slot_filter_max_slot, accountFilterFromProgramOwners as account_filter_from_program_owners, accountFilterMemcmp as account_filter_memcmp, eventTypeFilterIncludeOnly as event_type_filter_include_only, eventTypeFilterExclude as event_type_filter_exclude, eventTypeFilterIncludeOnly as include_only, eventTypeFilterExclude as exclude_types, } from "./grpc/types.js";
|
|
@@ -32,14 +34,14 @@ export { discriminatorToName, discriminator_to_name, discriminatorToProtocol, di
|
|
|
32
34
|
export { parseMeteoraDammLog } from "./logs/meteora_damm.js";
|
|
33
35
|
export { PROGRAM_LOG_DISC, PUMPSWAP_DISC, u64leDiscriminator, type ProgramLogDiscriminatorKey, } from "./logs/program_log_discriminators.js";
|
|
34
36
|
export type { ParsedEvent } from "./parser_alias.js";
|
|
35
|
-
export { parseAccountUnified, type AccountData, parseNonceAccount, isNonceAccount, parseTokenAccount, parsePumpswapGlobalConfig, parsePumpswapPool, parsePumpswapAccount, isGlobalConfigAccount, isPoolAccount, hasDiscriminator, userWalletPubkeyForOnchainAccount, rpcResolveUserWalletPubkey, } from "./accounts/mod.js";
|
|
37
|
+
export { parseAccountUnified, type AccountData, parseNonceAccount, isNonceAccount, parseTokenAccount, parsePumpfunGlobal, parsePumpfunAccount, isPumpfunGlobalAccount, parsePumpswapGlobalConfig, parsePumpswapPool, parsePumpswapAccount, isGlobalConfigAccount, isPoolAccount, hasDiscriminator, userWalletPubkeyForOnchainAccount, rpcResolveUserWalletPubkey, } from "./accounts/mod.js";
|
|
36
38
|
/** Rust `accounts` 蛇形命名别名 */
|
|
37
|
-
export { parse_account_unified, parse_nonce_account, parse_token_account, parse_pumpswap_global_config, parse_pumpswap_pool, rpc_resolve_user_wallet_pubkey, user_wallet_pubkey_for_onchain_account, } from "./accounts/rust_aliases.js";
|
|
38
|
-
export { parseInstructionUnified, parsePumpfunInstruction, parsePumpswapInstruction, parseMeteoraDammInstruction, } from "./instr/mod.js";
|
|
39
|
+
export { parse_account_unified, parse_nonce_account, parse_token_account, parse_pumpfun_global, parse_pumpswap_global_config, parse_pumpswap_pool, rpc_resolve_user_wallet_pubkey, user_wallet_pubkey_for_onchain_account, } from "./accounts/rust_aliases.js";
|
|
40
|
+
export { parseInstructionUnified, parsePumpfunInstruction, parsePumpswapInstruction, parseMeteoraDammInstruction, parseMeteoraDlmmInstruction, parseMeteoraPoolsInstruction, parsePumpFeesInstruction, } from "./instr/mod.js";
|
|
39
41
|
/** Rust `instr` 根模块蛇形命名别名 */
|
|
40
|
-
export { parse_instruction_unified, parse_pumpfun_instruction, parse_pumpswap_instruction, parse_meteora_damm_instruction, } from "./instr/rust_aliases.js";
|
|
42
|
+
export { parse_instruction_unified, parse_pumpfun_instruction, parse_pumpswap_instruction, parse_meteora_damm_instruction, parse_meteora_dlmm_instruction, parse_meteora_pools_instruction, parse_pump_fees_instruction, } from "./instr/rust_aliases.js";
|
|
41
43
|
export * as programIds from "./instr/program_ids.js";
|
|
42
|
-
export { YellowstoneGrpc, type SubscribeCallbacks } from "./grpc/client.js";
|
|
44
|
+
export { YellowstoneGrpc, type SubscribeCallbacks, type DexEventSubscription } from "./grpc/client.js";
|
|
43
45
|
export { connectYellowstoneGeyser, defaultGeyserConnectConfig, geyserGrpcChannelOptions, type GeyserConnectConfig, } from "./grpc/geyser_connect.js";
|
|
44
46
|
/** 与 Rust `sol_parser_sdk::grpc::event_parser` 模块对应 */
|
|
45
47
|
export * as event_parser from "./grpc/event_parser.js";
|
package/dist/index.js
CHANGED
|
@@ -33,10 +33,11 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.
|
|
37
|
-
exports.
|
|
38
|
-
exports.
|
|
39
|
-
exports.
|
|
36
|
+
exports.heuristicSolCounterpartiesForWatchedKeys = exports.lamportBalanceDeltas = exports.collectAccountKeysBs58 = exports.pubkeyBytesToBs58 = exports.grpcTxIndexFromInfo = exports.parseDexEventsFromGrpcTransactionInfo = exports.convert_rpc_to_grpc = exports.convertRpcToGrpc = exports.applyAccountFillsToLogEvents = exports.fillDataRpc = exports.fillAccountsFromTransactionDataRpc = exports.parseRpcTransaction = exports.parseTransactionFromRpc = exports.isWarmedUp = exports.warmupParser = exports.build_account_pubkeys_with_cache = exports.buildAccountPubkeysWithCache = exports.AccountPubkeyCache = exports.normalizeBuySellFromInputMint = exports.normalizeBuySellFromTokenDelta = exports.vaultPriceFromBalances = exports.sqrtPriceX64ToPrice = exports.elapsedMicrosSince = exports.nowNanos = exports.nowMicros = exports.nowUs = exports.parse_log = exports.parseLog = exports.parseTransactionWithStreamingListener = exports.parseLogsStreaming = exports.parseTransactionEventsStreaming = exports.parseTransactionWithListener = exports.parseLogsOnly = exports.parseTransactionEvents = exports.enrichPumpfunSameTxPostMerge = exports.enrichPumpfunTradesFromCreateInstructions = exports.enrichCreateV2ObservedFeeRecipient = exports.enrichCreateV2FromCreateEvents = exports.formatParseError = exports.dexEventToJsonString = exports.bigintToJsonReplacer = exports.defaultPubkey = exports.metadataForDexEvent = exports.SLOW_PROCESSING_THRESHOLD_US = exports.DEFAULT_REQUEST_TIMEOUT = exports.DEFAULT_METRICS_WINDOW_SECONDS = exports.DEFAULT_METRICS_PRINT_INTERVAL_SECONDS = exports.DEFAULT_MAX_DECODING_MESSAGE_SIZE = exports.DEFAULT_CONNECT_TIMEOUT = exports.DEFAULT_CHANNEL_SIZE = void 0;
|
|
37
|
+
exports.ORCA_WHIRLPOOL_PROGRAM_ID = exports.RAYDIUM_AMM_V4_PROGRAM_ID = exports.RAYDIUM_CLMM_PROGRAM_ID = exports.RAYDIUM_CPMM_PROGRAM_ID = exports.RAYDIUM_LAUNCHLAB_PROGRAM_ID = exports.PUMP_FEES_PROGRAM_ID = exports.PUMPSWAP_FEES_PROGRAM_ID = exports.PUMPSWAP_PROGRAM_ID = exports.PUMPFUN_PROGRAM_ID = exports.PROTOCOL_PROGRAM_IDS = exports.all_event_types = exports.ALL_EVENT_TYPES = exports.eventTypeFilterAllowsInstructionParsing = exports.eventTypeFilterIncludesPumpFees = exports.eventTypeFilterIncludesRaydiumLaunchlab = exports.eventTypeFilterIncludesOrcaWhirlpool = exports.eventTypeFilterIncludesRaydiumAmmV4 = exports.eventTypeFilterIncludesRaydiumCpmm = exports.eventTypeFilterIncludesRaydiumClmm = exports.eventTypeFilterIncludesMeteoraDlmm = exports.eventTypeFilterIncludesMeteoraPools = exports.eventTypeFilterIncludesMeteoraDbc = exports.eventTypeFilterIncludesMeteoraDammV2 = exports.eventTypeFilterIncludesPumpswap = exports.eventTypeFilterIncludesPumpfun = exports.eventTypeFilterExclude = exports.eventTypeFilterIncludeOnly = exports.accountFilterMemcmp = exports.accountFilterFromProgramOwners = exports.slotFilterMaxSlot = exports.slotFilterMinSlot = exports.newSlotFilter = exports.newAccountFilter = exports.transactionFilterFromProgramIds = exports.newTransactionFilter = exports.highThroughputClientConfig = exports.lowLatencyClientConfig = exports.defaultClientConfig = exports.try_yellowstone_signature = exports.collect_watch_transfer_counterparty_pairs = exports.spl_token_counterparty_by_owner = exports.token_balance_raw_amount = exports.heuristic_sol_counterparties_for_watched_keys = exports.lamport_balance_deltas = exports.collect_account_keys_bs58 = exports.pubkey_bytes_to_bs58 = exports.tryYellowstoneSignature = exports.collectWatchTransferCounterpartyPairs = exports.splTokenCounterpartyByOwner = exports.tokenBalanceRawAmount = void 0;
|
|
38
|
+
exports.parseAccountUnified = exports.u64leDiscriminator = exports.PUMPSWAP_DISC = exports.PROGRAM_LOG_DISC = exports.parseMeteoraDammLog = exports.lookup_discriminator = exports.lookupDiscriminator = exports.discriminator_to_protocol = exports.discriminatorToProtocol = exports.discriminator_to_name = exports.discriminatorToName = exports.parse_log_unified = exports.parse_log_optimized = exports.parse_meteora_dlmm_log = exports.parse_meteora_damm_log = exports.parseLogOptimized = exports.parseLogUnified = exports.build_subscribe_transaction_filters_named = exports.build_subscribe_request_with_commitment = exports.build_subscribe_request = exports.CommitmentLevel = exports.buildSubscribeTransactionFiltersNamed = exports.buildSubscribeRequestWithCommitment = exports.buildSubscribeRequest = exports.exclude_types = exports.include_only = exports.event_type_filter_exclude = exports.event_type_filter_include_only = exports.account_filter_memcmp = exports.account_filter_from_program_owners = exports.slot_filter_max_slot = exports.slot_filter_min_slot = exports.new_slot_filter = exports.new_account_filter = exports.transaction_filter_from_program_ids = exports.new_transaction_filter = exports.high_throughput_client_config = exports.low_latency_client_config = exports.default_client_config = exports.account_filter_for_protocols = exports.transaction_filter_for_protocols = exports.get_program_ids_for_protocols = exports.protocol_program_ids = exports.accountFilterForProtocols = exports.transactionFilterForProtocols = exports.getProgramIdsForProtocols = exports.METEORA_DBC_PROGRAM_ID = exports.METEORA_DLMM_PROGRAM_ID = exports.METEORA_DAMM_V2_PROGRAM_ID = exports.METEORA_POOLS_PROGRAM_ID = void 0;
|
|
39
|
+
exports.fullAccountKeyStringsFromShredTx = exports.dexEventsFromShredWasmTxWithFullKeys = exports.dexEventsFromShredWasmTx = exports.ShredEventQueue = exports.ShredStreamClient = exports.geyser_grpc_channel_options = exports.default_geyser_connect_config = exports.connect_yellowstone_geyser = exports.event_parser = exports.geyserGrpcChannelOptions = exports.defaultGeyserConnectConfig = exports.connectYellowstoneGeyser = exports.YellowstoneGrpc = exports.programIds = exports.parse_pump_fees_instruction = exports.parse_meteora_pools_instruction = exports.parse_meteora_dlmm_instruction = exports.parse_meteora_damm_instruction = exports.parse_pumpswap_instruction = exports.parse_pumpfun_instruction = exports.parse_instruction_unified = exports.parsePumpFeesInstruction = exports.parseMeteoraPoolsInstruction = exports.parseMeteoraDlmmInstruction = exports.parseMeteoraDammInstruction = exports.parsePumpswapInstruction = exports.parsePumpfunInstruction = exports.parseInstructionUnified = exports.user_wallet_pubkey_for_onchain_account = exports.rpc_resolve_user_wallet_pubkey = exports.parse_pumpswap_pool = exports.parse_pumpswap_global_config = exports.parse_pumpfun_global = exports.parse_token_account = exports.parse_nonce_account = exports.parse_account_unified = exports.rpcResolveUserWalletPubkey = exports.userWalletPubkeyForOnchainAccount = exports.hasDiscriminator = exports.isPoolAccount = exports.isGlobalConfigAccount = exports.parsePumpswapAccount = exports.parsePumpswapPool = exports.parsePumpswapGlobalConfig = exports.isPumpfunGlobalAccount = exports.parsePumpfunAccount = exports.parsePumpfunGlobal = exports.parseTokenAccount = exports.isNonceAccount = exports.parseNonceAccount = void 0;
|
|
40
|
+
exports.high_throughput_shred_stream_config = exports.low_latency_shred_stream_config = exports.default_shred_stream_config = exports.highThroughputShredStreamConfig = exports.lowLatencyShredStreamConfig = exports.defaultShredStreamConfig = exports.wireBytesToShredWasmTx = exports.decodeShredstreamEntriesBincode = exports.decodeEntriesBincodeNested = exports.decodeEntriesBincodeFlat = exports.bincodeVecEntryCount = exports.loadAddressLookupTableAccounts = void 0;
|
|
40
41
|
var constants_js_1 = require("./common/constants.js");
|
|
41
42
|
Object.defineProperty(exports, "DEFAULT_CHANNEL_SIZE", { enumerable: true, get: function () { return constants_js_1.DEFAULT_CHANNEL_SIZE; } });
|
|
42
43
|
Object.defineProperty(exports, "DEFAULT_CONNECT_TIMEOUT", { enumerable: true, get: function () { return constants_js_1.DEFAULT_CONNECT_TIMEOUT; } });
|
|
@@ -53,6 +54,11 @@ Object.defineProperty(exports, "bigintToJsonReplacer", { enumerable: true, get:
|
|
|
53
54
|
Object.defineProperty(exports, "dexEventToJsonString", { enumerable: true, get: function () { return json_utils_js_1.dexEventToJsonString; } });
|
|
54
55
|
var error_js_1 = require("./core/error.js");
|
|
55
56
|
Object.defineProperty(exports, "formatParseError", { enumerable: true, get: function () { return error_js_1.formatParseError; } });
|
|
57
|
+
var pumpfun_fee_enrich_js_1 = require("./core/pumpfun_fee_enrich.js");
|
|
58
|
+
Object.defineProperty(exports, "enrichCreateV2FromCreateEvents", { enumerable: true, get: function () { return pumpfun_fee_enrich_js_1.enrichCreateV2FromCreateEvents; } });
|
|
59
|
+
Object.defineProperty(exports, "enrichCreateV2ObservedFeeRecipient", { enumerable: true, get: function () { return pumpfun_fee_enrich_js_1.enrichCreateV2ObservedFeeRecipient; } });
|
|
60
|
+
Object.defineProperty(exports, "enrichPumpfunTradesFromCreateInstructions", { enumerable: true, get: function () { return pumpfun_fee_enrich_js_1.enrichPumpfunTradesFromCreateInstructions; } });
|
|
61
|
+
Object.defineProperty(exports, "enrichPumpfunSameTxPostMerge", { enumerable: true, get: function () { return pumpfun_fee_enrich_js_1.enrichPumpfunSameTxPostMerge; } });
|
|
56
62
|
var unified_parser_js_1 = require("./core/unified_parser.js");
|
|
57
63
|
Object.defineProperty(exports, "parseTransactionEvents", { enumerable: true, get: function () { return unified_parser_js_1.parseTransactionEvents; } });
|
|
58
64
|
Object.defineProperty(exports, "parseLogsOnly", { enumerable: true, get: function () { return unified_parser_js_1.parseLogsOnly; } });
|
|
@@ -67,6 +73,11 @@ var clock_js_1 = require("./core/clock.js");
|
|
|
67
73
|
Object.defineProperty(exports, "nowMicros", { enumerable: true, get: function () { return clock_js_1.nowMicros; } });
|
|
68
74
|
Object.defineProperty(exports, "nowNanos", { enumerable: true, get: function () { return clock_js_1.nowNanos; } });
|
|
69
75
|
Object.defineProperty(exports, "elapsedMicrosSince", { enumerable: true, get: function () { return clock_js_1.elapsedMicrosSince; } });
|
|
76
|
+
var market_js_1 = require("./util/market.js");
|
|
77
|
+
Object.defineProperty(exports, "sqrtPriceX64ToPrice", { enumerable: true, get: function () { return market_js_1.sqrtPriceX64ToPrice; } });
|
|
78
|
+
Object.defineProperty(exports, "vaultPriceFromBalances", { enumerable: true, get: function () { return market_js_1.vaultPriceFromBalances; } });
|
|
79
|
+
Object.defineProperty(exports, "normalizeBuySellFromTokenDelta", { enumerable: true, get: function () { return market_js_1.normalizeBuySellFromTokenDelta; } });
|
|
80
|
+
Object.defineProperty(exports, "normalizeBuySellFromInputMint", { enumerable: true, get: function () { return market_js_1.normalizeBuySellFromInputMint; } });
|
|
70
81
|
var account_pubkey_cache_js_1 = require("./core/account_pubkey_cache.js");
|
|
71
82
|
Object.defineProperty(exports, "AccountPubkeyCache", { enumerable: true, get: function () { return account_pubkey_cache_js_1.AccountPubkeyCache; } });
|
|
72
83
|
Object.defineProperty(exports, "buildAccountPubkeysWithCache", { enumerable: true, get: function () { return account_pubkey_cache_js_1.buildAccountPubkeysWithCache; } });
|
|
@@ -121,12 +132,15 @@ Object.defineProperty(exports, "eventTypeFilterExclude", { enumerable: true, get
|
|
|
121
132
|
Object.defineProperty(exports, "eventTypeFilterIncludesPumpfun", { enumerable: true, get: function () { return types_js_1.eventTypeFilterIncludesPumpfun; } });
|
|
122
133
|
Object.defineProperty(exports, "eventTypeFilterIncludesPumpswap", { enumerable: true, get: function () { return types_js_1.eventTypeFilterIncludesPumpswap; } });
|
|
123
134
|
Object.defineProperty(exports, "eventTypeFilterIncludesMeteoraDammV2", { enumerable: true, get: function () { return types_js_1.eventTypeFilterIncludesMeteoraDammV2; } });
|
|
135
|
+
Object.defineProperty(exports, "eventTypeFilterIncludesMeteoraDbc", { enumerable: true, get: function () { return types_js_1.eventTypeFilterIncludesMeteoraDbc; } });
|
|
136
|
+
Object.defineProperty(exports, "eventTypeFilterIncludesMeteoraPools", { enumerable: true, get: function () { return types_js_1.eventTypeFilterIncludesMeteoraPools; } });
|
|
137
|
+
Object.defineProperty(exports, "eventTypeFilterIncludesMeteoraDlmm", { enumerable: true, get: function () { return types_js_1.eventTypeFilterIncludesMeteoraDlmm; } });
|
|
124
138
|
Object.defineProperty(exports, "eventTypeFilterIncludesRaydiumClmm", { enumerable: true, get: function () { return types_js_1.eventTypeFilterIncludesRaydiumClmm; } });
|
|
125
139
|
Object.defineProperty(exports, "eventTypeFilterIncludesRaydiumCpmm", { enumerable: true, get: function () { return types_js_1.eventTypeFilterIncludesRaydiumCpmm; } });
|
|
126
140
|
Object.defineProperty(exports, "eventTypeFilterIncludesRaydiumAmmV4", { enumerable: true, get: function () { return types_js_1.eventTypeFilterIncludesRaydiumAmmV4; } });
|
|
127
141
|
Object.defineProperty(exports, "eventTypeFilterIncludesOrcaWhirlpool", { enumerable: true, get: function () { return types_js_1.eventTypeFilterIncludesOrcaWhirlpool; } });
|
|
128
|
-
Object.defineProperty(exports, "
|
|
129
|
-
Object.defineProperty(exports, "
|
|
142
|
+
Object.defineProperty(exports, "eventTypeFilterIncludesRaydiumLaunchlab", { enumerable: true, get: function () { return types_js_1.eventTypeFilterIncludesRaydiumLaunchlab; } });
|
|
143
|
+
Object.defineProperty(exports, "eventTypeFilterIncludesPumpFees", { enumerable: true, get: function () { return types_js_1.eventTypeFilterIncludesPumpFees; } });
|
|
130
144
|
Object.defineProperty(exports, "eventTypeFilterAllowsInstructionParsing", { enumerable: true, get: function () { return types_js_1.eventTypeFilterAllowsInstructionParsing; } });
|
|
131
145
|
Object.defineProperty(exports, "ALL_EVENT_TYPES", { enumerable: true, get: function () { return types_js_1.ALL_EVENT_TYPES; } });
|
|
132
146
|
var types_js_2 = require("./grpc/types.js");
|
|
@@ -136,7 +150,8 @@ Object.defineProperty(exports, "PROTOCOL_PROGRAM_IDS", { enumerable: true, get:
|
|
|
136
150
|
Object.defineProperty(exports, "PUMPFUN_PROGRAM_ID", { enumerable: true, get: function () { return program_ids_js_1.PUMPFUN_PROGRAM_ID; } });
|
|
137
151
|
Object.defineProperty(exports, "PUMPSWAP_PROGRAM_ID", { enumerable: true, get: function () { return program_ids_js_1.PUMPSWAP_PROGRAM_ID; } });
|
|
138
152
|
Object.defineProperty(exports, "PUMPSWAP_FEES_PROGRAM_ID", { enumerable: true, get: function () { return program_ids_js_1.PUMPSWAP_FEES_PROGRAM_ID; } });
|
|
139
|
-
Object.defineProperty(exports, "
|
|
153
|
+
Object.defineProperty(exports, "PUMP_FEES_PROGRAM_ID", { enumerable: true, get: function () { return program_ids_js_1.PUMP_FEES_PROGRAM_ID; } });
|
|
154
|
+
Object.defineProperty(exports, "RAYDIUM_LAUNCHLAB_PROGRAM_ID", { enumerable: true, get: function () { return program_ids_js_1.RAYDIUM_LAUNCHLAB_PROGRAM_ID; } });
|
|
140
155
|
Object.defineProperty(exports, "RAYDIUM_CPMM_PROGRAM_ID", { enumerable: true, get: function () { return program_ids_js_1.RAYDIUM_CPMM_PROGRAM_ID; } });
|
|
141
156
|
Object.defineProperty(exports, "RAYDIUM_CLMM_PROGRAM_ID", { enumerable: true, get: function () { return program_ids_js_1.RAYDIUM_CLMM_PROGRAM_ID; } });
|
|
142
157
|
Object.defineProperty(exports, "RAYDIUM_AMM_V4_PROGRAM_ID", { enumerable: true, get: function () { return program_ids_js_1.RAYDIUM_AMM_V4_PROGRAM_ID; } });
|
|
@@ -144,6 +159,7 @@ Object.defineProperty(exports, "ORCA_WHIRLPOOL_PROGRAM_ID", { enumerable: true,
|
|
|
144
159
|
Object.defineProperty(exports, "METEORA_POOLS_PROGRAM_ID", { enumerable: true, get: function () { return program_ids_js_1.METEORA_POOLS_PROGRAM_ID; } });
|
|
145
160
|
Object.defineProperty(exports, "METEORA_DAMM_V2_PROGRAM_ID", { enumerable: true, get: function () { return program_ids_js_1.METEORA_DAMM_V2_PROGRAM_ID; } });
|
|
146
161
|
Object.defineProperty(exports, "METEORA_DLMM_PROGRAM_ID", { enumerable: true, get: function () { return program_ids_js_1.METEORA_DLMM_PROGRAM_ID; } });
|
|
162
|
+
Object.defineProperty(exports, "METEORA_DBC_PROGRAM_ID", { enumerable: true, get: function () { return program_ids_js_1.METEORA_DBC_PROGRAM_ID; } });
|
|
147
163
|
Object.defineProperty(exports, "getProgramIdsForProtocols", { enumerable: true, get: function () { return program_ids_js_1.getProgramIdsForProtocols; } });
|
|
148
164
|
Object.defineProperty(exports, "transactionFilterForProtocols", { enumerable: true, get: function () { return program_ids_js_1.transactionFilterForProtocols; } });
|
|
149
165
|
Object.defineProperty(exports, "accountFilterForProtocols", { enumerable: true, get: function () { return program_ids_js_1.accountFilterForProtocols; } });
|
|
@@ -207,6 +223,9 @@ Object.defineProperty(exports, "parseAccountUnified", { enumerable: true, get: f
|
|
|
207
223
|
Object.defineProperty(exports, "parseNonceAccount", { enumerable: true, get: function () { return mod_js_1.parseNonceAccount; } });
|
|
208
224
|
Object.defineProperty(exports, "isNonceAccount", { enumerable: true, get: function () { return mod_js_1.isNonceAccount; } });
|
|
209
225
|
Object.defineProperty(exports, "parseTokenAccount", { enumerable: true, get: function () { return mod_js_1.parseTokenAccount; } });
|
|
226
|
+
Object.defineProperty(exports, "parsePumpfunGlobal", { enumerable: true, get: function () { return mod_js_1.parsePumpfunGlobal; } });
|
|
227
|
+
Object.defineProperty(exports, "parsePumpfunAccount", { enumerable: true, get: function () { return mod_js_1.parsePumpfunAccount; } });
|
|
228
|
+
Object.defineProperty(exports, "isPumpfunGlobalAccount", { enumerable: true, get: function () { return mod_js_1.isPumpfunGlobalAccount; } });
|
|
210
229
|
Object.defineProperty(exports, "parsePumpswapGlobalConfig", { enumerable: true, get: function () { return mod_js_1.parsePumpswapGlobalConfig; } });
|
|
211
230
|
Object.defineProperty(exports, "parsePumpswapPool", { enumerable: true, get: function () { return mod_js_1.parsePumpswapPool; } });
|
|
212
231
|
Object.defineProperty(exports, "parsePumpswapAccount", { enumerable: true, get: function () { return mod_js_1.parsePumpswapAccount; } });
|
|
@@ -220,6 +239,7 @@ var rust_aliases_js_2 = require("./accounts/rust_aliases.js");
|
|
|
220
239
|
Object.defineProperty(exports, "parse_account_unified", { enumerable: true, get: function () { return rust_aliases_js_2.parse_account_unified; } });
|
|
221
240
|
Object.defineProperty(exports, "parse_nonce_account", { enumerable: true, get: function () { return rust_aliases_js_2.parse_nonce_account; } });
|
|
222
241
|
Object.defineProperty(exports, "parse_token_account", { enumerable: true, get: function () { return rust_aliases_js_2.parse_token_account; } });
|
|
242
|
+
Object.defineProperty(exports, "parse_pumpfun_global", { enumerable: true, get: function () { return rust_aliases_js_2.parse_pumpfun_global; } });
|
|
223
243
|
Object.defineProperty(exports, "parse_pumpswap_global_config", { enumerable: true, get: function () { return rust_aliases_js_2.parse_pumpswap_global_config; } });
|
|
224
244
|
Object.defineProperty(exports, "parse_pumpswap_pool", { enumerable: true, get: function () { return rust_aliases_js_2.parse_pumpswap_pool; } });
|
|
225
245
|
Object.defineProperty(exports, "rpc_resolve_user_wallet_pubkey", { enumerable: true, get: function () { return rust_aliases_js_2.rpc_resolve_user_wallet_pubkey; } });
|
|
@@ -229,12 +249,18 @@ Object.defineProperty(exports, "parseInstructionUnified", { enumerable: true, ge
|
|
|
229
249
|
Object.defineProperty(exports, "parsePumpfunInstruction", { enumerable: true, get: function () { return mod_js_2.parsePumpfunInstruction; } });
|
|
230
250
|
Object.defineProperty(exports, "parsePumpswapInstruction", { enumerable: true, get: function () { return mod_js_2.parsePumpswapInstruction; } });
|
|
231
251
|
Object.defineProperty(exports, "parseMeteoraDammInstruction", { enumerable: true, get: function () { return mod_js_2.parseMeteoraDammInstruction; } });
|
|
252
|
+
Object.defineProperty(exports, "parseMeteoraDlmmInstruction", { enumerable: true, get: function () { return mod_js_2.parseMeteoraDlmmInstruction; } });
|
|
253
|
+
Object.defineProperty(exports, "parseMeteoraPoolsInstruction", { enumerable: true, get: function () { return mod_js_2.parseMeteoraPoolsInstruction; } });
|
|
254
|
+
Object.defineProperty(exports, "parsePumpFeesInstruction", { enumerable: true, get: function () { return mod_js_2.parsePumpFeesInstruction; } });
|
|
232
255
|
/** Rust `instr` 根模块蛇形命名别名 */
|
|
233
256
|
var rust_aliases_js_3 = require("./instr/rust_aliases.js");
|
|
234
257
|
Object.defineProperty(exports, "parse_instruction_unified", { enumerable: true, get: function () { return rust_aliases_js_3.parse_instruction_unified; } });
|
|
235
258
|
Object.defineProperty(exports, "parse_pumpfun_instruction", { enumerable: true, get: function () { return rust_aliases_js_3.parse_pumpfun_instruction; } });
|
|
236
259
|
Object.defineProperty(exports, "parse_pumpswap_instruction", { enumerable: true, get: function () { return rust_aliases_js_3.parse_pumpswap_instruction; } });
|
|
237
260
|
Object.defineProperty(exports, "parse_meteora_damm_instruction", { enumerable: true, get: function () { return rust_aliases_js_3.parse_meteora_damm_instruction; } });
|
|
261
|
+
Object.defineProperty(exports, "parse_meteora_dlmm_instruction", { enumerable: true, get: function () { return rust_aliases_js_3.parse_meteora_dlmm_instruction; } });
|
|
262
|
+
Object.defineProperty(exports, "parse_meteora_pools_instruction", { enumerable: true, get: function () { return rust_aliases_js_3.parse_meteora_pools_instruction; } });
|
|
263
|
+
Object.defineProperty(exports, "parse_pump_fees_instruction", { enumerable: true, get: function () { return rust_aliases_js_3.parse_pump_fees_instruction; } });
|
|
238
264
|
exports.programIds = __importStar(require("./instr/program_ids.js"));
|
|
239
265
|
var client_js_1 = require("./grpc/client.js");
|
|
240
266
|
Object.defineProperty(exports, "YellowstoneGrpc", { enumerable: true, get: function () { return client_js_1.YellowstoneGrpc; } });
|
|
@@ -154,11 +154,14 @@ function parseOuterRemoveAllLiquidityIx(instructionData, accounts, meta) {
|
|
|
154
154
|
const token_a_amount_threshold = (0, utils_js_1.readU64LE)(instructionData, 8) ?? 0n;
|
|
155
155
|
const token_b_amount_threshold = (0, utils_js_1.readU64LE)(instructionData, 16) ?? 0n;
|
|
156
156
|
return {
|
|
157
|
-
|
|
157
|
+
MeteoraDammV2RemoveLiquidity: {
|
|
158
158
|
metadata: meta,
|
|
159
159
|
pool: (0, utils_js_1.getAccount)(accounts, 1) ?? Z,
|
|
160
160
|
position: (0, utils_js_1.getAccount)(accounts, 2) ?? Z,
|
|
161
161
|
owner: (0, utils_js_1.getAccount)(accounts, 10) ?? Z,
|
|
162
|
+
token_a_amount: 0n,
|
|
163
|
+
token_b_amount: 0n,
|
|
164
|
+
liquidity_delta: 0n,
|
|
162
165
|
token_a_amount_threshold,
|
|
163
166
|
token_b_amount_threshold,
|
|
164
167
|
},
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseMeteoraDlmmInstruction = parseMeteoraDlmmInstruction;
|
|
4
|
+
const dex_event_js_1 = require("../core/dex_event.js");
|
|
5
|
+
const binary_js_1 = require("../util/binary.js");
|
|
6
|
+
const utils_js_1 = require("./utils.js");
|
|
7
|
+
const Z = (0, dex_event_js_1.defaultPubkey)();
|
|
8
|
+
function parseMeteoraDlmmInstruction(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs) {
|
|
9
|
+
if (instructionData.length === 0)
|
|
10
|
+
return null;
|
|
11
|
+
const pool = (0, utils_js_1.getAccount)(accounts, 0);
|
|
12
|
+
if (!pool)
|
|
13
|
+
return null;
|
|
14
|
+
const metadata = (0, utils_js_1.ixMeta)(signature, slot, txIndex, blockTimeUs, grpcRecvUs);
|
|
15
|
+
const kind = instructionData[0];
|
|
16
|
+
if (kind === 0) {
|
|
17
|
+
if (instructionData.length < 1 + 4 + 2)
|
|
18
|
+
return null;
|
|
19
|
+
const active_bin_id = (0, binary_js_1.readI32LE)(instructionData, 1);
|
|
20
|
+
const bin_step = (0, binary_js_1.readU16LE)(instructionData, 5);
|
|
21
|
+
if (active_bin_id === null || bin_step === null)
|
|
22
|
+
return null;
|
|
23
|
+
return {
|
|
24
|
+
MeteoraDlmmInitializePool: {
|
|
25
|
+
metadata,
|
|
26
|
+
pool,
|
|
27
|
+
creator: (0, utils_js_1.getAccount)(accounts, 1) ?? Z,
|
|
28
|
+
active_bin_id,
|
|
29
|
+
bin_step,
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
if (kind === 1) {
|
|
34
|
+
if (instructionData.length < 1 + 8)
|
|
35
|
+
return null;
|
|
36
|
+
return {
|
|
37
|
+
MeteoraDlmmInitializeBinArray: {
|
|
38
|
+
metadata,
|
|
39
|
+
pool,
|
|
40
|
+
bin_array: (0, utils_js_1.getAccount)(accounts, 1) ?? Z,
|
|
41
|
+
index: (0, binary_js_1.readU64LE)(instructionData, 1) ?? 0n,
|
|
42
|
+
},
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
if (kind === 2) {
|
|
46
|
+
if (instructionData.length < 1 + 32)
|
|
47
|
+
return null;
|
|
48
|
+
return {
|
|
49
|
+
MeteoraDlmmAddLiquidity: {
|
|
50
|
+
metadata,
|
|
51
|
+
pool,
|
|
52
|
+
from: (0, utils_js_1.getAccount)(accounts, 1) ?? Z,
|
|
53
|
+
position: (0, utils_js_1.getAccount)(accounts, 2) ?? Z,
|
|
54
|
+
amounts: [0n, 0n],
|
|
55
|
+
active_bin_id: 0,
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
if (kind === 7) {
|
|
60
|
+
if (instructionData.length < 1 + 32)
|
|
61
|
+
return null;
|
|
62
|
+
return {
|
|
63
|
+
MeteoraDlmmRemoveLiquidity: {
|
|
64
|
+
metadata,
|
|
65
|
+
pool,
|
|
66
|
+
from: (0, utils_js_1.getAccount)(accounts, 1) ?? Z,
|
|
67
|
+
position: (0, utils_js_1.getAccount)(accounts, 2) ?? Z,
|
|
68
|
+
amounts: [0n, 0n],
|
|
69
|
+
active_bin_id: 0,
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
if (kind === 8) {
|
|
74
|
+
if (instructionData.length < 1 + 4 + 4)
|
|
75
|
+
return null;
|
|
76
|
+
const lower_bin_id = (0, binary_js_1.readI32LE)(instructionData, 1);
|
|
77
|
+
const width = (0, binary_js_1.readU32LE)(instructionData, 5);
|
|
78
|
+
if (lower_bin_id === null || width === null)
|
|
79
|
+
return null;
|
|
80
|
+
return {
|
|
81
|
+
MeteoraDlmmCreatePosition: {
|
|
82
|
+
metadata,
|
|
83
|
+
pool,
|
|
84
|
+
position: (0, utils_js_1.getAccount)(accounts, 1) ?? Z,
|
|
85
|
+
owner: (0, utils_js_1.getAccount)(accounts, 2) ?? Z,
|
|
86
|
+
lower_bin_id,
|
|
87
|
+
width,
|
|
88
|
+
},
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
if (kind === 11) {
|
|
92
|
+
if (instructionData.length < 1 + 8 + 8)
|
|
93
|
+
return null;
|
|
94
|
+
return {
|
|
95
|
+
MeteoraDlmmSwap: {
|
|
96
|
+
metadata,
|
|
97
|
+
pool,
|
|
98
|
+
from: (0, utils_js_1.getAccount)(accounts, 1) ?? Z,
|
|
99
|
+
start_bin_id: 0,
|
|
100
|
+
end_bin_id: 0,
|
|
101
|
+
amount_in: (0, binary_js_1.readU64LE)(instructionData, 1) ?? 0n,
|
|
102
|
+
amount_out: 0n,
|
|
103
|
+
swap_for_y: false,
|
|
104
|
+
fee: 0n,
|
|
105
|
+
protocol_fee: 0n,
|
|
106
|
+
fee_bps: 0n,
|
|
107
|
+
host_fee: 0n,
|
|
108
|
+
},
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
if (kind === 13) {
|
|
112
|
+
return {
|
|
113
|
+
MeteoraDlmmClaimFee: {
|
|
114
|
+
metadata,
|
|
115
|
+
pool,
|
|
116
|
+
position: (0, utils_js_1.getAccount)(accounts, 1) ?? Z,
|
|
117
|
+
owner: (0, utils_js_1.getAccount)(accounts, 2) ?? Z,
|
|
118
|
+
fee_x: 0n,
|
|
119
|
+
fee_y: 0n,
|
|
120
|
+
},
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
if (kind === 14) {
|
|
124
|
+
return {
|
|
125
|
+
MeteoraDlmmClosePosition: {
|
|
126
|
+
metadata,
|
|
127
|
+
pool,
|
|
128
|
+
position: (0, utils_js_1.getAccount)(accounts, 1) ?? Z,
|
|
129
|
+
owner: (0, utils_js_1.getAccount)(accounts, 2) ?? Z,
|
|
130
|
+
},
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
return null;
|
|
134
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import type { DexEvent } from "../core/dex_event.js";
|
|
2
|
+
export declare function parseMeteoraPoolsInstruction(instructionData: Uint8Array, accounts: string[], signature: string, slot: number, txIndex: number, blockTimeUs: number | undefined, grpcRecvUs: number): DexEvent | null;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseMeteoraPoolsInstruction = parseMeteoraPoolsInstruction;
|
|
4
|
+
const dex_event_js_1 = require("../core/dex_event.js");
|
|
5
|
+
const binary_js_1 = require("../util/binary.js");
|
|
6
|
+
const program_log_discriminators_js_1 = require("../logs/program_log_discriminators.js");
|
|
7
|
+
const utils_js_1 = require("./utils.js");
|
|
8
|
+
const Z = (0, dex_event_js_1.defaultPubkey)();
|
|
9
|
+
const DISC = {
|
|
10
|
+
SWAP: (0, program_log_discriminators_js_1.u64leDiscriminator)([248, 198, 158, 145, 225, 117, 135, 200]),
|
|
11
|
+
ADD_LIQUIDITY: (0, program_log_discriminators_js_1.u64leDiscriminator)([181, 157, 89, 67, 143, 182, 52, 72]),
|
|
12
|
+
REMOVE_LIQUIDITY: (0, program_log_discriminators_js_1.u64leDiscriminator)([80, 85, 209, 72, 24, 206, 177, 108]),
|
|
13
|
+
CREATE_POOL: (0, program_log_discriminators_js_1.u64leDiscriminator)([95, 180, 10, 172, 84, 174, 232, 40]),
|
|
14
|
+
};
|
|
15
|
+
function discEq(data, disc) {
|
|
16
|
+
if (data.length < 8)
|
|
17
|
+
return false;
|
|
18
|
+
return (0, binary_js_1.readU64LE)(data, 0) === disc;
|
|
19
|
+
}
|
|
20
|
+
function parseMeteoraPoolsInstruction(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs) {
|
|
21
|
+
if (instructionData.length < 8)
|
|
22
|
+
return null;
|
|
23
|
+
const metadata = (0, utils_js_1.ixMeta)(signature, slot, txIndex, blockTimeUs, grpcRecvUs);
|
|
24
|
+
const pool = (0, utils_js_1.getAccount)(accounts, 0);
|
|
25
|
+
if (discEq(instructionData, DISC.SWAP)) {
|
|
26
|
+
if (!pool || instructionData.length < 24)
|
|
27
|
+
return null;
|
|
28
|
+
return {
|
|
29
|
+
MeteoraPoolsSwap: {
|
|
30
|
+
metadata,
|
|
31
|
+
in_amount: (0, binary_js_1.readU64LE)(instructionData, 8) ?? 0n,
|
|
32
|
+
out_amount: (0, binary_js_1.readU64LE)(instructionData, 16) ?? 0n,
|
|
33
|
+
trade_fee: 0n,
|
|
34
|
+
admin_fee: 0n,
|
|
35
|
+
host_fee: 0n,
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
if (discEq(instructionData, DISC.ADD_LIQUIDITY)) {
|
|
40
|
+
if (!pool || instructionData.length < 32)
|
|
41
|
+
return null;
|
|
42
|
+
return {
|
|
43
|
+
MeteoraPoolsAddLiquidity: {
|
|
44
|
+
metadata,
|
|
45
|
+
lp_mint_amount: (0, binary_js_1.readU64LE)(instructionData, 8) ?? 0n,
|
|
46
|
+
token_a_amount: (0, binary_js_1.readU64LE)(instructionData, 16) ?? 0n,
|
|
47
|
+
token_b_amount: (0, binary_js_1.readU64LE)(instructionData, 24) ?? 0n,
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
if (discEq(instructionData, DISC.REMOVE_LIQUIDITY)) {
|
|
52
|
+
if (!pool || instructionData.length < 32)
|
|
53
|
+
return null;
|
|
54
|
+
return {
|
|
55
|
+
MeteoraPoolsRemoveLiquidity: {
|
|
56
|
+
metadata,
|
|
57
|
+
lp_unmint_amount: (0, binary_js_1.readU64LE)(instructionData, 8) ?? 0n,
|
|
58
|
+
token_a_out_amount: (0, binary_js_1.readU64LE)(instructionData, 16) ?? 0n,
|
|
59
|
+
token_b_out_amount: (0, binary_js_1.readU64LE)(instructionData, 24) ?? 0n,
|
|
60
|
+
},
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
if (discEq(instructionData, DISC.CREATE_POOL)) {
|
|
64
|
+
if (instructionData.length < 8 + 1 + 6 * 8 || accounts.length <= 9)
|
|
65
|
+
return null;
|
|
66
|
+
return {
|
|
67
|
+
MeteoraPoolsPoolCreated: {
|
|
68
|
+
metadata,
|
|
69
|
+
lp_mint: (0, utils_js_1.getAccount)(accounts, 4) ?? Z,
|
|
70
|
+
token_a_mint: (0, utils_js_1.getAccount)(accounts, 8) ?? Z,
|
|
71
|
+
token_b_mint: (0, utils_js_1.getAccount)(accounts, 9) ?? Z,
|
|
72
|
+
pool_type: (0, binary_js_1.readU8)(instructionData, 8) ?? 0,
|
|
73
|
+
pool: pool ?? Z,
|
|
74
|
+
},
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
return null;
|
|
78
|
+
}
|
package/dist/instr/mod.d.ts
CHANGED
|
@@ -6,10 +6,13 @@ import type { EventTypeFilter } from "../grpc/types.js";
|
|
|
6
6
|
export { parsePumpfunInstruction } from "./pumpfun_ix.js";
|
|
7
7
|
export { parsePumpswapInstruction } from "./pumpswap_ix.js";
|
|
8
8
|
export { parseMeteoraDammInstruction } from "./meteora_damm_ix.js";
|
|
9
|
+
export { parseMeteoraDlmmInstruction } from "./meteora_dlmm_ix.js";
|
|
10
|
+
export { parseMeteoraPoolsInstruction } from "./meteora_pools_ix.js";
|
|
9
11
|
export { parseRaydiumClmmInstruction } from "./raydium_clmm_ix.js";
|
|
10
12
|
export { parseRaydiumCpmmInstruction } from "./raydium_cpmm_ix.js";
|
|
11
13
|
export { parseRaydiumAmmV4Instruction } from "./raydium_amm_v4_ix.js";
|
|
12
14
|
export { parseOrcaWhirlpoolInstruction } from "./orca_whirlpool_ix.js";
|
|
13
|
-
export {
|
|
15
|
+
export { parseRaydiumLaunchlabInstruction } from "./raydium_launchlab_ix.js";
|
|
16
|
+
export { parsePumpFeesInstruction } from "./pump_fees_ix.js";
|
|
14
17
|
export * from "./program_ids.js";
|
|
15
18
|
export declare function parseInstructionUnified(instructionData: Uint8Array, accounts: string[], signature: string, slot: number, txIndex: number, blockTimeUs: number | undefined, grpcRecvUs: number, eventTypeFilter: EventTypeFilter | undefined, programId: string): DexEvent | null;
|
package/dist/instr/mod.js
CHANGED
|
@@ -14,22 +14,23 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.
|
|
17
|
+
exports.parsePumpFeesInstruction = exports.parseRaydiumLaunchlabInstruction = exports.parseOrcaWhirlpoolInstruction = exports.parseRaydiumAmmV4Instruction = exports.parseRaydiumCpmmInstruction = exports.parseRaydiumClmmInstruction = exports.parseMeteoraPoolsInstruction = exports.parseMeteoraDlmmInstruction = exports.parseMeteoraDammInstruction = exports.parsePumpswapInstruction = exports.parsePumpfunInstruction = void 0;
|
|
18
18
|
exports.parseInstructionUnified = parseInstructionUnified;
|
|
19
19
|
const types_js_1 = require("../grpc/types.js");
|
|
20
20
|
const program_ids_js_1 = require("./program_ids.js");
|
|
21
21
|
const pumpfun_ix_js_1 = require("./pumpfun_ix.js");
|
|
22
22
|
const pumpswap_ix_js_1 = require("./pumpswap_ix.js");
|
|
23
23
|
const meteora_damm_ix_js_1 = require("./meteora_damm_ix.js");
|
|
24
|
+
const meteora_dlmm_ix_js_1 = require("./meteora_dlmm_ix.js");
|
|
25
|
+
const meteora_pools_ix_js_1 = require("./meteora_pools_ix.js");
|
|
24
26
|
const raydium_clmm_ix_js_1 = require("./raydium_clmm_ix.js");
|
|
25
27
|
const raydium_cpmm_ix_js_1 = require("./raydium_cpmm_ix.js");
|
|
26
28
|
const raydium_amm_v4_ix_js_1 = require("./raydium_amm_v4_ix.js");
|
|
27
29
|
const orca_whirlpool_ix_js_1 = require("./orca_whirlpool_ix.js");
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
programId === program_ids_js_1.BONK_PROGRAM_ID_LEGACY);
|
|
30
|
+
const raydium_launchlab_ix_js_1 = require("./raydium_launchlab_ix.js");
|
|
31
|
+
const pump_fees_ix_js_1 = require("./pump_fees_ix.js");
|
|
32
|
+
function isRaydiumLaunchlabProgram(programId) {
|
|
33
|
+
return programId === program_ids_js_1.RAYDIUM_LAUNCHLAB_PROGRAM_ID;
|
|
33
34
|
}
|
|
34
35
|
var pumpfun_ix_js_2 = require("./pumpfun_ix.js");
|
|
35
36
|
Object.defineProperty(exports, "parsePumpfunInstruction", { enumerable: true, get: function () { return pumpfun_ix_js_2.parsePumpfunInstruction; } });
|
|
@@ -37,6 +38,10 @@ var pumpswap_ix_js_2 = require("./pumpswap_ix.js");
|
|
|
37
38
|
Object.defineProperty(exports, "parsePumpswapInstruction", { enumerable: true, get: function () { return pumpswap_ix_js_2.parsePumpswapInstruction; } });
|
|
38
39
|
var meteora_damm_ix_js_2 = require("./meteora_damm_ix.js");
|
|
39
40
|
Object.defineProperty(exports, "parseMeteoraDammInstruction", { enumerable: true, get: function () { return meteora_damm_ix_js_2.parseMeteoraDammInstruction; } });
|
|
41
|
+
var meteora_dlmm_ix_js_2 = require("./meteora_dlmm_ix.js");
|
|
42
|
+
Object.defineProperty(exports, "parseMeteoraDlmmInstruction", { enumerable: true, get: function () { return meteora_dlmm_ix_js_2.parseMeteoraDlmmInstruction; } });
|
|
43
|
+
var meteora_pools_ix_js_2 = require("./meteora_pools_ix.js");
|
|
44
|
+
Object.defineProperty(exports, "parseMeteoraPoolsInstruction", { enumerable: true, get: function () { return meteora_pools_ix_js_2.parseMeteoraPoolsInstruction; } });
|
|
40
45
|
var raydium_clmm_ix_js_2 = require("./raydium_clmm_ix.js");
|
|
41
46
|
Object.defineProperty(exports, "parseRaydiumClmmInstruction", { enumerable: true, get: function () { return raydium_clmm_ix_js_2.parseRaydiumClmmInstruction; } });
|
|
42
47
|
var raydium_cpmm_ix_js_2 = require("./raydium_cpmm_ix.js");
|
|
@@ -45,9 +50,16 @@ var raydium_amm_v4_ix_js_2 = require("./raydium_amm_v4_ix.js");
|
|
|
45
50
|
Object.defineProperty(exports, "parseRaydiumAmmV4Instruction", { enumerable: true, get: function () { return raydium_amm_v4_ix_js_2.parseRaydiumAmmV4Instruction; } });
|
|
46
51
|
var orca_whirlpool_ix_js_2 = require("./orca_whirlpool_ix.js");
|
|
47
52
|
Object.defineProperty(exports, "parseOrcaWhirlpoolInstruction", { enumerable: true, get: function () { return orca_whirlpool_ix_js_2.parseOrcaWhirlpoolInstruction; } });
|
|
48
|
-
var
|
|
49
|
-
Object.defineProperty(exports, "
|
|
53
|
+
var raydium_launchlab_ix_js_2 = require("./raydium_launchlab_ix.js");
|
|
54
|
+
Object.defineProperty(exports, "parseRaydiumLaunchlabInstruction", { enumerable: true, get: function () { return raydium_launchlab_ix_js_2.parseRaydiumLaunchlabInstruction; } });
|
|
55
|
+
var pump_fees_ix_js_2 = require("./pump_fees_ix.js");
|
|
56
|
+
Object.defineProperty(exports, "parsePumpFeesInstruction", { enumerable: true, get: function () { return pump_fees_ix_js_2.parsePumpFeesInstruction; } });
|
|
50
57
|
__exportStar(require("./program_ids.js"), exports);
|
|
58
|
+
function filterParsedEvent(ev, eventTypeFilter) {
|
|
59
|
+
if (!ev || !eventTypeFilter)
|
|
60
|
+
return ev;
|
|
61
|
+
return (0, types_js_1.eventTypeFilterShouldIncludeDexEvent)(eventTypeFilter, ev) ? ev : null;
|
|
62
|
+
}
|
|
51
63
|
function parseInstructionUnified(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs, eventTypeFilter, programId) {
|
|
52
64
|
if (instructionData.length === 0)
|
|
53
65
|
return null;
|
|
@@ -59,42 +71,57 @@ function parseInstructionUnified(instructionData, accounts, signature, slot, txI
|
|
|
59
71
|
if (programId === program_ids_js_1.PUMPFUN_PROGRAM_ID) {
|
|
60
72
|
if (eventTypeFilter && !(0, types_js_1.eventTypeFilterIncludesPumpfun)(eventTypeFilter))
|
|
61
73
|
return null;
|
|
62
|
-
return (0, pumpfun_ix_js_1.parsePumpfunInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs);
|
|
74
|
+
return filterParsedEvent((0, pumpfun_ix_js_1.parsePumpfunInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs), eventTypeFilter);
|
|
63
75
|
}
|
|
64
76
|
if (programId === program_ids_js_1.PUMPSWAP_PROGRAM_ID) {
|
|
65
77
|
if (eventTypeFilter && !(0, types_js_1.eventTypeFilterIncludesPumpswap)(eventTypeFilter))
|
|
66
78
|
return null;
|
|
67
|
-
return (0, pumpswap_ix_js_1.parsePumpswapInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs);
|
|
79
|
+
return filterParsedEvent((0, pumpswap_ix_js_1.parsePumpswapInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs), eventTypeFilter);
|
|
68
80
|
}
|
|
69
81
|
if (programId === program_ids_js_1.METEORA_DAMM_V2_PROGRAM_ID) {
|
|
70
82
|
if (eventTypeFilter && !(0, types_js_1.eventTypeFilterIncludesMeteoraDammV2)(eventTypeFilter))
|
|
71
83
|
return null;
|
|
72
|
-
return (0, meteora_damm_ix_js_1.parseMeteoraDammInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs);
|
|
84
|
+
return filterParsedEvent((0, meteora_damm_ix_js_1.parseMeteoraDammInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs), eventTypeFilter);
|
|
85
|
+
}
|
|
86
|
+
if (programId === program_ids_js_1.METEORA_POOLS_PROGRAM_ID) {
|
|
87
|
+
if (eventTypeFilter && !(0, types_js_1.eventTypeFilterIncludesMeteoraPools)(eventTypeFilter))
|
|
88
|
+
return null;
|
|
89
|
+
return filterParsedEvent((0, meteora_pools_ix_js_1.parseMeteoraPoolsInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs), eventTypeFilter);
|
|
90
|
+
}
|
|
91
|
+
if (programId === program_ids_js_1.METEORA_DLMM_PROGRAM_ID) {
|
|
92
|
+
if (eventTypeFilter && !(0, types_js_1.eventTypeFilterIncludesMeteoraDlmm)(eventTypeFilter))
|
|
93
|
+
return null;
|
|
94
|
+
return filterParsedEvent((0, meteora_dlmm_ix_js_1.parseMeteoraDlmmInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs), eventTypeFilter);
|
|
95
|
+
}
|
|
96
|
+
if (programId === program_ids_js_1.PUMP_FEES_PROGRAM_ID) {
|
|
97
|
+
if (eventTypeFilter && !(0, types_js_1.eventTypeFilterIncludesPumpFees)(eventTypeFilter))
|
|
98
|
+
return null;
|
|
99
|
+
return filterParsedEvent((0, pump_fees_ix_js_1.parsePumpFeesInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs), eventTypeFilter);
|
|
73
100
|
}
|
|
74
101
|
if (programId === program_ids_js_1.RAYDIUM_CLMM_PROGRAM_ID) {
|
|
75
102
|
if (eventTypeFilter && !(0, types_js_1.eventTypeFilterIncludesRaydiumClmm)(eventTypeFilter))
|
|
76
103
|
return null;
|
|
77
|
-
return (0, raydium_clmm_ix_js_1.parseRaydiumClmmInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs);
|
|
104
|
+
return filterParsedEvent((0, raydium_clmm_ix_js_1.parseRaydiumClmmInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs), eventTypeFilter);
|
|
78
105
|
}
|
|
79
106
|
if (programId === program_ids_js_1.RAYDIUM_CPMM_PROGRAM_ID) {
|
|
80
107
|
if (eventTypeFilter && !(0, types_js_1.eventTypeFilterIncludesRaydiumCpmm)(eventTypeFilter))
|
|
81
108
|
return null;
|
|
82
|
-
return (0, raydium_cpmm_ix_js_1.parseRaydiumCpmmInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs);
|
|
109
|
+
return filterParsedEvent((0, raydium_cpmm_ix_js_1.parseRaydiumCpmmInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs), eventTypeFilter);
|
|
83
110
|
}
|
|
84
111
|
if (programId === program_ids_js_1.RAYDIUM_AMM_V4_PROGRAM_ID) {
|
|
85
112
|
if (eventTypeFilter && !(0, types_js_1.eventTypeFilterIncludesRaydiumAmmV4)(eventTypeFilter))
|
|
86
113
|
return null;
|
|
87
|
-
return (0, raydium_amm_v4_ix_js_1.parseRaydiumAmmV4Instruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs);
|
|
114
|
+
return filterParsedEvent((0, raydium_amm_v4_ix_js_1.parseRaydiumAmmV4Instruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs), eventTypeFilter);
|
|
88
115
|
}
|
|
89
116
|
if (programId === program_ids_js_1.ORCA_WHIRLPOOL_PROGRAM_ID) {
|
|
90
117
|
if (eventTypeFilter && !(0, types_js_1.eventTypeFilterIncludesOrcaWhirlpool)(eventTypeFilter))
|
|
91
118
|
return null;
|
|
92
|
-
return (0, orca_whirlpool_ix_js_1.parseOrcaWhirlpoolInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs);
|
|
119
|
+
return filterParsedEvent((0, orca_whirlpool_ix_js_1.parseOrcaWhirlpoolInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs), eventTypeFilter);
|
|
93
120
|
}
|
|
94
|
-
if (
|
|
95
|
-
if (eventTypeFilter && !(0, types_js_1.
|
|
121
|
+
if (isRaydiumLaunchlabProgram(programId)) {
|
|
122
|
+
if (eventTypeFilter && !(0, types_js_1.eventTypeFilterIncludesRaydiumLaunchlab)(eventTypeFilter))
|
|
96
123
|
return null;
|
|
97
|
-
return (0,
|
|
124
|
+
return filterParsedEvent((0, raydium_launchlab_ix_js_1.parseRaydiumLaunchlabInstruction)(instructionData, accounts, signature, slot, txIndex, blockTimeUs, grpcRecvUs), eventTypeFilter);
|
|
98
125
|
}
|
|
99
126
|
return null;
|
|
100
127
|
}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* 各 DEX 程序 ID(Base58)。与 Rust 对齐的常量来自 `grpc/program_ids.ts`。
|
|
3
3
|
*/
|
|
4
|
-
export { PUMPFUN_PROGRAM_ID, PUMPSWAP_PROGRAM_ID, PUMPSWAP_FEES_PROGRAM_ID,
|
|
5
|
-
/** Launchpad 等场景使用的程序 ID(非 Rust `Protocol` 映射项) */
|
|
6
|
-
export declare const BONK_LAUNCHPAD_PROGRAM_ID = "LanCh3hDdY7M6x8urBSLJhsQBgPNGKHNqJqGwzAEmBm";
|
|
7
|
-
/** 旧版 TS 包中的 Bonk ID,仅作兼容保留 */
|
|
8
|
-
export declare const BONK_PROGRAM_ID_LEGACY = "DjVE6JNiYqPL2QXyCUUh8rNjHrbz9hXHNYt99MQ59qw1";
|
|
4
|
+
export { PUMPFUN_PROGRAM_ID, PUMPSWAP_PROGRAM_ID, PUMPSWAP_FEES_PROGRAM_ID, PUMP_FEES_PROGRAM_ID, RAYDIUM_LAUNCHLAB_PROGRAM_ID, RAYDIUM_CPMM_PROGRAM_ID, RAYDIUM_CLMM_PROGRAM_ID, RAYDIUM_AMM_V4_PROGRAM_ID, ORCA_WHIRLPOOL_PROGRAM_ID, METEORA_POOLS_PROGRAM_ID, METEORA_DAMM_V2_PROGRAM_ID, METEORA_DLMM_PROGRAM_ID, METEORA_DBC_PROGRAM_ID, } from "../grpc/program_ids.js";
|