@sui-tracker/shared 1.0.87 → 1.0.89

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.
@@ -53,6 +53,8 @@ export type IRemoveLiquidityOrder = {
53
53
  timestamp: number;
54
54
  transactionHash: string;
55
55
  liquidity: string;
56
+ tick_lower?: number;
57
+ tick_upper?: number;
56
58
  note?: any;
57
59
  type: TradeType.REMOVE_LIQUIDITY;
58
60
  dex: DexType;
@@ -65,6 +67,8 @@ export type IAddLiquidityOrder = {
65
67
  timestamp: number;
66
68
  transactionHash: string;
67
69
  liquidity: string;
70
+ tick_lower?: number;
71
+ tick_upper?: number;
68
72
  note?: any;
69
73
  type: TradeType.ADD_LIQUIDITY;
70
74
  dex: DexType;
@@ -6,3 +6,4 @@ export * from "./price-grpc.service";
6
6
  export * from "./data-center-grpc.service";
7
7
  export * from "./token-grpc.service";
8
8
  export * from "./aggregator-route-grpc.service";
9
+ export * from "./orderbook-grpc.service";
@@ -22,4 +22,5 @@ __exportStar(require("./price-grpc.service"), exports);
22
22
  __exportStar(require("./data-center-grpc.service"), exports);
23
23
  __exportStar(require("./token-grpc.service"), exports);
24
24
  __exportStar(require("./aggregator-route-grpc.service"), exports);
25
+ __exportStar(require("./orderbook-grpc.service"), exports);
25
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/grpc-services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,4DAA0C;AAC1C,uDAAqC;AACrC,4DAA0C;AAC1C,uDAAqC;AACrC,6DAA2C;AAC3C,uDAAqC;AACrC,kEAAgD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/grpc-services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,4DAA0C;AAC1C,uDAAqC;AACrC,4DAA0C;AAC1C,uDAAqC;AACrC,6DAA2C;AAC3C,uDAAqC;AACrC,kEAAgD;AAChD,2DAAyC"}
@@ -0,0 +1,83 @@
1
+ import { ClientGrpc } from "@nestjs/microservices";
2
+ interface GetOrdersRequest {
3
+ page?: number;
4
+ take?: number;
5
+ order?: string;
6
+ status?: string[];
7
+ q?: string;
8
+ }
9
+ interface GetOrdersResponse {
10
+ success: boolean;
11
+ message: string;
12
+ data?: {
13
+ data: OrderData[];
14
+ meta: PageMeta;
15
+ };
16
+ }
17
+ interface GetSwapsRequest {
18
+ page?: number;
19
+ take?: number;
20
+ order?: string;
21
+ q?: string;
22
+ }
23
+ interface GetSwapsResponse {
24
+ success: boolean;
25
+ message: string;
26
+ data?: {
27
+ data: SwapData[];
28
+ meta: PageMeta;
29
+ };
30
+ }
31
+ interface OrderData {
32
+ id: string;
33
+ orderId: string;
34
+ owner: string;
35
+ payCoin: string;
36
+ targetCoin: string;
37
+ rate: string;
38
+ status: string;
39
+ createdTs: string;
40
+ expireTs: string;
41
+ initialPayAmount: string;
42
+ remainingPayAmount: string;
43
+ filledTargetAmount: string;
44
+ claimedTargetAmount: string;
45
+ orderActions: OrderActionData[];
46
+ createdAt: string;
47
+ updatedAt: string;
48
+ }
49
+ interface OrderActionData {
50
+ id: string;
51
+ actionType: string;
52
+ txDigest: string;
53
+ actor: string;
54
+ createdAt: string;
55
+ updatedAt: string;
56
+ }
57
+ interface SwapData {
58
+ id: string;
59
+ txDigest: string;
60
+ sender: string;
61
+ tokenIn: string;
62
+ tokenOut: string;
63
+ amountIn: string;
64
+ amountOut: string;
65
+ createdAt: string;
66
+ updatedAt: string;
67
+ }
68
+ interface PageMeta {
69
+ page: number;
70
+ take: number;
71
+ itemCount: number;
72
+ pageCount: number;
73
+ hasPreviousPage: boolean;
74
+ hasNextPage: boolean;
75
+ }
76
+ export declare class OrderBookGrpcService {
77
+ private grpcClient;
78
+ private readonly logger;
79
+ constructor(grpcClient: ClientGrpc);
80
+ getOrders(data: GetOrdersRequest): Promise<GetOrdersResponse>;
81
+ getSwaps(data: GetSwapsRequest): Promise<GetSwapsResponse>;
82
+ }
83
+ export {};
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var OrderBookGrpcService_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.OrderBookGrpcService = void 0;
17
+ const common_1 = require("@nestjs/common");
18
+ let OrderBookGrpcService = OrderBookGrpcService_1 = class OrderBookGrpcService {
19
+ constructor(grpcClient) {
20
+ this.grpcClient = grpcClient;
21
+ this.logger = new common_1.Logger(OrderBookGrpcService_1.name);
22
+ }
23
+ async getOrders(data) {
24
+ const orderBookService = this.grpcClient.getService("OrderBookService");
25
+ const res = await new Promise((resolve, reject) => {
26
+ orderBookService.GetOrders(data).subscribe({
27
+ next: (response) => resolve(response),
28
+ error: (error) => reject(error),
29
+ });
30
+ });
31
+ if (!res.success) {
32
+ throw new Error(res.message);
33
+ }
34
+ return res;
35
+ }
36
+ async getSwaps(data) {
37
+ const orderBookService = this.grpcClient.getService("OrderBookService");
38
+ const res = await new Promise((resolve, reject) => {
39
+ orderBookService.GetSwaps(data).subscribe({
40
+ next: (response) => resolve(response),
41
+ error: (error) => reject(error),
42
+ });
43
+ });
44
+ if (!res.success) {
45
+ throw new Error(res.message);
46
+ }
47
+ return res;
48
+ }
49
+ };
50
+ exports.OrderBookGrpcService = OrderBookGrpcService;
51
+ exports.OrderBookGrpcService = OrderBookGrpcService = OrderBookGrpcService_1 = __decorate([
52
+ (0, common_1.Injectable)(),
53
+ __param(0, (0, common_1.Inject)("ORDERBOOK")),
54
+ __metadata("design:paramtypes", [Object])
55
+ ], OrderBookGrpcService);
56
+ //# sourceMappingURL=orderbook-grpc.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orderbook-grpc.service.js","sourceRoot":"","sources":["../../../src/modules/grpc-services/orderbook-grpc.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA4D;AA2FrD,IAAM,oBAAoB,4BAA1B,MAAM,oBAAoB;IAG/B,YAAiC,UAA8B;QAAtB,eAAU,GAAV,UAAU,CAAY;QAF9C,WAAM,GAAG,IAAI,eAAM,CAAC,sBAAoB,CAAC,IAAI,CAAC,CAAC;IAEE,CAAC;IAEnE,KAAK,CAAC,SAAS,CAAC,IAAsB;QACpC,MAAM,gBAAgB,GACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAmB,kBAAkB,CAAC,CAAC;QAEnE,MAAM,GAAG,GAAG,MAAM,IAAI,OAAO,CAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnE,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC;gBACzC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACrC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;aAChC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAAqB;QAClC,MAAM,gBAAgB,GACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAmB,kBAAkB,CAAC,CAAC;QAEnE,MAAM,GAAG,GAAG,MAAM,IAAI,OAAO,CAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAClE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC;gBACxC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACrC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;aAChC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;CACF,CAAA;AAxCY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,mBAAU,GAAE;IAIE,WAAA,IAAA,eAAM,EAAC,WAAW,CAAC,CAAA;;GAHrB,oBAAoB,CAwChC"}
@@ -22,6 +22,7 @@ const internal_token_service_1 = require("./common-service/internal-token.servic
22
22
  const core_1 = require("@nestjs/core");
23
23
  const grpc_metadata_service_1 = require("./grpc-services/grpc-metadata.service");
24
24
  const grpc_services_1 = require("./grpc-services");
25
+ const orderbook_grpc_service_1 = require("./grpc-services/orderbook-grpc.service");
25
26
  (0, dotenv_1.config)();
26
27
  const providers = [
27
28
  sui_client_service_1.SuiClientService,
@@ -36,6 +37,7 @@ const providers = [
36
37
  grpc_metadata_service_1.GrpcMetadataService,
37
38
  grpc_services_1.TokenGrpcService,
38
39
  grpc_services_1.AggregatorRouteGrpcService,
40
+ orderbook_grpc_service_1.OrderBookGrpcService,
39
41
  ];
40
42
  let SharedModule = class SharedModule {
41
43
  };
@@ -106,6 +108,15 @@ exports.SharedModule = SharedModule = __decorate([
106
108
  url: process.env.AGGREGATOR_ROUTE_SERVICE_URL || "localhost:50059",
107
109
  },
108
110
  },
111
+ {
112
+ name: 'ORDERBOOK',
113
+ transport: microservices_1.Transport.GRPC,
114
+ options: {
115
+ package: 'orderbook',
116
+ protoPath: (0, path_1.join)(__dirname, "../protos/orderbook.proto"),
117
+ url: process.env.ORDERBOOK_SERVICE_URL || "localhost:50060",
118
+ },
119
+ },
109
120
  ]),
110
121
  ],
111
122
  providers,
@@ -1 +1 @@
1
- {"version":3,"file":"shared.module.js","sourceRoot":"","sources":["../../src/modules/shared.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.module.js","sourceRoot":"","sources":["../../src/modules/shared.module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ syntax = "proto3";
2
+
3
+ package orderbook;
4
+
5
+ // OrderBookService defines the available RPC endpoints for orderbook operations.
6
+ service OrderBookService {
7
+ rpc GetOrders (GetOrdersRequest) returns (GetOrdersResponse);
8
+ rpc GetSwaps (GetSwapsRequest) returns (GetSwapsResponse);
9
+ }
10
+
11
+ // Order Action data structure
12
+ message OrderActionData {
13
+ string id = 1;
14
+ string actionType = 2; // PLACE, CANCEL, FILLED, CLAIM
15
+ string txDigest = 3;
16
+ string actor = 4;
17
+ string createdAt = 5;
18
+ string updatedAt = 6;
19
+ }
20
+
21
+ // Order data structure
22
+ message OrderData {
23
+ string id = 1;
24
+ string orderId = 2;
25
+ string owner = 3;
26
+ string payCoin = 4;
27
+ string targetCoin = 5;
28
+ string rate = 6;
29
+ string status = 7; // PENDING, PARTIAL, FILLED, CANCELED, EXPIRED, PROCESSING
30
+ string createdTs = 8;
31
+ string expireTs = 9;
32
+ string initialPayAmount = 10;
33
+ string remainingPayAmount = 11;
34
+ string filledTargetAmount = 12;
35
+ string claimedTargetAmount = 13;
36
+ repeated OrderActionData orderActions = 14;
37
+ string createdAt = 15;
38
+ string updatedAt = 16;
39
+ }
40
+
41
+ // Swap data structure
42
+ message SwapData {
43
+ string id = 1;
44
+ string txDigest = 2;
45
+ string sender = 3;
46
+ string tokenIn = 4;
47
+ string tokenOut = 5;
48
+ string amountIn = 6;
49
+ string amountOut = 7;
50
+ string createdAt = 8;
51
+ string updatedAt = 9;
52
+ }
53
+
54
+ // Page metadata structure
55
+ message PageMeta {
56
+ int32 page = 1;
57
+ int32 take = 2;
58
+ int32 itemCount = 3;
59
+ int32 pageCount = 4;
60
+ bool hasPreviousPage = 5;
61
+ bool hasNextPage = 6;
62
+ }
63
+
64
+ // Request messages
65
+ message GetOrdersRequest {
66
+ optional int32 page = 1;
67
+ optional int32 take = 2;
68
+ optional string order = 3; // ASC, DESC
69
+ repeated string status = 4; // PENDING, PARTIAL, FILLED, CANCELED, EXPIRED, PROCESSING
70
+ optional string q = 5; // Search query
71
+ }
72
+
73
+ message GetSwapsRequest {
74
+ optional int32 page = 1;
75
+ optional int32 take = 2;
76
+ optional string order = 3; // ASC, DESC
77
+ optional string q = 4; // Search query
78
+ }
79
+
80
+ // Response messages
81
+ message GetOrdersResponse {
82
+ bool success = 1;
83
+ string message = 2;
84
+ message Data {
85
+ repeated OrderData data = 1;
86
+ PageMeta meta = 2;
87
+ }
88
+ Data data = 3;
89
+ }
90
+
91
+ message GetSwapsResponse {
92
+ bool success = 1;
93
+ string message = 2;
94
+ message Data {
95
+ repeated SwapData data = 1;
96
+ PageMeta meta = 2;
97
+ }
98
+ Data data = 3;
99
+ }
100
+