@takentrade/takentrade-libs 1.2.52 → 1.2.54
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/rpc/index.d.ts +14 -4
- package/dist/rpc/index.js +21 -8
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
package/dist/rpc/index.d.ts
CHANGED
|
@@ -8,13 +8,20 @@ export interface TakeNTradeRPCError {
|
|
|
8
8
|
errors: string[];
|
|
9
9
|
timestamp: string;
|
|
10
10
|
}
|
|
11
|
+
export interface TakeNTradeRPCSuccess<T> {
|
|
12
|
+
status: 'success' | 'error';
|
|
13
|
+
message: string;
|
|
14
|
+
data?: T;
|
|
15
|
+
timestamp: string;
|
|
16
|
+
}
|
|
11
17
|
export declare class TakeNTradeRpc {
|
|
12
18
|
/**
|
|
13
19
|
* Wraps a promise returned by an RPC request handler.
|
|
14
20
|
* @param promise - A Promise resolving to the response value.
|
|
15
21
|
* @param ctx - Optional NatsContext object.
|
|
22
|
+
* @param successMessage - Optional success message
|
|
16
23
|
*/
|
|
17
|
-
static handleRequest<V>(promise: Promise<V>, ctx?: NatsContext): Promise<V | RpcException>;
|
|
24
|
+
static handleRequest<V>(promise: Promise<V>, ctx?: NatsContext, successMessage?: string): Promise<TakeNTradeRPCSuccess<V> | RpcException>;
|
|
18
25
|
/**
|
|
19
26
|
* Handles errors from an RPC request handler and returns a TakeNTradeRPCError wrapped in RpcException.
|
|
20
27
|
* @param err - Error to be handled.
|
|
@@ -25,16 +32,18 @@ export declare class TakeNTradeRpc {
|
|
|
25
32
|
/**
|
|
26
33
|
* Handles NATS request response.
|
|
27
34
|
* @param obs - An instance of an Observable.
|
|
35
|
+
* @param successMessage - Optional success message
|
|
28
36
|
*/
|
|
29
|
-
static withReply<V>(obs: Observable<V
|
|
37
|
+
static withReply<V>(obs: Observable<V>, successMessage?: string): Promise<TakeNTradeRPCSuccess<V>>;
|
|
30
38
|
}
|
|
31
39
|
export declare class TakeNTradeRpcV2 {
|
|
32
40
|
/**
|
|
33
41
|
* Wraps a promise returned by an RPC request handler.
|
|
34
42
|
* @param promise - A Promise resolving to the response value.
|
|
35
43
|
* @param ctx - Optional NatsContext object.
|
|
44
|
+
* @param successMessage - Optional success message
|
|
36
45
|
*/
|
|
37
|
-
static handleRequest<V>(promise: Promise<V>, ctx?: NatsContext): Promise<V | TakeNTradeRPCError>;
|
|
46
|
+
static handleRequest<V>(promise: Promise<V>, ctx?: NatsContext, successMessage?: string): Promise<TakeNTradeRPCSuccess<V> | TakeNTradeRPCError>;
|
|
38
47
|
/**
|
|
39
48
|
* Handles errors from an RPC request handler and returns a TakeNTradeRPCError.
|
|
40
49
|
* @param err - Error to be handled.
|
|
@@ -45,6 +54,7 @@ export declare class TakeNTradeRpcV2 {
|
|
|
45
54
|
/**
|
|
46
55
|
* Handles NATS request response.
|
|
47
56
|
* @param obs - An instance of an Observable.
|
|
57
|
+
* @param successMessage - Optional success message
|
|
48
58
|
*/
|
|
49
|
-
static withReply<V>(obs: Observable<V
|
|
59
|
+
static withReply<V>(obs: Observable<V>, successMessage?: string): Promise<TakeNTradeRPCSuccess<V>>;
|
|
50
60
|
}
|
package/dist/rpc/index.js
CHANGED
|
@@ -21,16 +21,26 @@ class TakeNTradeRpcUtils {
|
|
|
21
21
|
static isErrorResponse(result) {
|
|
22
22
|
return typeof result === 'object' && result !== null && 'error' in result;
|
|
23
23
|
}
|
|
24
|
+
// New method to format successful responses
|
|
25
|
+
static formatSuccessResponse(data, message = 'Operation successful') {
|
|
26
|
+
return {
|
|
27
|
+
status: 'success',
|
|
28
|
+
message,
|
|
29
|
+
data,
|
|
30
|
+
timestamp: new Date().toISOString(),
|
|
31
|
+
};
|
|
32
|
+
}
|
|
24
33
|
}
|
|
25
34
|
class TakeNTradeRpc {
|
|
26
35
|
/**
|
|
27
36
|
* Wraps a promise returned by an RPC request handler.
|
|
28
37
|
* @param promise - A Promise resolving to the response value.
|
|
29
38
|
* @param ctx - Optional NatsContext object.
|
|
39
|
+
* @param successMessage - Optional success message
|
|
30
40
|
*/
|
|
31
|
-
static async handleRequest(promise, ctx) {
|
|
41
|
+
static async handleRequest(promise, ctx, successMessage = 'Operation successful') {
|
|
32
42
|
return promise
|
|
33
|
-
.then((value) => value)
|
|
43
|
+
.then((value) => TakeNTradeRpcUtils.formatSuccessResponse(value, successMessage))
|
|
34
44
|
.catch((err) => this.catch(err, ctx));
|
|
35
45
|
}
|
|
36
46
|
/**
|
|
@@ -58,8 +68,9 @@ class TakeNTradeRpc {
|
|
|
58
68
|
/**
|
|
59
69
|
* Handles NATS request response.
|
|
60
70
|
* @param obs - An instance of an Observable.
|
|
71
|
+
* @param successMessage - Optional success message
|
|
61
72
|
*/
|
|
62
|
-
static async withReply(obs) {
|
|
73
|
+
static async withReply(obs, successMessage = 'Operation successful') {
|
|
63
74
|
const result = await new Promise((resolve, reject) => {
|
|
64
75
|
obs.subscribe({
|
|
65
76
|
next: (value) => resolve(value),
|
|
@@ -72,7 +83,7 @@ class TakeNTradeRpc {
|
|
|
72
83
|
cause: result.error.errors,
|
|
73
84
|
});
|
|
74
85
|
}
|
|
75
|
-
return result;
|
|
86
|
+
return TakeNTradeRpcUtils.formatSuccessResponse(result, successMessage);
|
|
76
87
|
}
|
|
77
88
|
}
|
|
78
89
|
exports.TakeNTradeRpc = TakeNTradeRpc;
|
|
@@ -81,10 +92,11 @@ class TakeNTradeRpcV2 {
|
|
|
81
92
|
* Wraps a promise returned by an RPC request handler.
|
|
82
93
|
* @param promise - A Promise resolving to the response value.
|
|
83
94
|
* @param ctx - Optional NatsContext object.
|
|
95
|
+
* @param successMessage - Optional success message
|
|
84
96
|
*/
|
|
85
|
-
static async handleRequest(promise, ctx) {
|
|
97
|
+
static async handleRequest(promise, ctx, successMessage = 'Operation successful') {
|
|
86
98
|
return promise
|
|
87
|
-
.then((value) => value)
|
|
99
|
+
.then((value) => TakeNTradeRpcUtils.formatSuccessResponse(value, successMessage))
|
|
88
100
|
.catch((err) => this.catch(err, ctx));
|
|
89
101
|
}
|
|
90
102
|
/**
|
|
@@ -111,8 +123,9 @@ class TakeNTradeRpcV2 {
|
|
|
111
123
|
/**
|
|
112
124
|
* Handles NATS request response.
|
|
113
125
|
* @param obs - An instance of an Observable.
|
|
126
|
+
* @param successMessage - Optional success message
|
|
114
127
|
*/
|
|
115
|
-
static async withReply(obs) {
|
|
128
|
+
static async withReply(obs, successMessage = 'Operation successful') {
|
|
116
129
|
const result = await new Promise((resolve, reject) => {
|
|
117
130
|
obs.subscribe({
|
|
118
131
|
next: (value) => resolve(value),
|
|
@@ -125,7 +138,7 @@ class TakeNTradeRpcV2 {
|
|
|
125
138
|
cause: result.error.errors,
|
|
126
139
|
});
|
|
127
140
|
}
|
|
128
|
-
return result;
|
|
141
|
+
return TakeNTradeRpcUtils.formatSuccessResponse(result, successMessage);
|
|
129
142
|
}
|
|
130
143
|
}
|
|
131
144
|
exports.TakeNTradeRpcV2 = TakeNTradeRpcV2;
|