@chainstream-io/sdk 0.1.7 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/esm/index.js +74 -73
- package/dist/esm/openapi/apis/BlockchainApi.js +44 -61
- package/dist/esm/openapi/apis/DefiSolanaMoonshotApi.js +50 -67
- package/dist/esm/openapi/apis/DefiSolanaPumpfunApi.js +25 -38
- package/dist/esm/openapi/apis/DexApi.js +176 -205
- package/dist/esm/openapi/apis/DexPoolApi.js +28 -41
- package/dist/esm/openapi/apis/EndpointApi.js +175 -212
- package/dist/esm/openapi/apis/IpfsApi.js +25 -38
- package/dist/esm/openapi/apis/JobsApi.js +48 -65
- package/dist/esm/openapi/apis/RankingApi.js +249 -278
- package/dist/esm/openapi/apis/RedPacketApi.js +253 -294
- package/dist/esm/openapi/apis/TokenApi.js +1056 -1145
- package/dist/esm/openapi/apis/TradeApi.js +208 -233
- package/dist/esm/openapi/apis/TransactionApi.js +29 -42
- package/dist/esm/openapi/apis/WalletApi.js +123 -148
- package/dist/esm/openapi/apis/WatchlistApi.js +28 -41
- package/dist/esm/openapi/runtime.js +118 -119
- package/dist/esm/stream/stream.js +34 -36
- package/dist/index.js +96 -99
- package/dist/openapi/apis/BlockchainApi.js +48 -69
- package/dist/openapi/apis/DefiSolanaMoonshotApi.js +53 -74
- package/dist/openapi/apis/DefiSolanaPumpfunApi.js +28 -45
- package/dist/openapi/apis/DexApi.js +184 -217
- package/dist/openapi/apis/DexPoolApi.js +32 -49
- package/dist/openapi/apis/EndpointApi.js +179 -220
- package/dist/openapi/apis/IpfsApi.js +27 -44
- package/dist/openapi/apis/JobsApi.js +51 -72
- package/dist/openapi/apis/RankingApi.js +273 -306
- package/dist/openapi/apis/RedPacketApi.js +260 -305
- package/dist/openapi/apis/TokenApi.js +1089 -1182
- package/dist/openapi/apis/TradeApi.js +227 -256
- package/dist/openapi/apis/TransactionApi.js +32 -49
- package/dist/openapi/apis/WalletApi.js +130 -159
- package/dist/openapi/apis/WatchlistApi.js +32 -49
- package/dist/openapi/apis/index.js +15 -31
- package/dist/openapi/index.js +3 -19
- package/dist/openapi/models/BlockchainDTO.js +5 -12
- package/dist/openapi/models/BlockchainLatestBlockDTO.js +5 -12
- package/dist/openapi/models/BooleanResultDTO.js +5 -12
- package/dist/openapi/models/CalculatePnlInput.js +5 -12
- package/dist/openapi/models/Candle.js +8 -15
- package/dist/openapi/models/ClaimRedPacketInput.js +5 -12
- package/dist/openapi/models/CreateEndpointInput.js +5 -12
- package/dist/openapi/models/CreateRedPacketInput.js +5 -12
- package/dist/openapi/models/CreateRedPacketReply.js +5 -12
- package/dist/openapi/models/CreateTokenInput.js +6 -14
- package/dist/openapi/models/CreateTokenReply.js +5 -12
- package/dist/openapi/models/DexDTO.js +5 -12
- package/dist/openapi/models/DexPage.js +8 -15
- package/dist/openapi/models/DexPoolDTO.js +5 -12
- package/dist/openapi/models/EndpointListResponse.js +8 -15
- package/dist/openapi/models/EndpointOperationResponse.js +5 -12
- package/dist/openapi/models/EndpointResponse.js +5 -12
- package/dist/openapi/models/EndpointSecretResponse.js +5 -12
- package/dist/openapi/models/FilterCondition.js +6 -14
- package/dist/openapi/models/GainersAndLosersDTO.js +5 -12
- package/dist/openapi/models/GainersAndLosersPage.js +8 -15
- package/dist/openapi/models/JobDTO.js +5 -12
- package/dist/openapi/models/JobStreamingDTO.js +5 -12
- package/dist/openapi/models/Link.js +6 -14
- package/dist/openapi/models/MoonshotCreateTokenInput.js +10 -18
- package/dist/openapi/models/MoonshotCreateTokenReply.js +5 -12
- package/dist/openapi/models/MoonshotSubmitCreateToken200Response.js +5 -12
- package/dist/openapi/models/MoonshotSubmitCreateTokenInput.js +5 -12
- package/dist/openapi/models/PumpCreateTokenInput.js +7 -15
- package/dist/openapi/models/PumpCreateTokenReply.js +5 -12
- package/dist/openapi/models/QuoteResponse.js +5 -12
- package/dist/openapi/models/RedPacketClaimDTO.js +6 -14
- package/dist/openapi/models/RedPacketClaimsPage.js +8 -15
- package/dist/openapi/models/RedPacketDTO.js +6 -14
- package/dist/openapi/models/RedPacketReply.js +5 -12
- package/dist/openapi/models/RedPacketSendTxInput.js +5 -12
- package/dist/openapi/models/RedPacketSendTxResponse.js +5 -12
- package/dist/openapi/models/RedPacketsPage.js +8 -15
- package/dist/openapi/models/Resolution.js +9 -17
- package/dist/openapi/models/SendTxInput.js +6 -14
- package/dist/openapi/models/SendTxResponse.js +5 -12
- package/dist/openapi/models/SwapInput.js +7 -15
- package/dist/openapi/models/SwapReply.js +5 -12
- package/dist/openapi/models/SwapRouteInput.js +7 -15
- package/dist/openapi/models/SwapRouteResponse.js +8 -15
- package/dist/openapi/models/Token.js +23 -30
- package/dist/openapi/models/TokenCreationDTO.js +6 -14
- package/dist/openapi/models/TokenCreationPage.js +8 -15
- package/dist/openapi/models/TokenCreatorsDTO.js +5 -12
- package/dist/openapi/models/TokenExtraDTO.js +5 -12
- package/dist/openapi/models/TokenHolder.js +5 -12
- package/dist/openapi/models/TokenHolderPage.js +8 -15
- package/dist/openapi/models/TokenListPage.js +8 -15
- package/dist/openapi/models/TokenMarketData.js +5 -12
- package/dist/openapi/models/TokenMetadata.js +14 -21
- package/dist/openapi/models/TokenPage.js +8 -15
- package/dist/openapi/models/TokenPriceDTO.js +5 -12
- package/dist/openapi/models/TokenPricePage.js +8 -15
- package/dist/openapi/models/TokenSocialMediasDTO.js +5 -12
- package/dist/openapi/models/TokenStat.js +5 -12
- package/dist/openapi/models/TopTradersDTO.js +5 -12
- package/dist/openapi/models/TopTradersPage.js +8 -15
- package/dist/openapi/models/TradeDetailDTO.js +5 -12
- package/dist/openapi/models/TradeEvent.js +8 -15
- package/dist/openapi/models/TradePage.js +8 -15
- package/dist/openapi/models/TradeType.js +9 -17
- package/dist/openapi/models/UpdateEndpointInput.js +5 -12
- package/dist/openapi/models/WalletBalanceDetailDTO.js +5 -12
- package/dist/openapi/models/WalletBalancesDTO.js +8 -15
- package/dist/openapi/models/WalletPnlDTO.js +5 -12
- package/dist/openapi/models/index.js +70 -86
- package/dist/openapi/runtime.js +136 -153
- package/dist/stream/index.js +3 -19
- package/dist/stream/stream.fields.js +5 -11
- package/dist/stream/stream.js +39 -45
- package/dist/stream/stream.model.js +10 -13
- package/package.json +1 -1
package/dist/stream/stream.js
CHANGED
|
@@ -1,26 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.StreamApi = void 0;
|
|
13
|
-
const centrifuge_1 = require("@chainstream-io/centrifuge");
|
|
14
|
-
const stream_fields_1 = require("./stream.fields");
|
|
15
|
-
class StreamApi {
|
|
1
|
+
import { Centrifuge } from "@chainstream-io/centrifuge";
|
|
2
|
+
import { replaceFilterFields } from "./stream.fields";
|
|
3
|
+
export class StreamApi {
|
|
4
|
+
realtimeClient;
|
|
5
|
+
listenersMap;
|
|
16
6
|
constructor(context) {
|
|
17
7
|
const realtimeEndpoint = context.streamUrl;
|
|
18
|
-
this.realtimeClient = new
|
|
19
|
-
getToken: (_ctx) =>
|
|
8
|
+
this.realtimeClient = new Centrifuge(realtimeEndpoint, {
|
|
9
|
+
getToken: async (_ctx) => {
|
|
20
10
|
return typeof context.accessToken === "string"
|
|
21
11
|
? context.accessToken
|
|
22
|
-
:
|
|
23
|
-
}
|
|
12
|
+
: await context.accessToken.getToken();
|
|
13
|
+
},
|
|
24
14
|
});
|
|
25
15
|
this.realtimeClient
|
|
26
16
|
.on("connected", () => {
|
|
@@ -90,8 +80,11 @@ class StreamApi {
|
|
|
90
80
|
this.listenersMap.set(channel, listeners);
|
|
91
81
|
console.log("[xrealtime] create new sub: ", channel);
|
|
92
82
|
// Process filter expression with method-specific field mappings
|
|
93
|
-
const processedFilter = filter && methodName ?
|
|
94
|
-
sub = this.realtimeClient.newSubscription(channel,
|
|
83
|
+
const processedFilter = filter && methodName ? replaceFilterFields(filter, methodName) : filter;
|
|
84
|
+
sub = this.realtimeClient.newSubscription(channel, {
|
|
85
|
+
delta: "fossil",
|
|
86
|
+
...(processedFilter && { filter: processedFilter }),
|
|
87
|
+
});
|
|
95
88
|
sub
|
|
96
89
|
.on("subscribed", () => {
|
|
97
90
|
console.log("[xrealtime] subscribed", channel);
|
|
@@ -101,11 +94,11 @@ class StreamApi {
|
|
|
101
94
|
})
|
|
102
95
|
.on("publication", (ctx) => {
|
|
103
96
|
// console.log('[xrealtime] publication, ctx.data: ', ctx.data);
|
|
104
|
-
listeners
|
|
97
|
+
listeners?.forEach((it) => it(ctx.data));
|
|
105
98
|
})
|
|
106
99
|
.subscribe();
|
|
107
100
|
}
|
|
108
|
-
listeners
|
|
101
|
+
listeners?.add(fn);
|
|
109
102
|
return new StreamUnsubscrible(this, channel, fn);
|
|
110
103
|
}
|
|
111
104
|
unsubscribe(channel, fn) {
|
|
@@ -276,45 +269,44 @@ class StreamApi {
|
|
|
276
269
|
imageUrl: it.iu,
|
|
277
270
|
description: it.de,
|
|
278
271
|
socialMedia: (() => {
|
|
279
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
280
272
|
const socialMedia = {};
|
|
281
|
-
if (
|
|
273
|
+
if (it.sm?.tw) {
|
|
282
274
|
socialMedia.twitter = it.sm.tw;
|
|
283
275
|
}
|
|
284
|
-
if (
|
|
276
|
+
if (it.sm?.tg) {
|
|
285
277
|
socialMedia.telegram = it.sm.tg;
|
|
286
278
|
}
|
|
287
|
-
if (
|
|
279
|
+
if (it.sm?.w) {
|
|
288
280
|
socialMedia.website = it.sm.w;
|
|
289
281
|
}
|
|
290
|
-
if (
|
|
282
|
+
if (it.sm?.tt) {
|
|
291
283
|
socialMedia.tiktok = it.sm.tt;
|
|
292
284
|
}
|
|
293
|
-
if (
|
|
285
|
+
if (it.sm?.dc) {
|
|
294
286
|
socialMedia.discord = it.sm.dc;
|
|
295
287
|
}
|
|
296
|
-
if (
|
|
288
|
+
if (it.sm?.fb) {
|
|
297
289
|
socialMedia.facebook = it.sm.fb;
|
|
298
290
|
}
|
|
299
|
-
if (
|
|
291
|
+
if (it.sm?.gh) {
|
|
300
292
|
socialMedia.github = it.sm.gh;
|
|
301
293
|
}
|
|
302
|
-
if (
|
|
294
|
+
if (it.sm?.ig) {
|
|
303
295
|
socialMedia.instagram = it.sm.ig;
|
|
304
296
|
}
|
|
305
|
-
if (
|
|
297
|
+
if (it.sm?.li) {
|
|
306
298
|
socialMedia.linkedin = it.sm.li;
|
|
307
299
|
}
|
|
308
|
-
if (
|
|
300
|
+
if (it.sm?.md) {
|
|
309
301
|
socialMedia.medium = it.sm.md;
|
|
310
302
|
}
|
|
311
|
-
if (
|
|
303
|
+
if (it.sm?.rd) {
|
|
312
304
|
socialMedia.reddit = it.sm.rd;
|
|
313
305
|
}
|
|
314
|
-
if (
|
|
306
|
+
if (it.sm?.yt) {
|
|
315
307
|
socialMedia.youtube = it.sm.yt;
|
|
316
308
|
}
|
|
317
|
-
if (
|
|
309
|
+
if (it.sm?.bb) {
|
|
318
310
|
socialMedia.bitbucket = it.sm.bb;
|
|
319
311
|
}
|
|
320
312
|
return socialMedia;
|
|
@@ -365,7 +357,7 @@ class StreamApi {
|
|
|
365
357
|
}
|
|
366
358
|
subscribeRankingTokensLiquidity({ chain, channelType, callback, }) {
|
|
367
359
|
const channel = `dex-ranking-token-general_stat_num-list:${chain}_${channelType}`;
|
|
368
|
-
return this.subscribe(channel, (data) => callback(data
|
|
360
|
+
return this.subscribe(channel, (data) => callback(data?.map((it) => ({
|
|
369
361
|
tokenAddress: it.a,
|
|
370
362
|
metricType: it.t,
|
|
371
363
|
value: it.v,
|
|
@@ -376,7 +368,7 @@ class StreamApi {
|
|
|
376
368
|
const channel = dex
|
|
377
369
|
? `dex-ranking-list:${chain}_${ranking_type}_${dex}`
|
|
378
370
|
: `dex-ranking-list:${chain}_${ranking_type}`;
|
|
379
|
-
return this.subscribe(channel, (data) => callback(data
|
|
371
|
+
return this.subscribe(channel, (data) => callback(data?.map((item) => {
|
|
380
372
|
const result = {};
|
|
381
373
|
// TokenMetadata (t)
|
|
382
374
|
if (item.t) {
|
|
@@ -731,7 +723,7 @@ class StreamApi {
|
|
|
731
723
|
}
|
|
732
724
|
subscribeRankingTokensStats({ chain, channelType, callback, }) {
|
|
733
725
|
const channel = `dex-ranking-token-stats-list:${chain}_${channelType}`;
|
|
734
|
-
return this.subscribe(channel, (data) => callback(data
|
|
726
|
+
return this.subscribe(channel, (data) => callback(data?.map((it) => ({
|
|
735
727
|
address: it.a,
|
|
736
728
|
timestamp: it.t,
|
|
737
729
|
buys1m: it.b1m,
|
|
@@ -802,7 +794,7 @@ class StreamApi {
|
|
|
802
794
|
}
|
|
803
795
|
subscribeRankingTokensHolders({ chain, channelType, callback, }) {
|
|
804
796
|
const channel = `dex-ranking-token-holding-list:${chain}_${channelType}`;
|
|
805
|
-
return this.subscribe(channel, (data) => callback(data
|
|
797
|
+
return this.subscribe(channel, (data) => callback(data?.map((it) => ({
|
|
806
798
|
tokenAddress: it.a,
|
|
807
799
|
holders: it.h,
|
|
808
800
|
top100Amount: this.formatScientificNotation(it.t100a),
|
|
@@ -816,7 +808,7 @@ class StreamApi {
|
|
|
816
808
|
}
|
|
817
809
|
subscribeRankingTokensSupply({ chain, channelType, callback, }) {
|
|
818
810
|
const channel = `dex-ranking-token-supply-list:${chain}_${channelType}`;
|
|
819
|
-
return this.subscribe(channel, (data) => callback(data
|
|
811
|
+
return this.subscribe(channel, (data) => callback(data?.map((it) => ({
|
|
820
812
|
tokenAddress: it.a,
|
|
821
813
|
supply: it.s,
|
|
822
814
|
marketCapInUsd: it.mc,
|
|
@@ -825,7 +817,7 @@ class StreamApi {
|
|
|
825
817
|
}
|
|
826
818
|
subscribeRankingTokensBondingCurve({ chain, callback, }) {
|
|
827
819
|
const channel = `dex-ranking-token-bounding-curve-list:${chain}_new`;
|
|
828
|
-
return this.subscribe(channel, (data) => callback(data
|
|
820
|
+
return this.subscribe(channel, (data) => callback(data?.map((it) => ({
|
|
829
821
|
tokenAddress: it.a,
|
|
830
822
|
progressRatio: it.pr,
|
|
831
823
|
}))));
|
|
@@ -908,7 +900,7 @@ class StreamApi {
|
|
|
908
900
|
}
|
|
909
901
|
subscribeWalletPnlList({ chain, walletAddress, callback, }) {
|
|
910
902
|
const channel = `dex-wallet-pnl-list:${chain}_${walletAddress}`;
|
|
911
|
-
return this.subscribe(channel, (data) => callback(data
|
|
903
|
+
return this.subscribe(channel, (data) => callback(data?.map((it) => ({
|
|
912
904
|
walletAddress: it.a,
|
|
913
905
|
buys: it.bs,
|
|
914
906
|
buyAmount: it.ba,
|
|
@@ -981,8 +973,10 @@ class StreamApi {
|
|
|
981
973
|
}));
|
|
982
974
|
}
|
|
983
975
|
}
|
|
984
|
-
exports.StreamApi = StreamApi;
|
|
985
976
|
class StreamUnsubscrible {
|
|
977
|
+
streamApi;
|
|
978
|
+
channel;
|
|
979
|
+
fn;
|
|
986
980
|
constructor(streamApi, channel, fn) {
|
|
987
981
|
this.streamApi = streamApi;
|
|
988
982
|
this.channel = channel;
|
|
@@ -1,35 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Dex = exports.RankingType = exports.MetricType = exports.ChannelType = exports.TokenActivityType = void 0;
|
|
4
|
-
var TokenActivityType;
|
|
1
|
+
export var TokenActivityType;
|
|
5
2
|
(function (TokenActivityType) {
|
|
6
3
|
TokenActivityType["Sell"] = "sell";
|
|
7
4
|
TokenActivityType["Buy"] = "buy";
|
|
8
5
|
TokenActivityType["AddLiquidity"] = "add_liquidity";
|
|
9
6
|
TokenActivityType["RemoveLiquidity"] = "remove_liquidity";
|
|
10
|
-
})(TokenActivityType || (
|
|
11
|
-
var ChannelType;
|
|
7
|
+
})(TokenActivityType || (TokenActivityType = {}));
|
|
8
|
+
export var ChannelType;
|
|
12
9
|
(function (ChannelType) {
|
|
13
10
|
ChannelType["New"] = "new";
|
|
14
11
|
ChannelType["HOT"] = "trending";
|
|
15
12
|
ChannelType["US_STOCKS"] = "us_stocks";
|
|
16
13
|
ChannelType["COMPLETED"] = "completed";
|
|
17
14
|
ChannelType["GRADUATED"] = "graduated";
|
|
18
|
-
})(ChannelType || (
|
|
19
|
-
var MetricType;
|
|
15
|
+
})(ChannelType || (ChannelType = {}));
|
|
16
|
+
export var MetricType;
|
|
20
17
|
(function (MetricType) {
|
|
21
18
|
MetricType["LIQUIDITY_IN_USD"] = "liquidity_in_usd";
|
|
22
19
|
MetricType["MIGRATED_RATIO"] = "migrated_ratio";
|
|
23
|
-
})(MetricType || (
|
|
24
|
-
var RankingType;
|
|
20
|
+
})(MetricType || (MetricType = {}));
|
|
21
|
+
export var RankingType;
|
|
25
22
|
(function (RankingType) {
|
|
26
23
|
RankingType["NEW"] = "new";
|
|
27
24
|
RankingType["HOT"] = "trending";
|
|
28
25
|
RankingType["STOCKS"] = "stocks";
|
|
29
26
|
RankingType["FINALSTRETCH"] = "completed";
|
|
30
27
|
RankingType["MIGRATED"] = "graduated";
|
|
31
|
-
})(RankingType || (
|
|
32
|
-
var Dex;
|
|
28
|
+
})(RankingType || (RankingType = {}));
|
|
29
|
+
export var Dex;
|
|
33
30
|
(function (Dex) {
|
|
34
31
|
Dex["PUMP_FUN"] = "pump_fun";
|
|
35
32
|
Dex["RAYDIUM_LAUNCHPAD"] = "raydium_launchpad";
|
|
@@ -37,4 +34,4 @@ var Dex;
|
|
|
37
34
|
Dex["BONK_FUN"] = "bonk_fun";
|
|
38
35
|
Dex["BOOP_FUN"] = "boop_fun";
|
|
39
36
|
Dex["MOONIT_FUN"] = "moonit_fun";
|
|
40
|
-
})(Dex || (
|
|
37
|
+
})(Dex || (Dex = {}));
|