@liberfi.io/client 0.1.90 → 0.1.91
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/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -4
package/dist/index.d.mts
CHANGED
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';var sdk=require('@chainstream-io/sdk'),types=require('@liberfi.io/types'),utils=require('@liberfi.io/utils');typeof window<"u"&&(window.__LIBERFI_VERSION__=window.__LIBERFI_VERSION__||{},window.__LIBERFI_VERSION__["@liberfi.io/client"]="0.1.90");var fe="0.1.90";function t(e){return e??void 0}function d(e){switch(e){case types.Chain.ETHEREUM:return sdk.ChainSymbol.eth;case types.Chain.BINANCE:return sdk.ChainSymbol.bsc;case types.Chain.SOLANA:return sdk.ChainSymbol.sol}throw new Error(`Unsupported chain: ${e}`)}function R(e){switch(e){case "1s":return sdk.Resolution["1s"];case "15s":return sdk.Resolution["15s"];case "30s":return sdk.Resolution["30s"];case "1m":return sdk.Resolution["1m"];case "5m":return sdk.Resolution["5m"];case "15m":return sdk.Resolution["15m"];case "30m":case "1h":return sdk.Resolution["1h"];case "4h":return sdk.Resolution["4h"];case "12h":return sdk.Resolution["12h"];case "24h":return sdk.Resolution["1d"]}}function ye(e){return e}function V(e){switch(e){case "marketCap":return sdk.SearchSortBy.marketCapInUsd;case "tvl":return sdk.SearchSortBy.liquidityInUsd;case "price":return sdk.SearchSortBy.priceInUsd;case "holders":return sdk.SearchSortBy.holderCount;case "volumes24h":return sdk.SearchSortBy.h24VolumeInUsd;case "trades24h":return sdk.SearchSortBy.h24Transactions;case "createdAt":return sdk.SearchSortBy.tokenCreatedAt}throw new Error(`Unsupported search field: ${e}`)}function w(e){switch(e){case "price":return sdk.TokenField.marketDatapriceInUsd;case "priceChange1m":return sdk.TokenField.statspriceChangeRatioInUsd1m;case "priceChange5m":return sdk.TokenField.statspriceChangeRatioInUsd5m;case "priceChange1h":return sdk.TokenField.statspriceChangeRatioInUsd1h;case "priceChange4h":return sdk.TokenField.statspriceChangeRatioInUsd4h;case "priceChange24h":return sdk.TokenField.statspriceChangeRatioInUsd24h;case "marketCap":return sdk.TokenField.marketDatamarketCapInUsd;case "tvl":return sdk.TokenField.marketDatamaxPoolTvlInUsd;case "top10Holdings":return sdk.TokenField.marketDatatop10TotalHoldings;case "top10Ratio":return sdk.TokenField.marketDatatop10HoldingsRatio;case "top100Holdings":return sdk.TokenField.marketDatatop100TotalHoldings;case "top100Ratio":return sdk.TokenField.marketDatatop100HoldingsRatio;case "holders":return sdk.TokenField.marketDataholders;case "creatorsHoldings":return sdk.TokenField.marketDatacreatorHoldings;case "creatorsRatio":return sdk.TokenField.marketDatacreatorHoldingsRatio;case "buys1m":return sdk.TokenField.statsbuys1m;case "buys5m":return sdk.TokenField.statsbuys5m;case "buys15m":return sdk.TokenField.statsbuys15m;case "buys30m":return sdk.TokenField.statsbuys30m;case "buys1h":return sdk.TokenField.statsbuys1h;case "buys4h":return sdk.TokenField.statsbuys4h;case "buys24h":return sdk.TokenField.statsbuys24h;case "sells1m":return sdk.TokenField.statssells1m;case "sells5m":return sdk.TokenField.statssells5m;case "sells15m":return sdk.TokenField.statssells15m;case "sells30m":return sdk.TokenField.statssells30m;case "sells1h":return sdk.TokenField.statssells1h;case "sells4h":return sdk.TokenField.statssells4h;case "sells24h":return sdk.TokenField.statssells24h;case "trades1m":return sdk.TokenField.statstrades1m;case "trades5m":return sdk.TokenField.statstrades5m;case "trades1h":return sdk.TokenField.statstrades1h;case "trades4h":return sdk.TokenField.statstrades4h;case "trades24h":return sdk.TokenField.statstrades24h;case "traders1m":return sdk.TokenField.statstraders1m;case "traders5m":return sdk.TokenField.statstraders5m;case "traders1h":return sdk.TokenField.statstraders1h;case "traders4h":return sdk.TokenField.statstraders4h;case "traders24h":return sdk.TokenField.statstraders24h;case "volumes1m":return sdk.TokenField.statsvolumesInUsd1m;case "volumes5m":return sdk.TokenField.statsvolumesInUsd5m;case "volumes1h":return sdk.TokenField.statsvolumesInUsd1h;case "volumes4h":return sdk.TokenField.statsvolumesInUsd4h;case "volumes24h":return sdk.TokenField.statsvolumesInUsd24h;case "createdAt":return sdk.TokenField.tokenCreatedAt}throw new Error(`Unsupported sortBy: ${e}`)}function q(e){return e.filter(s=>["gt","gte","lt","lte","between"].indexOf(s.operator)>=0).map(s=>{let r={field:w(s.field)};return ["gt","gte","between"].indexOf(s.operator)>=0&&(r.min=typeof s.value=="number"?new utils.SafeBigNumber(s.value).toString():s.value),["lt","lte","between"].indexOf(s.operator)>=0&&(r.max=typeof s.value=="number"?new utils.SafeBigNumber(s.value).toString():s.value),r})}function I(e){switch(e){case sdk.ChainSymbol.eth:return types.Chain.ETHEREUM;case sdk.ChainSymbol.bsc:return types.Chain.BINANCE;case sdk.ChainSymbol.sol:case "solana":return types.Chain.SOLANA}throw new Error(`Unsupported chain: ${e}`)}function he(e){return {address:e.address??void 0,share:e.share??void 0,isVerified:e.isVerified??void 0}}function T(e){return {chain:I(e.chain),name:e.name,symbol:e.symbol,address:e.address,decimals:e.decimals,image:e.imageUrl??void 0,description:e.description??void 0,creators:e.tokenCreators?.map(he),launchedFrom:{programAddress:e.extra?.launchFromProgramAddress??void 0,protocolFamily:e.extra?.launchFromProtocolFamily??void 0},migrateProgress:e.marketData?.completionRatio?new utils.SafeBigNumber(e.marketData.completionRatio).shiftedBy(2).toString():void 0,migratedTo:{programAddress:e.extra?.migratedToProgramAddress??void 0,protocolFamily:e.extra?.migratedToProtocolFamily??void 0,poolAddress:e.extra?.migratedToPoolAddress??void 0,migratedAt:e.extra?.migratedAt?new Date(e.extra.migratedAt):void 0},socialMedias:e.socialMedias?Object.fromEntries(Object.entries(e.socialMedias).filter(([,s])=>s!=null).map(([s,r])=>[s,r])):void 0,stats:e.stats?H(e.stats):void 0,marketData:e.marketData?W(e.marketData):void 0,createdAt:e.tokenCreatedAt?new Date(e.tokenCreatedAt):void 0}}function H(e){return {"1m":f(e,"1m"),"5m":f(e,"5m"),"15m":f(e,"15m"),"30m":f(e,"30m"),"1h":f(e,"1h"),"4h":f(e,"4h"),"24h":f(e,"24h")}}function g(e){return e===void 0?void 0:parseInt(e)}function f(e,s){let r=e.periods?.[s];return r?{buys:g(r.buys),sells:g(r.sells),trades:g(r.trades),buyers:g(r.buyers),sellers:g(r.sellers),traders:g(r.traders),buyVolumes:r.buyVolume,sellVolumes:r.sellVolume,volumes:r.totalVolumeInNative,buyVolumesInUsd:r.buyVolumeInUsd,sellVolumesInUsd:r.sellVolumeInUsd,volumesInUsd:r.totalVolumeInUsd,openPriceInUsd:r.openInUsd,closePriceInUsd:r.closeInUsd,highPriceInUsd:r.highInUsd,lowPriceInUsd:r.lowInUsd,priceInUsd:r.closeInUsd,priceChange:r.priceChangeRatioInUsd}:{}}function Ds(e){return {poolAddress:e.poolAddress,programAddress:e.programAddress??void 0,protocolFamily:e.protocolFamily??void 0,tvl:e.tvlInSol??void 0,tvlInUsd:e.tvlInUsd??void 0}}function W(e){return {totalSupply:e.totalSupply??void 0,marketCap:e.marketCapInSol??void 0,marketCapInUsd:e.marketCapInUsd??void 0,price:e.priceInSol??void 0,priceInUsd:e.priceInUsd??void 0,tvl:e.totalTvlInSol??void 0,tvlInUsd:e.totalTvlInUsd??void 0,holders:e.holders?parseInt(e.holders):void 0,top10Holdings:e.top10TotalHoldings??void 0,top10HoldingsRatio:e.top10HoldingsRatio??void 0,top50Holdings:e.top50TotalHoldings??void 0,top50HoldingsRatio:e.top50HoldingsRatio??void 0,top100Holdings:e.top100TotalHoldings??void 0,top100HoldingsRatio:e.top100HoldingsRatio??void 0,bluechipHolders:e.bluechipTotalHolders?parseInt(e.bluechipTotalHolders):void 0,bluechipHoldings:e.bluechipTotalHoldings??void 0,bluechipHoldingsRatio:e.bluechipHoldingsRatio??void 0,kolHolders:e.kolTotalHolders?parseInt(e.kolTotalHolders):void 0,kolHoldings:e.kolTotalHoldings??void 0,kolHoldingsRatio:e.kolHoldingsRatio??void 0,sniperHolders:e.sniperTotalHolders?parseInt(e.sniperTotalHolders):void 0,sniperHoldings:e.sniperTotalHoldings??void 0,sniperHoldingsRatio:e.sniperHoldingsRatio??void 0,proHolders:e.proTotalHolders?parseInt(e.proTotalHolders):void 0,proHoldings:e.proTotalHoldings??void 0,proHoldingsRatio:e.proHoldingsRatio??void 0,insiderHolders:e.insiderTotalHolders?parseInt(e.insiderTotalHolders):void 0,insiderHoldings:e.insiderTotalHoldings??void 0,insiderHoldingsRatio:e.insiderHoldingsRatio??void 0,sandwichHolders:e.sandwishTotalHolders?parseInt(e.sandwishTotalHolders):void 0,sandwichHoldings:e.sandwishTotalHoldings??void 0,sandwichHoldingsRatio:e.sandwishHoldingsRatio??void 0,freshHolders:e.freshTotalHolders?parseInt(e.freshTotalHolders):void 0,freshHoldings:e.freshTotalHoldings??void 0,freshHoldingsRatio:e.freshHoldingsRatio??void 0,bundleHolders:e.bundleTotalHolders?parseInt(e.bundleTotalHolders):void 0,bundleHoldings:e.bundleTotalHoldings??void 0,bundleHoldingsRatio:e.bundleHoldingsRatio??void 0,devHolders:e.devTotalHolders?parseInt(e.devTotalHolders):void 0,devHoldings:e.devTotalHoldings??void 0,devHoldingsRatio:e.devHoldingsRatio??void 0}}function G(e,s){return {open:e.open,close:e.close,high:e.high,low:e.low,volume:e.volume,resolution:s,timestamp:new Date(e.timestamp)}}function Ie(e){return e==="1d"?"24h":e}function $(e){return {hasTransferFee:e.hasTransferFee,isTransferFeeUpgradable:e.isTransferFeeUpgradable,isTransferable:e.isTransferable,isFreezable:e.isFreezable,isClosable:e.isClosable}}var Ae=new Set([types.Chain.SOLANA,types.Chain.SOLANA_TESTNET,types.Chain.SOLANA_DEVNET]),Pe="0x0000000000000000000000000000000000000000",Se="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";function Ue(e){return e===utils.SOLANA_TOKENS.native.address?utils.SOLANA_TOKENS.wrapped.address:e}function Ce(e){return e.toLowerCase()===Pe.toLowerCase()?Se:e}function ve(e){return e.dex?e.dex:Ae.has(e.chain)?"jupiter":"kyberswap"}function v(e,s){return e==="jupiter"?Ue(s):e==="kyberswap"?Ce(s):s}function ps(e,s){return v(e,s)}function j(e){let s=ve(e),r=v(s,e.input),o=v(s,e.output);return {dex:s,userAddress:e.userAddress,amount:e.amount,swapMode:e.mode===types.API.SwapMode.EXACT_IN?sdk.SwapRouteInputSwapMode.ExactIn:sdk.SwapRouteInputSwapMode.ExactOut,slippage:e.slippage??1,inputMint:r,outputMint:o,priorityFee:e.priorityFee,...e.tipFee&&{tipFee:e.tipFee},...e.isAntiMev!=null&&{isAntiMev:e.isAntiMev},...e.permit&&{permit:e.permit},...e.deadline!=null&&{deadline:e.deadline}}}function K(e){return {signedTx:e.serializedTx}}function J(e){return {startCursor:t(e.startCursor),endCursor:t(e.endCursor),hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(s=>({address:s.walletAddress,amount:s.amount,amountInUsd:s.amountInUsd,ratio:s.percentage}))}}function Y(e){return {startCursor:t(e.startCursor),endCursor:t(e.endCursor),hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(T),extra:t(e.countsByProtocols)}}function Q(e){return {serializedTx:e.serializedTx,plans:[],extra:e.routeInfo}}function X(e){return {txHash:e.signature,extra:{jobId:e.jobId,elapsedTime:e.elapsedTime}}}function Z(e,s){let r=(s.data??[]).map(o=>({chain:I(o.chain),address:o.tokenAddress,name:o.name,symbol:o.symbol,image:t(o.logoUri),priceInUsd:o.priceInUsd,priceInNative:o.priceInNative,amount:o.amount,amountInUsd:o.valueInUsd,amountInNative:o.valueInNative,decimals:o.decimals}));return {chain:r[0]?.chain??e,address:s.walletAddress,balanceInUsd:s.totalValueInUsd,balanceInNative:s.totalValueInNative,startCursor:t(s.startCursor),endCursor:t(s.endCursor),hasPrev:s.hasPrev,hasNext:s.hasNext,portfolios:r}}function ee(e,s,r){return {chain:e,address:s,tokens:r.tokens?Number(r.tokens):void 0,buys:r.buys?Number(r.buys):void 0,sells:r.sells?Number(r.sells):void 0,totalTrades:r.totalTrades?Number(r.totalTrades):void 0,wins:r.wins?Number(r.wins):void 0,losses:r.losses?Number(r.losses):void 0,winRate:t(r.winRate),buyAmountInUsd:t(r.buyAmountInUsd),sellAmountInUsd:t(r.sellAmountInUsd),totalCostInUsd:t(r.totalCostInUsd),realizedProfitInUsd:t(r.realizedProfitInUsd),realizedProfitRatio:t(r.realizedProfitRatio),unrealizedProfitInUsd:t(r.unrealizedProfitInUsd),unrealizedProfitRatio:t(r.unrealizedProfitRatio),totalProfitInUsd:t(r.totalProfitInUsd),totalProfitRatio:t(r.totalProfitRatio),avgProfitPerTradeInUsd:t(r.avgProfitPerTradeInUsd)}}function se(e,s,r){let o=r.data.map(n=>({chain:e,address:n.tokenAddress,name:n.name??"",symbol:n.symbol??"",image:t(n.logoUri),amount:n.balance,amountInUsd:n.currentValue,priceInUsd:n.priceInUsd,decimals:n.decimals??0,totalTrades:Number(n.totalTrades),buys:Number(n.buys),buyVolumes:n.buyAmount,buyVolumesInUsd:n.buyAmountInUsd,buyAvgPriceInUsd:n.avgBuyPriceInUsd,sells:Number(n.sells),sellVolumes:n.sellAmount,sellVolumesInUsd:n.sellAmountInUsd,sellAvgPriceInUsd:n.avgSellPriceInUsd,realizedProfitInUsd:n.realizedProfitInUsd,realizedProfitRatio:n.realizedProfitRatio,unrealizedProfitInUsd:n.unrealizedProfitInUsd,unrealizedProfitRatio:n.unrealizedProfitRatio,totalProfitInUsd:n.totalProfitInUsd,totalProfitRatio:n.totalProfitRatio}));return {chain:e,address:s,tokens:Number(r.summary.tokens),buys:Number(r.summary.buys),sells:Number(r.summary.sells),totalTrades:Number(r.summary.totalTrades),wins:Number(r.summary.wins),losses:Number(r.summary.losses),winRate:t(r.summary.winRate),buyAmountInUsd:t(r.summary.buyAmountInUsd),sellAmountInUsd:t(r.summary.sellAmountInUsd),totalCostInUsd:r.summary.totalCostInUsd,realizedProfitInUsd:t(r.summary.realizedProfitInUsd),realizedProfitRatio:t(r.summary.realizedProfitRatio),unrealizedProfitInUsd:t(r.summary.unrealizedProfitInUsd),totalProfitInUsd:t(r.summary.totalProfitInUsd),startCursor:t(r.startCursor),endCursor:t(r.endCursor),hasPrev:r.hasPrev,hasNext:r.hasNext,portfolios:o}}function re(e,s){return (s.data??[]).map(r=>({chain:I(r.chain),address:r.tokenAddress,name:r.name,symbol:r.symbol,image:t(r.logoUri),priceInUsd:r.priceInUsd,priceInNative:r.priceInNative,amount:r.amount,amountInUsd:r.valueInUsd,amountInNative:r.valueInNative,decimals:r.decimals}))}function oe(e,s){return s.data.map(r=>({chain:e,address:r.tokenAddress,name:r.name??"",symbol:r.symbol??"",image:t(r.logoUri),amount:r.balance,amountInUsd:r.currentValue,priceInUsd:r.priceInUsd,decimals:r.decimals??0,totalTrades:Number(r.totalTrades),buys:Number(r.buys),buyVolumes:r.buyAmount,buyVolumesInUsd:r.buyAmountInUsd,buyAvgPriceInUsd:r.avgBuyPriceInUsd,sells:Number(r.sells),sellVolumes:r.sellAmount,sellVolumesInUsd:r.sellAmountInUsd,sellAvgPriceInUsd:r.avgSellPriceInUsd,realizedProfitInUsd:r.realizedProfitInUsd,realizedProfitRatio:r.realizedProfitRatio,unrealizedProfitInUsd:r.unrealizedProfitInUsd,unrealizedProfitRatio:r.unrealizedProfitRatio,totalProfitInUsd:r.totalProfitInUsd,totalProfitRatio:r.totalProfitRatio}))}function ne(e){return {startCursor:t(e.startCursor),endCursor:t(e.endCursor),hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(Re)}}function Re(e){let s=e.type.toLowerCase()==="buy";return {chain:I(e.chain),walletAddress:e.accountOwnerAddress,txHash:e.transactionSignature,type:s?"buy":"sell",from:{address:s?e.sideTokenAddress:e.tokenAddress,symbol:s?e.sideTokenSymbol:e.tokenSymbol,name:s?e.sideTokenName:e.tokenName,image:t(s?e.sideTokenImageUrl:e.tokenImageUrl),amount:s?e.sideTokenAmount:e.tokenAmount,amountInUsd:s?e.sideTokenAmountInUsd:e.tokenAmountInUsd,priceInUsd:s?e.sideTokenPriceInUsd:e.tokenPriceInUsd},to:{address:s?e.tokenAddress:e.sideTokenAddress,symbol:s?e.tokenSymbol:e.sideTokenSymbol,name:s?e.tokenName:e.sideTokenName,image:t(s?e.tokenImageUrl:e.sideTokenImageUrl),amount:s?e.tokenAmount:e.sideTokenAmount,amountInUsd:s?e.tokenAmountInUsd:e.sideTokenAmountInUsd,priceInUsd:s?e.tokenPriceInUsd:e.sideTokenPriceInUsd},dex:{programAddress:t(e.dexProgramAddress),protocolFamily:t(e.dexProtocolFamily),image:t(e.dexImage)},poolAddress:t(e.poolAddress),status:e.status??"success",time:new Date(e.blockTimestamp*1e3)}}function te(e){return {startCursor:t(e.startCursor),endCursor:t(e.endCursor),hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(we)}}function we(e){let s=e.type.toLowerCase().replace(/ /g,"_"),r=s==="buy";return {chain:I(e.chain),walletAddress:e.accountOwnerAddress,txHash:e.transactionSignature,type:s,from:{address:r?e.sideTokenAddress:e.tokenAddress,symbol:r?e.sideTokenSymbol:e.tokenSymbol,name:r?e.sideTokenName:e.tokenName,image:t(r?e.sideTokenImageUrl:e.tokenImageUrl),amount:r?e.sideTokenAmount:e.tokenAmount,amountInUsd:r?e.sideTokenAmountInUsd:e.tokenAmountInUsd,priceInUsd:r?e.sideTokenPriceInUsd:e.tokenPriceInUsd},to:{address:r?e.tokenAddress:e.sideTokenAddress,symbol:r?e.tokenSymbol:e.sideTokenSymbol,name:r?e.tokenName:e.sideTokenName,image:t(r?e.tokenImageUrl:e.sideTokenImageUrl),amount:r?e.tokenAmount:e.sideTokenAmount,amountInUsd:r?e.tokenAmountInUsd:e.sideTokenAmountInUsd,priceInUsd:r?e.tokenPriceInUsd:e.sideTokenPriceInUsd},dex:{programAddress:t(e.dexProgramAddress),protocolFamily:t(e.dexProtocolFamily),image:t(e.dexImage)},poolAddress:t(e.poolAddress),status:e.status??"success",time:new Date(e.blockTimestamp*1e3)}}function ae(e,s){return {chain:e,address:s.tokenAddress,name:s.name,symbol:s.symbol,decimals:s.decimals,createdAt:s.createdAtMs?new Date(s.createdAtMs):void 0,launchedFrom:s.launchFrom?{programAddress:s.launchFrom.programAddress,protocolFamily:s.launchFrom.protocolFamily}:void 0}}function ie(e,s){return {chain:e,address:s.tokenAddress,name:s.name,symbol:s.symbol,decimals:s.decimals,image:s.imageUrl,description:s.description,socialMedias:s.socialMedia?{...s.socialMedia}:void 0,createdAt:s.createdAtMs?new Date(s.createdAtMs):void 0,launchedFrom:s.launchFrom?{programAddress:s.launchFrom.programAddress,protocolFamily:s.launchFrom.protocolFamily}:void 0,migratedTo:s.migratedTo?{programAddress:s.migratedTo.programAddress,protocolFamily:s.migratedTo.protocolFamily}:void 0}}function de(e){return {open:e.open,close:e.close,high:e.high,low:e.low,volume:e.volume,resolution:Ie(e.resolution),timestamp:new Date(e.time)}}function He(e){let s=["1m","5m","15m","30m","1h","4h","24h"],r=e,o={};for(let n of s){let l=r[`buys${n}`],i=r[`sells${n}`],c=r[`buyers${n}`],S=r[`sellers${n}`],U=r[`buyVolumeInUsd${n}`],C=r[`sellVolumeInUsd${n}`],L=r[`trades${n}`],B=r[`price${n}`],h=r[`openInUsd${n}`],P=r[`closeInUsd${n}`];if(!(l!==void 0||i!==void 0||L!==void 0||B!==void 0))continue;let me=L??(l!==void 0&&i!==void 0?l+i:void 0),Te=c!==void 0&&S!==void 0?c+S:void 0,ke=U!==void 0&&C!==void 0?new utils.SafeBigNumber(U).plus(C).toString():void 0,be=h&&P&&new utils.SafeBigNumber(h).gt(0)?new utils.SafeBigNumber(P).minus(h).div(h).toString():void 0;o[n]={buys:l,sells:i,trades:me,buyers:c,sellers:S,traders:Te,buyVolumesInUsd:U,sellVolumesInUsd:C,volumesInUsd:ke,openPriceInUsd:h,closePriceInUsd:P,priceInUsd:B??P,priceChange:be};}return o}function We(e){return {priceInUsd:e.price}}function x(e,s){return {chain:e,address:s.address,stats:He(s),marketData:We(s)}}function D(e,s,r){return {chain:e,address:s,marketData:{totalSupply:r.supply,marketCapInUsd:r.marketCapInUsd}}}function p(e,s,r){return {chain:e,address:s,marketData:xe(r)}}function _(e,s,r){return r.metricType===sdk.WsMetricType.LIQUIDITY_IN_USD?{chain:e,address:s,marketData:{tvlInUsd:r.value}}:r.metricType===sdk.WsMetricType.MIGRATED_RATIO?{chain:e,address:s,migrateProgress:new utils.SafeBigNumber(r.value).shiftedBy(2).toString()}:{chain:e,address:s}}function N(e,s){return {chain:e,address:s.tokenAddress??"",migrateProgress:s.progressRatio?new utils.SafeBigNumber(s.progressRatio).shiftedBy(2).toString():void 0}}function le(e,s,r){return {chain:e,address:s,liquidities:[{poolAddress:r.poolAddress,tvlInUsd:r.liquidityInUsd,tvl:r.liquidityInNative}]}}function ce(e,s,r){return {chain:e,address:s,marketData:{tvlInUsd:r.liquidityInUsd,tvl:r.liquidityInNative}}}function xe(e){return {holders:e.holders,top10Holdings:e.top10HoldersAmount,top10HoldingsRatio:e.top10HoldersRatio,top50Holdings:e.top50HoldersAmount,top50HoldingsRatio:e.top50HoldersRatio,top100Holdings:e.top100HoldersAmount,top100HoldingsRatio:e.top100HoldersRatio,devHolders:e.balanceTagDevHolders===void 0?void 0:e.balanceTagDevHolders,devHoldings:e.balanceTagDevAmount,devHoldingsRatio:e.balanceTagDevRatio,sniperHolders:e.balanceTagSniperHolders===void 0?void 0:e.balanceTagSniperHolders,sniperHoldings:e.balanceTagSniperAmount,sniperHoldingsRatio:e.balanceTagSniperRatio,freshHolders:e.balanceTagFreshHolders===void 0?void 0:e.balanceTagFreshHolders,freshHoldings:e.balanceTagFreshAmount,freshHoldingsRatio:e.balanceTagFreshRatio,bundleHolders:e.balanceTagBundleHolders===void 0?void 0:e.balanceTagBundleHolders,bundleHoldings:e.balanceTagBundleAmount,bundleHoldingsRatio:e.balanceTagBundleRatio,sandwichHolders:e.balanceTagSandwichHolders===void 0?void 0:e.balanceTagSandwichHolders,sandwichHoldings:e.balanceTagSandwichAmount,sandwichHoldingsRatio:e.balanceTagSandwichRatio}}function F(e,s){let r=s.kind.toLowerCase()==="buy";return {chain:e,walletAddress:r?s.buyWalletAddress:s.sellWalletAddress,txHash:s.txHash,type:r?"buy":"sell",from:{address:s.sellTokenAddress,symbol:s.sellTokenSymbol,name:s.sellTokenName,amount:s.sellAmount,amountInUsd:s.sellAmountInUsd},to:{address:s.buyTokenAddress,symbol:s.buyTokenSymbol,name:s.buyTokenName,amount:s.buyAmount,amountInUsd:s.buyAmountInUsd},status:"success",time:new Date(s.timestamp)}}function O(e,s){let r=s.kind.toLowerCase().replace(/ /g,"_");return {chain:e,walletAddress:r==="buy"?s.buyWalletAddress:s.sellWalletAddress,txHash:s.txHash,type:r,from:{address:s.sellTokenAddress,symbol:s.sellTokenSymbol,name:s.sellTokenName,amount:s.sellAmount,amountInUsd:s.sellAmountInUsd},to:{address:s.buyTokenAddress,symbol:s.buyTokenSymbol,name:s.buyTokenName,amount:s.buyAmount,amountInUsd:s.buyAmountInUsd},status:"success",time:new Date(s.timestamp)}}var ue=class{constructor(s,r){this.accessToken=s;this.options=r;this._client=new sdk.ChainStreamClient(this.accessToken,this.options);}_client;async getToken(s,r){let o=await this._client.token.getToken(d(s),r);return T(o)}async getTokens(s,r){return (await this._client.token.getTokens(d(s),{tokenAddresses:r.join(",")})).map(T)}async getTokenCandles(s,r,o,n){return (await this._client.token.getCandles(d(s),r,{resolution:R(o),from:n?.after?.getTime(),to:n?.before?.getTime(),limit:n?.limit})).map(i=>G(i,o))}async getTokenSecurity(s,r){let o=await this._client.token.getSecurity(d(s),r);return $(o)}async getTokenStats(s,r){let o=await this._client.token.getStats(d(s),r);return H(o)}async getTokenHolders(s,r,o){let n=await this._client.token.getHolders(d(s),r,{cursor:o?.cursor,limit:o?.limit,direction:o?.direction});return J(n)}async getTokenMarketData(s,r){let o=await this._client.token.getMarketData(d(s),r);return W(o)}async getNewTokens(s,r){return (await this._client.ranking.getNewTokens(d(s),this._buildRankingParams(r))).map(T)}async getFinalStretchTokens(s,r){return (await this._client.ranking.getFinalStretchTokens(d(s),this._buildRankingParams(r))).map(T)}async getMigratedTokens(s,r){return (await this._client.ranking.getMigratedTokens(d(s),this._buildRankingParams(r))).map(T)}async getTrendingTokens(s,r,o){return (await this._client.ranking.getHotTokens(d(s),r,this._buildRankingParams(o))).map(T)}async getStockTokens(s,r){return (await this._client.ranking.getStocksTokens(d(s),this._buildRankingParams(r))).map(T)}async searchTokens(s){let r=await this._client.token.search({chains:s?.chains?.map(d),q:s?.keyword,limit:s?.limit,cursor:s?.cursor,sortBy:s?.sortBy?V(s.sortBy):void 0,sort:s?.sortDirection});return Y(r)}async swapRoute(s){let r=await this._client.dex.route(d(s.chain),j(s));return Q(r)}async sendTx(s){let r=await this._client.transaction.send(d(s.chain),K(s));return X(r)}async checkTxSuccess(s,r,o){let{success:n}=await this._client.waitForJob(r,o);return n}async getWalletPortfolios(s,r,o){let n=await this._client.wallet.getNetWorth(d(s),r,{cursor:o?.cursor,limit:o?.limit??100});return Z(s,n)}async getWalletPnl(s,r,o){let n=await this._client.wallet.getPnl(d(s),r,o?{resolution:o}:void 0);return ee(s,r,n)}async getWalletPortfolioPnls(s,r,o){let n=await this._client.wallet.getPnlDetails(d(s),r,{cursor:o?.cursor,limit:o?.limit??100});return se(s,r,n)}async getWalletPortfoliosByTokens(s,r,o){let n=await this._client.wallet.getNetWorthByTokens(d(s),r,{tokenAddresses:o.join(",")});return re(s,n)}async getWalletPortfolioPnlsByTokens(s,r,o){let n=await this._client.wallet.getPnlByToken(d(s),r,{tokenAddresses:o.join(",")});return oe(s,n)}async getWalletTrades(s,r,o){return this._getTrades(s,{walletAddress:r},o)}async getTokenTrades(s,r,o){return this._getTrades(s,{tokenAddress:r},o)}async getWalletActivities(s,r,o){return this._getActivities(s,{walletAddress:r},o)}async getTokenActivities(s,r,o){return this._getActivities(s,{tokenAddress:r},o)}async getPresignedUploadUrl(){return (await this._client.ipfs.presign()).presignUrl}subscribeToken(s,r,o){let n=d(s),l=[this._client.stream.subscribeTokenStats({chain:n,tokenAddress:r,callback:i=>o([x(s,i)])}),this._client.stream.subscribeTokenSupply({chain:n,tokenAddress:r,callback:i=>o([D(s,r,i)])}),this._client.stream.subscribeTokenHolders({chain:n,tokenAddress:r,callback:i=>o([p(s,r,i)])}),this._client.stream.subscribeTokenLiquidity({chain:n,tokenAddress:r,callback:i=>o([_(s,r,i)])}),this._client.stream.subscribeTokenMaxLiquidity({chain:n,tokenAddress:r,callback:i=>o([le(s,r,i)])}),this._client.stream.subscribeTokenTotalLiquidity({chain:n,tokenAddress:r,callback:i=>o([ce(s,r,i)])})];return {unsubscribe:()=>l.forEach(i=>i.unsubscribe())}}subscribeTokenCandles(s,r,o,n){return this._client.stream.subscribeTokenCandles({chain:d(s),tokenAddress:r,resolution:R(o),callback:l=>n([de(l)])})}subscribeWalletPnl(s,r,o){return this._client.stream.subscribeWalletPnlList({chain:d(s),walletAddress:r,callback:n=>o(n.map(l=>({chain:s,address:l.walletAddress,buys:l.buys,buyAmountInUsd:l.buyAmountInUsd,sells:l.sells,sellAmountInUsd:l.sellAmountInUsd,wins:l.wins,winRate:l.winRatio,totalProfitInUsd:l.pnlInUsd,totalProfitRatio:l.pnlRatio,avgProfitPerTradeInUsd:l.averagePnlInUsd,tokens:l.tokens,resolution:l.resolution})))})}subscribeWalletPortfolios(s,r,o){return this._client.stream.subscribeWalletBalance({chain:d(s),walletAddress:r,callback:n=>o(n.map(l=>({chain:s,walletAddress:l.walletAddress,tokenAddress:l.tokenAddress,priceInUsd:l.tokenPriceInUsd,amount:l.balance})))})}subscribeWalletPortfolioPnls(s,r,o){return this._client.stream.subscribeWalletPnl({chain:d(s),walletAddress:r,callback:n=>o([{chain:s,walletAddress:n.walletAddress,tokenAddress:n.tokenAddress,openTime:n.opentime?new Date(n.opentime):void 0,closeTime:n.closetime?new Date(n.closetime):void 0,buys:n.buyCount,buyVolumes:n.buyAmount,buyVolumesInUsd:n.buyAmountInUsd,buyAvgPriceInUsd:n.averageBuyPriceInUsd,sells:n.sellCount,sellVolumes:n.sellAmount,sellVolumesInUsd:n.sellAmountInUsd,sellAvgPriceInUsd:n.averageSellPriceInUsd,realizedProfitInUsd:n.realizedProfitInUsd,realizedProfitRatio:n.realizedProfitRatio,unrealizedProfitInUsd:n.unrealizedProfitInUsd,unrealizedProfitRatio:n.unrealizedProfitRatio,totalProfitInUsd:n.totalRealizedProfitInUsd,totalProfitRatio:n.totalRealizedProfitRatio}])})}subscribeWalletTrades(s,r,o){return this._client.stream.subscribeWalletTrade({chain:d(s),walletAddress:r,callback:n=>o([F(s,n)])})}subscribeTokenTrades(s,r,o){return this._client.stream.subscribeTokenTrade({chain:d(s),tokenAddress:r,callback:n=>o([F(s,n)])})}subscribeWalletActivities(s,r,o){return this._client.stream.subscribeWalletTrade({chain:d(s),walletAddress:r,callback:n=>o([O(s,n)])})}subscribeTokenActivities(s,r,o){return this._client.stream.subscribeTokenTrade({chain:d(s),tokenAddress:r,callback:n=>o([O(s,n)])})}subscribeNewTokens(s,r){let o=d(s),n=this._subscribeRankingTokens(s,sdk.WsChannelType.New,r),l=[this._client.stream.subscribeNewToken({chain:o,callback:i=>r([ae(s,i)])}),this._client.stream.subscribeNewTokensMetadata({chain:o,callback:i=>r(i.map(c=>ie(s,c)))}),this._client.stream.subscribeRankingTokensBondingCurve({chain:o,callback:i=>r(i.map(c=>N(s,c)))})];return {unsubscribe:()=>{n.unsubscribe(),l.forEach(i=>i.unsubscribe());}}}subscribeTrendingTokens(s,r){return this._subscribeRankingTokens(s,sdk.WsChannelType.HOT,r)}subscribeMigratedTokens(s,r){return this._subscribeRankingTokens(s,sdk.WsChannelType.MIGRATED,r)}subscribeFinalStretchTokens(s,r){let o=d(s),n=this._subscribeRankingTokens(s,sdk.WsChannelType.FINAL_STRETCH,r),l=this._client.stream.subscribeRankingTokensBondingCurve({chain:o,callback:i=>r(i.map(c=>N(s,c)))});return {unsubscribe:()=>{n.unsubscribe(),l.unsubscribe();}}}subscribeStockTokens(s,r){return this._subscribeRankingTokens(s,sdk.WsChannelType.US_STOCKS,r)}_buildRankingParams(s){return {sortBy:s?.sortBy?w(s.sortBy):void 0,sortDirection:s?.sortDirection?s.sortDirection:void 0,rangeFilters:s?.filters?q(s.filters):void 0,launchpadPlatform:s?.filters?pe(s.filters):void 0,searchKeywords:s?.keywords,excludeKeywords:s?.excludeKeywords}}async _getTrades(s,r,o){let n=await this._client.trade.getTrades(d(s),{...r,cursor:o?.cursor,limit:o?.limit,direction:o?.direction,beforeTimestamp:o?.before?.getTime(),afterTimestamp:o?.after?.getTime(),beforeBlockHeight:o?.beforeBlockHeight,afterBlockHeight:o?.afterBlockHeight,poolAddress:o?.poolAddress,type:o?.type?o.type.toUpperCase():void 0});return ne(n)}async _getActivities(s,r,o){let n=await this._client.trade.getActivities(d(s),{...r,cursor:o?.cursor,limit:o?.limit,direction:o?.direction,beforeTimestamp:o?.before?.getTime(),afterTimestamp:o?.after?.getTime(),beforeBlockHeight:o?.beforeBlockHeight,afterBlockHeight:o?.afterBlockHeight,poolAddress:o?.poolAddress,type:o?.type?o.type.toUpperCase():void 0});return te(n)}_subscribeRankingTokens(s,r,o){let n=d(s),l=[this._client.stream.subscribeRankingTokensStats({chain:n,channelType:r,callback:i=>o(i.map(c=>x(s,c)))}),this._client.stream.subscribeRankingTokensHolders({chain:n,channelType:r,callback:i=>o(i.map(c=>p(s,c.tokenAddress,c)))}),this._client.stream.subscribeRankingTokensSupply({chain:n,channelType:r,callback:i=>o(i.map(c=>D(s,c.tokenAddress,c)))}),this._client.stream.subscribeRankingTokensLiquidity({chain:n,channelType:r,callback:i=>o(i.map(c=>_(s,c.tokenAddress,c)))})];return {unsubscribe:()=>l.forEach(i=>i.unsubscribe())}}};function pe(e){let s=e.find(r=>r.field==="launchedFromProtocolFamily");if(s){if(s.operator==="eq")return [s.value];if(s.operator==="in")return s.value;console.warn("invalid launchedFromProtocolFamily filter",s);}}exports.Client=ue;exports.KYBERSWAP_NATIVE_SENTINEL=Se;exports.fromActivityPage=te;exports.fromChainDTO=I;exports.fromPnlDetailItems=oe;exports.fromPnlDetailsPage=se;exports.fromSendTxResult=X;exports.fromSwapRoute=Q;exports.fromTokenCandle=G;exports.fromTokenCreatorDTO=he;exports.fromTokenDTO=T;exports.fromTokenHolderPage=J;exports.fromTokenLiquidityDTO=Ds;exports.fromTokenMarketDataDTO=W;exports.fromTokenMetadataSubscribed=ie;exports.fromTokenPage=Y;exports.fromTokenSecurity=$;exports.fromTokenStatsDTO=H;exports.fromTokenSubscribed=ae;exports.fromTradePage=ne;exports.fromWalletNetWorthByTokens=re;exports.fromWalletPnlSummary=ee;exports.fromWalletPortfolios=Z;exports.fromWsActivity=O;exports.fromWsCandle=de;exports.fromWsTokenBondingCurveToSubscribed=N;exports.fromWsTokenDataSubscribed=x;exports.fromWsTokenHolderToSubscribed=p;exports.fromWsTokenLiquidityToSubscribed=_;exports.fromWsTokenMarketDataFromHolder=xe;exports.fromWsTokenMarketDataFromStats=We;exports.fromWsTokenMaxLiquidityToSubscribed=le;exports.fromWsTokenStats=He;exports.fromWsTokenSupplyToSubscribed=D;exports.fromWsTokenTotalLiquidityToSubscribed=ce;exports.fromWsTradeActivity=F;exports.toChainDTO=d;exports.toFieldDTO=w;exports.toMintForRoute=ps;exports.toRangeFiltersDTO=q;exports.toResolutionDTO=R;exports.toSearchFieldDTO=V;exports.toSendTxInput=K;exports.toSortDirectionDTO=ye;exports.toSwapRouteInput=j;exports.version=fe;//# sourceMappingURL=index.js.map
|
|
1
|
+
'use strict';var sdk=require('@chainstream-io/sdk'),types=require('@liberfi.io/types'),utils=require('@liberfi.io/utils');typeof window<"u"&&(window.__LIBERFI_VERSION__=window.__LIBERFI_VERSION__||{},window.__LIBERFI_VERSION__["@liberfi.io/client"]="0.1.91");var fe="0.1.91";function t(e){return e??void 0}function d(e){switch(e){case types.Chain.ETHEREUM:return sdk.ChainSymbol.eth;case types.Chain.BINANCE:return sdk.ChainSymbol.bsc;case types.Chain.SOLANA:return sdk.ChainSymbol.sol}throw new Error(`Unsupported chain: ${e}`)}function R(e){switch(e){case "1s":return sdk.Resolution["1s"];case "15s":return sdk.Resolution["15s"];case "30s":return sdk.Resolution["30s"];case "1m":return sdk.Resolution["1m"];case "5m":return sdk.Resolution["5m"];case "15m":return sdk.Resolution["15m"];case "30m":case "1h":return sdk.Resolution["1h"];case "4h":return sdk.Resolution["4h"];case "12h":return sdk.Resolution["12h"];case "24h":return sdk.Resolution["1d"]}}function ye(e){return e}function V(e){switch(e){case "marketCap":return sdk.SearchSortBy.marketCapInUsd;case "tvl":return sdk.SearchSortBy.liquidityInUsd;case "price":return sdk.SearchSortBy.priceInUsd;case "holders":return sdk.SearchSortBy.holderCount;case "volumes24h":return sdk.SearchSortBy.h24VolumeInUsd;case "trades24h":return sdk.SearchSortBy.h24Transactions;case "createdAt":return sdk.SearchSortBy.tokenCreatedAt}throw new Error(`Unsupported search field: ${e}`)}function w(e){switch(e){case "price":return sdk.TokenField.marketDatapriceInUsd;case "priceChange1m":return sdk.TokenField.statspriceChangeRatioInUsd1m;case "priceChange5m":return sdk.TokenField.statspriceChangeRatioInUsd5m;case "priceChange1h":return sdk.TokenField.statspriceChangeRatioInUsd1h;case "priceChange4h":return sdk.TokenField.statspriceChangeRatioInUsd4h;case "priceChange24h":return sdk.TokenField.statspriceChangeRatioInUsd24h;case "marketCap":return sdk.TokenField.marketDatamarketCapInUsd;case "tvl":return sdk.TokenField.marketDatamaxPoolTvlInUsd;case "top10Holdings":return sdk.TokenField.marketDatatop10TotalHoldings;case "top10Ratio":return sdk.TokenField.marketDatatop10HoldingsRatio;case "top100Holdings":return sdk.TokenField.marketDatatop100TotalHoldings;case "top100Ratio":return sdk.TokenField.marketDatatop100HoldingsRatio;case "holders":return sdk.TokenField.marketDataholders;case "creatorsHoldings":return sdk.TokenField.marketDatacreatorHoldings;case "creatorsRatio":return sdk.TokenField.marketDatacreatorHoldingsRatio;case "buys1m":return sdk.TokenField.statsbuys1m;case "buys5m":return sdk.TokenField.statsbuys5m;case "buys15m":return sdk.TokenField.statsbuys15m;case "buys30m":return sdk.TokenField.statsbuys30m;case "buys1h":return sdk.TokenField.statsbuys1h;case "buys4h":return sdk.TokenField.statsbuys4h;case "buys24h":return sdk.TokenField.statsbuys24h;case "sells1m":return sdk.TokenField.statssells1m;case "sells5m":return sdk.TokenField.statssells5m;case "sells15m":return sdk.TokenField.statssells15m;case "sells30m":return sdk.TokenField.statssells30m;case "sells1h":return sdk.TokenField.statssells1h;case "sells4h":return sdk.TokenField.statssells4h;case "sells24h":return sdk.TokenField.statssells24h;case "trades1m":return sdk.TokenField.statstrades1m;case "trades5m":return sdk.TokenField.statstrades5m;case "trades1h":return sdk.TokenField.statstrades1h;case "trades4h":return sdk.TokenField.statstrades4h;case "trades24h":return sdk.TokenField.statstrades24h;case "traders1m":return sdk.TokenField.statstraders1m;case "traders5m":return sdk.TokenField.statstraders5m;case "traders1h":return sdk.TokenField.statstraders1h;case "traders4h":return sdk.TokenField.statstraders4h;case "traders24h":return sdk.TokenField.statstraders24h;case "volumes1m":return sdk.TokenField.statsvolumesInUsd1m;case "volumes5m":return sdk.TokenField.statsvolumesInUsd5m;case "volumes1h":return sdk.TokenField.statsvolumesInUsd1h;case "volumes4h":return sdk.TokenField.statsvolumesInUsd4h;case "volumes24h":return sdk.TokenField.statsvolumesInUsd24h;case "createdAt":return sdk.TokenField.tokenCreatedAt}throw new Error(`Unsupported sortBy: ${e}`)}function q(e){return e.filter(s=>["gt","gte","lt","lte","between"].indexOf(s.operator)>=0).map(s=>{let r={field:w(s.field)};return ["gt","gte","between"].indexOf(s.operator)>=0&&(r.min=typeof s.value=="number"?new utils.SafeBigNumber(s.value).toString():s.value),["lt","lte","between"].indexOf(s.operator)>=0&&(r.max=typeof s.value=="number"?new utils.SafeBigNumber(s.value).toString():s.value),r})}function I(e){switch(e){case sdk.ChainSymbol.eth:return types.Chain.ETHEREUM;case sdk.ChainSymbol.bsc:return types.Chain.BINANCE;case sdk.ChainSymbol.sol:case "solana":return types.Chain.SOLANA}throw new Error(`Unsupported chain: ${e}`)}function he(e){return {address:e.address??void 0,share:e.share??void 0,isVerified:e.isVerified??void 0}}function T(e){return {chain:I(e.chain),name:e.name,symbol:e.symbol,address:e.address,decimals:e.decimals,image:e.imageUrl??void 0,description:e.description??void 0,creators:e.tokenCreators?.map(he),launchedFrom:{programAddress:e.extra?.launchFromProgramAddress??void 0,protocolFamily:e.extra?.launchFromProtocolFamily??void 0},migrateProgress:e.marketData?.completionRatio?new utils.SafeBigNumber(e.marketData.completionRatio).shiftedBy(2).toString():void 0,migratedTo:{programAddress:e.extra?.migratedToProgramAddress??void 0,protocolFamily:e.extra?.migratedToProtocolFamily??void 0,poolAddress:e.extra?.migratedToPoolAddress??void 0,migratedAt:e.extra?.migratedAt?new Date(e.extra.migratedAt):void 0},socialMedias:e.socialMedias?Object.fromEntries(Object.entries(e.socialMedias).filter(([,s])=>s!=null).map(([s,r])=>[s,r])):void 0,stats:e.stats?H(e.stats):void 0,marketData:e.marketData?W(e.marketData):void 0,createdAt:e.tokenCreatedAt?new Date(e.tokenCreatedAt):void 0}}function H(e){return {"1m":f(e,"1m"),"5m":f(e,"5m"),"15m":f(e,"15m"),"30m":f(e,"30m"),"1h":f(e,"1h"),"4h":f(e,"4h"),"24h":f(e,"24h")}}function g(e){return e===void 0?void 0:parseInt(e)}function f(e,s){let r=e.periods?.[s];return r?{buys:g(r.buys),sells:g(r.sells),trades:g(r.trades),buyers:g(r.buyers),sellers:g(r.sellers),traders:g(r.traders),buyVolumes:r.buyVolume,sellVolumes:r.sellVolume,volumes:r.totalVolumeInNative,buyVolumesInUsd:r.buyVolumeInUsd,sellVolumesInUsd:r.sellVolumeInUsd,volumesInUsd:r.totalVolumeInUsd,openPriceInUsd:r.openInUsd,closePriceInUsd:r.closeInUsd,highPriceInUsd:r.highInUsd,lowPriceInUsd:r.lowInUsd,priceInUsd:r.closeInUsd,priceChange:r.priceChangeRatioInUsd}:{}}function Ds(e){return {poolAddress:e.poolAddress,programAddress:e.programAddress??void 0,protocolFamily:e.protocolFamily??void 0,tvl:e.tvlInSol??void 0,tvlInUsd:e.tvlInUsd??void 0}}function W(e){return {totalSupply:e.totalSupply??void 0,marketCap:e.marketCapInSol??void 0,marketCapInUsd:e.marketCapInUsd??void 0,price:e.priceInSol??void 0,priceInUsd:e.priceInUsd??void 0,tvl:e.totalTvlInSol??void 0,tvlInUsd:e.totalTvlInUsd??void 0,holders:e.holders?parseInt(e.holders):void 0,top10Holdings:e.top10TotalHoldings??void 0,top10HoldingsRatio:e.top10HoldingsRatio??void 0,top50Holdings:e.top50TotalHoldings??void 0,top50HoldingsRatio:e.top50HoldingsRatio??void 0,top100Holdings:e.top100TotalHoldings??void 0,top100HoldingsRatio:e.top100HoldingsRatio??void 0,bluechipHolders:e.bluechipTotalHolders?parseInt(e.bluechipTotalHolders):void 0,bluechipHoldings:e.bluechipTotalHoldings??void 0,bluechipHoldingsRatio:e.bluechipHoldingsRatio??void 0,kolHolders:e.kolTotalHolders?parseInt(e.kolTotalHolders):void 0,kolHoldings:e.kolTotalHoldings??void 0,kolHoldingsRatio:e.kolHoldingsRatio??void 0,sniperHolders:e.sniperTotalHolders?parseInt(e.sniperTotalHolders):void 0,sniperHoldings:e.sniperTotalHoldings??void 0,sniperHoldingsRatio:e.sniperHoldingsRatio??void 0,proHolders:e.proTotalHolders?parseInt(e.proTotalHolders):void 0,proHoldings:e.proTotalHoldings??void 0,proHoldingsRatio:e.proHoldingsRatio??void 0,insiderHolders:e.insiderTotalHolders?parseInt(e.insiderTotalHolders):void 0,insiderHoldings:e.insiderTotalHoldings??void 0,insiderHoldingsRatio:e.insiderHoldingsRatio??void 0,sandwichHolders:e.sandwishTotalHolders?parseInt(e.sandwishTotalHolders):void 0,sandwichHoldings:e.sandwishTotalHoldings??void 0,sandwichHoldingsRatio:e.sandwishHoldingsRatio??void 0,freshHolders:e.freshTotalHolders?parseInt(e.freshTotalHolders):void 0,freshHoldings:e.freshTotalHoldings??void 0,freshHoldingsRatio:e.freshHoldingsRatio??void 0,bundleHolders:e.bundleTotalHolders?parseInt(e.bundleTotalHolders):void 0,bundleHoldings:e.bundleTotalHoldings??void 0,bundleHoldingsRatio:e.bundleHoldingsRatio??void 0,devHolders:e.devTotalHolders?parseInt(e.devTotalHolders):void 0,devHoldings:e.devTotalHoldings??void 0,devHoldingsRatio:e.devHoldingsRatio??void 0}}function G(e,s){return {open:e.open,close:e.close,high:e.high,low:e.low,volume:e.volume,resolution:s,timestamp:new Date(e.timestamp)}}function Ie(e){return e==="1d"?"24h":e}function $(e){return {hasTransferFee:e.hasTransferFee,isTransferFeeUpgradable:e.isTransferFeeUpgradable,isTransferable:e.isTransferable,isFreezable:e.isFreezable,isClosable:e.isClosable}}var Ae=new Set([types.Chain.SOLANA,types.Chain.SOLANA_TESTNET,types.Chain.SOLANA_DEVNET]),Pe="0x0000000000000000000000000000000000000000",Se="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";function Ue(e){return e===utils.SOLANA_TOKENS.native.address?utils.SOLANA_TOKENS.wrapped.address:e}function Ce(e){return e.toLowerCase()===Pe.toLowerCase()?Se:e}function ve(e){return e.dex?e.dex:Ae.has(e.chain)?"jupiter":"kyberswap"}function v(e,s){return e==="jupiter"?Ue(s):e==="kyberswap"?Ce(s):s}function ps(e,s){return v(e,s)}function j(e){let s=ve(e),r=v(s,e.input),o=v(s,e.output);return {dex:s,userAddress:e.userAddress,amount:e.amount,swapMode:e.mode===types.API.SwapMode.EXACT_IN?sdk.SwapRouteInputSwapMode.ExactIn:sdk.SwapRouteInputSwapMode.ExactOut,slippage:e.slippage??1,inputMint:r,outputMint:o,priorityFee:e.priorityFee,...e.tipFee&&{tipFee:e.tipFee},...e.isAntiMev!=null&&{isAntiMev:e.isAntiMev},...e.permit&&{permit:e.permit},...e.deadline!=null&&{deadline:e.deadline}}}function K(e){return {signedTx:e.serializedTx}}function J(e){return {startCursor:t(e.startCursor),endCursor:t(e.endCursor),hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(s=>({address:s.walletAddress,amount:s.amount,amountInUsd:s.amountInUsd,ratio:s.percentage}))}}function Y(e){return {startCursor:t(e.startCursor),endCursor:t(e.endCursor),hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(T),extra:t(e.countsByProtocols)}}function Q(e){return {serializedTx:e.serializedTx,plans:[],extra:e.routeInfo}}function X(e){return {txHash:e.signature,extra:{jobId:e.jobId,elapsedTime:e.elapsedTime}}}function Z(e,s){let r=(s.data??[]).map(o=>({chain:I(o.chain),address:o.tokenAddress,name:o.name,symbol:o.symbol,image:t(o.logoUri),priceInUsd:o.priceInUsd,priceInNative:o.priceInNative,amount:o.amount,amountInUsd:o.valueInUsd,amountInNative:o.valueInNative,decimals:o.decimals}));return {chain:r[0]?.chain??e,address:s.walletAddress,balanceInUsd:s.totalValueInUsd,balanceInNative:s.totalValueInNative,startCursor:t(s.startCursor),endCursor:t(s.endCursor),hasPrev:s.hasPrev,hasNext:s.hasNext,portfolios:r}}function ee(e,s,r){return {chain:e,address:s,tokens:r.tokens?Number(r.tokens):void 0,buys:r.buys?Number(r.buys):void 0,sells:r.sells?Number(r.sells):void 0,totalTrades:r.totalTrades?Number(r.totalTrades):void 0,wins:r.wins?Number(r.wins):void 0,losses:r.losses?Number(r.losses):void 0,winRate:t(r.winRate),buyAmountInUsd:t(r.buyAmountInUsd),sellAmountInUsd:t(r.sellAmountInUsd),totalCostInUsd:t(r.totalCostInUsd),realizedProfitInUsd:t(r.realizedProfitInUsd),realizedProfitRatio:t(r.realizedProfitRatio),unrealizedProfitInUsd:t(r.unrealizedProfitInUsd),unrealizedProfitRatio:t(r.unrealizedProfitRatio),totalProfitInUsd:t(r.totalProfitInUsd),totalProfitRatio:t(r.totalProfitRatio),avgProfitPerTradeInUsd:t(r.avgProfitPerTradeInUsd)}}function se(e,s,r){let o=r.data.map(n=>({chain:e,address:n.tokenAddress,name:n.name??"",symbol:n.symbol??"",image:t(n.logoUri),amount:n.balance,amountInUsd:n.currentValue,priceInUsd:n.priceInUsd,decimals:n.decimals??0,totalTrades:Number(n.totalTrades),buys:Number(n.buys),buyVolumes:n.buyAmount,buyVolumesInUsd:n.buyAmountInUsd,buyAvgPriceInUsd:n.avgBuyPriceInUsd,sells:Number(n.sells),sellVolumes:n.sellAmount,sellVolumesInUsd:n.sellAmountInUsd,sellAvgPriceInUsd:n.avgSellPriceInUsd,realizedProfitInUsd:n.realizedProfitInUsd,realizedProfitRatio:n.realizedProfitRatio,unrealizedProfitInUsd:n.unrealizedProfitInUsd,unrealizedProfitRatio:n.unrealizedProfitRatio,totalProfitInUsd:n.totalProfitInUsd,totalProfitRatio:n.totalProfitRatio}));return {chain:e,address:s,tokens:Number(r.summary.tokens),buys:Number(r.summary.buys),sells:Number(r.summary.sells),totalTrades:Number(r.summary.totalTrades),wins:Number(r.summary.wins),losses:Number(r.summary.losses),winRate:t(r.summary.winRate),buyAmountInUsd:t(r.summary.buyAmountInUsd),sellAmountInUsd:t(r.summary.sellAmountInUsd),totalCostInUsd:r.summary.totalCostInUsd,realizedProfitInUsd:t(r.summary.realizedProfitInUsd),realizedProfitRatio:t(r.summary.realizedProfitRatio),unrealizedProfitInUsd:t(r.summary.unrealizedProfitInUsd),totalProfitInUsd:t(r.summary.totalProfitInUsd),startCursor:t(r.startCursor),endCursor:t(r.endCursor),hasPrev:r.hasPrev,hasNext:r.hasNext,portfolios:o}}function re(e,s){return (s.data??[]).map(r=>({chain:I(r.chain),address:r.tokenAddress,name:r.name,symbol:r.symbol,image:t(r.logoUri),priceInUsd:r.priceInUsd,priceInNative:r.priceInNative,amount:r.amount,amountInUsd:r.valueInUsd,amountInNative:r.valueInNative,decimals:r.decimals}))}function oe(e,s){return s.data.map(r=>({chain:e,address:r.tokenAddress,name:r.name??"",symbol:r.symbol??"",image:t(r.logoUri),amount:r.balance,amountInUsd:r.currentValue,priceInUsd:r.priceInUsd,decimals:r.decimals??0,totalTrades:Number(r.totalTrades),buys:Number(r.buys),buyVolumes:r.buyAmount,buyVolumesInUsd:r.buyAmountInUsd,buyAvgPriceInUsd:r.avgBuyPriceInUsd,sells:Number(r.sells),sellVolumes:r.sellAmount,sellVolumesInUsd:r.sellAmountInUsd,sellAvgPriceInUsd:r.avgSellPriceInUsd,realizedProfitInUsd:r.realizedProfitInUsd,realizedProfitRatio:r.realizedProfitRatio,unrealizedProfitInUsd:r.unrealizedProfitInUsd,unrealizedProfitRatio:r.unrealizedProfitRatio,totalProfitInUsd:r.totalProfitInUsd,totalProfitRatio:r.totalProfitRatio}))}function ne(e){return {startCursor:t(e.startCursor),endCursor:t(e.endCursor),hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(Re)}}function Re(e){let s=e.type.toLowerCase()==="buy";return {chain:I(e.chain),walletAddress:e.accountOwnerAddress,txHash:e.transactionSignature,type:s?"buy":"sell",from:{address:s?e.sideTokenAddress:e.tokenAddress,symbol:s?e.sideTokenSymbol:e.tokenSymbol,name:s?e.sideTokenName:e.tokenName,image:t(s?e.sideTokenImageUrl:e.tokenImageUrl),amount:s?e.sideTokenAmount:e.tokenAmount,amountInUsd:s?e.sideTokenAmountInUsd:e.tokenAmountInUsd,priceInUsd:s?e.sideTokenPriceInUsd:e.tokenPriceInUsd},to:{address:s?e.tokenAddress:e.sideTokenAddress,symbol:s?e.tokenSymbol:e.sideTokenSymbol,name:s?e.tokenName:e.sideTokenName,image:t(s?e.tokenImageUrl:e.sideTokenImageUrl),amount:s?e.tokenAmount:e.sideTokenAmount,amountInUsd:s?e.tokenAmountInUsd:e.sideTokenAmountInUsd,priceInUsd:s?e.tokenPriceInUsd:e.sideTokenPriceInUsd},dex:{programAddress:t(e.dexProgramAddress),protocolFamily:t(e.dexProtocolFamily),image:t(e.dexImage)},poolAddress:t(e.poolAddress),status:e.status??"success",time:new Date(e.blockTimestamp*1e3)}}function te(e){return {startCursor:t(e.startCursor),endCursor:t(e.endCursor),hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(we)}}function we(e){let s=e.type.toLowerCase().replace(/ /g,"_"),r=s==="buy";return {chain:I(e.chain),walletAddress:e.accountOwnerAddress,txHash:e.transactionSignature,type:s,from:{address:r?e.sideTokenAddress:e.tokenAddress,symbol:r?e.sideTokenSymbol:e.tokenSymbol,name:r?e.sideTokenName:e.tokenName,image:t(r?e.sideTokenImageUrl:e.tokenImageUrl),amount:r?e.sideTokenAmount:e.tokenAmount,amountInUsd:r?e.sideTokenAmountInUsd:e.tokenAmountInUsd,priceInUsd:r?e.sideTokenPriceInUsd:e.tokenPriceInUsd},to:{address:r?e.tokenAddress:e.sideTokenAddress,symbol:r?e.tokenSymbol:e.sideTokenSymbol,name:r?e.tokenName:e.sideTokenName,image:t(r?e.tokenImageUrl:e.sideTokenImageUrl),amount:r?e.tokenAmount:e.sideTokenAmount,amountInUsd:r?e.tokenAmountInUsd:e.sideTokenAmountInUsd,priceInUsd:r?e.tokenPriceInUsd:e.sideTokenPriceInUsd},dex:{programAddress:t(e.dexProgramAddress),protocolFamily:t(e.dexProtocolFamily),image:t(e.dexImage)},poolAddress:t(e.poolAddress),status:e.status??"success",time:new Date(e.blockTimestamp*1e3)}}function ae(e,s){return {chain:e,address:s.tokenAddress,name:s.name,symbol:s.symbol,decimals:s.decimals,createdAt:s.createdAtMs?new Date(s.createdAtMs):void 0,launchedFrom:s.launchFrom?{programAddress:s.launchFrom.programAddress,protocolFamily:s.launchFrom.protocolFamily}:void 0}}function ie(e,s){return {chain:e,address:s.tokenAddress,name:s.name,symbol:s.symbol,decimals:s.decimals,image:s.imageUrl,description:s.description,socialMedias:s.socialMedia?{...s.socialMedia}:void 0,createdAt:s.createdAtMs?new Date(s.createdAtMs):void 0,launchedFrom:s.launchFrom?{programAddress:s.launchFrom.programAddress,protocolFamily:s.launchFrom.protocolFamily}:void 0,migratedTo:s.migratedTo?{programAddress:s.migratedTo.programAddress,protocolFamily:s.migratedTo.protocolFamily}:void 0}}function de(e){return {open:e.open,close:e.close,high:e.high,low:e.low,volume:e.volume,resolution:Ie(e.resolution),timestamp:new Date(e.time)}}function He(e){let s=["1m","5m","15m","30m","1h","4h","24h"],r=e,o={};for(let n of s){let l=r[`buys${n}`],i=r[`sells${n}`],c=r[`buyers${n}`],S=r[`sellers${n}`],U=r[`buyVolumeInUsd${n}`],C=r[`sellVolumeInUsd${n}`],L=r[`trades${n}`],B=r[`price${n}`],h=r[`openInUsd${n}`],P=r[`closeInUsd${n}`];if(!(l!==void 0||i!==void 0||L!==void 0||B!==void 0))continue;let me=L??(l!==void 0&&i!==void 0?l+i:void 0),Te=c!==void 0&&S!==void 0?c+S:void 0,ke=U!==void 0&&C!==void 0?new utils.SafeBigNumber(U).plus(C).toString():void 0,be=h&&P&&new utils.SafeBigNumber(h).gt(0)?new utils.SafeBigNumber(P).minus(h).div(h).toString():void 0;o[n]={buys:l,sells:i,trades:me,buyers:c,sellers:S,traders:Te,buyVolumesInUsd:U,sellVolumesInUsd:C,volumesInUsd:ke,openPriceInUsd:h,closePriceInUsd:P,priceInUsd:B??P,priceChange:be};}return o}function We(e){return {priceInUsd:e.price}}function x(e,s){return {chain:e,address:s.address,stats:He(s),marketData:We(s)}}function D(e,s,r){return {chain:e,address:s,marketData:{totalSupply:r.supply,marketCapInUsd:r.marketCapInUsd}}}function p(e,s,r){return {chain:e,address:s,marketData:xe(r)}}function _(e,s,r){return r.metricType===sdk.WsMetricType.LIQUIDITY_IN_USD?{chain:e,address:s,marketData:{tvlInUsd:r.value}}:r.metricType===sdk.WsMetricType.MIGRATED_RATIO?{chain:e,address:s,migrateProgress:new utils.SafeBigNumber(r.value).shiftedBy(2).toString()}:{chain:e,address:s}}function N(e,s){return {chain:e,address:s.tokenAddress??"",migrateProgress:s.progressRatio?new utils.SafeBigNumber(s.progressRatio).shiftedBy(2).toString():void 0}}function le(e,s,r){return {chain:e,address:s,liquidities:[{poolAddress:r.poolAddress,tvlInUsd:r.liquidityInUsd,tvl:r.liquidityInNative}]}}function ce(e,s,r){return {chain:e,address:s,marketData:{tvlInUsd:r.liquidityInUsd,tvl:r.liquidityInNative}}}function xe(e){return {holders:e.holders,top10Holdings:e.top10HoldersAmount,top10HoldingsRatio:e.top10HoldersRatio,top50Holdings:e.top50HoldersAmount,top50HoldingsRatio:e.top50HoldersRatio,top100Holdings:e.top100HoldersAmount,top100HoldingsRatio:e.top100HoldersRatio,devHolders:e.balanceTagDevHolders===void 0?void 0:e.balanceTagDevHolders,devHoldings:e.balanceTagDevAmount,devHoldingsRatio:e.balanceTagDevRatio,sniperHolders:e.balanceTagSniperHolders===void 0?void 0:e.balanceTagSniperHolders,sniperHoldings:e.balanceTagSniperAmount,sniperHoldingsRatio:e.balanceTagSniperRatio,freshHolders:e.balanceTagFreshHolders===void 0?void 0:e.balanceTagFreshHolders,freshHoldings:e.balanceTagFreshAmount,freshHoldingsRatio:e.balanceTagFreshRatio,bundleHolders:e.balanceTagBundleHolders===void 0?void 0:e.balanceTagBundleHolders,bundleHoldings:e.balanceTagBundleAmount,bundleHoldingsRatio:e.balanceTagBundleRatio,sandwichHolders:e.balanceTagSandwichHolders===void 0?void 0:e.balanceTagSandwichHolders,sandwichHoldings:e.balanceTagSandwichAmount,sandwichHoldingsRatio:e.balanceTagSandwichRatio}}function F(e,s){let r=s.kind.toLowerCase()==="buy";return {chain:e,walletAddress:r?s.buyWalletAddress:s.sellWalletAddress,txHash:s.txHash,type:r?"buy":"sell",from:{address:s.sellTokenAddress,symbol:s.sellTokenSymbol,name:s.sellTokenName,amount:s.sellAmount,amountInUsd:s.sellAmountInUsd},to:{address:s.buyTokenAddress,symbol:s.buyTokenSymbol,name:s.buyTokenName,amount:s.buyAmount,amountInUsd:s.buyAmountInUsd},status:"success",time:new Date(s.timestamp)}}function O(e,s){let r=s.kind.toLowerCase().replace(/ /g,"_");return {chain:e,walletAddress:r==="buy"?s.buyWalletAddress:s.sellWalletAddress,txHash:s.txHash,type:r,from:{address:s.sellTokenAddress,symbol:s.sellTokenSymbol,name:s.sellTokenName,amount:s.sellAmount,amountInUsd:s.sellAmountInUsd},to:{address:s.buyTokenAddress,symbol:s.buyTokenSymbol,name:s.buyTokenName,amount:s.buyAmount,amountInUsd:s.buyAmountInUsd},status:"success",time:new Date(s.timestamp)}}var ue=class{constructor(s,r){this.accessToken=s;this.options=r;this._client=new sdk.ChainStreamClient(this.accessToken,this.options);}_client;async getToken(s,r){let o=await this._client.token.getToken(d(s),r);return T(o)}async getTokens(s,r){return (await this._client.token.getTokens(d(s),{tokenAddresses:r.join(",")})).map(T)}async getTokenCandles(s,r,o,n){return (await this._client.token.getCandles(d(s),r,{resolution:R(o),from:n?.after?.getTime(),to:n?.before?.getTime(),limit:n?.limit})).map(i=>G(i,o))}async getTokenSecurity(s,r){let o=await this._client.token.getSecurity(d(s),r);return $(o)}async getTokenStats(s,r){let o=await this._client.token.getStats(d(s),r);return H(o)}async getTokenHolders(s,r,o){let n=await this._client.token.getHolders(d(s),r,{cursor:o?.cursor,limit:o?.limit,direction:o?.direction});return J(n)}async getTokenMarketData(s,r){let o=await this._client.token.getMarketData(d(s),r);return W(o)}async getNewTokens(s,r){return (await this._client.ranking.getNewTokens(d(s),this._buildRankingParams(r))).map(T)}async getFinalStretchTokens(s,r){return (await this._client.ranking.getFinalStretchTokens(d(s),this._buildRankingParams(r))).map(T)}async getMigratedTokens(s,r){return (await this._client.ranking.getMigratedTokens(d(s),this._buildRankingParams(r))).map(T)}async getTrendingTokens(s,r,o){return (await this._client.ranking.getHotTokens(d(s),r,this._buildRankingParams(o))).map(T)}async getStockTokens(s,r){return (await this._client.ranking.getStocksTokens(d(s),this._buildRankingParams(r))).map(T)}async searchTokens(s){let r=await this._client.token.search({chains:s?.chains?.map(d),q:s?.keyword,limit:s?.limit,cursor:s?.cursor,sortBy:s?.sortBy?V(s.sortBy):void 0,sort:s?.sortDirection});return Y(r)}async swapRoute(s){let r=await this._client.dex.route(d(s.chain),j(s));return Q(r)}async sendTx(s){let r=await this._client.transaction.send(d(s.chain),K(s));return X(r)}async checkTxSuccess(s,r,o){let{success:n}=await this._client.waitForJob(r,o);return n}async getWalletPortfolios(s,r,o){let n=await this._client.wallet.getNetWorth(d(s),r,{cursor:o?.cursor,limit:o?.limit??100});return Z(s,n)}async getWalletPnl(s,r,o){let n=await this._client.wallet.getPnl(d(s),r,o?{resolution:o}:void 0);return ee(s,r,n)}async getWalletPortfolioPnls(s,r,o){let n=await this._client.wallet.getPnlDetails(d(s),r,{cursor:o?.cursor,limit:o?.limit??100});return se(s,r,n)}async getWalletPortfoliosByTokens(s,r,o){let n=await this._client.wallet.getNetWorthByTokens(d(s),r,{tokenAddresses:o.join(",")});return re(s,n)}async getWalletPortfolioPnlsByTokens(s,r,o){let n=await this._client.wallet.getPnlByToken(d(s),r,{tokenAddresses:o.join(",")});return oe(s,n)}async getWalletTrades(s,r,o){return this._getTrades(s,{walletAddress:r},o)}async getTokenTrades(s,r,o){return this._getTrades(s,{tokenAddress:r},o)}async getWalletActivities(s,r,o){return this._getActivities(s,{walletAddress:r},o)}async getTokenActivities(s,r,o){return this._getActivities(s,{tokenAddress:r},o)}async getPresignedUploadUrl(){return (await this._client.ipfs.presign()).presignUrl}subscribeToken(s,r,o){let n=d(s),l=[this._client.stream.subscribeTokenStats({chain:n,tokenAddress:r,callback:i=>o([x(s,i)])}),this._client.stream.subscribeTokenSupply({chain:n,tokenAddress:r,callback:i=>o([D(s,r,i)])}),this._client.stream.subscribeTokenHolders({chain:n,tokenAddress:r,callback:i=>o([p(s,r,i)])}),this._client.stream.subscribeTokenLiquidity({chain:n,tokenAddress:r,callback:i=>o([_(s,r,i)])}),this._client.stream.subscribeTokenMaxLiquidity({chain:n,tokenAddress:r,callback:i=>o([le(s,r,i)])}),this._client.stream.subscribeTokenTotalLiquidity({chain:n,tokenAddress:r,callback:i=>o([ce(s,r,i)])})];return {unsubscribe:()=>l.forEach(i=>i.unsubscribe())}}subscribeTokenCandles(s,r,o,n){return this._client.stream.subscribeTokenCandles({chain:d(s),tokenAddress:r,resolution:R(o),callback:l=>n([de(l)])})}subscribeWalletPnl(s,r,o){return this._client.stream.subscribeWalletPnlList({chain:d(s),walletAddress:r,callback:n=>o(n.map(l=>({chain:s,address:l.walletAddress,buys:l.buys,buyAmountInUsd:l.buyAmountInUsd,sells:l.sells,sellAmountInUsd:l.sellAmountInUsd,wins:l.wins,winRate:l.winRatio,totalProfitInUsd:l.pnlInUsd,totalProfitRatio:l.pnlRatio,avgProfitPerTradeInUsd:l.averagePnlInUsd,tokens:l.tokens,resolution:l.resolution})))})}subscribeWalletPortfolios(s,r,o){return this._client.stream.subscribeWalletBalance({chain:d(s),walletAddress:r,callback:n=>o(n.map(l=>({chain:s,walletAddress:l.walletAddress,tokenAddress:l.tokenAddress,priceInUsd:l.tokenPriceInUsd,amount:l.balance})))})}subscribeWalletPortfolioPnls(s,r,o){return this._client.stream.subscribeWalletPnl({chain:d(s),walletAddress:r,callback:n=>o([{chain:s,walletAddress:n.walletAddress,tokenAddress:n.tokenAddress,openTime:n.opentime?new Date(n.opentime):void 0,closeTime:n.closetime?new Date(n.closetime):void 0,buys:n.buyCount,buyVolumes:n.buyAmount,buyVolumesInUsd:n.buyAmountInUsd,buyAvgPriceInUsd:n.averageBuyPriceInUsd,sells:n.sellCount,sellVolumes:n.sellAmount,sellVolumesInUsd:n.sellAmountInUsd,sellAvgPriceInUsd:n.averageSellPriceInUsd,realizedProfitInUsd:n.realizedProfitInUsd,realizedProfitRatio:n.realizedProfitRatio,unrealizedProfitInUsd:n.unrealizedProfitInUsd,unrealizedProfitRatio:n.unrealizedProfitRatio,totalProfitInUsd:n.totalRealizedProfitInUsd,totalProfitRatio:n.totalRealizedProfitRatio}])})}subscribeWalletTrades(s,r,o){return this._client.stream.subscribeWalletTrade({chain:d(s),walletAddress:r,callback:n=>o([F(s,n)])})}subscribeTokenTrades(s,r,o){return this._client.stream.subscribeTokenTrade({chain:d(s),tokenAddress:r,callback:n=>o([F(s,n)])})}subscribeWalletActivities(s,r,o){return this._client.stream.subscribeWalletTrade({chain:d(s),walletAddress:r,callback:n=>o([O(s,n)])})}subscribeTokenActivities(s,r,o){return this._client.stream.subscribeTokenTrade({chain:d(s),tokenAddress:r,callback:n=>o([O(s,n)])})}subscribeNewTokens(s,r){let o=d(s),n=this._subscribeRankingTokens(s,sdk.WsChannelType.New,r),l=[this._client.stream.subscribeNewToken({chain:o,callback:i=>r([ae(s,i)])}),this._client.stream.subscribeNewTokensMetadata({chain:o,callback:i=>r(i.map(c=>ie(s,c)))}),this._client.stream.subscribeRankingTokensBondingCurve({chain:o,callback:i=>r(i.map(c=>N(s,c)))})];return {unsubscribe:()=>{n.unsubscribe(),l.forEach(i=>i.unsubscribe());}}}subscribeTrendingTokens(s,r){return this._subscribeRankingTokens(s,sdk.WsChannelType.HOT,r)}subscribeMigratedTokens(s,r){return this._subscribeRankingTokens(s,sdk.WsChannelType.MIGRATED,r)}subscribeFinalStretchTokens(s,r){let o=d(s),n=this._subscribeRankingTokens(s,sdk.WsChannelType.FINAL_STRETCH,r),l=this._client.stream.subscribeRankingTokensBondingCurve({chain:o,callback:i=>r(i.map(c=>N(s,c)))});return {unsubscribe:()=>{n.unsubscribe(),l.unsubscribe();}}}subscribeStockTokens(s,r){return this._subscribeRankingTokens(s,sdk.WsChannelType.US_STOCKS,r)}_buildRankingParams(s){return {sortBy:s?.sortBy?w(s.sortBy):void 0,sortDirection:s?.sortDirection?s.sortDirection:void 0,rangeFilters:s?.filters?q(s.filters):void 0,launchpadPlatform:s?.filters?pe(s.filters):void 0,searchKeywords:s?.keywords,excludeKeywords:s?.excludeKeywords}}async _getTrades(s,r,o){let n=await this._client.trade.getTrades(d(s),{...r,cursor:o?.cursor,limit:o?.limit,direction:o?.direction,beforeTimestamp:o?.before?.getTime(),afterTimestamp:o?.after?.getTime(),beforeBlockHeight:o?.beforeBlockHeight,afterBlockHeight:o?.afterBlockHeight,poolAddress:o?.poolAddress,type:o?.type?o.type.toUpperCase():void 0});return ne(n)}async _getActivities(s,r,o){let n=await this._client.trade.getActivities(d(s),{...r,cursor:o?.cursor,limit:o?.limit,direction:o?.direction,beforeTimestamp:o?.before?.getTime(),afterTimestamp:o?.after?.getTime(),beforeBlockHeight:o?.beforeBlockHeight,afterBlockHeight:o?.afterBlockHeight,poolAddress:o?.poolAddress,type:o?.type?o.type.toUpperCase():void 0});return te(n)}_subscribeRankingTokens(s,r,o){let n=d(s),l=[this._client.stream.subscribeRankingTokensStats({chain:n,channelType:r,callback:i=>o(i.map(c=>x(s,c)))}),this._client.stream.subscribeRankingTokensHolders({chain:n,channelType:r,callback:i=>o(i.map(c=>p(s,c.tokenAddress,c)))}),this._client.stream.subscribeRankingTokensSupply({chain:n,channelType:r,callback:i=>o(i.map(c=>D(s,c.tokenAddress,c)))}),this._client.stream.subscribeRankingTokensLiquidity({chain:n,channelType:r,callback:i=>o(i.map(c=>_(s,c.tokenAddress,c)))})];return {unsubscribe:()=>l.forEach(i=>i.unsubscribe())}}};function pe(e){let s=e.find(r=>r.field==="launchedFromProtocolFamily");if(s){if(s.operator==="eq")return [s.value];if(s.operator==="in")return s.value;console.warn("invalid launchedFromProtocolFamily filter",s);}}exports.Client=ue;exports.KYBERSWAP_NATIVE_SENTINEL=Se;exports.fromActivityPage=te;exports.fromChainDTO=I;exports.fromPnlDetailItems=oe;exports.fromPnlDetailsPage=se;exports.fromSendTxResult=X;exports.fromSwapRoute=Q;exports.fromTokenCandle=G;exports.fromTokenCreatorDTO=he;exports.fromTokenDTO=T;exports.fromTokenHolderPage=J;exports.fromTokenLiquidityDTO=Ds;exports.fromTokenMarketDataDTO=W;exports.fromTokenMetadataSubscribed=ie;exports.fromTokenPage=Y;exports.fromTokenSecurity=$;exports.fromTokenStatsDTO=H;exports.fromTokenSubscribed=ae;exports.fromTradePage=ne;exports.fromWalletNetWorthByTokens=re;exports.fromWalletPnlSummary=ee;exports.fromWalletPortfolios=Z;exports.fromWsActivity=O;exports.fromWsCandle=de;exports.fromWsTokenBondingCurveToSubscribed=N;exports.fromWsTokenDataSubscribed=x;exports.fromWsTokenHolderToSubscribed=p;exports.fromWsTokenLiquidityToSubscribed=_;exports.fromWsTokenMarketDataFromHolder=xe;exports.fromWsTokenMarketDataFromStats=We;exports.fromWsTokenMaxLiquidityToSubscribed=le;exports.fromWsTokenStats=He;exports.fromWsTokenSupplyToSubscribed=D;exports.fromWsTokenTotalLiquidityToSubscribed=ce;exports.fromWsTradeActivity=F;exports.toChainDTO=d;exports.toFieldDTO=w;exports.toMintForRoute=ps;exports.toRangeFiltersDTO=q;exports.toResolutionDTO=R;exports.toSearchFieldDTO=V;exports.toSendTxInput=K;exports.toSortDirectionDTO=ye;exports.toSwapRouteInput=j;exports.version=fe;//# sourceMappingURL=index.js.map
|
|
2
2
|
//# sourceMappingURL=index.js.map
|