@liberfi.io/client 0.1.34 → 0.1.35

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 CHANGED
@@ -8,7 +8,7 @@ declare global {
8
8
  };
9
9
  }
10
10
  }
11
- declare const _default: "0.1.34";
11
+ declare const _default: "0.1.35";
12
12
 
13
13
  type ClientOptions = ChainStreamClientOptions;
14
14
  type ClientTokenProvider = TokenProvider | string;
package/dist/index.d.ts CHANGED
@@ -8,7 +8,7 @@ declare global {
8
8
  };
9
9
  }
10
10
  }
11
- declare const _default: "0.1.34";
11
+ declare const _default: "0.1.35";
12
12
 
13
13
  type ClientOptions = ChainStreamClientOptions;
14
14
  type ClientTokenProvider = TokenProvider | string;
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.34");var ke="0.1.34";function l(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 v(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 y(e){switch(e){case "asc":return "ASC";case "desc":return "DESC"}}function q(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 f(e){switch(e){case "price":return sdk.GetNewTokensSortBy.marketDatapriceInUsd;case "priceChange1m":return sdk.GetNewTokensSortBy.statspriceChangeRatioInUsd1m;case "priceChange5m":return sdk.GetNewTokensSortBy.statspriceChangeRatioInUsd5m;case "priceChange1h":return sdk.GetNewTokensSortBy.statspriceChangeRatioInUsd1h;case "priceChange4h":return sdk.GetNewTokensSortBy.statspriceChangeRatioInUsd4h;case "priceChange24h":return sdk.GetNewTokensSortBy.statspriceChangeRatioInUsd24h;case "marketCap":return sdk.GetNewTokensSortBy.marketDatamarketCapInUsd;case "tvl":return sdk.GetNewTokensSortBy.marketDatamaxPoolTvlInUsd;case "top10Holdings":return sdk.GetNewTokensSortBy.marketDatatop10TotalHoldings;case "top10Ratio":return sdk.GetNewTokensSortBy.marketDatatop10HoldingsRatio;case "top100Holdings":return sdk.GetNewTokensSortBy.marketDatatop100TotalHoldings;case "top100Ratio":return sdk.GetNewTokensSortBy.marketDatatop100HoldingsRatio;case "holders":return sdk.GetNewTokensSortBy.marketDataholders;case "creatorsHoldings":return sdk.GetNewTokensSortBy.marketDatacreatorHoldings;case "creatorsRatio":return sdk.GetNewTokensSortBy.marketDatacreatorHoldingsRatio;case "buys1m":return sdk.GetNewTokensSortBy.statsbuys1m;case "buys5m":return sdk.GetNewTokensSortBy.statsbuys5m;case "buys15m":return sdk.GetNewTokensSortBy.statsbuys15m;case "buys30m":return sdk.GetNewTokensSortBy.statsbuys30m;case "buys1h":return sdk.GetNewTokensSortBy.statsbuys1h;case "buys4h":return sdk.GetNewTokensSortBy.statsbuys4h;case "buys24h":return sdk.GetNewTokensSortBy.statsbuys24h;case "sells1m":return sdk.GetNewTokensSortBy.statssells1m;case "sells5m":return sdk.GetNewTokensSortBy.statssells5m;case "sells15m":return sdk.GetNewTokensSortBy.statssells15m;case "sells30m":return sdk.GetNewTokensSortBy.statssells30m;case "sells1h":return sdk.GetNewTokensSortBy.statssells1h;case "sells4h":return sdk.GetNewTokensSortBy.statssells4h;case "sells24h":return sdk.GetNewTokensSortBy.statssells24h;case "trades1m":return sdk.GetNewTokensSortBy.statstrades1m;case "trades5m":return sdk.GetNewTokensSortBy.statstrades5m;case "trades1h":return sdk.GetNewTokensSortBy.statstrades1h;case "trades4h":return sdk.GetNewTokensSortBy.statstrades4h;case "trades24h":return sdk.GetNewTokensSortBy.statstrades24h;case "traders1m":return sdk.GetNewTokensSortBy.statstraders1m;case "traders5m":return sdk.GetNewTokensSortBy.statstraders5m;case "traders1h":return sdk.GetNewTokensSortBy.statstraders1h;case "traders4h":return sdk.GetNewTokensSortBy.statstraders4h;case "traders24h":return sdk.GetNewTokensSortBy.statstraders24h;case "volumes1m":return sdk.GetNewTokensSortBy.statsvolumesInUsd1m;case "volumes5m":return sdk.GetNewTokensSortBy.statsvolumesInUsd5m;case "volumes1h":return sdk.GetNewTokensSortBy.statsvolumesInUsd1h;case "volumes4h":return sdk.GetNewTokensSortBy.statsvolumesInUsd4h;case "volumes24h":return sdk.GetNewTokensSortBy.statsvolumesInUsd24h;case "createdAt":return sdk.GetNewTokensSortBy.tokenCreatedAt}throw new Error(`Unsupported sortBy: ${e}`)}function I(e){return e.filter(r=>["gt","gte","lt","lte","between"].indexOf(r.operator)>=0).map(r=>{let s={field:f(r.field)};return ["gt","gte","between"].indexOf(r.operator)>=0&&(s.min=typeof r.value=="number"?new utils.SafeBigNumber(r.value).toString():r.value),["lt","lte","between"].indexOf(r.operator)>=0&&(s.max=typeof r.value=="number"?new utils.SafeBigNumber(r.value).toString():r.value),s})}function C(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 be(e){return {address:e.address,share:e.share,isVerified:e.isVerified}}function u(e){return {chain:C(e.chain),name:e.name,symbol:e.symbol,address:e.address,decimals:e.decimals,image:e.imageUrl,description:e.description,creators:e.tokenCreators?.map(be),launchedFrom:{programAddress:e.extra?.launchFromProgramAddress,protocolFamily:e.extra?.launchFromProtocolFamily},migrateProgress:e.marketData.completionRatio?new utils.SafeBigNumber(e.marketData.completionRatio).shiftedBy(2).toString():void 0,migratedTo:{programAddress:e.extra?.migratedToProgramAddress,protocolFamily:e.extra?.migratedToProtocolFamily,poolAddress:e.extra?.migratedToPoolAddress,migratedAt:e.extra?.migratedAt?new Date(e.extra.migratedAt):void 0},socialMedias:e.socialMedias?{...e.socialMedias}:void 0,stats:e.stats?W(e.stats):void 0,marketData:e.marketData?D(e.marketData):void 0,liquidities:e.liquidity?.map(ge),createdAt:e.tokenCreatedAt?new Date(e.tokenCreatedAt):void 0}}function W(e){return {"1m":k(e,"1m"),"5m":k(e,"5m"),"15m":k(e,"15m"),"30m":k(e,"30m"),"1h":k(e,"1h"),"4h":k(e,"4h"),"24h":k(e,"24h")}}function b(e){return e===void 0?void 0:parseInt(e)}function k(e,r){let s=e.periods?.[r];return s?{buys:b(s.buys),sells:b(s.sells),trades:b(s.trades),buyers:b(s.buyers),sellers:b(s.sellers),traders:b(s.traders),buyVolumes:s.buyVolume,sellVolumes:s.sellVolume,volumes:s.totalVolumeInNative,buyVolumesInUsd:s.buyVolumeInUsd,sellVolumesInUsd:s.sellVolumeInUsd,volumesInUsd:s.totalVolumeInUsd,openPriceInUsd:s.openInUsd,closePriceInUsd:s.closeInUsd,highPriceInUsd:s.highInUsd,lowPriceInUsd:s.lowInUsd,priceInUsd:s.closeInUsd,priceChange:s.priceChangeRatioInUsd}:{}}function ge(e){return {image:e.image,poolAddress:e.poolAddress,programAddress:e.programAddress,protocolFamily:e.protocolFamily,tvl:e.tvlInSol,tvlInUsd:e.tvlInUsd}}function D(e){return {totalSupply:e.totalSupply,marketCap:e.marketCapInSol,marketCapInUsd:e.marketCapInUsd,price:e.priceInSol,priceInUsd:e.priceInUsd,tvl:e.totalTvlInSol,tvlInUsd:e.totalTvlInUsd,holders:parseInt(e.holders),top10Holdings:e.top10TotalHoldings,top10HoldingsRatio:e.top10HoldingsRatio,top50Holdings:e.top50TotalHoldings,top50HoldingsRatio:e.top50HoldingsRatio,top100Holdings:e.top100TotalHoldings,top100HoldingsRatio:e.top100HoldingsRatio,bluechipHolders:e.bluechipTotalHolders===void 0?void 0:parseInt(e.bluechipTotalHolders),bluechipHoldings:e.bluechipTotalHoldings,bluechipHoldingsRatio:e.bluechipHoldingsRatio,kolHolders:e.kolTotalHolders===void 0?void 0:parseInt(e.kolTotalHolders),kolHoldings:e.kolTotalHoldings,kolHoldingsRatio:e.kolHoldingsRatio,sniperHolders:e.sniperTotalHolders===void 0?void 0:parseInt(e.sniperTotalHolders),sniperHoldings:e.sniperTotalHoldings,sniperHoldingsRatio:e.sniperHoldingsRatio,proHolders:e.proTotalHolders===void 0?void 0:parseInt(e.proTotalHolders),proHoldings:e.proTotalHoldings,proHoldingsRatio:e.proHoldingsRatio,insiderHolders:e.insiderTotalHolders===void 0?void 0:parseInt(e.insiderTotalHolders),insiderHoldings:e.insiderTotalHoldings,insiderHoldingsRatio:e.insiderHoldingsRatio,sandwichHolders:e.sandwishTotalHolders===void 0?void 0:parseInt(e.sandwishTotalHolders),sandwichHoldings:e.sandwishTotalHoldings,sandwichHoldingsRatio:e.sandwishHoldingsRatio,freshHolders:e.freshTotalHolders===void 0?void 0:parseInt(e.freshTotalHolders),freshHoldings:e.freshTotalHoldings,freshHoldingsRatio:e.freshHoldingsRatio,bundleHolders:e.bundleTotalHolders===void 0?void 0:parseInt(e.bundleTotalHolders),bundleHoldings:e.bundleTotalHoldings,bundleHoldingsRatio:e.bundleHoldingsRatio,devHolders:e.devTotalHolders===void 0?void 0:parseInt(e.devTotalHolders),devHoldings:e.devTotalHoldings,devHoldingsRatio:e.devHoldingsRatio}}function G(e){return {open:e.open,close:e.close,high:e.high,low:e.low,volume:e.volume,resolution:E(e.resolution),timestamp:new Date(e.time)}}function E(e){return e==="1d"?"24h":e}function K(e){return {hasTransferFee:e.hasTransferFee,isTransferFeeUpgradable:e.isTransferFeeUpgradable,isTransferable:e.isTransferable,isFreezable:e.isFreezable,isClosable:e.isClosable}}function $(e){return {dex:"jupiter",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:e.input,outputMint:e.output,priorityFee:e.priorityFee}}function j(e){return {signedTx:e.serializedTx}}function J(e){return {startCursor:e.startCursor,endCursor:e.endCursor,hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(r=>({address:r.walletAddress,amount:r.amount,amountInUsd:r.amountInUsd,ratio:r.percentage}))}}function Q(e){return {startCursor:e.startCursor,endCursor:e.endCursor,hasPrev:e.hasPrev,hasNext:e.hasNext,total:e.total,data:e.data.map(u),extra:e.countsByProtocols}}function X(e){return {serializedTx:e.serializedTx,plans:[],extra:e.routeInfo}}function Y(e){return {txHash:e.signature,extra:{jobId:e.jobId,elapsedTime:e.elapsedTime}}}function Z(e,r){let s=(r.data??[]).map(o=>({chain:C(o.chain),address:o.tokenAddress,name:o.name,symbol:o.symbol,image:o.logoUri,priceInUsd:o.priceInUsd,priceInNative:o.priceInNative,amount:o.amount,amountInUsd:o.valueInUsd,amountInNative:o.valueInNative,decimals:o.decimals}));return {chain:s[0]?.chain??e,address:r.walletAddress,balanceInUsd:r.totalValueInUsd,balanceInNative:r.totalValueInNative,startCursor:r.startCursor,endCursor:r.endCursor,hasPrev:r.hasPrev,hasNext:r.hasNext,portfolios:s}}function ee(e,r,s){return {chain:e,address:r,tokens:s.tokens?Number(s.tokens):void 0,buys:s.buys?Number(s.buys):void 0,sells:s.sells?Number(s.sells):void 0,totalTrades:s.totalTrades?Number(s.totalTrades):void 0,wins:s.wins?Number(s.wins):void 0,losses:s.losses?Number(s.losses):void 0,winRate:s.winRate,buyAmountInUsd:s.buyAmountInUsd,sellAmountInUsd:s.sellAmountInUsd,totalCostInUsd:s.totalCostInUsd,realizedProfitInUsd:s.realizedProfitInUsd,realizedProfitRatio:s.realizedProfitRatio,unrealizedProfitInUsd:s.unrealizedProfitInUsd,unrealizedProfitRatio:s.unrealizedProfitRatio,totalProfitInUsd:s.totalProfitInUsd,totalProfitRatio:s.totalProfitRatio,avgProfitPerTradeInUsd:s.avgProfitPerTradeInUsd}}function se(e,r,s){let o=s.data.map(t=>({chain:e,address:t.tokenAddress,name:t.name,symbol:t.symbol,image:t.logoUri,amount:t.balance,amountInUsd:t.currentValue,priceInUsd:t.priceInUsd,decimals:t.decimals,totalTrades:Number(t.totalTrades),buys:Number(t.buys),buyVolumes:t.buyAmount,buyVolumesInUsd:t.buyAmountInUsd,buyAvgPriceInUsd:t.avgBuyPriceInUsd,sells:Number(t.sells),sellVolumes:t.sellAmount,sellVolumesInUsd:t.sellAmountInUsd,sellAvgPriceInUsd:t.avgSellPriceInUsd,realizedProfitInUsd:t.realizedProfitInUsd,realizedProfitRatio:t.realizedProfitRatio,unrealizedProfitInUsd:t.unrealizedProfitInUsd,unrealizedProfitRatio:t.unrealizedProfitRatio,totalProfitInUsd:t.totalProfitInUsd,totalProfitRatio:t.totalProfitRatio}));return {chain:e,address:r,tokens:Number(s.summary.tokens),buys:Number(s.summary.buys),sells:Number(s.summary.sells),totalTrades:Number(s.summary.totalTrades),wins:Number(s.summary.wins),losses:Number(s.summary.losses),winRate:s.summary.winRate,buyAmountInUsd:s.summary.buyAmountInUsd,sellAmountInUsd:s.summary.sellAmountInUsd,totalCostInUsd:s.summary.totalCostInUsd,realizedProfitInUsd:s.summary.realizedProfitInUsd,realizedProfitRatio:s.summary.realizedProfitRatio,unrealizedProfitInUsd:s.summary.unrealizedProfitInUsd,totalProfitInUsd:s.summary.totalProfitInUsd,startCursor:s.startCursor,endCursor:s.endCursor,hasPrev:s.hasPrev,hasNext:s.hasNext,portfolios:o}}function re(e,r){return (r.data??[]).map(s=>({chain:C(s.chain),address:s.tokenAddress,name:s.name,symbol:s.symbol,image:s.logoUri,priceInUsd:s.priceInUsd,priceInNative:s.priceInNative,amount:s.amount,amountInUsd:s.valueInUsd,amountInNative:s.valueInNative,decimals:s.decimals}))}function oe(e,r){return r.data.map(s=>({chain:e,address:s.tokenAddress,name:s.name,symbol:s.symbol,image:s.logoUri,amount:s.balance,amountInUsd:s.currentValue,priceInUsd:s.priceInUsd,decimals:s.decimals,totalTrades:Number(s.totalTrades),buys:Number(s.buys),buyVolumes:s.buyAmount,buyVolumesInUsd:s.buyAmountInUsd,buyAvgPriceInUsd:s.avgBuyPriceInUsd,sells:Number(s.sells),sellVolumes:s.sellAmount,sellVolumesInUsd:s.sellAmountInUsd,sellAvgPriceInUsd:s.avgSellPriceInUsd,realizedProfitInUsd:s.realizedProfitInUsd,realizedProfitRatio:s.realizedProfitRatio,unrealizedProfitInUsd:s.unrealizedProfitInUsd,unrealizedProfitRatio:s.unrealizedProfitRatio,totalProfitInUsd:s.totalProfitInUsd,totalProfitRatio:s.totalProfitRatio}))}function x(e){return {startCursor:e.startCursor,endCursor:e.endCursor,hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(he)}}function he(e){let r=e.type.toLowerCase()==="buy";return {chain:C(e.chain),walletAddress:e.accountOwnerAddress,txHash:e.transactionSignature,type:r?"buy":"sell",from:{address:r?e.sideTokenAddress:e.tokenAddress,symbol:r?e.sideTokenSymbol:e.tokenSymbol,name:r?e.sideTokenName:e.tokenName,image: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: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:e.dexProgramAddress,protocolFamily:e.dexProtocolFamily,image:e.dexImage},poolAddress:e.poolAddress,status:e.status??"success",time:new Date(e.blockTimestamp*1e3)}}function te(e,r){return {chain:e,address:r.tokenAddress,name:r.name,symbol:r.symbol,decimals:r.decimals,createdAt:r.createdAtMs?new Date(r.createdAtMs):void 0,launchedFrom:r.launchFrom?{programAddress:r.launchFrom.programAddress,protocolFamily:r.launchFrom.protocolFamily}:void 0}}function ne(e,r){return {chain:e,address:r.tokenAddress,name:r.name,symbol:r.symbol,decimals:r.decimals,image:r.imageUrl,description:r.description,socialMedias:r.socialMedia?{...r.socialMedia}:void 0,createdAt:r.createdAtMs?new Date(r.createdAtMs):void 0,launchedFrom:r.launchFrom?{programAddress:r.launchFrom.programAddress,protocolFamily:r.launchFrom.protocolFamily}:void 0,migratedTo:r.migratedTo?{programAddress:r.migratedTo.programAddress,protocolFamily:r.migratedTo.protocolFamily}:void 0}}function ae(e){return {open:e.open,close:e.close,high:e.high,low:e.low,volume:e.volume,resolution:E(e.resolution),timestamp:new Date(e.time)}}function ye(e){let r=["1m","5m","15m","30m","1h","4h","24h"],s=e,o={};for(let t of r){let i=s[`buys${t}`],a=s[`sells${t}`],d=s[`buyers${t}`],w=s[`sellers${t}`],H=s[`buyVolumeInUsd${t}`],R=s[`sellVolumeInUsd${t}`],M=s[`trades${t}`],L=s[`price${t}`],P=s[`openInUsd${t}`],U=s[`closeInUsd${t}`];if(!(i!==void 0||a!==void 0||M!==void 0||L!==void 0))continue;let ce=M??(i!==void 0&&a!==void 0?i+a:void 0),ue=d!==void 0&&w!==void 0?d+w:void 0,me=H!==void 0&&R!==void 0?new utils.SafeBigNumber(H).plus(R).toString():void 0,Te=P&&U&&new utils.SafeBigNumber(P).gt(0)?new utils.SafeBigNumber(U).minus(P).div(P).toString():void 0;o[t]={buys:i,sells:a,trades:ce,buyers:d,sellers:w,traders:ue,buyVolumesInUsd:H,sellVolumesInUsd:R,volumesInUsd:me,openPriceInUsd:P,closePriceInUsd:U,priceInUsd:L??U,priceChange:Te};}return o}function Ie(e){return {priceInUsd:e.price}}function B(e,r){return {chain:e,address:r.address,stats:ye(r),marketData:Ie(r)}}function N(e,r,s){return {chain:e,address:r,marketData:{totalSupply:s.supply,marketCapInUsd:s.marketCapInUsd}}}function _(e,r,s){return {chain:e,address:r,marketData:Pe(s)}}function p(e,r,s){return s.metricType===sdk.WsMetricType.LIQUIDITY_IN_USD?{chain:e,address:r,marketData:{tvlInUsd:s.value}}:s.metricType===sdk.WsMetricType.MIGRATED_RATIO?{chain:e,address:r,migrateProgress:new utils.SafeBigNumber(s.value).shiftedBy(2).toString()}:{chain:e,address:r}}function F(e,r){return {chain:e,address:r.tokenAddress??"",migrateProgress:r.progressRatio?new utils.SafeBigNumber(r.progressRatio).shiftedBy(2).toString():void 0}}function ie(e,r,s){return {chain:e,address:r,liquidities:[{poolAddress:s.poolAddress,tvlInUsd:s.liquidityInUsd,tvl:s.liquidityInNative}]}}function le(e,r,s){return {chain:e,address:r,marketData:{tvlInUsd:s.liquidityInUsd,tvl:s.liquidityInNative}}}function Pe(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 O(e,r){let s=r.kind.toLowerCase()==="buy";return {chain:e,walletAddress:s?r.buyWalletAddress:r.sellWalletAddress,txHash:r.txHash,type:s?"buy":"sell",from:{address:r.sellTokenAddress,symbol:r.sellTokenSymbol,name:r.sellTokenName,amount:r.sellAmount,amountInUsd:r.sellAmountInUsd},to:{address:r.buyTokenAddress,symbol:r.buyTokenSymbol,name:r.buyTokenName,amount:r.buyAmount,amountInUsd:r.buyAmountInUsd},status:"success",time:new Date(r.timestamp)}}var de=class{constructor(r,s){this.accessToken=r;this.options=s;this._client=new sdk.ChainStreamClient(this.accessToken,this.options);}_client;async getToken(r,s){let o=await this._client.token.getToken(l(r),s);return u(o)}async getTokens(r,s){return (await this._client.token.getTokens(l(r),{tokenAddresses:s.join(",")})).map(u)}async getTokenCandles(r,s,o,t){return (await this._client.token.getCandles(l(r),s,{resolution:v(o),from:t?.after?.getTime(),to:t?.before?.getTime(),limit:t?.limit})).map(G)}async getTokenSecurity(r,s){let o=await this._client.token.getSecurity(l(r),s);return K(o)}async getTokenStats(r,s){let o=await this._client.token.getStats(l(r),s);return W(o)}async getTokenHolders(r,s,o){let t=await this._client.token.getHolders(l(r),s,{cursor:o?.cursor,limit:o?.limit,direction:o?.direction});return J(t)}async getTokenMarketData(r,s){let o=await this._client.token.getMarketData(l(r),s);return D(o)}async getNewTokens(r,s){return (await this._client.ranking.getNewTokens(l(r),{sortBy:s?.sortBy?f(s.sortBy):void 0,sortDirection:s?.sortDirection?y(s.sortDirection):void 0,rangeFilters:s?.filters?I(s.filters):void 0,launchpadPlatform:s?.filters?S(s.filters):void 0,searchKeywords:s?.keywords,excludeKeywords:s?.excludeKeywords})).map(u)}async getFinalStretchTokens(r,s){return (await this._client.ranking.getFinalStretchTokens(l(r),{sortBy:s?.sortBy?f(s.sortBy):void 0,sortDirection:s?.sortDirection?y(s.sortDirection):void 0,rangeFilters:s?.filters?I(s.filters):void 0,launchpadPlatform:s?.filters?S(s.filters):void 0,searchKeywords:s?.keywords,excludeKeywords:s?.excludeKeywords})).map(u)}async getMigratedTokens(r,s){return (await this._client.ranking.getMigratedTokens(l(r),{sortBy:s?.sortBy?f(s.sortBy):void 0,sortDirection:s?.sortDirection?y(s.sortDirection):void 0,rangeFilters:s?.filters?I(s.filters):void 0,launchpadPlatform:s?.filters?S(s.filters):void 0,searchKeywords:s?.keywords,excludeKeywords:s?.excludeKeywords})).map(u)}async getTrendingTokens(r,s,o){return (await this._client.ranking.getHotTokens(l(r),s,{sortBy:o?.sortBy?f(o.sortBy):void 0,sortDirection:o?.sortDirection?y(o.sortDirection):void 0,rangeFilters:o?.filters?I(o.filters):void 0,launchpadPlatform:o?.filters?S(o.filters):void 0,searchKeywords:o?.keywords,excludeKeywords:o?.excludeKeywords})).map(u)}async getStockTokens(r,s){return (await this._client.ranking.getStocksTokens(l(r),{sortBy:s?.sortBy?f(s.sortBy):void 0,sortDirection:s?.sortDirection?y(s.sortDirection):void 0,rangeFilters:s?.filters?I(s.filters):void 0,launchpadPlatform:s?.filters?S(s.filters):void 0,searchKeywords:s?.keywords,excludeKeywords:s?.excludeKeywords})).map(u)}async searchTokens(r){let s=await this._client.token.search({chains:r?.chains?.map(l),q:r?.keyword,limit:r?.limit,cursor:r?.cursor,sortBy:r?.sortBy?q(r.sortBy):void 0,sort:r?.sortDirection});return Q(s)}async swapRoute(r){let s=await this._client.dex.route(l(r.chain),$(r));return X(s)}async sendTx(r){let s=await this._client.transaction.send(l(r.chain),j(r));return Y(s)}async checkTxSuccess(r,s,o){let{result:t}=await this._client.waitForJob(s,o);return t.success}async getWalletPortfolios(r,s,o){let t=await this._client.wallet.getNetWorth(l(r),s,{cursor:o?.cursor,limit:o?.limit??100});return Z(r,t)}async getWalletPnl(r,s,o){let t=await this._client.wallet.getPnl(l(r),s,o?{resolution:o}:void 0);return ee(r,s,t)}async getWalletPortfolioPnls(r,s,o){let t=await this._client.wallet.getPnlDetails(l(r),s,{cursor:o?.cursor,limit:o?.limit??100});return se(r,s,t)}async getWalletPortfoliosByTokens(r,s,o){let t=await this._client.wallet.getNetWorthByTokens(l(r),s,{tokenAddresses:o.join(",")});return re(r,t)}async getWalletPortfolioPnlsByTokens(r,s,o){let t=await this._client.wallet.getPnlByToken(l(r),s,{tokenAddresses:o.join(",")});return oe(r,t)}async getWalletTradeActivities(r,s,o){let t=await this._client.trade.getTrades(l(r),{walletAddress:s,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 x(t)}async getTokenTradeActivities(r,s,o){let t=await this._client.trade.getTrades(l(r),{tokenAddress:s,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 x(t)}async getPresignedUploadUrl(){return await this._client.ipfs.presign()}subscribeToken(r,s,o){let t=l(r),i=[this._client.stream.subscribeTokenStats({chain:t,tokenAddress:s,callback:a=>o([B(r,a)])}),this._client.stream.subscribeTokenSupply({chain:t,tokenAddress:s,callback:a=>o([N(r,s,a)])}),this._client.stream.subscribeTokenHolders({chain:t,tokenAddress:s,callback:a=>o([_(r,s,a)])}),this._client.stream.subscribeTokenLiquidity({chain:t,tokenAddress:s,callback:a=>o([p(r,s,a)])}),this._client.stream.subscribeTokenMaxLiquidity({chain:t,tokenAddress:s,callback:a=>o([ie(r,s,a)])}),this._client.stream.subscribeTokenTotalLiquidity({chain:t,tokenAddress:s,callback:a=>o([le(r,s,a)])})];return {unsubscribe:()=>i.forEach(a=>a.unsubscribe())}}subscribeTokenCandles(r,s,o,t){return this._client.stream.subscribeTokenCandles({chain:l(r),tokenAddress:s,resolution:v(o),callback:i=>t([ae(i)])})}subscribeWalletPnl(r,s,o){return this._client.stream.subscribeWalletPnlList({chain:l(r),walletAddress:s,callback:t=>o(t.map(i=>({chain:r,address:i.walletAddress,buys:i.buys,buyAmountInUsd:i.buyAmountInUsd,sells:i.sells,sellAmountInUsd:i.sellAmountInUsd,wins:i.wins,winRate:i.winRatio,totalProfitInUsd:i.pnlInUsd,totalProfitRatio:i.pnlRatio,avgProfitPerTradeInUsd:i.averagePnlInUsd,tokens:i.tokens,resolution:i.resolution})))})}subscribeWalletPortfolios(r,s,o){return this._client.stream.subscribeWalletBalance({chain:l(r),walletAddress:s,callback:t=>o(t.map(i=>({chain:r,walletAddress:i.walletAddress,tokenAddress:i.tokenAddress,priceInUsd:i.tokenPriceInUsd,amount:i.balance})))})}subscribeWalletPortfolioPnls(r,s,o){return this._client.stream.subscribeWalletPnl({chain:l(r),walletAddress:s,callback:t=>o([{chain:r,walletAddress:t.walletAddress,tokenAddress:t.tokenAddress,openTime:t.opentime?new Date(t.opentime):void 0,closeTime:t.closetime?new Date(t.closetime):void 0,buys:t.buyCount,buyVolumes:t.buyAmount,buyVolumesInUsd:t.buyAmountInUsd,buyAvgPriceInUsd:t.averageBuyPriceInUsd,sells:t.sellCount,sellVolumes:t.sellAmount,sellVolumesInUsd:t.sellAmountInUsd,sellAvgPriceInUsd:t.averageSellPriceInUsd,realizedProfitInUsd:t.realizedProfitInUsd,realizedProfitRatio:t.realizedProfitRatio,unrealizedProfitInUsd:t.unrealizedProfitInUsd,unrealizedProfitRatio:t.unrealizedProfitRatio,totalProfitInUsd:t.totalRealizedProfitInUsd,totalProfitRatio:t.totalRealizedProfitRatio}])})}subscribeWalletTradeActivities(r,s,o){return this._client.stream.subscribeWalletTrade({chain:l(r),walletAddress:s,callback:t=>o([O(r,t)])})}subscribeTokenTradeActivities(r,s,o){return this._client.stream.subscribeTokenTrade({chain:l(r),tokenAddress:s,callback:t=>o([O(r,t)])})}subscribeNewTokens(r,s){let o=l(r),t=this._subscribeRankingTokens(r,sdk.WsChannelType.New,s),i=[this._client.stream.subscribeNewToken({chain:o,callback:a=>s([te(r,a)])}),this._client.stream.subscribeNewTokensMetadata({chain:o,callback:a=>s(a.map(d=>ne(r,d)))}),this._client.stream.subscribeRankingTokensBondingCurve({chain:o,callback:a=>s(a.map(d=>F(r,d)))})];return {unsubscribe:()=>{t.unsubscribe(),i.forEach(a=>a.unsubscribe());}}}subscribeTrendingTokens(r,s){return this._subscribeRankingTokens(r,sdk.WsChannelType.HOT,s)}subscribeMigratedTokens(r,s){return this._subscribeRankingTokens(r,sdk.WsChannelType.GRADUATED,s)}subscribeFinalStretchTokens(r,s){let o=l(r),t=this._subscribeRankingTokens(r,sdk.WsChannelType.COMPLETED,s),i=this._client.stream.subscribeRankingTokensBondingCurve({chain:o,callback:a=>s(a.map(d=>F(r,d)))});return {unsubscribe:()=>{t.unsubscribe(),i.unsubscribe();}}}subscribeStockTokens(r,s){return this._subscribeRankingTokens(r,sdk.WsChannelType.US_STOCKS,s)}_subscribeRankingTokens(r,s,o){let t=l(r),i=[this._client.stream.subscribeRankingTokensStats({chain:t,channelType:s,callback:a=>o(a.map(d=>B(r,d)))}),this._client.stream.subscribeRankingTokensHolders({chain:t,channelType:s,callback:a=>o(a.map(d=>_(r,d.tokenAddress,d)))}),this._client.stream.subscribeRankingTokensSupply({chain:t,channelType:s,callback:a=>o(a.map(d=>N(r,d.tokenAddress,d)))}),this._client.stream.subscribeRankingTokensLiquidity({chain:t,channelType:s,callback:a=>o(a.map(d=>p(r,d.tokenAddress,d)))})];return {unsubscribe:()=>i.forEach(a=>a.unsubscribe())}}};function S(e){let r=e.find(s=>s.field==="launchedFromProtocolFamily");if(r){if(r.operator==="eq")return [r.value];if(r.operator==="in")return r.value;console.warn("invalid launchedFromProtocolFamily filter",r);}}exports.Client=de;exports.version=ke;//# 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.35");var ke="0.1.35";function l(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 v(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 y(e){switch(e){case "asc":return "ASC";case "desc":return "DESC"}}function q(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 f(e){switch(e){case "price":return sdk.GetNewTokensSortBy.marketDatapriceInUsd;case "priceChange1m":return sdk.GetNewTokensSortBy.statspriceChangeRatioInUsd1m;case "priceChange5m":return sdk.GetNewTokensSortBy.statspriceChangeRatioInUsd5m;case "priceChange1h":return sdk.GetNewTokensSortBy.statspriceChangeRatioInUsd1h;case "priceChange4h":return sdk.GetNewTokensSortBy.statspriceChangeRatioInUsd4h;case "priceChange24h":return sdk.GetNewTokensSortBy.statspriceChangeRatioInUsd24h;case "marketCap":return sdk.GetNewTokensSortBy.marketDatamarketCapInUsd;case "tvl":return sdk.GetNewTokensSortBy.marketDatamaxPoolTvlInUsd;case "top10Holdings":return sdk.GetNewTokensSortBy.marketDatatop10TotalHoldings;case "top10Ratio":return sdk.GetNewTokensSortBy.marketDatatop10HoldingsRatio;case "top100Holdings":return sdk.GetNewTokensSortBy.marketDatatop100TotalHoldings;case "top100Ratio":return sdk.GetNewTokensSortBy.marketDatatop100HoldingsRatio;case "holders":return sdk.GetNewTokensSortBy.marketDataholders;case "creatorsHoldings":return sdk.GetNewTokensSortBy.marketDatacreatorHoldings;case "creatorsRatio":return sdk.GetNewTokensSortBy.marketDatacreatorHoldingsRatio;case "buys1m":return sdk.GetNewTokensSortBy.statsbuys1m;case "buys5m":return sdk.GetNewTokensSortBy.statsbuys5m;case "buys15m":return sdk.GetNewTokensSortBy.statsbuys15m;case "buys30m":return sdk.GetNewTokensSortBy.statsbuys30m;case "buys1h":return sdk.GetNewTokensSortBy.statsbuys1h;case "buys4h":return sdk.GetNewTokensSortBy.statsbuys4h;case "buys24h":return sdk.GetNewTokensSortBy.statsbuys24h;case "sells1m":return sdk.GetNewTokensSortBy.statssells1m;case "sells5m":return sdk.GetNewTokensSortBy.statssells5m;case "sells15m":return sdk.GetNewTokensSortBy.statssells15m;case "sells30m":return sdk.GetNewTokensSortBy.statssells30m;case "sells1h":return sdk.GetNewTokensSortBy.statssells1h;case "sells4h":return sdk.GetNewTokensSortBy.statssells4h;case "sells24h":return sdk.GetNewTokensSortBy.statssells24h;case "trades1m":return sdk.GetNewTokensSortBy.statstrades1m;case "trades5m":return sdk.GetNewTokensSortBy.statstrades5m;case "trades1h":return sdk.GetNewTokensSortBy.statstrades1h;case "trades4h":return sdk.GetNewTokensSortBy.statstrades4h;case "trades24h":return sdk.GetNewTokensSortBy.statstrades24h;case "traders1m":return sdk.GetNewTokensSortBy.statstraders1m;case "traders5m":return sdk.GetNewTokensSortBy.statstraders5m;case "traders1h":return sdk.GetNewTokensSortBy.statstraders1h;case "traders4h":return sdk.GetNewTokensSortBy.statstraders4h;case "traders24h":return sdk.GetNewTokensSortBy.statstraders24h;case "volumes1m":return sdk.GetNewTokensSortBy.statsvolumesInUsd1m;case "volumes5m":return sdk.GetNewTokensSortBy.statsvolumesInUsd5m;case "volumes1h":return sdk.GetNewTokensSortBy.statsvolumesInUsd1h;case "volumes4h":return sdk.GetNewTokensSortBy.statsvolumesInUsd4h;case "volumes24h":return sdk.GetNewTokensSortBy.statsvolumesInUsd24h;case "createdAt":return sdk.GetNewTokensSortBy.tokenCreatedAt}throw new Error(`Unsupported sortBy: ${e}`)}function I(e){return e.filter(r=>["gt","gte","lt","lte","between"].indexOf(r.operator)>=0).map(r=>{let s={field:f(r.field)};return ["gt","gte","between"].indexOf(r.operator)>=0&&(s.min=typeof r.value=="number"?new utils.SafeBigNumber(r.value).toString():r.value),["lt","lte","between"].indexOf(r.operator)>=0&&(s.max=typeof r.value=="number"?new utils.SafeBigNumber(r.value).toString():r.value),s})}function C(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 be(e){return {address:e.address,share:e.share,isVerified:e.isVerified}}function u(e){return {chain:C(e.chain),name:e.name,symbol:e.symbol,address:e.address,decimals:e.decimals,image:e.imageUrl,description:e.description,creators:e.tokenCreators?.map(be),launchedFrom:{programAddress:e.extra?.launchFromProgramAddress,protocolFamily:e.extra?.launchFromProtocolFamily},migrateProgress:e.marketData.completionRatio?new utils.SafeBigNumber(e.marketData.completionRatio).shiftedBy(2).toString():void 0,migratedTo:{programAddress:e.extra?.migratedToProgramAddress,protocolFamily:e.extra?.migratedToProtocolFamily,poolAddress:e.extra?.migratedToPoolAddress,migratedAt:e.extra?.migratedAt?new Date(e.extra.migratedAt):void 0},socialMedias:e.socialMedias?{...e.socialMedias}:void 0,stats:e.stats?W(e.stats):void 0,marketData:e.marketData?D(e.marketData):void 0,liquidities:e.liquidity?.map(ge),createdAt:e.tokenCreatedAt?new Date(e.tokenCreatedAt):void 0}}function W(e){return {"1m":k(e,"1m"),"5m":k(e,"5m"),"15m":k(e,"15m"),"30m":k(e,"30m"),"1h":k(e,"1h"),"4h":k(e,"4h"),"24h":k(e,"24h")}}function b(e){return e===void 0?void 0:parseInt(e)}function k(e,r){let s=e.periods?.[r];return s?{buys:b(s.buys),sells:b(s.sells),trades:b(s.trades),buyers:b(s.buyers),sellers:b(s.sellers),traders:b(s.traders),buyVolumes:s.buyVolume,sellVolumes:s.sellVolume,volumes:s.totalVolumeInNative,buyVolumesInUsd:s.buyVolumeInUsd,sellVolumesInUsd:s.sellVolumeInUsd,volumesInUsd:s.totalVolumeInUsd,openPriceInUsd:s.openInUsd,closePriceInUsd:s.closeInUsd,highPriceInUsd:s.highInUsd,lowPriceInUsd:s.lowInUsd,priceInUsd:s.closeInUsd,priceChange:s.priceChangeRatioInUsd}:{}}function ge(e){return {image:e.image,poolAddress:e.poolAddress,programAddress:e.programAddress,protocolFamily:e.protocolFamily,tvl:e.tvlInSol,tvlInUsd:e.tvlInUsd}}function D(e){return {totalSupply:e.totalSupply,marketCap:e.marketCapInSol,marketCapInUsd:e.marketCapInUsd,price:e.priceInSol,priceInUsd:e.priceInUsd,tvl:e.totalTvlInSol,tvlInUsd:e.totalTvlInUsd,holders:parseInt(e.holders),top10Holdings:e.top10TotalHoldings,top10HoldingsRatio:e.top10HoldingsRatio,top50Holdings:e.top50TotalHoldings,top50HoldingsRatio:e.top50HoldingsRatio,top100Holdings:e.top100TotalHoldings,top100HoldingsRatio:e.top100HoldingsRatio,bluechipHolders:e.bluechipTotalHolders===void 0?void 0:parseInt(e.bluechipTotalHolders),bluechipHoldings:e.bluechipTotalHoldings,bluechipHoldingsRatio:e.bluechipHoldingsRatio,kolHolders:e.kolTotalHolders===void 0?void 0:parseInt(e.kolTotalHolders),kolHoldings:e.kolTotalHoldings,kolHoldingsRatio:e.kolHoldingsRatio,sniperHolders:e.sniperTotalHolders===void 0?void 0:parseInt(e.sniperTotalHolders),sniperHoldings:e.sniperTotalHoldings,sniperHoldingsRatio:e.sniperHoldingsRatio,proHolders:e.proTotalHolders===void 0?void 0:parseInt(e.proTotalHolders),proHoldings:e.proTotalHoldings,proHoldingsRatio:e.proHoldingsRatio,insiderHolders:e.insiderTotalHolders===void 0?void 0:parseInt(e.insiderTotalHolders),insiderHoldings:e.insiderTotalHoldings,insiderHoldingsRatio:e.insiderHoldingsRatio,sandwichHolders:e.sandwishTotalHolders===void 0?void 0:parseInt(e.sandwishTotalHolders),sandwichHoldings:e.sandwishTotalHoldings,sandwichHoldingsRatio:e.sandwishHoldingsRatio,freshHolders:e.freshTotalHolders===void 0?void 0:parseInt(e.freshTotalHolders),freshHoldings:e.freshTotalHoldings,freshHoldingsRatio:e.freshHoldingsRatio,bundleHolders:e.bundleTotalHolders===void 0?void 0:parseInt(e.bundleTotalHolders),bundleHoldings:e.bundleTotalHoldings,bundleHoldingsRatio:e.bundleHoldingsRatio,devHolders:e.devTotalHolders===void 0?void 0:parseInt(e.devTotalHolders),devHoldings:e.devTotalHoldings,devHoldingsRatio:e.devHoldingsRatio}}function G(e){return {open:e.open,close:e.close,high:e.high,low:e.low,volume:e.volume,resolution:E(e.resolution),timestamp:new Date(e.time)}}function E(e){return e==="1d"?"24h":e}function K(e){return {hasTransferFee:e.hasTransferFee,isTransferFeeUpgradable:e.isTransferFeeUpgradable,isTransferable:e.isTransferable,isFreezable:e.isFreezable,isClosable:e.isClosable}}function $(e){return {dex:"jupiter",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:e.input,outputMint:e.output,priorityFee:e.priorityFee}}function j(e){return {signedTx:e.serializedTx}}function J(e){return {startCursor:e.startCursor,endCursor:e.endCursor,hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(r=>({address:r.walletAddress,amount:r.amount,amountInUsd:r.amountInUsd,ratio:r.percentage}))}}function Q(e){return {startCursor:e.startCursor,endCursor:e.endCursor,hasPrev:e.hasPrev,hasNext:e.hasNext,total:e.total,data:e.data.map(u),extra:e.countsByProtocols}}function X(e){return {serializedTx:e.serializedTx,plans:[],extra:e.routeInfo}}function Y(e){return {txHash:e.signature,extra:{jobId:e.jobId,elapsedTime:e.elapsedTime}}}function Z(e,r){let s=(r.data??[]).map(o=>({chain:C(o.chain),address:o.tokenAddress,name:o.name,symbol:o.symbol,image:o.logoUri,priceInUsd:o.priceInUsd,priceInNative:o.priceInNative,amount:o.amount,amountInUsd:o.valueInUsd,amountInNative:o.valueInNative,decimals:o.decimals}));return {chain:s[0]?.chain??e,address:r.walletAddress,balanceInUsd:r.totalValueInUsd,balanceInNative:r.totalValueInNative,startCursor:r.startCursor,endCursor:r.endCursor,hasPrev:r.hasPrev,hasNext:r.hasNext,portfolios:s}}function ee(e,r,s){return {chain:e,address:r,tokens:s.tokens?Number(s.tokens):void 0,buys:s.buys?Number(s.buys):void 0,sells:s.sells?Number(s.sells):void 0,totalTrades:s.totalTrades?Number(s.totalTrades):void 0,wins:s.wins?Number(s.wins):void 0,losses:s.losses?Number(s.losses):void 0,winRate:s.winRate,buyAmountInUsd:s.buyAmountInUsd,sellAmountInUsd:s.sellAmountInUsd,totalCostInUsd:s.totalCostInUsd,realizedProfitInUsd:s.realizedProfitInUsd,realizedProfitRatio:s.realizedProfitRatio,unrealizedProfitInUsd:s.unrealizedProfitInUsd,unrealizedProfitRatio:s.unrealizedProfitRatio,totalProfitInUsd:s.totalProfitInUsd,totalProfitRatio:s.totalProfitRatio,avgProfitPerTradeInUsd:s.avgProfitPerTradeInUsd}}function se(e,r,s){let o=s.data.map(t=>({chain:e,address:t.tokenAddress,name:t.name,symbol:t.symbol,image:t.logoUri,amount:t.balance,amountInUsd:t.currentValue,priceInUsd:t.priceInUsd,decimals:t.decimals,totalTrades:Number(t.totalTrades),buys:Number(t.buys),buyVolumes:t.buyAmount,buyVolumesInUsd:t.buyAmountInUsd,buyAvgPriceInUsd:t.avgBuyPriceInUsd,sells:Number(t.sells),sellVolumes:t.sellAmount,sellVolumesInUsd:t.sellAmountInUsd,sellAvgPriceInUsd:t.avgSellPriceInUsd,realizedProfitInUsd:t.realizedProfitInUsd,realizedProfitRatio:t.realizedProfitRatio,unrealizedProfitInUsd:t.unrealizedProfitInUsd,unrealizedProfitRatio:t.unrealizedProfitRatio,totalProfitInUsd:t.totalProfitInUsd,totalProfitRatio:t.totalProfitRatio}));return {chain:e,address:r,tokens:Number(s.summary.tokens),buys:Number(s.summary.buys),sells:Number(s.summary.sells),totalTrades:Number(s.summary.totalTrades),wins:Number(s.summary.wins),losses:Number(s.summary.losses),winRate:s.summary.winRate,buyAmountInUsd:s.summary.buyAmountInUsd,sellAmountInUsd:s.summary.sellAmountInUsd,totalCostInUsd:s.summary.totalCostInUsd,realizedProfitInUsd:s.summary.realizedProfitInUsd,realizedProfitRatio:s.summary.realizedProfitRatio,unrealizedProfitInUsd:s.summary.unrealizedProfitInUsd,totalProfitInUsd:s.summary.totalProfitInUsd,startCursor:s.startCursor,endCursor:s.endCursor,hasPrev:s.hasPrev,hasNext:s.hasNext,portfolios:o}}function re(e,r){return (r.data??[]).map(s=>({chain:C(s.chain),address:s.tokenAddress,name:s.name,symbol:s.symbol,image:s.logoUri,priceInUsd:s.priceInUsd,priceInNative:s.priceInNative,amount:s.amount,amountInUsd:s.valueInUsd,amountInNative:s.valueInNative,decimals:s.decimals}))}function oe(e,r){return r.data.map(s=>({chain:e,address:s.tokenAddress,name:s.name,symbol:s.symbol,image:s.logoUri,amount:s.balance,amountInUsd:s.currentValue,priceInUsd:s.priceInUsd,decimals:s.decimals,totalTrades:Number(s.totalTrades),buys:Number(s.buys),buyVolumes:s.buyAmount,buyVolumesInUsd:s.buyAmountInUsd,buyAvgPriceInUsd:s.avgBuyPriceInUsd,sells:Number(s.sells),sellVolumes:s.sellAmount,sellVolumesInUsd:s.sellAmountInUsd,sellAvgPriceInUsd:s.avgSellPriceInUsd,realizedProfitInUsd:s.realizedProfitInUsd,realizedProfitRatio:s.realizedProfitRatio,unrealizedProfitInUsd:s.unrealizedProfitInUsd,unrealizedProfitRatio:s.unrealizedProfitRatio,totalProfitInUsd:s.totalProfitInUsd,totalProfitRatio:s.totalProfitRatio}))}function x(e){return {startCursor:e.startCursor,endCursor:e.endCursor,hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(he)}}function he(e){let r=e.type.toLowerCase()==="buy";return {chain:C(e.chain),walletAddress:e.accountOwnerAddress,txHash:e.transactionSignature,type:r?"buy":"sell",from:{address:r?e.sideTokenAddress:e.tokenAddress,symbol:r?e.sideTokenSymbol:e.tokenSymbol,name:r?e.sideTokenName:e.tokenName,image: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: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:e.dexProgramAddress,protocolFamily:e.dexProtocolFamily,image:e.dexImage},poolAddress:e.poolAddress,status:e.status??"success",time:new Date(e.blockTimestamp*1e3)}}function te(e,r){return {chain:e,address:r.tokenAddress,name:r.name,symbol:r.symbol,decimals:r.decimals,createdAt:r.createdAtMs?new Date(r.createdAtMs):void 0,launchedFrom:r.launchFrom?{programAddress:r.launchFrom.programAddress,protocolFamily:r.launchFrom.protocolFamily}:void 0}}function ne(e,r){return {chain:e,address:r.tokenAddress,name:r.name,symbol:r.symbol,decimals:r.decimals,image:r.imageUrl,description:r.description,socialMedias:r.socialMedia?{...r.socialMedia}:void 0,createdAt:r.createdAtMs?new Date(r.createdAtMs):void 0,launchedFrom:r.launchFrom?{programAddress:r.launchFrom.programAddress,protocolFamily:r.launchFrom.protocolFamily}:void 0,migratedTo:r.migratedTo?{programAddress:r.migratedTo.programAddress,protocolFamily:r.migratedTo.protocolFamily}:void 0}}function ae(e){return {open:e.open,close:e.close,high:e.high,low:e.low,volume:e.volume,resolution:E(e.resolution),timestamp:new Date(e.time)}}function ye(e){let r=["1m","5m","15m","30m","1h","4h","24h"],s=e,o={};for(let t of r){let i=s[`buys${t}`],a=s[`sells${t}`],d=s[`buyers${t}`],w=s[`sellers${t}`],H=s[`buyVolumeInUsd${t}`],R=s[`sellVolumeInUsd${t}`],M=s[`trades${t}`],L=s[`price${t}`],P=s[`openInUsd${t}`],U=s[`closeInUsd${t}`];if(!(i!==void 0||a!==void 0||M!==void 0||L!==void 0))continue;let ce=M??(i!==void 0&&a!==void 0?i+a:void 0),ue=d!==void 0&&w!==void 0?d+w:void 0,me=H!==void 0&&R!==void 0?new utils.SafeBigNumber(H).plus(R).toString():void 0,Te=P&&U&&new utils.SafeBigNumber(P).gt(0)?new utils.SafeBigNumber(U).minus(P).div(P).toString():void 0;o[t]={buys:i,sells:a,trades:ce,buyers:d,sellers:w,traders:ue,buyVolumesInUsd:H,sellVolumesInUsd:R,volumesInUsd:me,openPriceInUsd:P,closePriceInUsd:U,priceInUsd:L??U,priceChange:Te};}return o}function Ie(e){return {priceInUsd:e.price}}function B(e,r){return {chain:e,address:r.address,stats:ye(r),marketData:Ie(r)}}function N(e,r,s){return {chain:e,address:r,marketData:{totalSupply:s.supply,marketCapInUsd:s.marketCapInUsd}}}function _(e,r,s){return {chain:e,address:r,marketData:Pe(s)}}function p(e,r,s){return s.metricType===sdk.WsMetricType.LIQUIDITY_IN_USD?{chain:e,address:r,marketData:{tvlInUsd:s.value}}:s.metricType===sdk.WsMetricType.MIGRATED_RATIO?{chain:e,address:r,migrateProgress:new utils.SafeBigNumber(s.value).shiftedBy(2).toString()}:{chain:e,address:r}}function F(e,r){return {chain:e,address:r.tokenAddress??"",migrateProgress:r.progressRatio?new utils.SafeBigNumber(r.progressRatio).shiftedBy(2).toString():void 0}}function ie(e,r,s){return {chain:e,address:r,liquidities:[{poolAddress:s.poolAddress,tvlInUsd:s.liquidityInUsd,tvl:s.liquidityInNative}]}}function le(e,r,s){return {chain:e,address:r,marketData:{tvlInUsd:s.liquidityInUsd,tvl:s.liquidityInNative}}}function Pe(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 O(e,r){let s=r.kind.toLowerCase()==="buy";return {chain:e,walletAddress:s?r.buyWalletAddress:r.sellWalletAddress,txHash:r.txHash,type:s?"buy":"sell",from:{address:r.sellTokenAddress,symbol:r.sellTokenSymbol,name:r.sellTokenName,amount:r.sellAmount,amountInUsd:r.sellAmountInUsd},to:{address:r.buyTokenAddress,symbol:r.buyTokenSymbol,name:r.buyTokenName,amount:r.buyAmount,amountInUsd:r.buyAmountInUsd},status:"success",time:new Date(r.timestamp)}}var de=class{constructor(r,s){this.accessToken=r;this.options=s;this._client=new sdk.ChainStreamClient(this.accessToken,this.options);}_client;async getToken(r,s){let o=await this._client.token.getToken(l(r),s);return u(o)}async getTokens(r,s){return (await this._client.token.getTokens(l(r),{tokenAddresses:s.join(",")})).map(u)}async getTokenCandles(r,s,o,t){return (await this._client.token.getCandles(l(r),s,{resolution:v(o),from:t?.after?.getTime(),to:t?.before?.getTime(),limit:t?.limit})).map(G)}async getTokenSecurity(r,s){let o=await this._client.token.getSecurity(l(r),s);return K(o)}async getTokenStats(r,s){let o=await this._client.token.getStats(l(r),s);return W(o)}async getTokenHolders(r,s,o){let t=await this._client.token.getHolders(l(r),s,{cursor:o?.cursor,limit:o?.limit,direction:o?.direction});return J(t)}async getTokenMarketData(r,s){let o=await this._client.token.getMarketData(l(r),s);return D(o)}async getNewTokens(r,s){return (await this._client.ranking.getNewTokens(l(r),{sortBy:s?.sortBy?f(s.sortBy):void 0,sortDirection:s?.sortDirection?y(s.sortDirection):void 0,rangeFilters:s?.filters?I(s.filters):void 0,launchpadPlatform:s?.filters?S(s.filters):void 0,searchKeywords:s?.keywords,excludeKeywords:s?.excludeKeywords})).map(u)}async getFinalStretchTokens(r,s){return (await this._client.ranking.getFinalStretchTokens(l(r),{sortBy:s?.sortBy?f(s.sortBy):void 0,sortDirection:s?.sortDirection?y(s.sortDirection):void 0,rangeFilters:s?.filters?I(s.filters):void 0,launchpadPlatform:s?.filters?S(s.filters):void 0,searchKeywords:s?.keywords,excludeKeywords:s?.excludeKeywords})).map(u)}async getMigratedTokens(r,s){return (await this._client.ranking.getMigratedTokens(l(r),{sortBy:s?.sortBy?f(s.sortBy):void 0,sortDirection:s?.sortDirection?y(s.sortDirection):void 0,rangeFilters:s?.filters?I(s.filters):void 0,launchpadPlatform:s?.filters?S(s.filters):void 0,searchKeywords:s?.keywords,excludeKeywords:s?.excludeKeywords})).map(u)}async getTrendingTokens(r,s,o){return (await this._client.ranking.getHotTokens(l(r),s,{sortBy:o?.sortBy?f(o.sortBy):void 0,sortDirection:o?.sortDirection?y(o.sortDirection):void 0,rangeFilters:o?.filters?I(o.filters):void 0,launchpadPlatform:o?.filters?S(o.filters):void 0,searchKeywords:o?.keywords,excludeKeywords:o?.excludeKeywords})).map(u)}async getStockTokens(r,s){return (await this._client.ranking.getStocksTokens(l(r),{sortBy:s?.sortBy?f(s.sortBy):void 0,sortDirection:s?.sortDirection?y(s.sortDirection):void 0,rangeFilters:s?.filters?I(s.filters):void 0,launchpadPlatform:s?.filters?S(s.filters):void 0,searchKeywords:s?.keywords,excludeKeywords:s?.excludeKeywords})).map(u)}async searchTokens(r){let s=await this._client.token.search({chains:r?.chains?.map(l),q:r?.keyword,limit:r?.limit,cursor:r?.cursor,sortBy:r?.sortBy?q(r.sortBy):void 0,sort:r?.sortDirection});return Q(s)}async swapRoute(r){let s=await this._client.dex.route(l(r.chain),$(r));return X(s)}async sendTx(r){let s=await this._client.transaction.send(l(r.chain),j(r));return Y(s)}async checkTxSuccess(r,s,o){let{result:t}=await this._client.waitForJob(s,o);return t.success}async getWalletPortfolios(r,s,o){let t=await this._client.wallet.getNetWorth(l(r),s,{cursor:o?.cursor,limit:o?.limit??100});return Z(r,t)}async getWalletPnl(r,s,o){let t=await this._client.wallet.getPnl(l(r),s,o?{resolution:o}:void 0);return ee(r,s,t)}async getWalletPortfolioPnls(r,s,o){let t=await this._client.wallet.getPnlDetails(l(r),s,{cursor:o?.cursor,limit:o?.limit??100});return se(r,s,t)}async getWalletPortfoliosByTokens(r,s,o){let t=await this._client.wallet.getNetWorthByTokens(l(r),s,{tokenAddresses:o.join(",")});return re(r,t)}async getWalletPortfolioPnlsByTokens(r,s,o){let t=await this._client.wallet.getPnlByToken(l(r),s,{tokenAddresses:o.join(",")});return oe(r,t)}async getWalletTradeActivities(r,s,o){let t=await this._client.trade.getTrades(l(r),{walletAddress:s,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 x(t)}async getTokenTradeActivities(r,s,o){let t=await this._client.trade.getTrades(l(r),{tokenAddress:s,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 x(t)}async getPresignedUploadUrl(){return await this._client.ipfs.presign()}subscribeToken(r,s,o){let t=l(r),i=[this._client.stream.subscribeTokenStats({chain:t,tokenAddress:s,callback:a=>o([B(r,a)])}),this._client.stream.subscribeTokenSupply({chain:t,tokenAddress:s,callback:a=>o([N(r,s,a)])}),this._client.stream.subscribeTokenHolders({chain:t,tokenAddress:s,callback:a=>o([_(r,s,a)])}),this._client.stream.subscribeTokenLiquidity({chain:t,tokenAddress:s,callback:a=>o([p(r,s,a)])}),this._client.stream.subscribeTokenMaxLiquidity({chain:t,tokenAddress:s,callback:a=>o([ie(r,s,a)])}),this._client.stream.subscribeTokenTotalLiquidity({chain:t,tokenAddress:s,callback:a=>o([le(r,s,a)])})];return {unsubscribe:()=>i.forEach(a=>a.unsubscribe())}}subscribeTokenCandles(r,s,o,t){return this._client.stream.subscribeTokenCandles({chain:l(r),tokenAddress:s,resolution:v(o),callback:i=>t([ae(i)])})}subscribeWalletPnl(r,s,o){return this._client.stream.subscribeWalletPnlList({chain:l(r),walletAddress:s,callback:t=>o(t.map(i=>({chain:r,address:i.walletAddress,buys:i.buys,buyAmountInUsd:i.buyAmountInUsd,sells:i.sells,sellAmountInUsd:i.sellAmountInUsd,wins:i.wins,winRate:i.winRatio,totalProfitInUsd:i.pnlInUsd,totalProfitRatio:i.pnlRatio,avgProfitPerTradeInUsd:i.averagePnlInUsd,tokens:i.tokens,resolution:i.resolution})))})}subscribeWalletPortfolios(r,s,o){return this._client.stream.subscribeWalletBalance({chain:l(r),walletAddress:s,callback:t=>o(t.map(i=>({chain:r,walletAddress:i.walletAddress,tokenAddress:i.tokenAddress,priceInUsd:i.tokenPriceInUsd,amount:i.balance})))})}subscribeWalletPortfolioPnls(r,s,o){return this._client.stream.subscribeWalletPnl({chain:l(r),walletAddress:s,callback:t=>o([{chain:r,walletAddress:t.walletAddress,tokenAddress:t.tokenAddress,openTime:t.opentime?new Date(t.opentime):void 0,closeTime:t.closetime?new Date(t.closetime):void 0,buys:t.buyCount,buyVolumes:t.buyAmount,buyVolumesInUsd:t.buyAmountInUsd,buyAvgPriceInUsd:t.averageBuyPriceInUsd,sells:t.sellCount,sellVolumes:t.sellAmount,sellVolumesInUsd:t.sellAmountInUsd,sellAvgPriceInUsd:t.averageSellPriceInUsd,realizedProfitInUsd:t.realizedProfitInUsd,realizedProfitRatio:t.realizedProfitRatio,unrealizedProfitInUsd:t.unrealizedProfitInUsd,unrealizedProfitRatio:t.unrealizedProfitRatio,totalProfitInUsd:t.totalRealizedProfitInUsd,totalProfitRatio:t.totalRealizedProfitRatio}])})}subscribeWalletTradeActivities(r,s,o){return this._client.stream.subscribeWalletTrade({chain:l(r),walletAddress:s,callback:t=>o([O(r,t)])})}subscribeTokenTradeActivities(r,s,o){return this._client.stream.subscribeTokenTrade({chain:l(r),tokenAddress:s,callback:t=>o([O(r,t)])})}subscribeNewTokens(r,s){let o=l(r),t=this._subscribeRankingTokens(r,sdk.WsChannelType.New,s),i=[this._client.stream.subscribeNewToken({chain:o,callback:a=>s([te(r,a)])}),this._client.stream.subscribeNewTokensMetadata({chain:o,callback:a=>s(a.map(d=>ne(r,d)))}),this._client.stream.subscribeRankingTokensBondingCurve({chain:o,callback:a=>s(a.map(d=>F(r,d)))})];return {unsubscribe:()=>{t.unsubscribe(),i.forEach(a=>a.unsubscribe());}}}subscribeTrendingTokens(r,s){return this._subscribeRankingTokens(r,sdk.WsChannelType.HOT,s)}subscribeMigratedTokens(r,s){return this._subscribeRankingTokens(r,sdk.WsChannelType.GRADUATED,s)}subscribeFinalStretchTokens(r,s){let o=l(r),t=this._subscribeRankingTokens(r,sdk.WsChannelType.COMPLETED,s),i=this._client.stream.subscribeRankingTokensBondingCurve({chain:o,callback:a=>s(a.map(d=>F(r,d)))});return {unsubscribe:()=>{t.unsubscribe(),i.unsubscribe();}}}subscribeStockTokens(r,s){return this._subscribeRankingTokens(r,sdk.WsChannelType.US_STOCKS,s)}_subscribeRankingTokens(r,s,o){let t=l(r),i=[this._client.stream.subscribeRankingTokensStats({chain:t,channelType:s,callback:a=>o(a.map(d=>B(r,d)))}),this._client.stream.subscribeRankingTokensHolders({chain:t,channelType:s,callback:a=>o(a.map(d=>_(r,d.tokenAddress,d)))}),this._client.stream.subscribeRankingTokensSupply({chain:t,channelType:s,callback:a=>o(a.map(d=>N(r,d.tokenAddress,d)))}),this._client.stream.subscribeRankingTokensLiquidity({chain:t,channelType:s,callback:a=>o(a.map(d=>p(r,d.tokenAddress,d)))})];return {unsubscribe:()=>i.forEach(a=>a.unsubscribe())}}};function S(e){let r=e.find(s=>s.field==="launchedFromProtocolFamily");if(r){if(r.operator==="eq")return [r.value];if(r.operator==="in")return r.value;console.warn("invalid launchedFromProtocolFamily filter",r);}}exports.Client=de;exports.version=ke;//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map