@sui-tracker/shared 1.0.93 → 1.0.95

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.
@@ -37,14 +37,21 @@ export type ISwapOrder = {
37
37
  trader: string;
38
38
  amountA: string;
39
39
  amountB: string;
40
- coinA?: string;
41
- coinB?: string;
40
+ tokenAAddress: string;
41
+ tokenBAddress: string;
42
+ basePrice: string;
43
+ volume: string;
42
44
  a2b: boolean;
43
45
  timestamp: number;
44
46
  transactionHash: string;
45
47
  type: TradeType.SWAP;
46
48
  dex: DexType;
49
+ priceA?: string;
50
+ priceB?: string;
51
+ usdValueA?: string;
52
+ usdValueB?: string;
47
53
  };
54
+ export type ISwapOrderDecoded = Omit<ISwapOrder, 'tokenAAddress' | 'tokenBAddress' | 'basePrice' | 'volume'>;
48
55
  export type IRemoveLiquidityOrder = {
49
56
  pool: string;
50
57
  trader: string;
@@ -12,4 +12,5 @@ export declare class SwapOrderGrpcService {
12
12
  getTopTradersByPool(data: GetTopTradersByPoolRequest): Promise<GetTopTradersByPoolResponse>;
13
13
  calculateUsdValue(data: CalculateUsdValueRequest): Promise<CalculateUsdValueResponse>;
14
14
  searchPool(data: SearchPoolRequest): Promise<SearchPoolResponse>;
15
+ GetListTokens(data: any): Promise<any>;
15
16
  }
@@ -125,6 +125,19 @@ let SwapOrderGrpcService = SwapOrderGrpcService_1 = class SwapOrderGrpcService {
125
125
  }
126
126
  return res;
127
127
  }
128
+ async GetListTokens(data) {
129
+ const swapOrderService = this.grpcClient.getService("SwapOrderService");
130
+ const res = await new Promise((resolve, reject) => {
131
+ swapOrderService.getListTokens(data).subscribe({
132
+ next: (response) => resolve(response),
133
+ error: (error) => reject(error),
134
+ });
135
+ });
136
+ if (!res.success) {
137
+ throw new Error(res.message);
138
+ }
139
+ return res;
140
+ }
128
141
  };
129
142
  exports.SwapOrderGrpcService = SwapOrderGrpcService;
130
143
  exports.SwapOrderGrpcService = SwapOrderGrpcService = SwapOrderGrpcService_1 = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"swap-order-grpc.service.js","sourceRoot":"","sources":["../../../src/modules/grpc-services/swap-order-grpc.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"swap-order-grpc.service.js","sourceRoot":"","sources":["../../../src/modules/grpc-services/swap-order-grpc.service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ClientGrpc } from "@nestjs/microservices";
2
- import { GetTrendingTokensRequest, GetTrendingTokensResponse, GetTopVolumeTokensRequest, GetTopVolumeTokensResponse, GetTokensRequest, GetTokensResponse, SearchTokensRequest, SearchTokensResponse } from "../interfaces/swap-order.interface";
2
+ import { GetTrendingTokensRequest, GetTrendingTokensResponse, GetTopVolumeTokensRequest, GetTopVolumeTokensResponse, GetTokensRequest, GetTokensResponse, SearchTokensRequest, SearchTokensResponse, GetTokenChartRequest, GetTokenChartResponse, GetTokenTransactionsRequest, GetTokenTransactionsResponse } from "../interfaces/swap-order.interface";
3
3
  export declare class TokenGrpcService {
4
4
  private grpcClient;
5
5
  private readonly logger;
@@ -8,4 +8,6 @@ export declare class TokenGrpcService {
8
8
  getTopVolumeTokens(data: GetTopVolumeTokensRequest): Promise<GetTopVolumeTokensResponse>;
9
9
  getTokens(data: GetTokensRequest): Promise<GetTokensResponse>;
10
10
  searchTokens(data: SearchTokensRequest): Promise<SearchTokensResponse>;
11
+ getTokenChart(data: GetTokenChartRequest): Promise<GetTokenChartResponse>;
12
+ getTokenTransactions(data: GetTokenTransactionsRequest): Promise<GetTokenTransactionsResponse>;
11
13
  }
@@ -72,6 +72,32 @@ let TokenGrpcService = TokenGrpcService_1 = class TokenGrpcService {
72
72
  }
73
73
  return res;
74
74
  }
