my-q-format-response-aws-lambda 1.0.31 → 1.0.32

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.
Files changed (3) hide show
  1. package/index.js +11 -3
  2. package/index.ts +15 -1
  3. package/package.json +1 -1
package/index.js CHANGED
@@ -8,6 +8,7 @@ StatusResult.ok = 'Ok';
8
8
  StatusResult.error = 'Error';
9
9
  StatusResult.notFound = 'NotFound';
10
10
  StatusResult.unauthorized = 'Unauthorized';
11
+ StatusResult.needRedirect = 'NeedRedirect';
11
12
  class StatusCode {
12
13
  }
13
14
  exports.StatusCode = StatusCode;
@@ -67,6 +68,7 @@ class ResponseBodyVO {
67
68
  this.data = null;
68
69
  this.count = null;
69
70
  this.error = null;
71
+ this.redirectTo = undefined;
70
72
  }
71
73
  }
72
74
  exports.ResponseBodyVO = ResponseBodyVO;
@@ -78,13 +80,14 @@ class ResponseVO {
78
80
  }
79
81
  exports.ResponseVO = ResponseVO;
80
82
  class Result {
81
- constructor({ statusCode = StatusCode.OK, statusResult = StatusResult.ok, message, data = null, count = null, error = null, bodyWrap = true, }) {
83
+ constructor({ statusCode = StatusCode.OK, statusResult = StatusResult.ok, message, data = null, count = null, error = null, redirectTo = undefined, bodyWrap = true, }) {
82
84
  this.statusCode = statusCode;
83
85
  this.statusResult = statusResult;
84
86
  this.message = !message ? '' : message;
85
87
  this.count = count;
86
88
  this.data = data;
87
89
  this.error = error;
90
+ this.redirectTo = redirectTo;
88
91
  this.bodyWrap = bodyWrap;
89
92
  }
90
93
  /**
@@ -169,6 +172,7 @@ class CreateResponse {
169
172
  statusCode: StatusCode.NotFound,
170
173
  statusResult: StatusResult.notFound,
171
174
  message,
175
+ data: null,
172
176
  error,
173
177
  bodyWrap,
174
178
  });
@@ -185,6 +189,7 @@ class CreateResponse {
185
189
  const result = new Result({
186
190
  statusCode,
187
191
  statusResult: StatusResult.error,
192
+ data: null,
188
193
  error,
189
194
  message,
190
195
  bodyWrap,
@@ -202,6 +207,7 @@ class CreateResponse {
202
207
  const result = new Result({
203
208
  statusCode,
204
209
  statusResult: StatusResult.unauthorized,
210
+ data: null,
205
211
  error,
206
212
  message,
207
213
  bodyWrap,
@@ -215,12 +221,14 @@ class CreateResponse {
215
221
  * @param message
216
222
  * @param bodyWrap
217
223
  */
218
- static redirect({ statusCode = StatusCode.MovedTemporarily, message = '', bodyWrap = true, }) {
224
+ static redirect({ statusCode = StatusCode.MovedTemporarily, message = '', bodyWrap = true, redirectTo = '' }) {
219
225
  const result = new Result({
220
226
  statusCode,
221
- statusResult: StatusResult.unauthorized,
227
+ statusResult: StatusResult.needRedirect,
228
+ data: null,
222
229
  error: null,
223
230
  message,
231
+ redirectTo,
224
232
  bodyWrap,
225
233
  });
226
234
  return result.bodyToString();
package/index.ts CHANGED
@@ -3,6 +3,7 @@ export class StatusResult {
3
3
  static error = 'Error';
4
4
  static notFound = 'NotFound';
5
5
  static unauthorized = 'Unauthorized';
6
+ static needRedirect = 'NeedRedirect';
6
7
  }
7
8
 
8
9
  export class StatusCode {
@@ -74,6 +75,7 @@ export class StatusCode {
74
75
  type TData = object | boolean | string | null;
75
76
  type TCount = number | null;
76
77
  type TError = any | null;
78
+ type TRedirectTo = string | undefined;
77
79
 
78
80
  interface TResultIn {
79
81
  statusCode?: StatusCode;
@@ -82,6 +84,7 @@ interface TResultIn {
82
84
  data?: TData;
83
85
  count?: TCount;
84
86
  error?: TError;
87
+ redirectTo?: TRedirectTo;
85
88
  bodyWrap: boolean;
86
89
  }
87
90
 
@@ -92,6 +95,7 @@ interface TFuncParams {
92
95
  error?: TError,
93
96
  data?: TData,
94
97
  count?: TCount,
98
+ redirectTo?: TRedirectTo;
95
99
  bodyWrap?: boolean;
96
100
  }
97
101
 
@@ -101,6 +105,7 @@ export class ResponseBodyVO {
101
105
  data: TData = null;
102
106
  count: TCount = null;
103
107
  error: TError = null;
108
+ redirectTo?: TRedirectTo = undefined;
104
109
  }
105
110
 
106
111
  export class ResponseVO {
@@ -118,6 +123,7 @@ class Result {
118
123
  private data: TData;
119
124
  private count: TCount;
120
125
  private error: any;
126
+ private redirectTo: TRedirectTo;
121
127
  private bodyWrap: boolean;
122
128
 
123
129
  constructor({
@@ -127,6 +133,7 @@ class Result {
127
133
  data = null,
128
134
  count = null,
129
135
  error = null,
136
+ redirectTo = undefined,
130
137
  bodyWrap = true,
131
138
  }: TResultIn) {
132
139
  this.statusCode = statusCode;
@@ -135,6 +142,7 @@ class Result {
135
142
  this.count = count;
136
143
  this.data = data;
137
144
  this.error = error;
145
+ this.redirectTo = redirectTo;
138
146
  this.bodyWrap = bodyWrap;
139
147
  }
140
148
 
@@ -244,6 +252,7 @@ export class CreateResponse {
244
252
  statusCode: StatusCode.NotFound,
245
253
  statusResult: StatusResult.notFound,
246
254
  message,
255
+ data: null,
247
256
  error,
248
257
  bodyWrap,
249
258
  });
@@ -266,6 +275,7 @@ export class CreateResponse {
266
275
  const result = new Result({
267
276
  statusCode,
268
277
  statusResult: StatusResult.error,
278
+ data: null,
269
279
  error,
270
280
  message,
271
281
  bodyWrap,
@@ -290,6 +300,7 @@ export class CreateResponse {
290
300
  const result = new Result({
291
301
  statusCode,
292
302
  statusResult: StatusResult.unauthorized,
303
+ data: null,
293
304
  error,
294
305
  message,
295
306
  bodyWrap,
@@ -309,12 +320,15 @@ export class CreateResponse {
309
320
  statusCode = StatusCode.MovedTemporarily,
310
321
  message = '',
311
322
  bodyWrap = true,
323
+ redirectTo = ''
312
324
  }: TFuncParams): ResponseVoAWS {
313
325
  const result = new Result({
314
326
  statusCode,
315
- statusResult: StatusResult.unauthorized,
327
+ statusResult: StatusResult.needRedirect,
328
+ data: null,
316
329
  error: null,
317
330
  message,
331
+ redirectTo,
318
332
  bodyWrap,
319
333
  });
320
334
  return result.bodyToString();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "my-q-format-response-aws-lambda",
3
- "version": "1.0.31",
3
+ "version": "1.0.32",
4
4
  "homepage": "https://github.com/zhukyuri/my-q-format-response-aws-lambda",
5
5
  "description": "my-q-format-response-aws-lambda",
6
6
  "main": "index.js",