@hapiboo/server 2.0.0 → 2.0.2

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/server.d.ts CHANGED
@@ -16,4 +16,5 @@ export declare namespace server {
16
16
  function prepareCustomPromiseResponse<T>(response: Response, promise: IResponsePromiseVoid, successContent: T, non200Status?: number): void;
17
17
  function createValidatedPromise<T>(request: Request, validator: (request: Request) => boolean, delayedPromise: IResponsePromise<T>): IResponsePromise<T>;
18
18
  function createValidatedVoidPromise(request: Request, validator: (request: Request) => boolean, delayedPromise: IResponsePromiseVoid): IResponsePromiseVoid;
19
+ function prepareAcceptedResponsewithVerboseOutput(response: Response, promise: IResponsePromiseVoid, operation: string | undefined): void;
19
20
  }
package/dist/server.js CHANGED
@@ -33,6 +33,26 @@ function prepareResponse(response, responseSender, err, non200Status) {
33
33
  }
34
34
  }
35
35
  }
36
+ function verboseResponseError(reason) {
37
+ if (reason.code) {
38
+ console.error(`${reason.status}: [${reason.code}] ${reason.message}`);
39
+ }
40
+ else {
41
+ console.error(`${reason.status}: ${reason.message}`);
42
+ }
43
+ if (reason.error) {
44
+ console.error(`${reason.error.name}: ${reason.error.message}`);
45
+ console.error(`stack: ${reason.error.stack}`);
46
+ }
47
+ if (reason.dataError) {
48
+ console.error(`[${reason.dataError.collection}] - ${reason.dataError.operation}:${reason.dataError.id}`);
49
+ }
50
+ if (reason.collection) {
51
+ reason.collection.forEach((error) => {
52
+ verboseResponseError(error);
53
+ });
54
+ }
55
+ }
36
56
  var server;
37
57
  (function (server) {
38
58
  function prepareJsonResponse(response, data, err, non200Status) {
@@ -145,4 +165,24 @@ var server;
145
165
  }
146
166
  }
147
167
  server.createValidatedVoidPromise = createValidatedVoidPromise;
168
+ function prepareAcceptedResponsewithVerboseOutput(response, promise, operation) {
169
+ promise
170
+ .then(() => {
171
+ if (operation) {
172
+ console.info(`${operation} completed succesfully`);
173
+ }
174
+ })
175
+ .catch((reason) => {
176
+ if (operation) {
177
+ console.info(`${operation} completed with problem:`);
178
+ }
179
+ else {
180
+ console.info('Operation completed with problem:');
181
+ }
182
+ verboseResponseError(reason);
183
+ });
184
+ response.status(202);
185
+ response.send();
186
+ }
187
+ server.prepareAcceptedResponsewithVerboseOutput = prepareAcceptedResponsewithVerboseOutput;
148
188
  })(server || (exports.server = server = {}));
@@ -3,7 +3,7 @@ import { IResponsePromise, IResponsePromiseVoid } from '@hapiboo/core';
3
3
  export declare namespace validator {
4
4
  function createValidatedPromise<T>(validator: () => boolean, delayedPromise: IResponsePromise<T>): IResponsePromise<T>;
5
5
  function createValidatedVoidPromise(validator: () => boolean, delayedPromise: IResponsePromiseVoid): IResponsePromiseVoid;
6
- function validateString(toValidate: string): boolean;
6
+ function validateString(toValidate: string | undefined): boolean;
7
7
  function validatePattern(toValidate: string, pattern: string[]): boolean;
8
8
  function validateStringArray(toValidate: string[]): boolean;
9
9
  function validateNotEmptyStringArray(toValidate: string[]): boolean;
package/dist/validator.js CHANGED
@@ -23,7 +23,7 @@ var validator;
23
23
  }
24
24
  validator_1.createValidatedVoidPromise = createValidatedVoidPromise;
25
25
  function validateString(toValidate) {
26
- return toValidate != undefined && toValidate != '';
26
+ return toValidate !== undefined && toValidate !== '';
27
27
  }
28
28
  validator_1.validateString = validateString;
29
29
  function validatePattern(toValidate, pattern) {
package/package.dev.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hapiboo/server",
3
- "version": "2.0.1-dev",
3
+ "version": "2.0.3-dev",
4
4
  "description": "MK13 Studio Hapiboo - API server services",
5
5
  "author": "MK13 Studio",
6
6
  "license": "ISC",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hapiboo/server",
3
- "version": "2.0.0",
3
+ "version": "2.0.2",
4
4
  "description": "MK13 Studio Hapiboo - API server services",
5
5
  "author": "MK13 Studio",
6
6
  "license": "ISC",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hapiboo/server",
3
- "version": "2.0.0",
3
+ "version": "2.0.2",
4
4
  "description": "MK13 Studio Hapiboo - API server services",
5
5
  "author": "MK13 Studio",
6
6
  "license": "ISC",
package/src/server.ts CHANGED
@@ -27,6 +27,25 @@ function prepareResponse(response: Response, responseSender?: () => void, err?:
27
27
  }
28
28
  }
29
29
  }
30
+ function verboseResponseError(reason: ResponseError){
31
+ if (reason.code) {
32
+ console.error(`${reason.status}: [${reason.code}] ${reason.message}`);
33
+ } else {
34
+ console.error(`${reason.status}: ${reason.message}`);
35
+ }
36
+ if (reason.error) {
37
+ console.error(`${reason.error.name}: ${reason.error.message}`);
38
+ console.error(`stack: ${reason.error.stack}`);
39
+ }
40
+ if (reason.dataError) {
41
+ console.error(`[${reason.dataError.collection}] - ${reason.dataError.operation}:${reason.dataError.id}`);
42
+ }
43
+ if (reason.collection){
44
+ reason.collection.forEach((error) => {
45
+ verboseResponseError(error);
46
+ });
47
+ }
48
+ }
30
49
 
31
50
  export namespace server {
32
51
  export function prepareJsonResponse<T>(response: Response, data: T, err?: ResponseError, non200Status?: number) {
@@ -126,4 +145,24 @@ export namespace server {
126
145
  return promise.createFailedVoidPromise(ResponseError.getMessageResponse(400, 'malformed request'));
127
146
  }
128
147
  }
148
+
149
+ export function prepareAcceptedResponsewithVerboseOutput(response: Response, promise: IResponsePromiseVoid, operation: string | undefined){
150
+ promise
151
+ .then(() => {
152
+ if (operation) {
153
+ console.info(`${operation} completed succesfully`);
154
+ }
155
+ })
156
+ .catch((reason) => {
157
+ if (operation) {
158
+ console.info(`${operation} completed with problem:`);
159
+ } else {
160
+ console.info('Operation completed with problem:');
161
+ }
162
+ verboseResponseError(reason);
163
+ });
164
+
165
+ response.status(202);
166
+ response.send();
167
+ }
129
168
  }
package/src/validator.ts CHANGED
@@ -18,8 +18,8 @@ export namespace validator {
18
18
  }
19
19
  }
20
20
 
21
- export function validateString(toValidate: string): boolean {
22
- return toValidate != undefined && toValidate != '';
21
+ export function validateString(toValidate: string | undefined): boolean {
22
+ return toValidate !== undefined && toValidate !== '';
23
23
  }
24
24
  export function validatePattern(toValidate: string, pattern: string[]): boolean {
25
25
  return validateString(toValidate) &&