@xrystal/core 3.24.6 → 3.24.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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "author": "Yusuf Yasir KAYGUSUZ",
3
3
  "name": "@xrystal/core",
4
- "version": "3.24.6",
4
+ "version": "3.24.8",
5
5
  "description": "Project core for xrystal",
6
6
  "publishConfig": {
7
7
  "access": "public",
@@ -79,26 +79,23 @@ export default class Controller extends BaseController {
79
79
  this.supportedProtocols = Array.isArray(protocols) ? protocols : [protocols || ProtocolEnum.HTTP];
80
80
  }
81
81
  parseMessage(msg, t, isError = false) {
82
- const content = String(msg || (isError ? 'unsuccessful' : 'success_process'));
82
+ const content = String(msg || '');
83
+ if (!content || content === 'success_process' || content === 'unsuccessful') {
84
+ return isError ? responseMessageHelper.unsuccessful('', '', t) : responseMessageHelper.successfully('', '', t);
85
+ }
83
86
  let method = isError ? 'unsuccessful' : 'successfully';
84
87
  let payloadString = content;
85
88
  if (content.startsWith('@')) {
86
- const firstSpace = content.indexOf(' ');
87
- if (firstSpace !== -1) {
88
- method = content.substring(1, firstSpace);
89
- payloadString = content.substring(firstSpace + 1);
90
- }
91
- else {
92
- method = content.substring(1);
93
- payloadString = '';
94
- }
89
+ const parts = content.split(' ');
90
+ method = parts[0].substring(1);
91
+ payloadString = parts.slice(1).join(' ');
95
92
  }
96
93
  const params = payloadString.split('-').map(p => p.trim()).filter(p => p !== '');
97
- const p1Raw = params[0] || '';
98
- const p1 = (p1Raw === method || p1Raw === 'unsuccessful' || p1Raw === 'success_process') ? '' : t(p1Raw);
94
+ const p1 = params[0] ? t(params[0]) : '';
99
95
  const p2 = params.slice(1).map(v => t(v)).join(' ');
100
- if (responseMessageHelper[method])
96
+ if (responseMessageHelper[method]) {
101
97
  return responseMessageHelper[method](p1, p2, t);
98
+ }
102
99
  return isError ? responseMessageHelper.unsuccessful(p1, p2, t) : responseMessageHelper.successfully(p1, p2, t);
103
100
  }
104
101
  async schema({ checks, logic, response }) {
@@ -119,7 +116,7 @@ export default class Controller extends BaseController {
119
116
  const checkResult = await checks(p);
120
117
  if (checkResult !== true) {
121
118
  extractMeta(checkResult);
122
- const bizCode = store?.metadata._code ?? 400;
119
+ const bizCode = store?.metadata?._code ?? 400;
123
120
  let errorPayload = undefined;
124
121
  if (checkResult?.payload) {
125
122
  const d = checkResult.payload.data ?? checkResult.payload;
@@ -127,7 +124,12 @@ export default class Controller extends BaseController {
127
124
  if (checkResult.payload.extraData !== undefined)
128
125
  errorPayload.extraData = checkResult.payload.extraData;
129
126
  }
130
- return currentRes.status(bizCode).send(new ResponseSchema({ status: false, message: this.parseMessage(checkResult?.message || checkResult, currentReq.t, true), code: bizCode, payload: errorPayload }).getResponse);
127
+ return currentRes.status(bizCode).send(new ResponseSchema({
128
+ status: false,
129
+ message: this.parseMessage(checkResult?.message || checkResult, currentReq.t, true),
130
+ code: bizCode,
131
+ payload: errorPayload
132
+ }).getResponse);
131
133
  }
132
134
  }
133
135
  let logicResult = logic ? await logic(p) : {};
@@ -139,13 +141,18 @@ export default class Controller extends BaseController {
139
141
  extractMeta(logicResult);
140
142
  }
141
143
  if (logicResult?.status === false) {
142
- const bizCode = store?.metadata._code ?? 400;
143
- return currentRes.status(bizCode).send(new ResponseSchema({ status: false, message: this.parseMessage(logicResult.message, currentReq.t, true), code: bizCode }).getResponse);
144
+ const bizCode = store?.metadata?._code ?? 400;
145
+ return currentRes.status(bizCode).send(new ResponseSchema({
146
+ status: false,
147
+ message: this.parseMessage(logicResult.message, currentReq.t, true),
148
+ code: bizCode
149
+ }).getResponse);
144
150
  }
145
151
  const resResult = response ? await response({ ...p, logicResult }) : logicResult;
146
152
  extractMeta(resResult);
147
- if (resResult instanceof Response || resResult instanceof Blob || resResult instanceof Uint8Array || resResult instanceof ArrayBuffer)
153
+ if (resResult instanceof Response || resResult instanceof Blob || resResult instanceof Uint8Array || resResult instanceof ArrayBuffer) {
148
154
  return currentRes.status(200).send(resResult);
155
+ }
149
156
  let finalData = undefined;
150
157
  let finalExtraData = undefined;
151
158
  let messageSource = 'success_process';
@@ -175,7 +182,7 @@ export default class Controller extends BaseController {
175
182
  else {
176
183
  extractData(resResult !== undefined ? resResult : logicResult);
177
184
  }
178
- const bizSuccessCode = store?.metadata._code || 200;
185
+ const bizSuccessCode = store?.metadata?._code || 200;
179
186
  let payload = undefined;
180
187
  if (finalData !== undefined || finalExtraData !== undefined) {
181
188
  payload = {};
@@ -184,12 +191,21 @@ export default class Controller extends BaseController {
184
191
  if (finalExtraData !== undefined)
185
192
  payload.extraData = finalExtraData;
186
193
  }
187
- return currentRes.status(bizSuccessCode).send(new ResponseSchema({ status: true, message: this.parseMessage(messageSource, currentReq.t, false), payload, code: bizSuccessCode }).getResponse);
194
+ return currentRes.status(bizSuccessCode).send(new ResponseSchema({
195
+ status: true,
196
+ message: this.parseMessage(messageSource, currentReq.t, false),
197
+ payload,
198
+ code: bizSuccessCode
199
+ }).getResponse);
188
200
  }
189
201
  catch (error) {
190
202
  this.logger?.log(LoggerLayerEnum.ERROR, `Controller Error: ${error.message}`);
191
203
  const t = currentReq?.t || ((k) => k);
192
- return this.res.status(500).send(new ResponseSchema({ status: false, message: this.parseMessage(error.message, t, true), code: 500 }).getResponse);
204
+ return this.res.status(500).send(new ResponseSchema({
205
+ status: false,
206
+ message: this.parseMessage(error.message, t, true),
207
+ code: 500
208
+ }).getResponse);
193
209
  }
194
210
  }
195
211
  }
@@ -2,15 +2,15 @@ export interface PayloadSchemaInterface {
2
2
  status: boolean;
3
3
  message: string;
4
4
  payload?: any;
5
- [key: string]: any;
6
5
  code?: number;
6
+ [key: string]: any;
7
7
  }
8
8
  export declare class ResponseSchema {
9
- constructor({ status, message, payload, code }: PayloadSchemaInterface);
10
9
  status: boolean;
11
10
  message: string;
12
11
  payload: any;
13
12
  code: number;
13
+ constructor({ status, message, payload, code }: PayloadSchemaInterface);
14
14
  validData(): any;
15
15
  statusCodeGenerator(): number;
16
16
  get getResponse(): any;
@@ -1,30 +1,28 @@
1
1
  export class ResponseSchema {
2
+ status;
3
+ message;
4
+ payload;
5
+ code;
2
6
  constructor({ status = false, message = '', payload = null, code = 0 }) {
3
7
  this.status = status;
4
8
  this.message = message;
5
9
  this.payload = payload;
6
10
  this.code = code;
7
11
  }
8
- status;
9
- message;
10
- payload;
11
- code;
12
12
  validData() {
13
13
  return this.payload;
14
14
  }
15
15
  statusCodeGenerator() {
16
- if (this.status === false && (this.code === 401 || this.code === 403)) {
16
+ if (this.code !== 0 && this.code !== 1 && this.code !== undefined) {
17
17
  return Number(this.code);
18
18
  }
19
- else if (this.status === true) {
19
+ if (this.status === true) {
20
20
  return 0;
21
21
  }
22
- else {
23
- return 1;
24
- }
22
+ return 1;
25
23
  }
26
24
  get getResponse() {
27
- let response = {
25
+ const response = {
28
26
  status: this.status,
29
27
  message: this.message
30
28
  };
@@ -32,6 +30,6 @@ export class ResponseSchema {
32
30
  response.payload = this.validData();
33
31
  }
34
32
  response.code = this.statusCodeGenerator();
35
- return { ...response };
33
+ return response;
36
34
  }
37
35
  }