75
+ async getTokenChart(data) {
76
+ const swapOrderService = this.grpcClient.getService("SwapOrderService");
77
+ const res = await new Promise((resolve, reject) => {
78
+ swapOrderService.getTokenChart(data).subscribe({
79
+ next: (response) => resolve(response),
80
+ error: (error) => reject(error),
81
+ });
82
+ });
83
+ if (!res.success) {
84
+ throw new Error(res.message);
85
+ }
86
+ return res;
87
+ }
88
+ async getTokenTransactions(data) {
89
+ const swapOrderService = this.grpcClient.getService("SwapOrderService");
90
+ const res = await new Promise((resolve, reject) => {
91
+ swapOrderService.getTokenTransactions(data).subscribe({
92
+ next: (response) => resolve(response),
93
+ error: (error) => reject(error),
94
+ });
95
+ });
96
+ if (!res.success) {
97
+ throw new Error(res.message);
98
+ }
99
+ return res;
100
+ }
75
101
  };
76
102
  exports.TokenGrpcService = TokenGrpcService;
77
103
  exports.TokenGrpcService = TokenGrpcService = TokenGrpcService_1 = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"token-grpc.service.js","sourceRoot":"","sources":["../../../src/modules/grpc-services/token-grpc.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"token-grpc.service.js","sourceRoot":"","sources":["../../../src/modules/grpc-services/token-grpc.service.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- export * from "./account.interface";
2
1
  export * from "./checkpoint.interface";
3
2
  export * from "./proxy.interface";
4
3
  export * from "./swap-order.interface";
@@ -14,7 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./account.interface"), exports);
18
17
  __exportStar(require("./checkpoint.interface"), exports);
19
18
  __exportStar(require("./proxy.interface"), exports);
20
19
  __exportStar(require("./swap-order.interface"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAmC;AACnC,yDAAsC;AACtC,oDAAiC;AACjC,yDAAsC;AACtC,oDAAiC;AACjC,8DAA2C;AAC3C,+DAA4C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAsC;AACtC,oDAAiC;AACjC,yDAAsC;AACtC,oDAAiC;AACjC,8DAA2C;AAC3C,+DAA4C"}
@@ -41,8 +41,8 @@ export interface PoolData {
41
41
  id: string;
42
42
  tokenA?: TokenData;
43
43
  tokenB: TokenData;
44
- reserveA: number;
45
- reserveB: number;
44
+ reserveA?: number;
45
+ reserveB?: number;
46
46
  volume: string;
47
47
  oldPrice: string;
48
48
  totalTx: string;
@@ -54,8 +54,8 @@ export interface PoolDataDetail {
54
54
  priceB: number;
55
55
  dex: string;
56
56
  poolCreatedTime: Date | null;
57
- tokenA: TokenData;
58
- tokenB: TokenData;
57
+ tokenA?: TokenData;
58
+ tokenB?: TokenData;
59
59
  pool: string;
60
60
  aIsBase: boolean;
61
61
  stats: {
@@ -154,6 +154,18 @@ export interface SwapOrderData {
154
154
  amountB: string;
155
155
  liquidity?: string | null;
156
156
  }
157
+ export interface TokenSwapData {
158
+ tokenAddress: string;
159
+ timestamp: number;
160
+ price: string;
161
+ amount: string;
162
+ otherAmount: string;
163
+ otherAddress: string;
164
+ volume: string;
165
+ transactionHash: string;
166
+ trader: string;
167
+ dex: string;
168
+ }
157
169
  export interface GetLastSwapOrderRequest {
158
170
  poolAddress: string;
159
171
  toTime: number;
@@ -246,6 +258,38 @@ export interface SearchTokensResponse extends BaseResponse {
246
258
  data: TokenData[];
247
259
  count: number;
248
260
  }
261
+ export interface GetListTokensRequest {
262
+ type: 'trending' | 'top-volume' | 'new-tokens';
263
+ label: number;
264
+ page?: number;
265
+ limit?: number;
266
+ }
267
+ export interface GetListTokensResponse extends BaseResponse {
268
+ data: TokenData[];
269
+ total: number;
270
+ }
271
+ export interface GetTokenChartRequest {
272
+ tokenAddress: string;
273
+ resolution: number;
274
+ limit: number;
275
+ endTime: number;
276
+ type?: 'usd' | 'token';
277
+ }
278
+ export interface GetTokenChartResponse extends BaseResponse {
279
+ data: CandleData[];
280
+ }
281
+ export interface GetTokenTransactionsRequest {
282
+ tokenAddress: string;
283
+ toTime: number;
284
+ limit?: number;
285
+ minAmount?: number;
286
+ maxAmount?: number;
287
+ minVolume?: number;
288
+ maxVolume?: number;
289
+ }
290
+ export interface GetTokenTransactionsResponse extends BaseResponse {
291
+ data: TokenSwapData[];
292
+ }
249
293
  export interface SwapOrderService {
250
294
  GetListPools(request: GetListPoolsRequest): Observable<GetListPoolsResponse>;
251
295
  getPool(request: GetPoolRequest): Observable<GetPoolResponse>;
@@ -259,4 +303,7 @@ export interface SwapOrderService {
259
303
  calculateUsdValue(request: CalculateUsdValueRequest): Observable<CalculateUsdValueResponse>;
260
304
  searchPool(request: SearchPoolRequest): Observable<SearchPoolResponse>;
261
305
  searchTokens(request: SearchTokensRequest): Observable<SearchTokensResponse>;
306
+ getListTokens(request: GetListTokensRequest): Observable<GetListTokensResponse>;
307
+ getTokenChart(request: GetTokenChartRequest): Observable<GetTokenChartResponse>;
308
+ getTokenTransactions(request: GetTokenTransactionsRequest): Observable<GetTokenTransactionsResponse>;
262
309
  }
@@ -17,6 +17,9 @@ service SwapOrderService {
17
17
  rpc CalculateUsdValue (CalculateUsdValueRequest) returns (CalculateUsdValueResponse);
18
18
  rpc SearchPool (SearchPoolRequest) returns (SearchPoolResponse);
19
19
  rpc SearchTokens (SearchTokensRequest) returns (SearchTokensResponse);
20
+ rpc GetListTokens (GetListTokensRequest) returns (GetListTokensResponse);
21
+ rpc GetTokenChart (GetTokenChartRequest) returns (GetTokenChartResponse);
22
+ rpc GetTokenTransactions (GetTokenTransactionsRequest) returns (GetTokenTransactionsResponse);
20
23
  }
21
24
 
22
25
  // Token data structure matching TokenData interface
@@ -106,6 +109,22 @@ message ListPool {
106
109
  double volumeChangePercentage = 25;
107
110
  }
108
111
 
112
+ // List token structure matching ListToken interface
113
+ message ListToken {
114
+ string token = 1;
115
+ double totalVolume = 2;
116
+ int32 totalTx = 3;
117
+ double totalMaker = 4;
118
+ double trendingScore = 5;
119
+ string id = 6;
120
+ TokenData tokenData = 7;
121
+ optional string tokenCreatedTime = 8;
122
+ double priceChange5m = 9;
123
+ double priceChange60m = 10;
124
+ double priceChange360m = 11;
125
+ double priceChange1440m = 12;
126
+ }
127
+
109
128
  // Candle data structure matching CandleData interface
110
129
  message CandleData {
111
130
  string t = 1; // timestamp
@@ -133,6 +152,20 @@ message SwapOrderData {
133
152
  optional string liquidity = 13; // Nullable(UInt64)
134
153
  }
135
154
 
155
+ // Token swap data structure for token_swaps table
156
+ message TokenSwapData {
157
+ string tokenAddress = 1; // LowCardinality(String)
158
+ int32 timestamp = 2; // DateTime as Unix timestamp
159
+ string price = 3; // Decimal(36, 18)
160
+ string amount = 4; // Decimal(30, 9)
161
+ string otherAmount = 5; // Decimal(30, 9)
162
+ string otherAddress = 6; // LowCardinality(String)
163
+ string volume = 7; // Decimal(30, 9)
164
+ string transactionHash = 8; // FixedString(44)
165
+ string trader = 9; // LowCardinality(String)
166
+ string dex = 10; // String
167
+ }
168
+
136
169
  // Trending token data structure
137
170
  message TrendingTokenData {
138
171
  string id = 1;
@@ -175,6 +208,26 @@ message GetListPoolsFilter {
175
208
  repeated string dex = 20;
176
209
  }
177
210
 
211
+ // Filter message for GetListTokensRequest
212
+ message GetListTokensFilter {
213
+ optional double minMaker = 1;
214
+ optional double maxMaker = 2;
215
+ optional int32 minTx = 3;
216
+ optional int32 maxTx = 4;
217
+ optional double minVolume = 5;
218
+ optional double maxVolume = 6;
219
+ optional double minPriceChange5m = 7;
220
+ optional double maxPriceChange5m = 8;
221
+ optional double minPriceChange60m = 9;
222
+ optional double maxPriceChange60m = 10;
223
+ optional double minPriceChange360m = 11;
224
+ optional double maxPriceChange360m = 12;
225
+ optional double minPriceChange1440m = 13;
226
+ optional double maxPriceChange1440m = 14;
227
+ optional int32 minAge = 15;
228
+ optional int32 maxAge = 16;
229
+ }
230
+
178
231
  // Request messages matching TypeScript interfaces
179
232
  message GetListPoolsRequest {
180
233
  string type = 1; // 'trending' | 'top-volume' | 'new-pools'
@@ -255,6 +308,32 @@ message SearchTokensRequest {
255
308
  optional int32 limit = 2;
256
309
  }
257
310
 
311
+ message GetListTokensRequest {
312
+ string type = 1; // 'trending' | 'top-volume' | 'new-tokens'
313
+ int32 label = 2; // 5 | 60 | 360 | 1440
314
+ optional int32 page = 3;
315
+ optional int32 limit = 4;
316
+ optional GetListTokensFilter filter = 5;
317
+ }
318
+
319
+ message GetTokenChartRequest {
320
+ string tokenAddress = 1;
321
+ int32 resolution = 2;
322
+ int32 limit = 3;
323
+ int64 endTime = 4;
324
+ optional string type = 5; // 'usd' | 'token' (optional, defaults to token price)
325
+ }
326
+
327
+ message GetTokenTransactionsRequest {
328
+ string tokenAddress = 1;
329
+ int32 toTime = 2;
330
+ optional int32 limit = 3;
331
+ optional double minAmount = 4;
332
+ optional double maxAmount = 5;
333
+ optional double minVolume = 6;
334
+ optional double maxVolume = 7;
335
+ }
336
+
258
337
  // Pool trader stats data structure matching PoolTraderStatsData interface
259
338
  message PoolTraderStatsData {
260
339
  string trader = 1;
@@ -346,4 +425,26 @@ message SearchTokensResponse {
346
425
  string message = 2;
347
426
  repeated TokenData data = 3;
348
427
  int32 count = 4;
428
+ }
429
+
430
+ message GetListTokensResponse {
431
+ message Data {
432
+ repeated ListToken list = 1;
433
+ int32 total = 2;
434
+ }
435
+ bool success = 1;
436
+ string message = 2;
437
+ Data data = 3;
438
+ }
439
+
440
+ message GetTokenChartResponse {
441
+ bool success = 1;
442
+ string message = 2;
443
+ repeated CandleData data = 3;
444
+ }
445
+
446
+ message GetTokenTransactionsResponse {
447
+ bool success = 1;
448
+ string message = 2;
449
+ repeated TokenSwapData data = 3;
349
450
  }