@liberfi.io/client 0.1.31 → 0.1.33

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
@@ -1,7 +1,7 @@
1
1
  import * as react from 'react';
2
2
  import { PropsWithChildren } from 'react';
3
3
  import * as _liberfi_io_types from '@liberfi.io/types';
4
- import { API, Chain, Token, TokenResolution, TokenCandle, TokenHolder, TokenMarketData, TokenSecurity, TokenStats, TradeActivity, WalletPnl, WalletPortfolioPnls, WalletPortfolios } from '@liberfi.io/types';
4
+ import { API, Chain, Token, TokenResolution, TokenCandle, TokenHolder, TokenMarketData, TokenSecurity, TokenStats, TradeActivity, WalletPnl, WalletPortfolioPnls, WalletPortfolios, Portfolio, PortfolioPnl } from '@liberfi.io/types';
5
5
  import * as _tanstack_react_query from '@tanstack/react-query';
6
6
  import { UseQueryOptions, UseMutationOptions, UseInfiniteQueryOptions, InfiniteData } from '@tanstack/react-query';
7
7
  import { ChainStreamClientOptions, TokenProvider } from '@chainstream-io/sdk';
@@ -14,7 +14,7 @@ declare global {
14
14
  };
15
15
  }
16
16
  }
17
- declare const _default: "0.1.31";
17
+ declare const _default: "0.1.33";
18
18
 
