@xrystal/core 3.19.3 → 3.19.4
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/package.json
CHANGED
|
@@ -67,7 +67,7 @@ export declare abstract class ControllerService extends Controller {
|
|
|
67
67
|
}): Promise<void>;
|
|
68
68
|
schema({ checks, logic, response }: {
|
|
69
69
|
checks?: (args: any) => Promise<any>;
|
|
70
|
-
logic
|
|
70
|
+
logic?: (args: any) => Promise<any>;
|
|
71
71
|
response?: (args: any) => Promise<any>;
|
|
72
72
|
}): Promise<any>;
|
|
73
73
|
}
|
|
@@ -82,12 +82,7 @@ export class ControllerService extends Controller {
|
|
|
82
82
|
const currentReq = this.req;
|
|
83
83
|
const currentRes = this.res;
|
|
84
84
|
const payload = { req: currentReq, res: currentRes };
|
|
85
|
-
const convertedPayload = {
|
|
86
|
-
...payload,
|
|
87
|
-
query: currentReq.query,
|
|
88
|
-
body: currentReq.body,
|
|
89
|
-
params: currentReq.params
|
|
90
|
-
};
|
|
85
|
+
const convertedPayload = { ...payload, query: currentReq.query, body: currentReq.body, params: currentReq.params };
|
|
91
86
|
if (checks) {
|
|
92
87
|
const checkResult = await checks({ payload, convertedPayload });
|
|
93
88
|
if (checkResult === false || (checkResult && typeof checkResult === 'object' && !Array.isArray(checkResult))) {
|
|
@@ -98,7 +93,7 @@ export class ControllerService extends Controller {
|
|
|
98
93
|
}).getResponse);
|
|
99
94
|
}
|
|
100
95
|
}
|
|
101
|
-
const logicResult = await logic({ payload, convertedPayload });
|
|
96
|
+
const logicResult = logic ? await logic({ payload, convertedPayload }) : {};
|
|
102
97
|
if (logicResult?.status === false) {
|
|
103
98
|
return currentRes.status(logicResult.code || 400).send(new ResponseSchema({
|
|
104
99
|
status: false,
|
|
@@ -108,18 +103,24 @@ export class ControllerService extends Controller {
|
|
|
108
103
|
}
|
|
109
104
|
if (logicResult instanceof Response)
|
|
110
105
|
return logicResult;
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
: (messageData || ''),
|
|
119
|
-
payload: logicResult?.payload !== undefined ? logicResult.payload : logicResult
|
|
120
|
-
}).getResponse);
|
|
106
|
+
const resResult = response ? await response({ payload, convertedPayload, logicResult }) : logicResult;
|
|
107
|
+
let finalMessage = '';
|
|
108
|
+
if (Array.isArray(resResult)) {
|
|
109
|
+
finalMessage = responseMessageHelper.successFully(resResult[0], resResult[1], currentReq.t);
|
|
110
|
+
}
|
|
111
|
+
else if (typeof resResult === 'string') {
|
|
112
|
+
finalMessage = resResult;
|
|
121
113
|
}
|
|
122
|
-
|
|
114
|
+
else if (resResult?.message) {
|
|
115
|
+
finalMessage = Array.isArray(resResult.message)
|
|
116
|
+
? responseMessageHelper.successFully(resResult.message[0], resResult.message[1], currentReq.t)
|
|
117
|
+
: resResult.message;
|
|
118
|
+
}
|
|
119
|
+
return currentRes.status(200).send(new ResponseSchema({
|
|
120
|
+
status: true,
|
|
121
|
+
message: finalMessage,
|
|
122
|
+
payload: logicResult?.payload !== undefined ? logicResult.payload : logicResult
|
|
123
|
+
}).getResponse);
|
|
123
124
|
}
|
|
124
125
|
catch (error) {
|
|
125
126
|
this.logger.winston.log({
|