@xrystal/core 3.23.8 → 3.24.1

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.23.8",
4
+ "version": "3.24.1",
5
5
  "description": "Project core for xrystal",
6
6
  "publishConfig": {
7
7
  "access": "public",
@@ -70,12 +70,13 @@ export class BaseController {
70
70
  if (!contentType) {
71
71
  contentType = isRaw ? 'application/octet-stream' : 'application/json';
72
72
  }
73
- const status = store.metadata?._code || 200;
73
+ let rawCode = store.metadata._code || 200;
74
+ let httpStatus = (rawCode >= 100 && rawCode <= 101) || (rawCode >= 200 && rawCode <= 599) ? rawCode : (rawCode === 0 || (rawCode >= 200 && rawCode <= 299) ? 200 : 400);
74
75
  const body = isRaw || typeof data === 'string'
75
76
  ? data
76
77
  : JSON.stringify(data?.getResponse ? data.getResponse : data);
77
78
  return new Response(body, {
78
- status,
79
+ status: httpStatus,
79
80
  headers: { 'content-type': contentType }
80
81
  });
81
82
  },
@@ -95,7 +96,7 @@ export default class Controller extends BaseController {
95
96
  if (!msg)
96
97
  return '';
97
98
  let content = String(msg);
98
- let useDirect = isError;
99
+ let useDirect = false;
99
100
  if (content.startsWith('@')) {
100
101
  content = content.substring(1);
101
102
  useDirect = true;
@@ -106,6 +107,9 @@ export default class Controller extends BaseController {
106
107
  if (useDirect) {
107
108
  return t(key, params);
108
109
  }
110
+ if (isError) {
111
+ return responseMessageHelper.unsuccessful(t(key), params.join(' '), t);
112
+ }
109
113
  return responseMessageHelper.successfully(t(key), params.join(' '), t);
110
114
  }
111
115
  async schema({ checks, logic, response }) {
@@ -124,8 +128,8 @@ export default class Controller extends BaseController {
124
128
  if (checks) {
125
129
  const checkResult = await checks(p);
126
130
  if (checkResult !== true) {
127
- const code = checkResult?.code || 400;
128
- const msg = checkResult?.message || (typeof checkResult === 'string' ? checkResult : 'error_validation');
131
+ const bizCode = checkResult?.code ?? 400;
132
+ const msg = checkResult?.message || (typeof checkResult === 'string' ? checkResult : 'unsuccessful');
129
133
  let errorPayload = undefined;
130
134
  if (checkResult?.payload) {
131
135
  errorPayload = {
@@ -133,10 +137,10 @@ export default class Controller extends BaseController {
133
137
  extraData: checkResult.payload.extraData ?? {}
134
138
  };
135
139
  }
136
- return currentRes.status(code).send(new ResponseSchema({
140
+ return currentRes.status(bizCode).send(new ResponseSchema({
137
141
  status: false,
138
142
  message: this.parseMessage(msg, currentReq.t, true),
139
- code,
143
+ code: bizCode,
140
144
  payload: errorPayload
141
145
  }).getResponse);
142
146
  }
@@ -149,11 +153,12 @@ export default class Controller extends BaseController {
149
153
  logicResult = await logicResult.response();
150
154
  }
151
155
  if (logicResult?.status === false) {
152
- const code = logicResult.code || 400;
153
- return currentRes.status(code).send(new ResponseSchema({
156
+ const bizCode = logicResult.code ?? 400;
157
+ const msg = logicResult.message || 'unsuccessful';
158
+ return currentRes.status(bizCode).send(new ResponseSchema({
154
159
  status: false,
155
- message: this.parseMessage(logicResult.message || 'error_process', currentReq.t, true),
156
- code
160
+ message: this.parseMessage(msg, currentReq.t, true),
161
+ code: bizCode
157
162
  }).getResponse);
158
163
  }
159
164
  const resResult = response ? await response({ ...p, logicResult }) : logicResult;
@@ -163,7 +168,7 @@ export default class Controller extends BaseController {
163
168
  let finalData = undefined;
164
169
  let finalExtraData = undefined;
165
170
  let messageSource = 'success_process';
166
- let successCode = this.currentStore?.metadata?._code || 200;
171
+ let bizSuccessCode = this.currentStore?.metadata?._code || 200;
167
172
  const extract = (obj) => {
168
173
  if (!obj || typeof obj !== 'object')
169
174
  return;
@@ -183,7 +188,7 @@ export default class Controller extends BaseController {
183
188
  if (obj.message)
184
189
  messageSource = obj.message;
185
190
  if (obj.code !== undefined)
186
- successCode = obj.code;
191
+ bizSuccessCode = obj.code;
187
192
  };
188
193
  if (typeof resResult === 'string') {
189
194
  messageSource = resResult;
@@ -199,18 +204,18 @@ export default class Controller extends BaseController {
199
204
  extraData: finalExtraData ?? {}
200
205
  };
201
206
  }
202
- return currentRes.status(successCode).send(new ResponseSchema({
207
+ return currentRes.status(bizSuccessCode).send(new ResponseSchema({
203
208
  status: true,
204
209
  message: this.parseMessage(messageSource, currentReq.t, false),
205
210
  payload,
206
- code: successCode
211
+ code: bizSuccessCode
207
212
  }).getResponse);
208
213
  }
209
214
  catch (error) {
210
215
  this.logger?.log(LoggerLayerEnum.ERROR, `Controller Error: ${error.message}`);
211
216
  return this.res.status(500).send(new ResponseSchema({
212
217
  status: false,
213
- message: error.message || 'error_internal',
218
+ message: error.message || 'unsuccessful',
214
219
  code: 500
215
220
  }).getResponse);
216
221
  }