19
19
  interface DexClientContextValue {
20
20
  client: API.IClient;
@@ -188,6 +188,15 @@ declare function walletPortfoliosQueryKey(params: UseWalletPortfoliosQueryParams
188
188
  declare function fetchWalletPortfolios(client: API.IClient, { chain, address, cursor, limit }: UseWalletPortfoliosQueryParams): Promise<WalletPortfolios>;
189
189
  declare function useWalletPortfoliosQuery(params: UseWalletPortfoliosQueryParams, options?: Omit<UseQueryOptions<WalletPortfolios, Error, WalletPortfolios, string[]>, "queryKey" | "queryFn">): _tanstack_react_query.UseQueryResult<WalletPortfolios, Error>;
190
190
 
191
+ interface UseWalletPortfoliosByTokensQueryParams {
192
+ chain: Chain;
193
+ address: string;
194
+ tokenAddresses: Array<string>;
195
+ }
196
+ declare function walletPortfoliosByTokensQueryKey(params: UseWalletPortfoliosByTokensQueryParams): string[];
197
+ declare function fetchWalletPortfoliosByTokens(client: API.IClient, { chain, address, tokenAddresses }: UseWalletPortfoliosByTokensQueryParams): Promise<Portfolio[]>;
198
+ declare function useWalletPortfoliosByTokensQuery(params: UseWalletPortfoliosByTokensQueryParams, options?: Omit<UseQueryOptions<Array<Portfolio>, Error, Array<Portfolio>, string[]>, "queryKey" | "queryFn">): _tanstack_react_query.UseQueryResult<Portfolio[], Error>;
199
+
191
200
  interface UseWalletPortfoliosInfiniteQueryParams {
192
201
  chain: Chain;
193
202
  address: string;
@@ -196,6 +205,15 @@ interface UseWalletPortfoliosInfiniteQueryParams {
196
205
  declare function walletPortfoliosInfiniteQueryKey(params: UseWalletPortfoliosInfiniteQueryParams): string[];
197
206
  declare function useWalletPortfoliosInfiniteQuery(params: UseWalletPortfoliosInfiniteQueryParams, options?: Omit<UseInfiniteQueryOptions<WalletPortfolios, Error, InfiniteData<WalletPortfolios>, string[], string | undefined>, "queryKey" | "queryFn" | "initialPageParam" | "getNextPageParam">): _tanstack_react_query.UseInfiniteQueryResult<InfiniteData<WalletPortfolios, unknown>, Error>;
198
207
 
208
+ interface UseWalletPortfolioPnlsByTokensQueryParams {
209
+ chain: Chain;
210
+ address: string;
211
+ tokenAddresses: Array<string>;
212
+ }
213
+ declare function walletPortfolioPnlsByTokensQueryKey(params: UseWalletPortfolioPnlsByTokensQueryParams): string[];
214
+ declare function fetchWalletPortfolioPnlsByTokens(client: API.IClient, { chain, address, tokenAddresses }: UseWalletPortfolioPnlsByTokensQueryParams): Promise<PortfolioPnl[]>;
215
+ declare function useWalletPortfolioPnlsByTokensQuery(params: UseWalletPortfolioPnlsByTokensQueryParams, options?: Omit<UseQueryOptions<Array<PortfolioPnl>, Error, Array<PortfolioPnl>, string[]>, "queryKey" | "queryFn">): _tanstack_react_query.UseQueryResult<PortfolioPnl[], Error>;
216
+
199
217
  interface UseWalletTradeActivitiesQueryParams extends API.GetTradeActivitiesOptions {
200
218
  chain: Chain;
201
219
  address: string;
@@ -204,11 +222,11 @@ declare function walletTradeActivitiesQueryKey(params: UseWalletTradeActivitiesQ
204
222
  declare function fetchWalletTradeActivities(client: API.IClient, { chain, address, ...options }: UseWalletTradeActivitiesQueryParams): Promise<API.CursorList<TradeActivity>>;
205
223
  declare function useWalletTradeActivitiesQuery(params: UseWalletTradeActivitiesQueryParams, options?: Omit<UseQueryOptions<API.CursorList<TradeActivity>, Error, API.CursorList<TradeActivity>, string[]>, "queryKey" | "queryFn">): _tanstack_react_query.UseQueryResult<API.CursorList<TradeActivity>, Error>;
206
224
 
207
- interface UseTokenStatsSubscriptionParams {
225
+ interface UseTokenSubscriptionParams {
208
226
  chain: Chain;
209
227
  address: string;
210
228
  }
211
- declare function useTokenStatsSubscription(params: UseTokenStatsSubscriptionParams, callback: (stats: Array<TokenStats>) => void, options?: {
229
+ declare function useTokenSubscription(params: UseTokenSubscriptionParams, callback: (data: Array<API.TokenSubscribed>) => void, options?: {
212
230
  enabled?: boolean;
213
231
  }): void;
214
232
 
@@ -221,14 +239,6 @@ declare function useTokenCandlesSubscription(params: UseTokenCandlesSubscription
221
239
  enabled?: boolean;
222
240
  }): void;
223
241
 
224
- interface UseTokenMarketDataSubscriptionParams {
225
- chain: Chain;
226
- address: string;
227
- }
228
- declare function useTokenMarketDataSubscription(params: UseTokenMarketDataSubscriptionParams, callback: (marketDatas: Array<TokenMarketData>) => void, options?: {
229
- enabled?: boolean;
230
- }): void;
231
-
232
242
  interface UseTokenTradeActivitiesSubscriptionParams {
233
243
  chain: Chain;
234
244
  address: string;
@@ -276,59 +286,31 @@ declare function useNewTokensSubscription(params: UseNewTokensSubscriptionParams
276
286
  enabled?: boolean;
277
287
  }): void;
278
288
 
279
- interface UseNewTokensBasicSubscriptionParams {
280
- chain: Chain;
281
- }
282
- declare function useNewTokensBasicSubscription(params: UseNewTokensBasicSubscriptionParams, callback: (tokens: Array<API.TokenSubscribed>) => void, options?: {
283
- enabled?: boolean;
284
- }): void;
285
-
286
- interface UseNewTokensMarketDataSubscriptionParams {
287
- chain: Chain;
288
- }
289
- declare function useNewTokensMarketDataSubscription(params: UseNewTokensMarketDataSubscriptionParams, callback: (marketDatas: Array<TokenMarketData>) => void, options?: {
290
- enabled?: boolean;
291
- }): void;
292
-
293
- interface UseNewTokensStatsSubscriptionParams {
294
- chain: Chain;
295
- }
296
- declare function useNewTokensStatsSubscription(params: UseNewTokensStatsSubscriptionParams, callback: (stats: Array<TokenStats>) => void, options?: {
297
- enabled?: boolean;
298
- }): void;
299
-
300
- interface UseNewTokensDataSubscriptionParams {
301
- chain: Chain;
302
- }
303
- declare function useNewTokensDataSubscription(params: UseNewTokensDataSubscriptionParams, callback: (data: Array<API.TokenDataSubscribed>) => void, options?: {
304
- enabled?: boolean;
305
- }): void;
306
-
307
- interface UseMigratedTokensDataSubscriptionParams {
289
+ interface UseTrendingTokensSubscriptionParams {
308
290
  chain: Chain;
309
291
  }
310
- declare function useMigratedTokensDataSubscription(params: UseMigratedTokensDataSubscriptionParams, callback: (data: Array<API.TokenDataSubscribed>) => void, options?: {
292
+ declare function useTrendingTokensSubscription(params: UseTrendingTokensSubscriptionParams, callback: (data: Array<API.TokenSubscribed>) => void, options?: {
311
293
  enabled?: boolean;
312
294
  }): void;
313
295
 
314
- interface UseFinalStretchTokensDataSubscriptionParams {
296
+ interface UseMigratedTokensSubscriptionParams {
315
297
  chain: Chain;
316
298
  }
317
- declare function useFinalStretchTokensDataSubscription(params: UseFinalStretchTokensDataSubscriptionParams, callback: (data: Array<API.TokenDataSubscribed>) => void, options?: {
299
+ declare function useMigratedTokensSubscription(params: UseMigratedTokensSubscriptionParams, callback: (data: Array<API.TokenSubscribed>) => void, options?: {
318
300
  enabled?: boolean;
319
301
  }): void;
320
302
 
321
- interface UseTrendingTokensDataSubscriptionParams {
303
+ interface UseFinalStretchTokensSubscriptionParams {
322
304
  chain: Chain;
323
305
  }
324
- declare function useTrendingTokensDataSubscription(params: UseTrendingTokensDataSubscriptionParams, callback: (data: Array<API.TokenDataSubscribed>) => void, options?: {
306
+ declare function useFinalStretchTokensSubscription(params: UseFinalStretchTokensSubscriptionParams, callback: (data: Array<API.TokenSubscribed>) => void, options?: {
325
307
  enabled?: boolean;
326
308
  }): void;
327
309
 
328
- interface UseStockTokensDataSubscriptionParams {
310
+ interface UseStockTokensSubscriptionParams {
329
311
  chain: Chain;
330
312
  }
331
- declare function useStockTokensDataSubscription(params: UseStockTokensDataSubscriptionParams, callback: (data: Array<API.TokenDataSubscribed>) => void, options?: {
313
+ declare function useStockTokensSubscription(params: UseStockTokensSubscriptionParams, callback: (data: Array<API.TokenSubscribed>) => void, options?: {
332
314
  enabled?: boolean;
333
315
  }): void;
334
316
 
@@ -364,30 +346,27 @@ declare class Client implements API.IClient, API.ISubscribeClient {
364
346
  cursor?: string;
365
347
  limit?: number;
366
348
  }): Promise<WalletPortfolioPnls>;
349
+ getWalletPortfoliosByTokens(chain: Chain, address: string, tokenAddresses: Array<string>): Promise<Array<Portfolio>>;
350
+ getWalletPortfolioPnlsByTokens(chain: Chain, address: string, tokenAddresses: Array<string>): Promise<Array<PortfolioPnl>>;
367
351
  getWalletTradeActivities(chain: Chain, address: string, options?: API.GetTradeActivitiesOptions): Promise<API.CursorList<TradeActivity>>;
368
352
  getTokenTradeActivities(chain: Chain, address: string, options?: API.GetTradeActivitiesOptions): Promise<API.CursorList<TradeActivity>>;
369
353
  getPresignedUploadUrl(): Promise<string>;
370
- subscribeTokenBasic(_chain: Chain, _address: string, _callback: (tokens: Array<API.TokenSubscribed>) => void): API.ISubscription;
371
- subscribeTokenMarketData(chain: Chain, address: string, callback: (marketDatas: Array<TokenMarketData>) => void): API.ISubscription;
372
- subscribeTokenStats(chain: Chain, address: string, callback: (stats: Array<TokenStats>) => void): API.ISubscription;
354
+ subscribeToken(chain: Chain, address: string, callback: (data: Array<API.TokenSubscribed>) => void): API.ISubscription;
373
355
  subscribeTokenCandles(chain: Chain, address: string, resolution: TokenResolution, callback: (candles: Array<TokenCandle>) => void): API.ISubscription;
374
356
  subscribeWalletPnl(chain: Chain, address: string, callback: (pnls: Array<API.WalletPnlSubscribed>) => void): API.ISubscription;
375
357
  subscribeWalletPortfolios(chain: Chain, address: string, callback: (portfolios: Array<API.PortfolioSubscribed>) => void): API.ISubscription;
376
358
  subscribeWalletPortfolioPnls(chain: Chain, address: string, callback: (portfolioPnls: Array<API.PortfolioPnlSubscribed>) => void): API.ISubscription;
377
359
  subscribeWalletTradeActivities(chain: Chain, address: string, callback: (trades: Array<TradeActivity>) => void): API.ISubscription;
378
360
  subscribeTokenTradeActivities(chain: Chain, address: string, callback: (trades: Array<TradeActivity>) => void): API.ISubscription;
379
- subscribeNewTokens(chain: Chain, callback: (tokens: Array<API.TokenSubscribed>) => void): API.ISubscription;
380
- subscribeNewTokensBasic(chain: Chain, callback: (tokens: Array<API.TokenSubscribed>) => void): API.ISubscription;
381
- subscribeNewTokensMarketData(chain: Chain, callback: (marketDatas: Array<TokenMarketData>) => void): API.ISubscription;
382
- subscribeNewTokensStats(chain: Chain, callback: (stats: Array<TokenStats>) => void): API.ISubscription;
383
- subscribeNewTokensData(chain: Chain, callback: (data: Array<API.TokenDataSubscribed>) => void): API.ISubscription;
384
- subscribeMigratedTokensData(chain: Chain, callback: (data: Array<API.TokenDataSubscribed>) => void): API.ISubscription;
385
- subscribeFinalStretchTokensData(chain: Chain, callback: (data: Array<API.TokenDataSubscribed>) => void): API.ISubscription;
386
- subscribeTrendingTokensData(chain: Chain, callback: (data: Array<API.TokenDataSubscribed>) => void): API.ISubscription;
387
- subscribeStockTokensData(chain: Chain, callback: (data: Array<API.TokenDataSubscribed>) => void): API.ISubscription;
361
+ subscribeNewTokens(chain: Chain, callback: (data: Array<API.TokenSubscribed>) => void): API.ISubscription;
362
+ subscribeTrendingTokens(chain: Chain, callback: (data: Array<API.TokenSubscribed>) => void): API.ISubscription;
363
+ subscribeMigratedTokens(chain: Chain, callback: (data: Array<API.TokenSubscribed>) => void): API.ISubscription;
364
+ subscribeFinalStretchTokens(chain: Chain, callback: (data: Array<API.TokenSubscribed>) => void): API.ISubscription;
365
+ subscribeStockTokens(chain: Chain, callback: (data: Array<API.TokenSubscribed>) => void): API.ISubscription;
366
+ private _subscribeRankingTokens;
388
367
  }
389
368
 
390
369
  type DexClientProviderProps = PropsWithChildren<DexClientContextValue>;
391
370
  declare function DexClientProvider({ client, subscribeClient, children, }: DexClientProviderProps): react_jsx_runtime.JSX.Element;
392
371
 
393
- export { Client, type ClientOptions, type ClientTokenProvider, DexClientContext, type DexClientContextValue, DexClientProvider, type DexClientProviderProps, type UseFinalStretchTokensDataSubscriptionParams, type UseFinalStretchTokensQueryParams, type UseMigratedTokensDataSubscriptionParams, type UseMigratedTokensQueryParams, type UseNewTokensBasicSubscriptionParams, type UseNewTokensDataSubscriptionParams, type UseNewTokensMarketDataSubscriptionParams, type UseNewTokensQueryParams, type UseNewTokensStatsSubscriptionParams, type UseNewTokensSubscriptionParams, type UseSearchTokensQueryParams, type UseSendTxMutationParams, type UseStockTokensDataSubscriptionParams, type UseStockTokensQueryParams, type UseSwapRouteQueryParams, type UseTokenCandlesQueryParams, type UseTokenCandlesSubscriptionParams, type UseTokenHoldersQueryParams, type UseTokenMarketDataQueryParams, type UseTokenMarketDataSubscriptionParams, type UseTokenQueryParams, type UseTokenSecurityQueryParams, type UseTokenStatsQueryParams, type UseTokenStatsSubscriptionParams, type UseTokenTradeActivitiesQueryParams, type UseTokenTradeActivitiesSubscriptionParams, type UseTokensQueryParams, type UseTrendingTokensDataSubscriptionParams, type UseTrendingTokensQueryParams, type UseTxSuccessQueryParams, type UseWalletPnlQueryParams, type UseWalletPnlSubscriptionParams, type UseWalletPortfolioPnlsInfiniteQueryParams, type UseWalletPortfolioPnlsQueryParams, type UseWalletPortfolioPnlsSubscriptionParams, type UseWalletPortfoliosInfiniteQueryParams, type UseWalletPortfoliosQueryParams, type UseWalletPortfoliosSubscriptionParams, type UseWalletTradeActivitiesQueryParams, type UseWalletTradeActivitiesSubscriptionParams, fetchFinalStretchTokens, fetchMigratedTokens, fetchNewTokens, fetchPresignedUploadUrl, fetchSearchTokens, fetchStockTokens, fetchSwapRoute, fetchToken, fetchTokenCandles, fetchTokenHolders, fetchTokenMarketData, fetchTokenSecurity, fetchTokenStats, fetchTokenTradeActivities, fetchTokens, fetchTrendingTokens, fetchTxSuccess, fetchWalletPnl, fetchWalletPortfolioPnls, fetchWalletPortfolios, fetchWalletTradeActivities, finalStretchTokensQueryKey, migratedTokensQueryKey, newTokensQueryKey, searchTokensQueryKey, sendTx, stockTokensQueryKey, swapRouteQueryKey, tokenCandlesQueryKey, tokenHoldersQueryKey, tokenMarketDataQueryKey, tokenQueryKey, tokenSecurityQueryKey, tokenStatsQueryKey, tokenTradeActivitiesQueryKey, tokensQueryKey, trendingTokensQueryKey, txSuccessQueryKey, useDexClient, useFinalStretchTokensDataSubscription, useFinalStretchTokensQuery, useMigratedTokensDataSubscription, useMigratedTokensQuery, useNewTokensBasicSubscription, useNewTokensDataSubscription, useNewTokensMarketDataSubscription, useNewTokensQuery, useNewTokensStatsSubscription, useNewTokensSubscription, usePresignedUploadUrlQuery, useSearchTokensQuery, useSendTxMutation, useStockTokensDataSubscription, useStockTokensQuery, useSwapRouteQuery, useTokenCandlesQuery, useTokenCandlesSubscription, useTokenHoldersQuery, useTokenMarketDataQuery, useTokenMarketDataSubscription, useTokenQuery, useTokenSecurityQuery, useTokenStatsQuery, useTokenStatsSubscription, useTokenTradeActivitiesQuery, useTokenTradeActivitiesSubscription, useTokensQuery, useTrendingTokensDataSubscription, useTrendingTokensQuery, useTxSuccessQuery, useWalletPnlQuery, useWalletPnlSubscription, useWalletPortfolioPnlsInfiniteQuery, useWalletPortfolioPnlsQuery, useWalletPortfolioPnlsSubscription, useWalletPortfoliosInfiniteQuery, useWalletPortfoliosQuery, useWalletPortfoliosSubscription, useWalletTradeActivitiesQuery, useWalletTradeActivitiesSubscription, _default as version, walletPnlQueryKey, walletPortfolioPnlsInfiniteQueryKey, walletPortfolioPnlsQueryKey, walletPortfoliosInfiniteQueryKey, walletPortfoliosQueryKey, walletTradeActivitiesQueryKey };
372
+ export { Client, type ClientOptions, type ClientTokenProvider, DexClientContext, type DexClientContextValue, DexClientProvider, type DexClientProviderProps, type UseFinalStretchTokensQueryParams, type UseFinalStretchTokensSubscriptionParams, type UseMigratedTokensQueryParams, type UseMigratedTokensSubscriptionParams, type UseNewTokensQueryParams, type UseNewTokensSubscriptionParams, type UseSearchTokensQueryParams, type UseSendTxMutationParams, type UseStockTokensQueryParams, type UseStockTokensSubscriptionParams, type UseSwapRouteQueryParams, type UseTokenCandlesQueryParams, type UseTokenCandlesSubscriptionParams, type UseTokenHoldersQueryParams, type UseTokenMarketDataQueryParams, type UseTokenQueryParams, type UseTokenSecurityQueryParams, type UseTokenStatsQueryParams, type UseTokenSubscriptionParams, type UseTokenTradeActivitiesQueryParams, type UseTokenTradeActivitiesSubscriptionParams, type UseTokensQueryParams, type UseTrendingTokensQueryParams, type UseTrendingTokensSubscriptionParams, type UseTxSuccessQueryParams, type UseWalletPnlQueryParams, type UseWalletPnlSubscriptionParams, type UseWalletPortfolioPnlsByTokensQueryParams, type UseWalletPortfolioPnlsInfiniteQueryParams, type UseWalletPortfolioPnlsQueryParams, type UseWalletPortfolioPnlsSubscriptionParams, type UseWalletPortfoliosByTokensQueryParams, type UseWalletPortfoliosInfiniteQueryParams, type UseWalletPortfoliosQueryParams, type UseWalletPortfoliosSubscriptionParams, type UseWalletTradeActivitiesQueryParams, type UseWalletTradeActivitiesSubscriptionParams, fetchFinalStretchTokens, fetchMigratedTokens, fetchNewTokens, fetchPresignedUploadUrl, fetchSearchTokens, fetchStockTokens, fetchSwapRoute, fetchToken, fetchTokenCandles, fetchTokenHolders, fetchTokenMarketData, fetchTokenSecurity, fetchTokenStats, fetchTokenTradeActivities, fetchTokens, fetchTrendingTokens, fetchTxSuccess, fetchWalletPnl, fetchWalletPortfolioPnls, fetchWalletPortfolioPnlsByTokens, fetchWalletPortfolios, fetchWalletPortfoliosByTokens, fetchWalletTradeActivities, finalStretchTokensQueryKey, migratedTokensQueryKey, newTokensQueryKey, searchTokensQueryKey, sendTx, stockTokensQueryKey, swapRouteQueryKey, tokenCandlesQueryKey, tokenHoldersQueryKey, tokenMarketDataQueryKey, tokenQueryKey, tokenSecurityQueryKey, tokenStatsQueryKey, tokenTradeActivitiesQueryKey, tokensQueryKey, trendingTokensQueryKey, txSuccessQueryKey, useDexClient, useFinalStretchTokensQuery, useFinalStretchTokensSubscription, useMigratedTokensQuery, useMigratedTokensSubscription, useNewTokensQuery, useNewTokensSubscription, usePresignedUploadUrlQuery, useSearchTokensQuery, useSendTxMutation, useStockTokensQuery, useStockTokensSubscription, useSwapRouteQuery, useTokenCandlesQuery, useTokenCandlesSubscription, useTokenHoldersQuery, useTokenMarketDataQuery, useTokenQuery, useTokenSecurityQuery, useTokenStatsQuery, useTokenSubscription, useTokenTradeActivitiesQuery, useTokenTradeActivitiesSubscription, useTokensQuery, useTrendingTokensQuery, useTrendingTokensSubscription, useTxSuccessQuery, useWalletPnlQuery, useWalletPnlSubscription, useWalletPortfolioPnlsByTokensQuery, useWalletPortfolioPnlsInfiniteQuery, useWalletPortfolioPnlsQuery, useWalletPortfolioPnlsSubscription, useWalletPortfoliosByTokensQuery, useWalletPortfoliosInfiniteQuery, useWalletPortfoliosQuery, useWalletPortfoliosSubscription, useWalletTradeActivitiesQuery, useWalletTradeActivitiesSubscription, _default as version, walletPnlQueryKey, walletPortfolioPnlsByTokensQueryKey, walletPortfolioPnlsInfiniteQueryKey, walletPortfolioPnlsQueryKey, walletPortfoliosByTokensQueryKey, walletPortfoliosInfiniteQueryKey, walletPortfoliosQueryKey, walletTradeActivitiesQueryKey };
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import * as react from 'react';
2
2
  import { PropsWithChildren } from 'react';
3
3
  import * as _liberfi_io_types from '@liberfi.io/types';
4
- import { API, Chain, Token, TokenResolution, TokenCandle, TokenHolder, TokenMarketData, TokenSecurity, TokenStats, TradeActivity, WalletPnl, WalletPortfolioPnls, WalletPortfolios } from '@liberfi.io/types';
4
+ import { API, Chain, Token, TokenResolution, TokenCandle, TokenHolder, TokenMarketData, TokenSecurity, TokenStats, TradeActivity, WalletPnl, WalletPortfolioPnls, WalletPortfolios, Portfolio, PortfolioPnl } from '@liberfi.io/types';
5
5
  import * as _tanstack_react_query from '@tanstack/react-query';
6
6
  import { UseQueryOptions, UseMutationOptions, UseInfiniteQueryOptions, InfiniteData } from '@tanstack/react-query';
7
7
  import { ChainStreamClientOptions, TokenProvider } from '@chainstream-io/sdk';
@@ -14,7 +14,7 @@ declare global {
14
14
  };
15
15
  }
16
16
  }
17
- declare const _default: "0.1.31";
17
+ declare const _default: "0.1.33";
18
18
 
19
19
  interface DexClientContextValue {
20
20
  client: API.IClient;
@@ -188,6 +188,15 @@ declare function walletPortfoliosQueryKey(params: UseWalletPortfoliosQueryParams
188
188
  declare function fetchWalletPortfolios(client: API.IClient, { chain, address, cursor, limit }: UseWalletPortfoliosQueryParams): Promise<WalletPortfolios>;
189
189
  declare function useWalletPortfoliosQuery(params: UseWalletPortfoliosQueryParams, options?: Omit<UseQueryOptions<WalletPortfolios, Error, WalletPortfolios, string[]>, "queryKey" | "queryFn">): _tanstack_react_query.UseQueryResult<WalletPortfolios, Error>;
190
190
 
191
+ interface UseWalletPortfoliosByTokensQueryParams {
192
+ chain: Chain;
193
+ address: string;
194
+ tokenAddresses: Array<string>;
195
+ }
196
+ declare function walletPortfoliosByTokensQueryKey(params: UseWalletPortfoliosByTokensQueryParams): string[];
197
+ declare function fetchWalletPortfoliosByTokens(client: API.IClient, { chain, address, tokenAddresses }: UseWalletPortfoliosByTokensQueryParams): Promise<Portfolio[]>;
198
+ declare function useWalletPortfoliosByTokensQuery(params: UseWalletPortfoliosByTokensQueryParams, options?: Omit<UseQueryOptions<Array<Portfolio>, Error, Array<Portfolio>, string[]>, "queryKey" | "queryFn">): _tanstack_react_query.UseQueryResult<Portfolio[], Error>;
199
+
191
200
  interface UseWalletPortfoliosInfiniteQueryParams {
192
201
  chain: Chain;
193
202
  address: string;
@@ -196,6 +205,15 @@ interface UseWalletPortfoliosInfiniteQueryParams {
196
205
  declare function walletPortfoliosInfiniteQueryKey(params: UseWalletPortfoliosInfiniteQueryParams): string[];
197
206
  declare function useWalletPortfoliosInfiniteQuery(params: UseWalletPortfoliosInfiniteQueryParams, options?: Omit<UseInfiniteQueryOptions<WalletPortfolios, Error, InfiniteData<WalletPortfolios>, string[], string | undefined>, "queryKey" | "queryFn" | "initialPageParam" | "getNextPageParam">): _tanstack_react_query.UseInfiniteQueryResult<InfiniteData<WalletPortfolios, unknown>, Error>;
198
207
 
208
+ interface UseWalletPortfolioPnlsByTokensQueryParams {
209
+ chain: Chain;
210
+ address: string;
211
+ tokenAddresses: Array<string>;
212
+ }
213
+ declare function walletPortfolioPnlsByTokensQueryKey(params: UseWalletPortfolioPnlsByTokensQueryParams): string[];
214
+ declare function fetchWalletPortfolioPnlsByTokens(client: API.IClient, { chain, address, tokenAddresses }: UseWalletPortfolioPnlsByTokensQueryParams): Promise<PortfolioPnl[]>;
215
+ declare function useWalletPortfolioPnlsByTokensQuery(params: UseWalletPortfolioPnlsByTokensQueryParams, options?: Omit<UseQueryOptions<Array<PortfolioPnl>, Error, Array<PortfolioPnl>, string[]>, "queryKey" | "queryFn">): _tanstack_react_query.UseQueryResult<PortfolioPnl[], Error>;
216
+
199
217
  interface UseWalletTradeActivitiesQueryParams extends API.GetTradeActivitiesOptions {
200
218
  chain: Chain;
201
219
  address: string;
@@ -204,11 +222,11 @@ declare function walletTradeActivitiesQueryKey(params: UseWalletTradeActivitiesQ
204
222
  declare function fetchWalletTradeActivities(client: API.IClient, { chain, address, ...options }: UseWalletTradeActivitiesQueryParams): Promise<API.CursorList<TradeActivity>>;
205
223
  declare function useWalletTradeActivitiesQuery(params: UseWalletTradeActivitiesQueryParams, options?: Omit<UseQueryOptions<API.CursorList<TradeActivity>, Error, API.CursorList<TradeActivity>, string[]>, "queryKey" | "queryFn">): _tanstack_react_query.UseQueryResult<API.CursorList<TradeActivity>, Error>;
206
224
 
207
- interface UseTokenStatsSubscriptionParams {
225
+ interface UseTokenSubscriptionParams {
208
226
  chain: Chain;
209
227
  address: string;
210
228
  }
211
- declare function useTokenStatsSubscription(params: UseTokenStatsSubscriptionParams, callback: (stats: Array<TokenStats>) => void, options?: {
229
+ declare function useTokenSubscription(params: UseTokenSubscriptionParams, callback: (data: Array<API.TokenSubscribed>) => void, options?: {
212
230
  enabled?: boolean;
213
231
  }): void;
214
232
 
@@ -221,14 +239,6 @@ declare function useTokenCandlesSubscription(params: UseTokenCandlesSubscription
221
239
  enabled?: boolean;
222
240
  }): void;
223
241
 
224
- interface UseTokenMarketDataSubscriptionParams {
225
- chain: Chain;
226
- address: string;
227
- }
228
- declare function useTokenMarketDataSubscription(params: UseTokenMarketDataSubscriptionParams, callback: (marketDatas: Array<TokenMarketData>) => void, options?: {
229
- enabled?: boolean;
230
- }): void;
231
-
232
242
  interface UseTokenTradeActivitiesSubscriptionParams {
233
243
  chain: Chain;
234
244
  address: string;
@@ -276,59 +286,31 @@ declare function useNewTokensSubscription(params: UseNewTokensSubscriptionParams
276
286
  enabled?: boolean;
277
287
  }): void;
278
288
 
279
- interface UseNewTokensBasicSubscriptionParams {
280
- chain: Chain;
281
- }
282
- declare function useNewTokensBasicSubscription(params: UseNewTokensBasicSubscriptionParams, callback: (tokens: Array<API.TokenSubscribed>) => void, options?: {
283
- enabled?: boolean;
284
- }): void;
285
-
286
- interface UseNewTokensMarketDataSubscriptionParams {
287
- chain: Chain;
288
- }
289
- declare function useNewTokensMarketDataSubscription(params: UseNewTokensMarketDataSubscriptionParams, callback: (marketDatas: Array<TokenMarketData>) => void, options?: {
290
- enabled?: boolean;
291
- }): void;
292
-
293
- interface UseNewTokensStatsSubscriptionParams {
294
- chain: Chain;
295
- }
296
- declare function useNewTokensStatsSubscription(params: UseNewTokensStatsSubscriptionParams, callback: (stats: Array<TokenStats>) => void, options?: {
297
- enabled?: boolean;
298
- }): void;
299
-
300
- interface UseNewTokensDataSubscriptionParams {
301
- chain: Chain;
302
- }
303
- declare function useNewTokensDataSubscription(params: UseNewTokensDataSubscriptionParams, callback: (data: Array<API.TokenDataSubscribed>) => void, options?: {
304
- enabled?: boolean;
305
- }): void;
306
-
307
- interface UseMigratedTokensDataSubscriptionParams {
289
+ interface UseTrendingTokensSubscriptionParams {
308
290
  chain: Chain;
309
291
  }
310
- declare function useMigratedTokensDataSubscription(params: UseMigratedTokensDataSubscriptionParams, callback: (data: Array<API.TokenDataSubscribed>) => void, options?: {
292
+ declare function useTrendingTokensSubscription(params: UseTrendingTokensSubscriptionParams, callback: (data: Array<API.TokenSubscribed>) => void, options?: {
311
293
  enabled?: boolean;
312
294
  }): void;
313
295
 
314
- interface UseFinalStretchTokensDataSubscriptionParams {
296
+ interface UseMigratedTokensSubscriptionParams {
315
297
  chain: Chain;
316
298
  }
317
- declare function useFinalStretchTokensDataSubscription(params: UseFinalStretchTokensDataSubscriptionParams, callback: (data: Array<API.TokenDataSubscribed>) => void, options?: {
299
+ declare function useMigratedTokensSubscription(params: UseMigratedTokensSubscriptionParams, callback: (data: Array<API.TokenSubscribed>) => void, options?: {
318
300
  enabled?: boolean;
319
301
  }): void;
320
302
 
321
- interface UseTrendingTokensDataSubscriptionParams {
303
+ interface UseFinalStretchTokensSubscriptionParams {
322
304
  chain: Chain;
323
305
  }
324
- declare function useTrendingTokensDataSubscription(params: UseTrendingTokensDataSubscriptionParams, callback: (data: Array<API.TokenDataSubscribed>) => void, options?: {
306
+ declare function useFinalStretchTokensSubscription(params: UseFinalStretchTokensSubscriptionParams, callback: (data: Array<API.TokenSubscribed>) => void, options?: {
325
307
  enabled?: boolean;
326
308
  }): void;
327
309
 
328
- interface UseStockTokensDataSubscriptionParams {
310
+ interface UseStockTokensSubscriptionParams {
329
311
  chain: Chain;
330
312
  }
331
- declare function useStockTokensDataSubscription(params: UseStockTokensDataSubscriptionParams, callback: (data: Array<API.TokenDataSubscribed>) => void, options?: {
313
+ declare function useStockTokensSubscription(params: UseStockTokensSubscriptionParams, callback: (data: Array<API.TokenSubscribed>) => void, options?: {
332
314
  enabled?: boolean;
333
315
  }): void;
334
316
 
@@ -364,30 +346,27 @@ declare class Client implements API.IClient, API.ISubscribeClient {
364
346
  cursor?: string;
365
347
  limit?: number;
366
348
  }): Promise<WalletPortfolioPnls>;
349
+ getWalletPortfoliosByTokens(chain: Chain, address: string, tokenAddresses: Array<string>): Promise<Array<Portfolio>>;
350
+ getWalletPortfolioPnlsByTokens(chain: Chain, address: string, tokenAddresses: Array<string>): Promise<Array<PortfolioPnl>>;
367
351
  getWalletTradeActivities(chain: Chain, address: string, options?: API.GetTradeActivitiesOptions): Promise<API.CursorList<TradeActivity>>;
368
352
  getTokenTradeActivities(chain: Chain, address: string, options?: API.GetTradeActivitiesOptions): Promise<API.CursorList<TradeActivity>>;
369
353
  getPresignedUploadUrl(): Promise<string>;
370
- subscribeTokenBasic(_chain: Chain, _address: string, _callback: (tokens: Array<API.TokenSubscribed>) => void): API.ISubscription;
371
- subscribeTokenMarketData(chain: Chain, address: string, callback: (marketDatas: Array<TokenMarketData>) => void): API.ISubscription;
372
- subscribeTokenStats(chain: Chain, address: string, callback: (stats: Array<TokenStats>) => void): API.ISubscription;
354
+ subscribeToken(chain: Chain, address: string, callback: (data: Array<API.TokenSubscribed>) => void): API.ISubscription;
373
355
  subscribeTokenCandles(chain: Chain, address: string, resolution: TokenResolution, callback: (candles: Array<TokenCandle>) => void): API.ISubscription;
374
356
  subscribeWalletPnl(chain: Chain, address: string, callback: (pnls: Array<API.WalletPnlSubscribed>) => void): API.ISubscription;
375
357
  subscribeWalletPortfolios(chain: Chain, address: string, callback: (portfolios: Array<API.PortfolioSubscribed>) => void): API.ISubscription;
376
358
  subscribeWalletPortfolioPnls(chain: Chain, address: string, callback: (portfolioPnls: Array<API.PortfolioPnlSubscribed>) => void): API.ISubscription;
377
359
  subscribeWalletTradeActivities(chain: Chain, address: string, callback: (trades: Array<TradeActivity>) => void): API.ISubscription;
378
360
  subscribeTokenTradeActivities(chain: Chain, address: string, callback: (trades: Array<TradeActivity>) => void): API.ISubscription;
379
- subscribeNewTokens(chain: Chain, callback: (tokens: Array<API.TokenSubscribed>) => void): API.ISubscription;
380
- subscribeNewTokensBasic(chain: Chain, callback: (tokens: Array<API.TokenSubscribed>) => void): API.ISubscription;
381
- subscribeNewTokensMarketData(chain: Chain, callback: (marketDatas: Array<TokenMarketData>) => void): API.ISubscription;
382
- subscribeNewTokensStats(chain: Chain, callback: (stats: Array<TokenStats>) => void): API.ISubscription;
383
- subscribeNewTokensData(chain: Chain, callback: (data: Array<API.TokenDataSubscribed>) => void): API.ISubscription;
384
- subscribeMigratedTokensData(chain: Chain, callback: (data: Array<API.TokenDataSubscribed>) => void): API.ISubscription;
385
- subscribeFinalStretchTokensData(chain: Chain, callback: (data: Array<API.TokenDataSubscribed>) => void): API.ISubscription;
386
- subscribeTrendingTokensData(chain: Chain, callback: (data: Array<API.TokenDataSubscribed>) => void): API.ISubscription;
387
- subscribeStockTokensData(chain: Chain, callback: (data: Array<API.TokenDataSubscribed>) => void): API.ISubscription;
361
+ subscribeNewTokens(chain: Chain, callback: (data: Array<API.TokenSubscribed>) => void): API.ISubscription;
362
+ subscribeTrendingTokens(chain: Chain, callback: (data: Array<API.TokenSubscribed>) => void): API.ISubscription;
363
+ subscribeMigratedTokens(chain: Chain, callback: (data: Array<API.TokenSubscribed>) => void): API.ISubscription;
364
+ subscribeFinalStretchTokens(chain: Chain, callback: (data: Array<API.TokenSubscribed>) => void): API.ISubscription;
365
+ subscribeStockTokens(chain: Chain, callback: (data: Array<API.TokenSubscribed>) => void): API.ISubscription;
366
+ private _subscribeRankingTokens;
388
367
  }
389
368
 
390
369
  type DexClientProviderProps = PropsWithChildren<DexClientContextValue>;
391
370
  declare function DexClientProvider({ client, subscribeClient, children, }: DexClientProviderProps): react_jsx_runtime.JSX.Element;
392
371
 
393
- export { Client, type ClientOptions, type ClientTokenProvider, DexClientContext, type DexClientContextValue, DexClientProvider, type DexClientProviderProps, type UseFinalStretchTokensDataSubscriptionParams, type UseFinalStretchTokensQueryParams, type UseMigratedTokensDataSubscriptionParams, type UseMigratedTokensQueryParams, type UseNewTokensBasicSubscriptionParams, type UseNewTokensDataSubscriptionParams, type UseNewTokensMarketDataSubscriptionParams, type UseNewTokensQueryParams, type UseNewTokensStatsSubscriptionParams, type UseNewTokensSubscriptionParams, type UseSearchTokensQueryParams, type UseSendTxMutationParams, type UseStockTokensDataSubscriptionParams, type UseStockTokensQueryParams, type UseSwapRouteQueryParams, type UseTokenCandlesQueryParams, type UseTokenCandlesSubscriptionParams, type UseTokenHoldersQueryParams, type UseTokenMarketDataQueryParams, type UseTokenMarketDataSubscriptionParams, type UseTokenQueryParams, type UseTokenSecurityQueryParams, type UseTokenStatsQueryParams, type UseTokenStatsSubscriptionParams, type UseTokenTradeActivitiesQueryParams, type UseTokenTradeActivitiesSubscriptionParams, type UseTokensQueryParams, type UseTrendingTokensDataSubscriptionParams, type UseTrendingTokensQueryParams, type UseTxSuccessQueryParams, type UseWalletPnlQueryParams, type UseWalletPnlSubscriptionParams, type UseWalletPortfolioPnlsInfiniteQueryParams, type UseWalletPortfolioPnlsQueryParams, type UseWalletPortfolioPnlsSubscriptionParams, type UseWalletPortfoliosInfiniteQueryParams, type UseWalletPortfoliosQueryParams, type UseWalletPortfoliosSubscriptionParams, type UseWalletTradeActivitiesQueryParams, type UseWalletTradeActivitiesSubscriptionParams, fetchFinalStretchTokens, fetchMigratedTokens, fetchNewTokens, fetchPresignedUploadUrl, fetchSearchTokens, fetchStockTokens, fetchSwapRoute, fetchToken, fetchTokenCandles, fetchTokenHolders, fetchTokenMarketData, fetchTokenSecurity, fetchTokenStats, fetchTokenTradeActivities, fetchTokens, fetchTrendingTokens, fetchTxSuccess, fetchWalletPnl, fetchWalletPortfolioPnls, fetchWalletPortfolios, fetchWalletTradeActivities, finalStretchTokensQueryKey, migratedTokensQueryKey, newTokensQueryKey, searchTokensQueryKey, sendTx, stockTokensQueryKey, swapRouteQueryKey, tokenCandlesQueryKey, tokenHoldersQueryKey, tokenMarketDataQueryKey, tokenQueryKey, tokenSecurityQueryKey, tokenStatsQueryKey, tokenTradeActivitiesQueryKey, tokensQueryKey, trendingTokensQueryKey, txSuccessQueryKey, useDexClient, useFinalStretchTokensDataSubscription, useFinalStretchTokensQuery, useMigratedTokensDataSubscription, useMigratedTokensQuery, useNewTokensBasicSubscription, useNewTokensDataSubscription, useNewTokensMarketDataSubscription, useNewTokensQuery, useNewTokensStatsSubscription, useNewTokensSubscription, usePresignedUploadUrlQuery, useSearchTokensQuery, useSendTxMutation, useStockTokensDataSubscription, useStockTokensQuery, useSwapRouteQuery, useTokenCandlesQuery, useTokenCandlesSubscription, useTokenHoldersQuery, useTokenMarketDataQuery, useTokenMarketDataSubscription, useTokenQuery, useTokenSecurityQuery, useTokenStatsQuery, useTokenStatsSubscription, useTokenTradeActivitiesQuery, useTokenTradeActivitiesSubscription, useTokensQuery, useTrendingTokensDataSubscription, useTrendingTokensQuery, useTxSuccessQuery, useWalletPnlQuery, useWalletPnlSubscription, useWalletPortfolioPnlsInfiniteQuery, useWalletPortfolioPnlsQuery, useWalletPortfolioPnlsSubscription, useWalletPortfoliosInfiniteQuery, useWalletPortfoliosQuery, useWalletPortfoliosSubscription, useWalletTradeActivitiesQuery, useWalletTradeActivitiesSubscription, _default as version, walletPnlQueryKey, walletPortfolioPnlsInfiniteQueryKey, walletPortfolioPnlsQueryKey, walletPortfoliosInfiniteQueryKey, walletPortfoliosQueryKey, walletTradeActivitiesQueryKey };
372
+ export { Client, type ClientOptions, type ClientTokenProvider, DexClientContext, type DexClientContextValue, DexClientProvider, type DexClientProviderProps, type UseFinalStretchTokensQueryParams, type UseFinalStretchTokensSubscriptionParams, type UseMigratedTokensQueryParams, type UseMigratedTokensSubscriptionParams, type UseNewTokensQueryParams, type UseNewTokensSubscriptionParams, type UseSearchTokensQueryParams, type UseSendTxMutationParams, type UseStockTokensQueryParams, type UseStockTokensSubscriptionParams, type UseSwapRouteQueryParams, type UseTokenCandlesQueryParams, type UseTokenCandlesSubscriptionParams, type UseTokenHoldersQueryParams, type UseTokenMarketDataQueryParams, type UseTokenQueryParams, type UseTokenSecurityQueryParams, type UseTokenStatsQueryParams, type UseTokenSubscriptionParams, type UseTokenTradeActivitiesQueryParams, type UseTokenTradeActivitiesSubscriptionParams, type UseTokensQueryParams, type UseTrendingTokensQueryParams, type UseTrendingTokensSubscriptionParams, type UseTxSuccessQueryParams, type UseWalletPnlQueryParams, type UseWalletPnlSubscriptionParams, type UseWalletPortfolioPnlsByTokensQueryParams, type UseWalletPortfolioPnlsInfiniteQueryParams, type UseWalletPortfolioPnlsQueryParams, type UseWalletPortfolioPnlsSubscriptionParams, type UseWalletPortfoliosByTokensQueryParams, type UseWalletPortfoliosInfiniteQueryParams, type UseWalletPortfoliosQueryParams, type UseWalletPortfoliosSubscriptionParams, type UseWalletTradeActivitiesQueryParams, type UseWalletTradeActivitiesSubscriptionParams, fetchFinalStretchTokens, fetchMigratedTokens, fetchNewTokens, fetchPresignedUploadUrl, fetchSearchTokens, fetchStockTokens, fetchSwapRoute, fetchToken, fetchTokenCandles, fetchTokenHolders, fetchTokenMarketData, fetchTokenSecurity, fetchTokenStats, fetchTokenTradeActivities, fetchTokens, fetchTrendingTokens, fetchTxSuccess, fetchWalletPnl, fetchWalletPortfolioPnls, fetchWalletPortfolioPnlsByTokens, fetchWalletPortfolios, fetchWalletPortfoliosByTokens, fetchWalletTradeActivities, finalStretchTokensQueryKey, migratedTokensQueryKey, newTokensQueryKey, searchTokensQueryKey, sendTx, stockTokensQueryKey, swapRouteQueryKey, tokenCandlesQueryKey, tokenHoldersQueryKey, tokenMarketDataQueryKey, tokenQueryKey, tokenSecurityQueryKey, tokenStatsQueryKey, tokenTradeActivitiesQueryKey, tokensQueryKey, trendingTokensQueryKey, txSuccessQueryKey, useDexClient, useFinalStretchTokensQuery, useFinalStretchTokensSubscription, useMigratedTokensQuery, useMigratedTokensSubscription, useNewTokensQuery, useNewTokensSubscription, usePresignedUploadUrlQuery, useSearchTokensQuery, useSendTxMutation, useStockTokensQuery, useStockTokensSubscription, useSwapRouteQuery, useTokenCandlesQuery, useTokenCandlesSubscription, useTokenHoldersQuery, useTokenMarketDataQuery, useTokenQuery, useTokenSecurityQuery, useTokenStatsQuery, useTokenSubscription, useTokenTradeActivitiesQuery, useTokenTradeActivitiesSubscription, useTokensQuery, useTrendingTokensQuery, useTrendingTokensSubscription, useTxSuccessQuery, useWalletPnlQuery, useWalletPnlSubscription, useWalletPortfolioPnlsByTokensQuery, useWalletPortfolioPnlsInfiniteQuery, useWalletPortfolioPnlsQuery, useWalletPortfolioPnlsSubscription, useWalletPortfoliosByTokensQuery, useWalletPortfoliosInfiniteQuery, useWalletPortfoliosQuery, useWalletPortfoliosSubscription, useWalletTradeActivitiesQuery, useWalletTradeActivitiesSubscription, _default as version, walletPnlQueryKey, walletPortfolioPnlsByTokensQueryKey, walletPortfolioPnlsInfiniteQueryKey, walletPortfolioPnlsQueryKey, walletPortfoliosByTokensQueryKey, walletPortfoliosInfiniteQueryKey, walletPortfoliosQueryKey, walletTradeActivitiesQueryKey };
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- 'use strict';var react=require('react'),reactQuery=require('@tanstack/react-query'),sdk=require('@chainstream-io/sdk'),types=require('@liberfi.io/types'),utils=require('@liberfi.io/utils'),jsxRuntime=require('react/jsx-runtime');typeof window<"u"&&(window.__LIBERFI_VERSION__=window.__LIBERFI_VERSION__||{},window.__LIBERFI_VERSION__["@liberfi.io/client"]="0.1.31");var de="0.1.31";var p=react.createContext({});function o(){let e=react.useContext(p);if(!e)throw new Error("useDexClient must be used within an DexClientProvider");return e}function me(e){return ["finalStretchTokens",e.chain,e.sortBy??"",e.sortDirection??"",JSON.stringify((e.keywords??[]).sort()),JSON.stringify((e.excludeKeywords??[]).sort()),JSON.stringify(e.filters??[])]}async function ye(e,{chain:t,...r}){return await e.getFinalStretchTokens(t,r)}function St(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:me(e),queryFn:async()=>ye(r,e),...t})}function ke(e){return ["migratedTokens",e.chain,e.sortBy??"",e.sortDirection??"",JSON.stringify((e.keywords??[]).sort()),JSON.stringify((e.excludeKeywords??[]).sort()),JSON.stringify(e.filters??[])]}async function be(e,{chain:t,...r}){return await e.getMigratedTokens(t,r)}function wt(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:ke(e),queryFn:async()=>be(r,e),...t})}function he(e){return ["newTokens",e.chain,e.sortBy??"",e.sortDirection??"",JSON.stringify((e.keywords??[]).sort()),JSON.stringify((e.excludeKeywords??[]).sort()),JSON.stringify(e.filters??[])]}async function ge(e,{chain:t,...r}){return await e.getNewTokens(t,r)}function Ht(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:he(e),queryFn:async()=>ge(r,e),...t})}async function Ae(e){return await e.getPresignedUploadUrl()}function qt(e={}){let{client:t}=o();return reactQuery.useQuery({queryKey:["presignedUploadUrl"],queryFn:async()=>Ae(t),staleTime:0,...e})}function xe(e){return ["searchTokens",e.cursor??"",e.limit?`${e.limit}`:"",e.direction??"",JSON.stringify((e.chains??[]).sort()),e.keyword??"",JSON.stringify(e.filters??[]),e.sortBy??"",e.sortDirection??""]}async function Ce(e,t){return await e.searchTokens(t)}function _t(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:xe(e),queryFn:async()=>Ce(r,e),...t})}async function Ue(e,t){return await e.sendTx(t)}function $t(e={}){let{client:t}=o();return reactQuery.useMutation({mutationFn:async r=>Ue(t,r),...e})}function De(e){return ["stockTokens",e.chain,e.sortBy??"",e.sortDirection??"",JSON.stringify((e.keywords??[]).sort()),JSON.stringify((e.excludeKeywords??[]).sort()),JSON.stringify(e.filters??[])]}async function Qe(e,{chain:t,...r}){return await e.getStockTokens(t,r)}function Zt(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:De(e),queryFn:async()=>Qe(r,e),...t})}function Re(e){return ["swapRoute",e.chain,e.userAddress,e.input,e.output,e.mode,e.amount,e.slippage?`${e.slippage}`:"",e.priorityFee??"",e.tipFee??"",e.isAntiMev!==void 0?`${e.isAntiMev}`:""]}async function He(e,t){return await e.swapRoute(t)}function sn(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:Re(e),queryFn:async()=>He(r,e),...t})}function Oe(e){return ["tokenCandles",e.chain,e.address,e.resolution,e.after?.toString()??"",e.before?.toString()??"",e.limit?`${e.limit}`:""]}async function Fe(e,{chain:t,address:r,resolution:n,...s}){return await e.getTokenCandles(t,r,n,s)}function un(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:Oe(e),queryFn:async()=>Fe(r,e),...t})}function qe(e){return ["tokenHolders",e.chain,e.address,e.cursor??"",e.limit?`${e.limit}`:"",e.direction??""]}async function Me(e,{chain:t,address:r,...n}){return await e.getTokenHolders(t,r,n)}function Tn(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:qe(e),queryFn:async()=>Me(r,e),...t})}function Be(e){return ["tokenMarketData",e.chain,e.address]}async function Ee(e,{chain:t,address:r}){return await e.getTokenMarketData(t,r)}function gn(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:Be(e),queryFn:async()=>Ee(r,e),...t})}function Ve(e){return ["token",e.chain,e.address]}async function Le(e,{chain:t,address:r}){return await e.getToken(t,r)}function Cn(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:Ve(e),queryFn:async()=>Le(r,e),...t})}function ze(e){return ["tokenSecurity",e.chain,e.address]}async function $e(e,{chain:t,address:r}){return await e.getTokenSecurity(t,r)}function Qn(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:ze(e),queryFn:async()=>$e(r,e),...t})}function je(e){return ["tokens",e.chain,e.addresses.sort().join(",")]}async function Xe(e,{chain:t,addresses:r}){return await e.getTokens(t,r)}function On(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:je(e),queryFn:async()=>Xe(r,e),...t})}function Ze(e){return ["tokenStats",e.chain,e.address]}async function er(e,{chain:t,address:r}){return await e.getTokenStats(t,r)}function Kn(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:Ze(e),queryFn:async()=>er(r,e),...t})}function tr(e){return ["tokenTradeActivities",e.chain,e.address,e.before?.toString()??"",e.after?.toString()??"",e.beforeBlockHeight?`${e.beforeBlockHeight}`:"",e.afterBlockHeight?`${e.afterBlockHeight}`:"",e.type??"",e.poolAddress??""]}async function nr(e,{chain:t,address:r,...n}){return await e.getTokenTradeActivities(t,r,n)}function Ln(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:tr(e),queryFn:async()=>nr(r,e),...t})}function or(e){return ["trendingTokens",e.chain,e.resolution,e.sortBy??"",e.sortDirection??"",JSON.stringify((e.keywords??[]).sort()),JSON.stringify((e.excludeKeywords??[]).sort()),JSON.stringify(e.filters??[])]}async function ir(e,{chain:t,resolution:r,...n}){return await e.getTrendingTokens(t,r,n)}function jn(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:or(e),queryFn:async()=>ir(r,e),...t})}function lr(e){return ["txSuccess",e.chain,e.txHash,e.timeout?`${e.timeout}`:""]}async function dr(e,{chain:t,txHash:r,timeout:n}){return await e.checkTxSuccess(t,r,n)}function rs(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:lr(e),queryFn:async()=>dr(r,e),...t})}function cr(e){return ["walletPnl",e.chain,e.address,e.resolution??"all"]}async function fr(e,{chain:t,address:r,resolution:n}){return await e.getWalletPnl(t,r,n)}function is(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:cr(e),queryFn:async()=>fr(r,e),...t})}function yr(e){return ["walletPortfolioPnls",e.chain,e.address,e.cursor??"",String(e.limit??"")]}async function Tr(e,{chain:t,address:r,cursor:n,limit:s}){return await e.getWalletPortfolioPnls(t,r,{cursor:n,limit:s})}function cs(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:yr(e),queryFn:async()=>Tr(r,e),...t})}function br(e){return ["walletPortfolioPnls","infinite",e.chain,e.address,String(e.limit??"")]}function Ts(e,t={}){let{client:r}=o();return reactQuery.useInfiniteQuery({queryKey:br(e),queryFn:async({pageParam:n})=>r.getWalletPortfolioPnls(e.chain,e.address,{cursor:n,limit:e.limit??100}),initialPageParam:void 0,getNextPageParam:n=>n.hasNext?n.endCursor:void 0,...t})}function hr(e){return ["walletPortfolios",e.chain,e.address,e.cursor??"",String(e.limit??"")]}async function gr(e,{chain:t,address:r,cursor:n,limit:s}){return await e.getWalletPortfolios(t,r,{cursor:n,limit:s})}function gs(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:hr(e),queryFn:async()=>gr(r,e),...t})}function Ar(e){return ["walletPortfolios","infinite",e.chain,e.address,String(e.limit??"")]}function xs(e,t={}){let{client:r}=o();return reactQuery.useInfiniteQuery({queryKey:Ar(e),queryFn:async({pageParam:n})=>r.getWalletPortfolios(e.chain,e.address,{cursor:n,limit:e.limit??100}),initialPageParam:void 0,getNextPageParam:n=>n.hasNext?n.endCursor:void 0,...t})}function xr(e){return ["walletTradeActivities",e.chain,e.address,e.before?.toString()??"",e.after?.toString()??"",e.beforeBlockHeight?`${e.beforeBlockHeight}`:"",e.afterBlockHeight?`${e.afterBlockHeight}`:"",e.type??"",e.poolAddress??""]}async function Cr(e,{chain:t,address:r,...n}){return await e.getWalletTradeActivities(t,r,n)}function Ds(e,t={}){let{client:r}=o();return reactQuery.useQuery({queryKey:xr(e),queryFn:async()=>Cr(r,e),...t})}function Hs(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeTokenStats(e.chain,e.address,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,e.address,r?.enabled]);}function Ns(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeTokenCandles(e.chain,e.address,e.resolution,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,e.address,e.resolution,r?.enabled]);}function Bs(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeTokenMarketData(e.chain,e.address,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,e.address,r?.enabled]);}function Ls(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeTokenTradeActivities(e.chain,e.address,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,e.address,r?.enabled]);}function Js(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeWalletPnl(e.chain,e.address,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,e.address,r?.enabled]);}function Zs(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeWalletPortfolios(e.chain,e.address,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,e.address,r?.enabled]);}function no(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeWalletPortfolioPnls(e.chain,e.address,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,e.address,r?.enabled]);}function ao(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeWalletTradeActivities(e.chain,e.address,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,e.address,r?.enabled]);}function fo(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeNewTokens(e.chain,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,r?.enabled]);}function ko(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeNewTokensBasic(e.chain,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,r?.enabled]);}function go(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeNewTokensMarketData(e.chain,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,r?.enabled]);}function xo(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeNewTokensStats(e.chain,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,r?.enabled]);}function wo(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeNewTokensData(e.chain,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,r?.enabled]);}function Ro(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeMigratedTokensData(e.chain,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,r?.enabled]);}function Fo(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeFinalStretchTokensData(e.chain,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,r?.enabled]);}function Ko(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeTrendingTokensData(e.chain,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,r?.enabled]);}function Vo(e,t,r){let{subscribeClient:n}=o(),s=react.useRef(t);s.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let i=n.subscribeStockTokensData(e.chain,l=>s.current(l));return ()=>i.unsubscribe()},[n,e.chain,r?.enabled]);}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 H(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 g(e){switch(e){case "asc":return "ASC";case "desc":return "DESC"}}function E(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 y(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(t=>["gt","gte","lt","lte","between"].indexOf(t.operator)>=0).map(t=>{let r={field:y(t.field)};return ["gt","gte","between"].indexOf(t.operator)>=0&&(r.min=typeof t.value=="number"?new utils.SafeBigNumber(t.value).toString():t.value),["lt","lte","between"].indexOf(t.operator)>=0&&(r.max=typeof t.value=="number"?new utils.SafeBigNumber(t.value).toString():t.value),r})}function W(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 at(e){return {address:e.address,share:e.share,isVerified:e.isVerified}}function c(e){return {chain:W(e.chain),name:e.name,symbol:e.symbol,address:e.address,decimals:e.decimals,image:e.imageUrl,description:e.description,creators:e.tokenCreators?.map(at),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?O(e.stats):void 0,marketData:e.marketData?F(e.marketData):void 0,liquidities:e.liquidity?.map(lt),createdAt:e.tokenCreatedAt?new Date(e.tokenCreatedAt):void 0}}function O(e){return {"1m":m(e,"1m"),"5m":m(e,"5m"),"15m":m(e,"15m"),"30m":m(e,"30m"),"1h":m(e,"1h"),"4h":m(e,"4h"),"24h":m(e,"24h")}}function k(e){return e===void 0?void 0:parseInt(e)}function m(e,t){let r=e.periods?.[t];return r?{buys:k(r.buys),sells:k(r.sells),trades:k(r.trades),buyers:k(r.buyers),sellers:k(r.sellers),traders:k(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 lt(e){return {image:e.image,poolAddress:e.poolAddress,programAddress:e.programAddress,protocolFamily:e.protocolFamily,tvl:e.tvlInSol,tvlInUsd:e.tvlInUsd}}function F(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 _(e){return {open:e.open,close:e.close,high:e.high,low:e.low,volume:e.volume,resolution:V(e.resolution),timestamp:new Date(e.time)}}function V(e){return e==="1d"?"24h":e}function L(e){return {hasTransferFee:e.hasTransferFee,isTransferFeeUpgradable:e.isTransferFeeUpgradable,isTransferable:e.isTransferable,isFreezable:e.isFreezable,isClosable:e.isClosable}}function G(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 z(e){return {signedTx:e.serializedTx}}function $(e){return {startCursor:e.startCursor,endCursor:e.endCursor,hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(t=>({address:t.walletAddress,amount:t.amount,amountInUsd:t.amountInUsd,ratio:t.percentage}))}}function J(e){return {startCursor:e.startCursor,endCursor:e.endCursor,hasPrev:e.hasPrev,hasNext:e.hasNext,total:e.total,data:e.data.map(c),extra:e.countsByProtocols}}function j(e){return {serializedTx:e.serializedTx,plans:[],extra:e.routeInfo}}function X(e){return {txHash:e.signature,extra:{jobId:e.jobId,elapsedTime:e.elapsedTime}}}function Y(e,t){let r=(t.data??[]).map(n=>({chain:W(n.chain),address:n.tokenAddress,name:n.name,symbol:n.symbol,image:n.logoUri,priceInUsd:n.priceInUsd,priceInNative:n.priceInNative,amount:n.amount,amountInUsd:n.valueInUsd,amountInNative:n.valueInNative,decimals:n.decimals}));return {chain:r[0]?.chain??e,address:t.walletAddress,balanceInUsd:t.totalValueInUsd,balanceInNative:t.totalValueInNative,startCursor:t.startCursor,endCursor:t.endCursor,hasPrev:t.hasPrev,hasNext:t.hasNext,portfolios:r}}function Z(e,t,r){return {chain:e,address:t,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:r.winRate,buyAmountInUsd:r.buyAmountInUsd,sellAmountInUsd:r.sellAmountInUsd,totalCostInUsd:r.totalCostInUsd,realizedProfitInUsd:r.realizedProfitInUsd,realizedProfitRatio:r.realizedProfitRatio,unrealizedProfitInUsd:r.unrealizedProfitInUsd,unrealizedProfitRatio:r.unrealizedProfitRatio,totalProfitInUsd:r.totalProfitInUsd,totalProfitRatio:r.totalProfitRatio,avgProfitPerTradeInUsd:r.avgProfitPerTradeInUsd}}function ee(e,t,r){let n=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}));return {chain:e,address:t,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:r.summary.winRate,buyAmountInUsd:r.summary.buyAmountInUsd,sellAmountInUsd:r.summary.sellAmountInUsd,totalCostInUsd:r.summary.totalCostInUsd,realizedProfitInUsd:r.summary.realizedProfitInUsd,realizedProfitRatio:r.summary.realizedProfitRatio,unrealizedProfitInUsd:r.summary.unrealizedProfitInUsd,totalProfitInUsd:r.summary.totalProfitInUsd,startCursor:r.startCursor,endCursor:r.endCursor,hasPrev:r.hasPrev,hasNext:r.hasNext,portfolios:n}}function N(e){return {startCursor:e.startCursor,endCursor:e.endCursor,hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(dt)}}function dt(e){let t=e.type.toLowerCase()==="buy";return {chain:W(e.chain),walletAddress:e.accountOwnerAddress,txHash:e.transactionSignature,type:t?"buy":"sell",from:{address:t?e.sideTokenAddress:e.tokenAddress,symbol:t?e.sideTokenSymbol:e.tokenSymbol,name:t?e.sideTokenName:e.tokenName,image:t?e.sideTokenImageUrl:e.tokenImageUrl,amount:t?e.sideTokenAmount:e.tokenAmount,amountInUsd:t?e.sideTokenAmountInUsd:e.tokenAmountInUsd,priceInUsd:t?e.sideTokenPriceInUsd:e.tokenPriceInUsd},to:{address:t?e.tokenAddress:e.sideTokenAddress,symbol:t?e.tokenSymbol:e.sideTokenSymbol,name:t?e.tokenName:e.sideTokenName,image:t?e.tokenImageUrl:e.sideTokenImageUrl,amount:t?e.tokenAmount:e.sideTokenAmount,amountInUsd:t?e.tokenAmountInUsd:e.sideTokenAmountInUsd,priceInUsd:t?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 re(e,t){return {chain:e,address:t.tokenAddress,name:t.name,symbol:t.symbol,decimals:t.decimals,createdAt:new Date(t.createdAtMs),launchedFrom:t.launchFrom?{programAddress:t.launchFrom.programAddress,protocolFamily:t.launchFrom.protocolFamily}:void 0}}function te(e,t){return {chain:e,address:t.tokenAddress,name:t.name,symbol:t.symbol,decimals:t.decimals,image:t.imageUrl,description:t.description,socialMedias:t.socialMedia?{...t.socialMedia}:void 0,createdAt:t.createdAtMs?new Date(t.createdAtMs):new Date(0),launchedFrom:t.launchFrom?{programAddress:t.launchFrom.programAddress,protocolFamily:t.launchFrom.protocolFamily}:void 0,migratedTo:t.migratedTo?{programAddress:t.migratedTo.programAddress,protocolFamily:t.migratedTo.protocolFamily}:void 0}}function ne(e){return {open:e.open,close:e.close,high:e.high,low:e.low,volume:e.volume,resolution:V(e.resolution),timestamp:new Date(e.time)}}function U(e){let t=["1m","5m","15m","30m","1h","4h","24h"],r=e,n={};for(let s of t){let i=r[`buys${s}`],l=r[`sells${s}`],D=r[`buyers${s}`],Q=r[`sellers${s}`],v=r[`buyVolumeInUsd${s}`],R=r[`sellVolumeInUsd${s}`],M=r[`trades${s}`],K=r[`price${s}`],S=r[`openInUsd${s}`],C=r[`closeInUsd${s}`];if(!(i!==void 0||l!==void 0||M!==void 0||K!==void 0))continue;let oe=M??(i!==void 0&&l!==void 0?i+l:void 0),ie=D!==void 0&&Q!==void 0?D+Q:void 0,ae=v!==void 0&&R!==void 0?new utils.SafeBigNumber(v).plus(R).toString():void 0,le=S&&C&&new utils.SafeBigNumber(S).gt(0)?new utils.SafeBigNumber(C).minus(S).div(S).toString():void 0;n[s]={buys:i,sells:l,trades:oe,buyers:D,sellers:Q,traders:ie,buyVolumesInUsd:v,sellVolumesInUsd:R,volumesInUsd:ae,openPriceInUsd:S,closePriceInUsd:C,priceInUsd:K??C,priceChange:le};}return n}function w(e){return {priceInUsd:e.price}}function A(e){return {address:e.address,stats:U(e),marketData:w(e)}}function q(e,t){let r=t.kind.toLowerCase()==="buy";return {chain:e,walletAddress:r?t.buyWalletAddress:t.sellWalletAddress,txHash:t.txHash,type:r?"buy":"sell",from:{address:t.sellTokenAddress,symbol:t.sellTokenSymbol,name:t.sellTokenName,amount:t.sellAmount,amountInUsd:t.sellAmountInUsd},to:{address:t.buyTokenAddress,symbol:t.buyTokenSymbol,name:t.buyTokenName,amount:t.buyAmount,amountInUsd:t.buyAmountInUsd},status:"success",time:new Date(t.timestamp)}}var se=class{constructor(t,r){this.accessToken=t;this.options=r;this._client=new sdk.ChainStreamClient(this.accessToken,this.options);}_client;async getToken(t,r){let n=await this._client.token.getToken(d(t),r);return c(n)}async getTokens(t,r){return (await this._client.token.getTokens(d(t),{tokenAddresses:r.join(",")})).map(c)}async getTokenCandles(t,r,n,s){return (await this._client.token.getCandles(d(t),r,{resolution:H(n),from:s?.after?.getTime(),to:s?.before?.getTime(),limit:s?.limit})).map(_)}async getTokenSecurity(t,r){let n=await this._client.token.getSecurity(d(t),r);return L(n)}async getTokenStats(t,r){let n=await this._client.token.getStats(d(t),r);return O(n)}async getTokenHolders(t,r,n){let s=await this._client.token.getHolders(d(t),r,{cursor:n?.cursor,limit:n?.limit,direction:n?.direction});return $(s)}async getTokenMarketData(t,r){let n=await this._client.token.getMarketData(d(t),r);return F(n)}async getNewTokens(t,r){return (await this._client.ranking.getNewTokens(d(t),{sortBy:r?.sortBy?y(r.sortBy):void 0,sortDirection:r?.sortDirection?g(r.sortDirection):void 0,rangeFilters:r?.filters?I(r.filters):void 0,launchpadPlatform:r?.filters?x(r.filters):void 0,searchKeywords:r?.keywords,excludeKeywords:r?.excludeKeywords})).map(c)}async getFinalStretchTokens(t,r){return (await this._client.ranking.getFinalStretchTokens(d(t),{sortBy:r?.sortBy?y(r.sortBy):void 0,sortDirection:r?.sortDirection?g(r.sortDirection):void 0,rangeFilters:r?.filters?I(r.filters):void 0,launchpadPlatform:r?.filters?x(r.filters):void 0,searchKeywords:r?.keywords,excludeKeywords:r?.excludeKeywords})).map(c)}async getMigratedTokens(t,r){return (await this._client.ranking.getMigratedTokens(d(t),{sortBy:r?.sortBy?y(r.sortBy):void 0,sortDirection:r?.sortDirection?g(r.sortDirection):void 0,rangeFilters:r?.filters?I(r.filters):void 0,launchpadPlatform:r?.filters?x(r.filters):void 0,searchKeywords:r?.keywords,excludeKeywords:r?.excludeKeywords})).map(c)}async getTrendingTokens(t,r,n){return (await this._client.ranking.getHotTokens(d(t),r,{sortBy:n?.sortBy?y(n.sortBy):void 0,sortDirection:n?.sortDirection?g(n.sortDirection):void 0,rangeFilters:n?.filters?I(n.filters):void 0,launchpadPlatform:n?.filters?x(n.filters):void 0,searchKeywords:n?.keywords,excludeKeywords:n?.excludeKeywords})).map(c)}async getStockTokens(t,r){return (await this._client.ranking.getStocksTokens(d(t),{sortBy:r?.sortBy?y(r.sortBy):void 0,sortDirection:r?.sortDirection?g(r.sortDirection):void 0,rangeFilters:r?.filters?I(r.filters):void 0,launchpadPlatform:r?.filters?x(r.filters):void 0,searchKeywords:r?.keywords,excludeKeywords:r?.excludeKeywords})).map(c)}async searchTokens(t){let r=await this._client.token.search({chains:t?.chains?.map(d),q:t?.keyword,limit:t?.limit,cursor:t?.cursor,sortBy:t?.sortBy?E(t.sortBy):void 0,sort:t?.sortDirection});return J(r)}async swapRoute(t){let r=await this._client.dex.route(d(t.chain),G(t));return j(r)}async sendTx(t){let r=await this._client.transaction.send(d(t.chain),z(t));return X(r)}async checkTxSuccess(t,r,n){let{result:s}=await this._client.waitForJob(r,n);return s.success}async getWalletPortfolios(t,r,n){let s=await this._client.wallet.getNetWorth(d(t),r,{cursor:n?.cursor,limit:n?.limit??100});return Y(t,s)}async getWalletPnl(t,r,n){let s=await this._client.wallet.getPnl(d(t),r,n?{resolution:n}:void 0);return Z(t,r,s)}async getWalletPortfolioPnls(t,r,n){let s=await this._client.wallet.getPnlDetails(d(t),r,{cursor:n?.cursor,limit:n?.limit??100});return ee(t,r,s)}async getWalletTradeActivities(t,r,n){let s=await this._client.trade.getTrades(d(t),{walletAddress:r,cursor:n?.cursor,limit:n?.limit,direction:n?.direction,beforeTimestamp:n?.before?.getTime(),afterTimestamp:n?.after?.getTime(),beforeBlockHeight:n?.beforeBlockHeight,afterBlockHeight:n?.afterBlockHeight,poolAddress:n?.poolAddress,type:n?.type?n.type.toUpperCase():void 0});return N(s)}async getTokenTradeActivities(t,r,n){let s=await this._client.trade.getTrades(d(t),{tokenAddress:r,cursor:n?.cursor,limit:n?.limit,direction:n?.direction,beforeTimestamp:n?.before?.getTime(),afterTimestamp:n?.after?.getTime(),beforeBlockHeight:n?.beforeBlockHeight,afterBlockHeight:n?.afterBlockHeight,poolAddress:n?.poolAddress,type:n?.type?n.type.toUpperCase():void 0});return N(s)}async getPresignedUploadUrl(){return await this._client.ipfs.presign()}subscribeTokenBasic(t,r,n){throw new Error("subscribeTokenBasic is not supported by ChainStream backend. Token basic info (name, symbol, image) rarely changes in real-time.")}subscribeTokenMarketData(t,r,n){return this._client.stream.subscribeTokenStats({chain:d(t),tokenAddress:r,callback:s=>n([w(s)])})}subscribeTokenStats(t,r,n){return this._client.stream.subscribeTokenStats({chain:d(t),tokenAddress:r,callback:s=>n([U(s)])})}subscribeTokenCandles(t,r,n,s){return this._client.stream.subscribeTokenCandles({chain:d(t),tokenAddress:r,resolution:H(n),callback:i=>s([ne(i)])})}subscribeWalletPnl(t,r,n){return this._client.stream.subscribeWalletPnlList({chain:d(t),walletAddress:r,callback:s=>n(s.map(i=>({chain:t,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(t,r,n){return this._client.stream.subscribeWalletBalance({chain:d(t),walletAddress:r,callback:s=>n(s.map(i=>({chain:t,walletAddress:i.walletAddress,tokenAddress:i.tokenAddress,priceInUsd:i.tokenPriceInUsd,amount:i.balance})))})}subscribeWalletPortfolioPnls(t,r,n){return this._client.stream.subscribeWalletPnl({chain:d(t),walletAddress:r,callback:s=>n([{chain:t,walletAddress:s.walletAddress,tokenAddress:s.tokenAddress,openTime:s.opentime?new Date(s.opentime):void 0,closeTime:s.closetime?new Date(s.closetime):void 0,buys:s.buyCount,buyVolumes:s.buyAmount,buyVolumesInUsd:s.buyAmountInUsd,buyAvgPriceInUsd:s.averageBuyPriceInUsd,sells:s.sellCount,sellVolumes:s.sellAmount,sellVolumesInUsd:s.sellAmountInUsd,sellAvgPriceInUsd:s.averageSellPriceInUsd,realizedProfitInUsd:s.realizedProfitInUsd,realizedProfitRatio:s.realizedProfitRatio,unrealizedProfitInUsd:s.unrealizedProfitInUsd,unrealizedProfitRatio:s.unrealizedProfitRatio,totalProfitInUsd:s.totalRealizedProfitInUsd,totalProfitRatio:s.totalRealizedProfitRatio}])})}subscribeWalletTradeActivities(t,r,n){return this._client.stream.subscribeWalletTrade({chain:d(t),walletAddress:r,callback:s=>n([q(t,s)])})}subscribeTokenTradeActivities(t,r,n){return this._client.stream.subscribeTokenTrade({chain:d(t),tokenAddress:r,callback:s=>n([q(t,s)])})}subscribeNewTokens(t,r){return this._client.stream.subscribeNewToken({chain:d(t),callback:n=>r([re(t,n)])})}subscribeNewTokensBasic(t,r){return this._client.stream.subscribeNewTokensMetadata({chain:d(t),callback:n=>r(n.map(s=>te(t,s)))})}subscribeNewTokensMarketData(t,r){return this._client.stream.subscribeRankingTokensStats({chain:d(t),channelType:sdk.WsChannelType.New,callback:n=>r(n.map(w))})}subscribeNewTokensStats(t,r){return this._client.stream.subscribeRankingTokensStats({chain:d(t),channelType:sdk.WsChannelType.New,callback:n=>r(n.map(U))})}subscribeNewTokensData(t,r){return this._client.stream.subscribeRankingTokensStats({chain:d(t),channelType:sdk.WsChannelType.New,callback:n=>r(n.map(A))})}subscribeMigratedTokensData(t,r){return this._client.stream.subscribeRankingTokensStats({chain:d(t),channelType:sdk.WsChannelType.COMPLETED,callback:n=>r(n.map(A))})}subscribeFinalStretchTokensData(t,r){return this._client.stream.subscribeRankingTokensStats({chain:d(t),channelType:sdk.WsChannelType.New,callback:n=>r(n.map(A))})}subscribeTrendingTokensData(t,r){return this._client.stream.subscribeRankingTokensStats({chain:d(t),channelType:sdk.WsChannelType.HOT,callback:n=>r(n.map(A))})}subscribeStockTokensData(t,r){return this._client.stream.subscribeRankingTokensStats({chain:d(t),channelType:sdk.WsChannelType.US_STOCKS,callback:n=>r(n.map(A))})}};function x(e){let t=e.find(r=>r.field==="launchedFromProtocolFamily");if(t){if(t.operator==="eq")return [t.value];if(t.operator==="in")return t.value;console.warn("invalid launchedFromProtocolFamily filter",t);}}function Ya({client:e,subscribeClient:t,children:r}){return jsxRuntime.jsx(p.Provider,{value:{client:e,subscribeClient:t},children:r})}exports.Client=se;exports.DexClientContext=p;exports.DexClientProvider=Ya;exports.fetchFinalStretchTokens=ye;exports.fetchMigratedTokens=be;exports.fetchNewTokens=ge;exports.fetchPresignedUploadUrl=Ae;exports.fetchSearchTokens=Ce;exports.fetchStockTokens=Qe;exports.fetchSwapRoute=He;exports.fetchToken=Le;exports.fetchTokenCandles=Fe;exports.fetchTokenHolders=Me;exports.fetchTokenMarketData=Ee;exports.fetchTokenSecurity=$e;exports.fetchTokenStats=er;exports.fetchTokenTradeActivities=nr;exports.fetchTokens=Xe;exports.fetchTrendingTokens=ir;exports.fetchTxSuccess=dr;exports.fetchWalletPnl=fr;exports.fetchWalletPortfolioPnls=Tr;exports.fetchWalletPortfolios=gr;exports.fetchWalletTradeActivities=Cr;exports.finalStretchTokensQueryKey=me;exports.migratedTokensQueryKey=ke;exports.newTokensQueryKey=he;exports.searchTokensQueryKey=xe;exports.sendTx=Ue;exports.stockTokensQueryKey=De;exports.swapRouteQueryKey=Re;exports.tokenCandlesQueryKey=Oe;exports.tokenHoldersQueryKey=qe;exports.tokenMarketDataQueryKey=Be;exports.tokenQueryKey=Ve;exports.tokenSecurityQueryKey=ze;exports.tokenStatsQueryKey=Ze;exports.tokenTradeActivitiesQueryKey=tr;exports.tokensQueryKey=je;exports.trendingTokensQueryKey=or;exports.txSuccessQueryKey=lr;exports.useDexClient=o;exports.useFinalStretchTokensDataSubscription=Fo;exports.useFinalStretchTokensQuery=St;exports.useMigratedTokensDataSubscription=Ro;exports.useMigratedTokensQuery=wt;exports.useNewTokensBasicSubscription=ko;exports.useNewTokensDataSubscription=wo;exports.useNewTokensMarketDataSubscription=go;exports.useNewTokensQuery=Ht;exports.useNewTokensStatsSubscription=xo;exports.useNewTokensSubscription=fo;exports.usePresignedUploadUrlQuery=qt;exports.useSearchTokensQuery=_t;exports.useSendTxMutation=$t;exports.useStockTokensDataSubscription=Vo;exports.useStockTokensQuery=Zt;exports.useSwapRouteQuery=sn;exports.useTokenCandlesQuery=un;exports.useTokenCandlesSubscription=Ns;exports.useTokenHoldersQuery=Tn;exports.useTokenMarketDataQuery=gn;exports.useTokenMarketDataSubscription=Bs;exports.useTokenQuery=Cn;exports.useTokenSecurityQuery=Qn;exports.useTokenStatsQuery=Kn;exports.useTokenStatsSubscription=Hs;exports.useTokenTradeActivitiesQuery=Ln;exports.useTokenTradeActivitiesSubscription=Ls;exports.useTokensQuery=On;exports.useTrendingTokensDataSubscription=Ko;exports.useTrendingTokensQuery=jn;exports.useTxSuccessQuery=rs;exports.useWalletPnlQuery=is;exports.useWalletPnlSubscription=Js;exports.useWalletPortfolioPnlsInfiniteQuery=Ts;exports.useWalletPortfolioPnlsQuery=cs;exports.useWalletPortfolioPnlsSubscription=no;exports.useWalletPortfoliosInfiniteQuery=xs;exports.useWalletPortfoliosQuery=gs;exports.useWalletPortfoliosSubscription=Zs;exports.useWalletTradeActivitiesQuery=Ds;exports.useWalletTradeActivitiesSubscription=ao;exports.version=de;exports.walletPnlQueryKey=cr;exports.walletPortfolioPnlsInfiniteQueryKey=br;exports.walletPortfolioPnlsQueryKey=yr;exports.walletPortfoliosInfiniteQueryKey=Ar;exports.walletPortfoliosQueryKey=hr;exports.walletTradeActivitiesQueryKey=xr;//# sourceMappingURL=index.js.map
1
+ 'use strict';var react=require('react'),reactQuery=require('@tanstack/react-query'),sdk=require('@chainstream-io/sdk'),types=require('@liberfi.io/types'),utils=require('@liberfi.io/utils'),jsxRuntime=require('react/jsx-runtime');typeof window<"u"&&(window.__LIBERFI_VERSION__=window.__LIBERFI_VERSION__||{},window.__LIBERFI_VERSION__["@liberfi.io/client"]="0.1.33");var ke="0.1.33";var U=react.createContext({});function s(){let e=react.useContext(U);if(!e)throw new Error("useDexClient must be used within an DexClientProvider");return e}function ge(e){return ["finalStretchTokens",e.chain,e.sortBy??"",e.sortDirection??"",JSON.stringify((e.keywords??[]).sort()),JSON.stringify((e.excludeKeywords??[]).sort()),JSON.stringify(e.filters??[])]}async function Ie(e,{chain:t,...r}){return await e.getFinalStretchTokens(t,r)}function Wt(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:ge(e),queryFn:async()=>Ie(r,e),...t})}function xe(e){return ["migratedTokens",e.chain,e.sortBy??"",e.sortDirection??"",JSON.stringify((e.keywords??[]).sort()),JSON.stringify((e.excludeKeywords??[]).sort()),JSON.stringify(e.filters??[])]}async function Ce(e,{chain:t,...r}){return await e.getMigratedTokens(t,r)}function Ht(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:xe(e),queryFn:async()=>Ce(r,e),...t})}function Ue(e){return ["newTokens",e.chain,e.sortBy??"",e.sortDirection??"",JSON.stringify((e.keywords??[]).sort()),JSON.stringify((e.excludeKeywords??[]).sort()),JSON.stringify(e.filters??[])]}async function pe(e,{chain:t,...r}){return await e.getNewTokens(t,r)}function Bt(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:Ue(e),queryFn:async()=>pe(r,e),...t})}async function We(e){return await e.getPresignedUploadUrl()}function Lt(e={}){let{client:t}=s();return reactQuery.useQuery({queryKey:["presignedUploadUrl"],queryFn:async()=>We(t),staleTime:0,...e})}function De(e){return ["searchTokens",e.cursor??"",e.limit?`${e.limit}`:"",e.direction??"",JSON.stringify((e.chains??[]).sort()),e.keyword??"",JSON.stringify(e.filters??[]),e.sortBy??"",e.sortDirection??""]}async function ve(e,t){return await e.searchTokens(t)}function Jt(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:De(e),queryFn:async()=>ve(r,e),...t})}async function He(e,t){return await e.sendTx(t)}function eo(e={}){let{client:t}=s();return reactQuery.useMutation({mutationFn:async r=>He(t,r),...e})}function Fe(e){return ["stockTokens",e.chain,e.sortBy??"",e.sortDirection??"",JSON.stringify((e.keywords??[]).sort()),JSON.stringify((e.excludeKeywords??[]).sort()),JSON.stringify(e.filters??[])]}async function qe(e,{chain:t,...r}){return await e.getStockTokens(t,r)}function so(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:Fe(e),queryFn:async()=>qe(r,e),...t})}function Be(e){return ["swapRoute",e.chain,e.userAddress,e.input,e.output,e.mode,e.amount,e.slippage?`${e.slippage}`:"",e.priorityFee??"",e.tipFee??"",e.isAntiMev!==void 0?`${e.isAntiMev}`:""]}async function Ke(e,t){return await e.swapRoute(t)}function co(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:Be(e),queryFn:async()=>Ke(r,e),...t})}function _e(e){return ["tokenCandles",e.chain,e.address,e.resolution,e.after?.toString()??"",e.before?.toString()??"",e.limit?`${e.limit}`:""]}async function Ee(e,{chain:t,address:r,resolution:o,...n}){return await e.getTokenCandles(t,r,o,n)}function ko(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:_e(e),queryFn:async()=>Ee(r,e),...t})}function Ve(e){return ["tokenHolders",e.chain,e.address,e.cursor??"",e.limit?`${e.limit}`:"",e.direction??""]}async function ze(e,{chain:t,address:r,...o}){return await e.getTokenHolders(t,r,o)}function Io(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:Ve(e),queryFn:async()=>ze(r,e),...t})}function $e(e){return ["tokenMarketData",e.chain,e.address]}async function Je(e,{chain:t,address:r}){return await e.getTokenMarketData(t,r)}function Uo(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:$e(e),queryFn:async()=>Je(r,e),...t})}function Xe(e){return ["token",e.chain,e.address]}async function Ye(e,{chain:t,address:r}){return await e.getToken(t,r)}function Do(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:Xe(e),queryFn:async()=>Ye(r,e),...t})}function er(e){return ["tokenSecurity",e.chain,e.address]}async function rr(e,{chain:t,address:r}){return await e.getTokenSecurity(t,r)}function Fo(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:er(e),queryFn:async()=>rr(r,e),...t})}function or(e){return ["tokens",e.chain,e.addresses.sort().join(",")]}async function nr(e,{chain:t,addresses:r}){return await e.getTokens(t,r)}function Mo(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:or(e),queryFn:async()=>nr(r,e),...t})}function ir(e){return ["tokenStats",e.chain,e.address]}async function ar(e,{chain:t,address:r}){return await e.getTokenStats(t,r)}function zo(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:ir(e),queryFn:async()=>ar(r,e),...t})}function dr(e){return ["tokenTradeActivities",e.chain,e.address,e.before?.toString()??"",e.after?.toString()??"",e.beforeBlockHeight?`${e.beforeBlockHeight}`:"",e.afterBlockHeight?`${e.afterBlockHeight}`:"",e.type??"",e.poolAddress??""]}async function ur(e,{chain:t,address:r,...o}){return await e.getTokenTradeActivities(t,r,o)}function Xo(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:dr(e),queryFn:async()=>ur(r,e),...t})}function fr(e){return ["trendingTokens",e.chain,e.resolution,e.sortBy??"",e.sortDirection??"",JSON.stringify((e.keywords??[]).sort()),JSON.stringify((e.excludeKeywords??[]).sort()),JSON.stringify(e.filters??[])]}async function yr(e,{chain:t,resolution:r,...o}){return await e.getTrendingTokens(t,r,o)}function tn(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:fr(e),queryFn:async()=>yr(r,e),...t})}function Tr(e){return ["txSuccess",e.chain,e.txHash,e.timeout?`${e.timeout}`:""]}async function kr(e,{chain:t,txHash:r,timeout:o}){return await e.checkTxSuccess(t,r,o)}function ln(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:Tr(e),queryFn:async()=>kr(r,e),...t})}function br(e){return ["walletPnl",e.chain,e.address,e.resolution??"all"]}async function hr(e,{chain:t,address:r,resolution:o}){return await e.getWalletPnl(t,r,o)}function yn(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:br(e),queryFn:async()=>hr(r,e),...t})}function Ir(e){return ["walletPortfolioPnls",e.chain,e.address,e.cursor??"",String(e.limit??"")]}async function Ar(e,{chain:t,address:r,cursor:o,limit:n}){return await e.getWalletPortfolioPnls(t,r,{cursor:o,limit:n})}function bn(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:Ir(e),queryFn:async()=>Ar(r,e),...t})}function Cr(e){return ["walletPortfolioPnls","infinite",e.chain,e.address,String(e.limit??"")]}function An(e,t={}){let{client:r}=s();return reactQuery.useInfiniteQuery({queryKey:Cr(e),queryFn:async({pageParam:o})=>r.getWalletPortfolioPnls(e.chain,e.address,{cursor:o,limit:e.limit??100}),initialPageParam:void 0,getNextPageParam:o=>o.hasNext?o.endCursor:void 0,...t})}function Ur(e){return ["walletPortfolios",e.chain,e.address,e.cursor??"",String(e.limit??"")]}async function pr(e,{chain:t,address:r,cursor:o,limit:n}){return await e.getWalletPortfolios(t,r,{cursor:o,limit:n})}function pn(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:Ur(e),queryFn:async()=>pr(r,e),...t})}function Wr(e){return ["walletPortfoliosByTokens",e.chain,e.address,...e.tokenAddresses.slice().sort()]}async function Qr(e,{chain:t,address:r,tokenAddresses:o}){return await e.getWalletPortfoliosByTokens(t,r,o)}function vn(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:Wr(e),queryFn:async()=>Qr(r,e),...t})}function vr(e){return ["walletPortfolios","infinite",e.chain,e.address,String(e.limit??"")]}function Fn(e,t={}){let{client:r}=s();return reactQuery.useInfiniteQuery({queryKey:vr(e),queryFn:async({pageParam:o})=>r.getWalletPortfolios(e.chain,e.address,{cursor:o,limit:e.limit??100}),initialPageParam:void 0,getNextPageParam:o=>o.hasNext?o.endCursor:void 0,...t})}function Hr(e){return ["walletPortfolioPnlsByTokens",e.chain,e.address,...e.tokenAddresses.slice().sort()]}async function Or(e,{chain:t,address:r,tokenAddresses:o}){return await e.getWalletPortfolioPnlsByTokens(t,r,o)}function Mn(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:Hr(e),queryFn:async()=>Or(r,e),...t})}function qr(e){return ["walletTradeActivities",e.chain,e.address,e.before?.toString()??"",e.after?.toString()??"",e.beforeBlockHeight?`${e.beforeBlockHeight}`:"",e.afterBlockHeight?`${e.afterBlockHeight}`:"",e.type??"",e.poolAddress??""]}async function Nr(e,{chain:t,address:r,...o}){return await e.getWalletTradeActivities(t,r,o)}function zn(e,t={}){let{client:r}=s();return reactQuery.useQuery({queryKey:qr(e),queryFn:async()=>Nr(r,e),...t})}function jn(e,t,r){let{subscribeClient:o}=s(),n=react.useRef(t);n.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let a=o.subscribeToken(e.chain,e.address,i=>n.current(i));return ()=>a.unsubscribe()},[o,e.chain,e.address,r?.enabled]);}function es(e,t,r){let{subscribeClient:o}=s(),n=react.useRef(t);n.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let a=o.subscribeTokenCandles(e.chain,e.address,e.resolution,i=>n.current(i));return ()=>a.unsubscribe()},[o,e.chain,e.address,e.resolution,r?.enabled]);}function ns(e,t,r){let{subscribeClient:o}=s(),n=react.useRef(t);n.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let a=o.subscribeTokenTradeActivities(e.chain,e.address,i=>n.current(i));return ()=>a.unsubscribe()},[o,e.chain,e.address,r?.enabled]);}function ls(e,t,r){let{subscribeClient:o}=s(),n=react.useRef(t);n.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let a=o.subscribeWalletPnl(e.chain,e.address,i=>n.current(i));return ()=>a.unsubscribe()},[o,e.chain,e.address,r?.enabled]);}function fs(e,t,r){let{subscribeClient:o}=s(),n=react.useRef(t);n.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let a=o.subscribeWalletPortfolios(e.chain,e.address,i=>n.current(i));return ()=>a.unsubscribe()},[o,e.chain,e.address,r?.enabled]);}function ks(e,t,r){let{subscribeClient:o}=s(),n=react.useRef(t);n.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let a=o.subscribeWalletPortfolioPnls(e.chain,e.address,i=>n.current(i));return ()=>a.unsubscribe()},[o,e.chain,e.address,r?.enabled]);}function gs(e,t,r){let{subscribeClient:o}=s(),n=react.useRef(t);n.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let a=o.subscribeWalletTradeActivities(e.chain,e.address,i=>n.current(i));return ()=>a.unsubscribe()},[o,e.chain,e.address,r?.enabled]);}function Cs(e,t,r){let{subscribeClient:o}=s(),n=react.useRef(t);n.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let a=o.subscribeNewTokens(e.chain,i=>n.current(i));return ()=>a.unsubscribe()},[o,e.chain,r?.enabled]);}function ws(e,t,r){let{subscribeClient:o}=s(),n=react.useRef(t);n.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let a=o.subscribeTrendingTokens(e.chain,i=>n.current(i));return ()=>a.unsubscribe()},[o,e.chain,r?.enabled]);}function vs(e,t,r){let{subscribeClient:o}=s(),n=react.useRef(t);n.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let a=o.subscribeMigratedTokens(e.chain,i=>n.current(i));return ()=>a.unsubscribe()},[o,e.chain,r?.enabled]);}function Fs(e,t,r){let{subscribeClient:o}=s(),n=react.useRef(t);n.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let a=o.subscribeFinalStretchTokens(e.chain,i=>n.current(i));return ()=>a.unsubscribe()},[o,e.chain,r?.enabled]);}function Ks(e,t,r){let{subscribeClient:o}=s(),n=react.useRef(t);n.current=t,react.useEffect(()=>{if(r?.enabled===false)return;let a=o.subscribeStockTokens(e.chain,i=>n.current(i));return ()=>a.unsubscribe()},[o,e.chain,r?.enabled]);}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 D(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 g(e){switch(e){case "asc":return "ASC";case "desc":return "DESC"}}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 k(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(t=>["gt","gte","lt","lte","between"].indexOf(t.operator)>=0).map(t=>{let r={field:k(t.field)};return ["gt","gte","between"].indexOf(t.operator)>=0&&(r.min=typeof t.value=="number"?new utils.SafeBigNumber(t.value).toString():t.value),["lt","lte","between"].indexOf(t.operator)>=0&&(r.max=typeof t.value=="number"?new utils.SafeBigNumber(t.value).toString():t.value),r})}function p(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 ut(e){return {address:e.address,share:e.share,isVerified:e.isVerified}}function f(e){return {chain:p(e.chain),name:e.name,symbol:e.symbol,address:e.address,decimals:e.decimals,image:e.imageUrl,description:e.description,creators:e.tokenCreators?.map(ut),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?v(e.stats):void 0,marketData:e.marketData?R(e.marketData):void 0,liquidities:e.liquidity?.map(ct),createdAt:e.tokenCreatedAt?new Date(e.tokenCreatedAt):void 0}}function v(e){return {"1m":T(e,"1m"),"5m":T(e,"5m"),"15m":T(e,"15m"),"30m":T(e,"30m"),"1h":T(e,"1h"),"4h":T(e,"4h"),"24h":T(e,"24h")}}function P(e){return e===void 0?void 0:parseInt(e)}function T(e,t){let r=e.periods?.[t];return r?{buys:P(r.buys),sells:P(r.sells),trades:P(r.trades),buyers:P(r.buyers),sellers:P(r.sellers),traders:P(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 ct(e){return {image:e.image,poolAddress:e.poolAddress,programAddress:e.programAddress,protocolFamily:e.protocolFamily,tvl:e.tvlInSol,tvlInUsd:e.tvlInUsd}}function R(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 z(e){return {open:e.open,close:e.close,high:e.high,low:e.low,volume:e.volume,resolution:G(e.resolution),timestamp:new Date(e.time)}}function G(e){return e==="1d"?"24h":e}function $(e){return {hasTransferFee:e.hasTransferFee,isTransferFeeUpgradable:e.isTransferFeeUpgradable,isTransferable:e.isTransferable,isFreezable:e.isFreezable,isClosable:e.isClosable}}function J(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 X(e){return {startCursor:e.startCursor,endCursor:e.endCursor,hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(t=>({address:t.walletAddress,amount:t.amount,amountInUsd:t.amountInUsd,ratio:t.percentage}))}}function Y(e){return {startCursor:e.startCursor,endCursor:e.endCursor,hasPrev:e.hasPrev,hasNext:e.hasNext,total:e.total,data:e.data.map(f),extra:e.countsByProtocols}}function Z(e){return {serializedTx:e.serializedTx,plans:[],extra:e.routeInfo}}function ee(e){return {txHash:e.signature,extra:{jobId:e.jobId,elapsedTime:e.elapsedTime}}}function re(e,t){let r=(t.data??[]).map(o=>({chain:p(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:r[0]?.chain??e,address:t.walletAddress,balanceInUsd:t.totalValueInUsd,balanceInNative:t.totalValueInNative,startCursor:t.startCursor,endCursor:t.endCursor,hasPrev:t.hasPrev,hasNext:t.hasNext,portfolios:r}}function te(e,t,r){return {chain:e,address:t,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:r.winRate,buyAmountInUsd:r.buyAmountInUsd,sellAmountInUsd:r.sellAmountInUsd,totalCostInUsd:r.totalCostInUsd,realizedProfitInUsd:r.realizedProfitInUsd,realizedProfitRatio:r.realizedProfitRatio,unrealizedProfitInUsd:r.unrealizedProfitInUsd,unrealizedProfitRatio:r.unrealizedProfitRatio,totalProfitInUsd:r.totalProfitInUsd,totalProfitRatio:r.totalProfitRatio,avgProfitPerTradeInUsd:r.avgProfitPerTradeInUsd}}function oe(e,t,r){let o=r.data.map(n=>({chain:e,address:n.tokenAddress,name:n.name,symbol:n.symbol,image:n.logoUri,amount:n.balance,amountInUsd:n.currentValue,priceInUsd:n.priceInUsd,decimals:n.decimals,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:t,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:r.summary.winRate,buyAmountInUsd:r.summary.buyAmountInUsd,sellAmountInUsd:r.summary.sellAmountInUsd,totalCostInUsd:r.summary.totalCostInUsd,realizedProfitInUsd:r.summary.realizedProfitInUsd,realizedProfitRatio:r.summary.realizedProfitRatio,unrealizedProfitInUsd:r.summary.unrealizedProfitInUsd,totalProfitInUsd:r.summary.totalProfitInUsd,startCursor:r.startCursor,endCursor:r.endCursor,hasPrev:r.hasPrev,hasNext:r.hasNext,portfolios:o}}function ne(e,t){return (t.data??[]).map(r=>({chain:p(r.chain),address:r.tokenAddress,name:r.name,symbol:r.symbol,image:r.logoUri,priceInUsd:r.priceInUsd,priceInNative:r.priceInNative,amount:r.amount,amountInUsd:r.valueInUsd,amountInNative:r.valueInNative,decimals:r.decimals}))}function se(e,t){return t.data.map(r=>({chain:e,address:r.tokenAddress,name:r.name,symbol:r.symbol,image:r.logoUri,amount:r.balance,amountInUsd:r.currentValue,priceInUsd:r.priceInUsd,decimals:r.decimals,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 H(e){return {startCursor:e.startCursor,endCursor:e.endCursor,hasPrev:e.hasPrev,hasNext:e.hasNext,data:e.data.map(ft)}}function ft(e){let t=e.type.toLowerCase()==="buy";return {chain:p(e.chain),walletAddress:e.accountOwnerAddress,txHash:e.transactionSignature,type:t?"buy":"sell",from:{address:t?e.sideTokenAddress:e.tokenAddress,symbol:t?e.sideTokenSymbol:e.tokenSymbol,name:t?e.sideTokenName:e.tokenName,image:t?e.sideTokenImageUrl:e.tokenImageUrl,amount:t?e.sideTokenAmount:e.tokenAmount,amountInUsd:t?e.sideTokenAmountInUsd:e.tokenAmountInUsd,priceInUsd:t?e.sideTokenPriceInUsd:e.tokenPriceInUsd},to:{address:t?e.tokenAddress:e.sideTokenAddress,symbol:t?e.tokenSymbol:e.sideTokenSymbol,name:t?e.tokenName:e.sideTokenName,image:t?e.tokenImageUrl:e.sideTokenImageUrl,amount:t?e.tokenAmount:e.sideTokenAmount,amountInUsd:t?e.tokenAmountInUsd:e.sideTokenAmountInUsd,priceInUsd:t?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 ie(e,t){return {chain:e,address:t.tokenAddress,name:t.name,symbol:t.symbol,decimals:t.decimals,createdAt:t.createdAtMs?new Date(t.createdAtMs):void 0,launchedFrom:t.launchFrom?{programAddress:t.launchFrom.programAddress,protocolFamily:t.launchFrom.protocolFamily}:void 0}}function ae(e,t){return {chain:e,address:t.tokenAddress,name:t.name,symbol:t.symbol,decimals:t.decimals,image:t.imageUrl,description:t.description,socialMedias:t.socialMedia?{...t.socialMedia}:void 0,createdAt:t.createdAtMs?new Date(t.createdAtMs):void 0,launchedFrom:t.launchFrom?{programAddress:t.launchFrom.programAddress,protocolFamily:t.launchFrom.protocolFamily}:void 0,migratedTo:t.migratedTo?{programAddress:t.migratedTo.programAddress,protocolFamily:t.migratedTo.protocolFamily}:void 0}}function le(e){return {open:e.open,close:e.close,high:e.high,low:e.low,volume:e.volume,resolution:G(e.resolution),timestamp:new Date(e.time)}}function yt(e){let t=["1m","5m","15m","30m","1h","4h","24h"],r=e,o={};for(let n of t){let a=r[`buys${n}`],i=r[`sells${n}`],u=r[`buyers${n}`],w=r[`sellers${n}`],W=r[`buyVolumeInUsd${n}`],Q=r[`sellVolumeInUsd${n}`],M=r[`trades${n}`],_=r[`price${n}`],A=r[`openInUsd${n}`],S=r[`closeInUsd${n}`];if(!(a!==void 0||i!==void 0||M!==void 0||_!==void 0))continue;let fe=M??(a!==void 0&&i!==void 0?a+i:void 0),ye=u!==void 0&&w!==void 0?u+w:void 0,me=W!==void 0&&Q!==void 0?new utils.SafeBigNumber(W).plus(Q).toString():void 0,Te=A&&S&&new utils.SafeBigNumber(A).gt(0)?new utils.SafeBigNumber(S).minus(A).div(A).toString():void 0;o[n]={buys:a,sells:i,trades:fe,buyers:u,sellers:w,traders:ye,buyVolumesInUsd:W,sellVolumesInUsd:Q,volumesInUsd:me,openPriceInUsd:A,closePriceInUsd:S,priceInUsd:_??S,priceChange:Te};}return o}function mt(e){return {priceInUsd:e.price}}function O(e,t){return {chain:e,address:t.address,stats:yt(t),marketData:mt(t)}}function F(e,t,r){return {chain:e,address:t,marketData:{totalSupply:r.supply,marketCapInUsd:r.marketCapInUsd}}}function q(e,t,r){return {chain:e,address:t,marketData:Tt(r)}}function N(e,t,r){return r.metricType===sdk.WsMetricType.LIQUIDITY_IN_USD?{chain:e,address:t,marketData:{tvlInUsd:r.value}}:r.metricType===sdk.WsMetricType.MIGRATED_RATIO?{chain:e,address:t,migrateProgress:new utils.SafeBigNumber(r.value).shiftedBy(2).toString()}:{chain:e,address:t}}function B(e,t){return {chain:e,address:t.tokenAddress??"",migrateProgress:t.progressRatio?new utils.SafeBigNumber(t.progressRatio).shiftedBy(2).toString():void 0}}function de(e,t,r){return {chain:e,address:t,liquidities:[{poolAddress:r.poolAddress,tvlInUsd:r.liquidityInUsd,tvl:r.liquidityInNative}]}}function ue(e,t,r){return {chain:e,address:t,marketData:{tvlInUsd:r.liquidityInUsd,tvl:r.liquidityInNative}}}function Tt(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 K(e,t){let r=t.kind.toLowerCase()==="buy";return {chain:e,walletAddress:r?t.buyWalletAddress:t.sellWalletAddress,txHash:t.txHash,type:r?"buy":"sell",from:{address:t.sellTokenAddress,symbol:t.sellTokenSymbol,name:t.sellTokenName,amount:t.sellAmount,amountInUsd:t.sellAmountInUsd},to:{address:t.buyTokenAddress,symbol:t.buyTokenSymbol,name:t.buyTokenName,amount:t.buyAmount,amountInUsd:t.buyAmountInUsd},status:"success",time:new Date(t.timestamp)}}var ce=class{constructor(t,r){this.accessToken=t;this.options=r;this._client=new sdk.ChainStreamClient(this.accessToken,this.options);}_client;async getToken(t,r){let o=await this._client.token.getToken(d(t),r);return f(o)}async getTokens(t,r){return (await this._client.token.getTokens(d(t),{tokenAddresses:r.join(",")})).map(f)}async getTokenCandles(t,r,o,n){return (await this._client.token.getCandles(d(t),r,{resolution:D(o),from:n?.after?.getTime(),to:n?.before?.getTime(),limit:n?.limit})).map(z)}async getTokenSecurity(t,r){let o=await this._client.token.getSecurity(d(t),r);return $(o)}async getTokenStats(t,r){let o=await this._client.token.getStats(d(t),r);return v(o)}async getTokenHolders(t,r,o){let n=await this._client.token.getHolders(d(t),r,{cursor:o?.cursor,limit:o?.limit,direction:o?.direction});return X(n)}async getTokenMarketData(t,r){let o=await this._client.token.getMarketData(d(t),r);return R(o)}async getNewTokens(t,r){return (await this._client.ranking.getNewTokens(d(t),{sortBy:r?.sortBy?k(r.sortBy):void 0,sortDirection:r?.sortDirection?g(r.sortDirection):void 0,rangeFilters:r?.filters?I(r.filters):void 0,launchpadPlatform:r?.filters?C(r.filters):void 0,searchKeywords:r?.keywords,excludeKeywords:r?.excludeKeywords})).map(f)}async getFinalStretchTokens(t,r){return (await this._client.ranking.getFinalStretchTokens(d(t),{sortBy:r?.sortBy?k(r.sortBy):void 0,sortDirection:r?.sortDirection?g(r.sortDirection):void 0,rangeFilters:r?.filters?I(r.filters):void 0,launchpadPlatform:r?.filters?C(r.filters):void 0,searchKeywords:r?.keywords,excludeKeywords:r?.excludeKeywords})).map(f)}async getMigratedTokens(t,r){return (await this._client.ranking.getMigratedTokens(d(t),{sortBy:r?.sortBy?k(r.sortBy):void 0,sortDirection:r?.sortDirection?g(r.sortDirection):void 0,rangeFilters:r?.filters?I(r.filters):void 0,launchpadPlatform:r?.filters?C(r.filters):void 0,searchKeywords:r?.keywords,excludeKeywords:r?.excludeKeywords})).map(f)}async getTrendingTokens(t,r,o){return (await this._client.ranking.getHotTokens(d(t),r,{sortBy:o?.sortBy?k(o.sortBy):void 0,sortDirection:o?.sortDirection?g(o.sortDirection):void 0,rangeFilters:o?.filters?I(o.filters):void 0,launchpadPlatform:o?.filters?C(o.filters):void 0,searchKeywords:o?.keywords,excludeKeywords:o?.excludeKeywords})).map(f)}async getStockTokens(t,r){return (await this._client.ranking.getStocksTokens(d(t),{sortBy:r?.sortBy?k(r.sortBy):void 0,sortDirection:r?.sortDirection?g(r.sortDirection):void 0,rangeFilters:r?.filters?I(r.filters):void 0,launchpadPlatform:r?.filters?C(r.filters):void 0,searchKeywords:r?.keywords,excludeKeywords:r?.excludeKeywords})).map(f)}async searchTokens(t){let r=await this._client.token.search({chains:t?.chains?.map(d),q:t?.keyword,limit:t?.limit,cursor:t?.cursor,sortBy:t?.sortBy?V(t.sortBy):void 0,sort:t?.sortDirection});return Y(r)}async swapRoute(t){let r=await this._client.dex.route(d(t.chain),J(t));return Z(r)}async sendTx(t){let r=await this._client.transaction.send(d(t.chain),j(t));return ee(r)}async checkTxSuccess(t,r,o){let{result:n}=await this._client.waitForJob(r,o);return n.success}async getWalletPortfolios(t,r,o){let n=await this._client.wallet.getNetWorth(d(t),r,{cursor:o?.cursor,limit:o?.limit??100});return re(t,n)}async getWalletPnl(t,r,o){let n=await this._client.wallet.getPnl(d(t),r,o?{resolution:o}:void 0);return te(t,r,n)}async getWalletPortfolioPnls(t,r,o){let n=await this._client.wallet.getPnlDetails(d(t),r,{cursor:o?.cursor,limit:o?.limit??100});return oe(t,r,n)}async getWalletPortfoliosByTokens(t,r,o){let n=await this._client.wallet.getNetWorthByTokens(d(t),r,{tokenAddresses:o.join(",")});return ne(t,n)}async getWalletPortfolioPnlsByTokens(t,r,o){let n=await this._client.wallet.getPnlByToken(d(t),r,{tokenAddresses:o.join(",")});return se(t,n)}async getWalletTradeActivities(t,r,o){let n=await this._client.trade.getTrades(d(t),{walletAddress: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 H(n)}async getTokenTradeActivities(t,r,o){let n=await this._client.trade.getTrades(d(t),{tokenAddress: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 H(n)}async getPresignedUploadUrl(){return await this._client.ipfs.presign()}subscribeToken(t,r,o){let n=d(t),a=[this._client.stream.subscribeTokenStats({chain:n,tokenAddress:r,callback:i=>o([O(t,i)])}),this._client.stream.subscribeTokenSupply({chain:n,tokenAddress:r,callback:i=>o([F(t,r,i)])}),this._client.stream.subscribeTokenHolders({chain:n,tokenAddress:r,callback:i=>o([q(t,r,i)])}),this._client.stream.subscribeTokenLiquidity({chain:n,tokenAddress:r,callback:i=>o([N(t,r,i)])}),this._client.stream.subscribeTokenMaxLiquidity({chain:n,tokenAddress:r,callback:i=>o([de(t,r,i)])}),this._client.stream.subscribeTokenTotalLiquidity({chain:n,tokenAddress:r,callback:i=>o([ue(t,r,i)])})];return {unsubscribe:()=>a.forEach(i=>i.unsubscribe())}}subscribeTokenCandles(t,r,o,n){return this._client.stream.subscribeTokenCandles({chain:d(t),tokenAddress:r,resolution:D(o),callback:a=>n([le(a)])})}subscribeWalletPnl(t,r,o){return this._client.stream.subscribeWalletPnlList({chain:d(t),walletAddress:r,callback:n=>o(n.map(a=>({chain:t,address:a.walletAddress,buys:a.buys,buyAmountInUsd:a.buyAmountInUsd,sells:a.sells,sellAmountInUsd:a.sellAmountInUsd,wins:a.wins,winRate:a.winRatio,totalProfitInUsd:a.pnlInUsd,totalProfitRatio:a.pnlRatio,avgProfitPerTradeInUsd:a.averagePnlInUsd,tokens:a.tokens,resolution:a.resolution})))})}subscribeWalletPortfolios(t,r,o){return this._client.stream.subscribeWalletBalance({chain:d(t),walletAddress:r,callback:n=>o(n.map(a=>({chain:t,walletAddress:a.walletAddress,tokenAddress:a.tokenAddress,priceInUsd:a.tokenPriceInUsd,amount:a.balance})))})}subscribeWalletPortfolioPnls(t,r,o){return this._client.stream.subscribeWalletPnl({chain:d(t),walletAddress:r,callback:n=>o([{chain:t,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}])})}subscribeWalletTradeActivities(t,r,o){return this._client.stream.subscribeWalletTrade({chain:d(t),walletAddress:r,callback:n=>o([K(t,n)])})}subscribeTokenTradeActivities(t,r,o){return this._client.stream.subscribeTokenTrade({chain:d(t),tokenAddress:r,callback:n=>o([K(t,n)])})}subscribeNewTokens(t,r){let o=d(t),n=this._subscribeRankingTokens(t,sdk.WsChannelType.New,r),a=[this._client.stream.subscribeNewToken({chain:o,callback:i=>r([ie(t,i)])}),this._client.stream.subscribeNewTokensMetadata({chain:o,callback:i=>r(i.map(u=>ae(t,u)))}),this._client.stream.subscribeRankingTokensBondingCurve({chain:o,callback:i=>r(i.map(u=>B(t,u)))})];return {unsubscribe:()=>{n.unsubscribe(),a.forEach(i=>i.unsubscribe());}}}subscribeTrendingTokens(t,r){return this._subscribeRankingTokens(t,sdk.WsChannelType.HOT,r)}subscribeMigratedTokens(t,r){return this._subscribeRankingTokens(t,sdk.WsChannelType.GRADUATED,r)}subscribeFinalStretchTokens(t,r){let o=d(t),n=this._subscribeRankingTokens(t,sdk.WsChannelType.COMPLETED,r),a=this._client.stream.subscribeRankingTokensBondingCurve({chain:o,callback:i=>r(i.map(u=>B(t,u)))});return {unsubscribe:()=>{n.unsubscribe(),a.unsubscribe();}}}subscribeStockTokens(t,r){return this._subscribeRankingTokens(t,sdk.WsChannelType.US_STOCKS,r)}_subscribeRankingTokens(t,r,o){let n=d(t),a=[this._client.stream.subscribeRankingTokensStats({chain:n,channelType:r,callback:i=>o(i.map(u=>O(t,u)))}),this._client.stream.subscribeRankingTokensHolders({chain:n,channelType:r,callback:i=>o(i.map(u=>q(t,u.tokenAddress,u)))}),this._client.stream.subscribeRankingTokensSupply({chain:n,channelType:r,callback:i=>o(i.map(u=>F(t,u.tokenAddress,u)))}),this._client.stream.subscribeRankingTokensLiquidity({chain:n,channelType:r,callback:i=>o(i.map(u=>N(t,u.tokenAddress,u)))})];return {unsubscribe:()=>a.forEach(i=>i.unsubscribe())}}};function C(e){let t=e.find(r=>r.field==="launchedFromProtocolFamily");if(t){if(t.operator==="eq")return [t.value];if(t.operator==="in")return t.value;console.warn("invalid launchedFromProtocolFamily filter",t);}}function ol({client:e,subscribeClient:t,children:r}){return jsxRuntime.jsx(U.Provider,{value:{client:e,subscribeClient:t},children:r})}exports.Client=ce;exports.DexClientContext=U;exports.DexClientProvider=ol;exports.fetchFinalStretchTokens=Ie;exports.fetchMigratedTokens=Ce;exports.fetchNewTokens=pe;exports.fetchPresignedUploadUrl=We;exports.fetchSearchTokens=ve;exports.fetchStockTokens=qe;exports.fetchSwapRoute=Ke;exports.fetchToken=Ye;exports.fetchTokenCandles=Ee;exports.fetchTokenHolders=ze;exports.fetchTokenMarketData=Je;exports.fetchTokenSecurity=rr;exports.fetchTokenStats=ar;exports.fetchTokenTradeActivities=ur;exports.fetchTokens=nr;exports.fetchTrendingTokens=yr;exports.fetchTxSuccess=kr;exports.fetchWalletPnl=hr;exports.fetchWalletPortfolioPnls=Ar;exports.fetchWalletPortfolioPnlsByTokens=Or;exports.fetchWalletPortfolios=pr;exports.fetchWalletPortfoliosByTokens=Qr;exports.fetchWalletTradeActivities=Nr;exports.finalStretchTokensQueryKey=ge;exports.migratedTokensQueryKey=xe;exports.newTokensQueryKey=Ue;exports.searchTokensQueryKey=De;exports.sendTx=He;exports.stockTokensQueryKey=Fe;exports.swapRouteQueryKey=Be;exports.tokenCandlesQueryKey=_e;exports.tokenHoldersQueryKey=Ve;exports.tokenMarketDataQueryKey=$e;exports.tokenQueryKey=Xe;exports.tokenSecurityQueryKey=er;exports.tokenStatsQueryKey=ir;exports.tokenTradeActivitiesQueryKey=dr;exports.tokensQueryKey=or;exports.trendingTokensQueryKey=fr;exports.txSuccessQueryKey=Tr;exports.useDexClient=s;exports.useFinalStretchTokensQuery=Wt;exports.useFinalStretchTokensSubscription=Fs;exports.useMigratedTokensQuery=Ht;exports.useMigratedTokensSubscription=vs;exports.useNewTokensQuery=Bt;exports.useNewTokensSubscription=Cs;exports.usePresignedUploadUrlQuery=Lt;exports.useSearchTokensQuery=Jt;exports.useSendTxMutation=eo;exports.useStockTokensQuery=so;exports.useStockTokensSubscription=Ks;exports.useSwapRouteQuery=co;exports.useTokenCandlesQuery=ko;exports.useTokenCandlesSubscription=es;exports.useTokenHoldersQuery=Io;exports.useTokenMarketDataQuery=Uo;exports.useTokenQuery=Do;exports.useTokenSecurityQuery=Fo;exports.useTokenStatsQuery=zo;exports.useTokenSubscription=jn;exports.useTokenTradeActivitiesQuery=Xo;exports.useTokenTradeActivitiesSubscription=ns;exports.useTokensQuery=Mo;exports.useTrendingTokensQuery=tn;exports.useTrendingTokensSubscription=ws;exports.useTxSuccessQuery=ln;exports.useWalletPnlQuery=yn;exports.useWalletPnlSubscription=ls;exports.useWalletPortfolioPnlsByTokensQuery=Mn;exports.useWalletPortfolioPnlsInfiniteQuery=An;exports.useWalletPortfolioPnlsQuery=bn;exports.useWalletPortfolioPnlsSubscription=ks;exports.useWalletPortfoliosByTokensQuery=vn;exports.useWalletPortfoliosInfiniteQuery=Fn;exports.useWalletPortfoliosQuery=pn;exports.useWalletPortfoliosSubscription=fs;exports.useWalletTradeActivitiesQuery=zn;exports.useWalletTradeActivitiesSubscription=gs;exports.version=ke;exports.walletPnlQueryKey=br;exports.walletPortfolioPnlsByTokensQueryKey=Hr;exports.walletPortfolioPnlsInfiniteQueryKey=Cr;exports.walletPortfolioPnlsQueryKey=Ir;exports.walletPortfoliosByTokensQueryKey=Wr;exports.walletPortfoliosInfiniteQueryKey=vr;exports.walletPortfoliosQueryKey=Ur;exports.walletTradeActivitiesQueryKey=qr;//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map