itrm-tools 1.0.1 → 1.0.3

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 (55) hide show
  1. package/dist/api/APIRequest.d.ts +3 -2
  2. package/dist/api/APIRequest.js +1 -0
  3. package/dist/api/APIRequest.js.map +1 -1
  4. package/dist/api/APIService.d.ts +1 -1
  5. package/dist/api/APIService.js +2 -6
  6. package/dist/api/APIService.js.map +1 -1
  7. package/dist/api/HttpsAPIService.d.ts +10 -0
  8. package/dist/api/HttpsAPIService.js +48 -0
  9. package/dist/api/HttpsAPIService.js.map +1 -0
  10. package/dist/api/check/APIChecker.d.ts +12 -0
  11. package/dist/api/check/APIChecker.js +3 -0
  12. package/dist/api/check/APIChecker.js.map +1 -0
  13. package/dist/api/check/CheckableAPIRequest.d.ts +13 -0
  14. package/dist/api/check/CheckableAPIRequest.js +63 -0
  15. package/dist/api/check/CheckableAPIRequest.js.map +1 -0
  16. package/dist/api/check/request/CheckableDeleteRequest.d.ts +7 -0
  17. package/dist/api/check/request/CheckableDeleteRequest.js +15 -0
  18. package/dist/api/check/request/CheckableDeleteRequest.js.map +1 -0
  19. package/dist/api/check/request/CheckableGetRequest.d.ts +7 -0
  20. package/dist/api/check/request/CheckableGetRequest.js +15 -0
  21. package/dist/api/check/request/CheckableGetRequest.js.map +1 -0
  22. package/dist/api/check/request/CheckablePostRequest.d.ts +7 -0
  23. package/dist/api/check/request/CheckablePostRequest.js +15 -0
  24. package/dist/api/check/request/CheckablePostRequest.js.map +1 -0
  25. package/dist/api/check/request/CheckablePutRequest.d.ts +7 -0
  26. package/dist/api/check/request/CheckablePutRequest.js +15 -0
  27. package/dist/api/check/request/CheckablePutRequest.js.map +1 -0
  28. package/dist/api/express/ExpressStandardConfiguration.d.ts +6 -0
  29. package/dist/api/express/ExpressStandardConfiguration.js +7 -4
  30. package/dist/api/express/ExpressStandardConfiguration.js.map +1 -1
  31. package/dist/api/request/DeleteRequest.d.ts +1 -1
  32. package/dist/api/request/DeleteRequest.js +1 -12
  33. package/dist/api/request/DeleteRequest.js.map +1 -1
  34. package/dist/api/request/GetRequest.d.ts +1 -1
  35. package/dist/api/request/GetRequest.js +1 -12
  36. package/dist/api/request/GetRequest.js.map +1 -1
  37. package/dist/api/request/PostRequest.d.ts +1 -1
  38. package/dist/api/request/PostRequest.js +1 -12
  39. package/dist/api/request/PostRequest.js.map +1 -1
  40. package/dist/api/request/PutRequest.d.ts +1 -1
  41. package/dist/api/request/PutRequest.js +1 -12
  42. package/dist/api/request/PutRequest.js.map +1 -1
  43. package/dist/index.d.ts +8 -1
  44. package/dist/index.js +15 -3
  45. package/dist/index.js.map +1 -1
  46. package/dist/log/Logger.d.ts +7 -0
  47. package/dist/log/Logger.js +29 -0
  48. package/dist/log/Logger.js.map +1 -0
  49. package/dist/log/LoggerManager.d.ts +7 -0
  50. package/dist/log/LoggerManager.js +64 -0
  51. package/dist/log/LoggerManager.js.map +1 -0
  52. package/dist/log/LoggerWebSocket.d.ts +10 -0
  53. package/dist/log/LoggerWebSocket.js +16 -0
  54. package/dist/log/LoggerWebSocket.js.map +1 -0
  55. package/package.json +7 -3
@@ -7,6 +7,7 @@ export declare enum RequestMethod {
7
7
  }
8
8
  export declare enum RequestContext {
9
9
  BODY = "body",
10
+ HEADERS = "headers",
10
11
  PARAMS = "params",
11
12
  QUERY = "query"
12
13
  }
@@ -23,10 +24,10 @@ export declare abstract class APIRequest {
23
24
  path: string;
24
25
  private params;
25
26
  constructor(method: RequestMethod, config: APIRequestConfig);
26
- abstract init(app: Express): Promise<void>;
27
+ abstract init(app: Express): void;
28
+ abstract apply(req: Request, res: Response): Promise<any>;
27
29
  process(req: Request, res: Response): Promise<any>;
28
30
  private checkParameters;
29
31
  private buildMissingParametersMessage;
30
32
  private findMissingParameters;
31
- abstract apply(req: Request, res: Response): Promise<any>;
32
33
  }
@@ -21,6 +21,7 @@ var RequestMethod;
21
21
  var RequestContext;
22
22
  (function (RequestContext) {
23
23
  RequestContext["BODY"] = "body";
24
+ RequestContext["HEADERS"] = "headers";
24
25
  RequestContext["PARAMS"] = "params";
25
26
  RequestContext["QUERY"] = "query";
26
27
  })(RequestContext = exports.RequestContext || (exports.RequestContext = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"APIRequest.js","sourceRoot":"","sources":["../../src/api/APIRequest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"APIRequest.js","sourceRoot":"","sources":["../../src/api/APIRequest.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ export declare class APIService {
25
25
  protected config: ExpressConfiguration;
26
26
  constructor(config: APIServiceConfig);
27
27
  init(): void;
28
- addRequest(request: APIRequest): Promise<void>;
28
+ addRequest(request: APIRequest): void;
29
29
  run(init: Function): Promise<APIServiceResponse>;
30
30
  close(finish: Function): Promise<APIServiceResponse>;
31
31
  }
@@ -37,10 +37,8 @@ class APIService {
37
37
  });
38
38
  }
39
39
  addRequest(request) {
40
- return __awaiter(this, void 0, void 0, function* () {
41
- ITRMAPIServiceGlobal.requests[request.method + "_" + request.path] = request;
42
- yield request.init(this.app);
43
- });
40
+ ITRMAPIServiceGlobal.requests[request.method + "_" + request.path] = request;
41
+ request.init(this.app);
44
42
  }
45
43
  run(init) {
46
44
  return new Promise((resolve, reject) => {
@@ -63,7 +61,6 @@ class APIService {
63
61
  close(finish) {
64
62
  return new Promise((resolve, reject) => {
65
63
  this.server.close((err) => __awaiter(this, void 0, void 0, function* () {
66
- console.log("> closing server");
67
64
  if (err)
68
65
  reject({
69
66
  status: 'Error',
@@ -84,7 +81,6 @@ class APIService {
84
81
  error: err
85
82
  });
86
83
  }
87
- console.log("> Server closed");
88
84
  }));
89
85
  });
90
86
  }
@@ -1 +1 @@
1
- {"version":3,"file":"APIService.js","sourceRoot":"","sources":["../../src/api/APIService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"APIService.js","sourceRoot":"","sources":["../../src/api/APIService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /// <reference types="node" />
2
+ import { ServerOptions } from 'https';
3
+ import { APIService, APIServiceConfig, APIServiceResponse } from "./APIService";
4
+ export declare class HttpsAPIService extends APIService {
5
+ private httpsServer;
6
+ private options;
7
+ constructor(config: APIServiceConfig, options: ServerOptions);
8
+ init(): void;
9
+ run(init: Function): Promise<APIServiceResponse>;
10
+ }
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.HttpsAPIService = void 0;
16
+ const https_1 = __importDefault(require("https"));
17
+ const APIService_1 = require("./APIService");
18
+ class HttpsAPIService extends APIService_1.APIService {
19
+ constructor(config, options) {
20
+ super(config);
21
+ this.httpsServer = undefined;
22
+ this.options = options;
23
+ }
24
+ init() {
25
+ super.init();
26
+ this.httpsServer = https_1.default.createServer(this.options, this.app);
27
+ }
28
+ run(init) {
29
+ return new Promise((resolve, reject) => {
30
+ this.server = this.httpsServer.listen(this.port, () => __awaiter(this, void 0, void 0, function* () {
31
+ console.log(`⚡️[server]: Server is running at https://localhost:${this.port}`);
32
+ try {
33
+ yield init();
34
+ resolve({ status: 'Ok', message: 'Server has been Initialized' });
35
+ }
36
+ catch (err) {
37
+ reject({
38
+ status: 'Error',
39
+ message: 'An error has ocurred in the initialization function',
40
+ error: err
41
+ });
42
+ }
43
+ }));
44
+ });
45
+ }
46
+ }
47
+ exports.HttpsAPIService = HttpsAPIService;
48
+ //# sourceMappingURL=HttpsAPIService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HttpsAPIService.js","sourceRoot":"","sources":["../../src/api/HttpsAPIService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAA6C;AAC7C,6CAAgF;AAEhF,MAAa,eAAgB,SAAQ,uBAAU;IAI3C,YAAY,MAAwB,EAAE,OAAsB;QACxD,KAAK,CAAC,MAAM,CAAC,CAAC;QAJV,gBAAW,GAAQ,SAAS,CAAC;QAKjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAEM,IAAI;QACP,KAAK,CAAC,IAAI,EAAE,CAAC;QACb,IAAI,CAAC,WAAW,GAAG,eAAK,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAClE,CAAC;IAEM,GAAG,CAAC,IAAc;QACrB,OAAO,IAAI,OAAO,CAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACvD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAS,EAAE;gBACxD,OAAO,CAAC,GAAG,CAAC,sDAAsD,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC/E,IAAI;oBACA,MAAM,IAAI,EAAE,CAAC;oBACb,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC,CAAC;iBACrE;gBAAC,OAAO,GAAQ,EAAE;oBACf,MAAM,CAAC;wBACH,MAAM,EAAE,OAAO;wBACf,OAAO,EAAE,qDAAqD;wBAC9D,KAAK,EAAE,GAAG;qBACb,CAAC,CAAC;iBACN;YACL,CAAC,CAAA,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AA/BD,0CA+BC"}
@@ -0,0 +1,12 @@
1
+ import { Request } from 'express';
2
+ export interface APICheckResult {
3
+ approved: boolean;
4
+ rejection?: {
5
+ code: number;
6
+ payload: any;
7
+ };
8
+ }
9
+ export interface APIChecker {
10
+ isValidConfiguration(config: any): boolean;
11
+ apply(config: any, req: Request): PromiseLike<APICheckResult>;
12
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=APIChecker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"APIChecker.js","sourceRoot":"","sources":["../../../src/api/check/APIChecker.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ import { Request, Response, NextFunction } from "express";
2
+ import { APIRequest, APIRequestConfig, RequestMethod } from "../APIRequest";
3
+ import { APIChecker, APICheckResult } from "./APIChecker";
4
+ export declare abstract class CheckableAPIRequest extends APIRequest {
5
+ private checkers;
6
+ constructor(method: RequestMethod, config: APIRequestConfig);
7
+ addChecker(checker: APIChecker): void;
8
+ check(req: Request, res: Response, next: NextFunction): Promise<void | Response<any, Record<string, any>>>;
9
+ private reject;
10
+ protected applyChecks(req: Request): Promise<APICheckResult>;
11
+ private applyCheck;
12
+ protected abstract getCheckConfiguration(): any;
13
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CheckableAPIRequest = void 0;
13
+ const APIRequest_1 = require("../APIRequest");
14
+ const APIService_1 = require("../APIService");
15
+ class CheckableAPIRequest extends APIRequest_1.APIRequest {
16
+ constructor(method, config) {
17
+ super(method, config);
18
+ this.checkers = [];
19
+ }
20
+ addChecker(checker) {
21
+ this.checkers.push(checker);
22
+ }
23
+ check(req, res, next) {
24
+ return __awaiter(this, void 0, void 0, function* () {
25
+ let request = APIService_1.ITRMAPIServiceGlobal.requests[req.method + "_" + req.route.path];
26
+ let result = yield request.applyChecks(req);
27
+ if (result.approved)
28
+ return yield next();
29
+ return yield request.reject(res, result);
30
+ });
31
+ }
32
+ reject(res, result) {
33
+ if (result.rejection)
34
+ return res.status(result.rejection.code).json(result.rejection.payload);
35
+ return res.status(401).json({ message: 'Unknown reason' });
36
+ }
37
+ applyChecks(req) {
38
+ return __awaiter(this, void 0, void 0, function* () {
39
+ for (let checker of this.checkers) {
40
+ let result = yield this.applyCheck(checker, req);
41
+ if (!result.approved)
42
+ return result;
43
+ }
44
+ return { approved: true };
45
+ });
46
+ }
47
+ applyCheck(checker, req) {
48
+ return __awaiter(this, void 0, void 0, function* () {
49
+ let config = this.getCheckConfiguration();
50
+ if (checker.isValidConfiguration(config))
51
+ return yield checker.apply(config, req);
52
+ return {
53
+ approved: false,
54
+ rejection: {
55
+ code: 500,
56
+ payload: { message: 'Invalid check configuration' }
57
+ }
58
+ };
59
+ });
60
+ }
61
+ }
62
+ exports.CheckableAPIRequest = CheckableAPIRequest;
63
+ //# sourceMappingURL=CheckableAPIRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckableAPIRequest.js","sourceRoot":"","sources":["../../../src/api/check/CheckableAPIRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,8CAA4E;AAC5E,8CAAqD;AAGrD,MAAsB,mBAAoB,SAAQ,uBAAU;IAGxD,YAAY,MAAqB,EAAE,MAAwB;QACvD,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAHlB,aAAQ,GAAiB,EAAE,CAAC;IAIpC,CAAC;IAEM,UAAU,CAAC,OAAmB;QACjC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAEY,KAAK,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;;YAC9D,IAAI,OAAO,GAAwB,iCAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACpG,IAAI,MAAM,GAAmB,MAAM,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YAC3D,IAAI,MAAM,CAAC,QAAQ;gBACf,OAAO,MAAM,IAAI,EAAE,CAAC;YACxB,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;KAAA;IAEO,MAAM,CAAC,GAAa,EAAE,MAAsB;QAChD,IAAI,MAAM,CAAC,SAAS;YAChB,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC5E,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC/D,CAAC;IAEe,WAAW,CAAC,GAAY;;YACpC,KAAK,IAAI,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAC/B,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBACjD,IAAI,CAAC,MAAM,CAAC,QAAQ;oBAChB,OAAO,MAAM,CAAC;aACrB;YACD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC9B,CAAC;KAAA;IAEa,UAAU,CAAC,OAAmB,EAAE,GAAY;;YACtD,IAAI,MAAM,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC1C,IAAI,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC;gBACpC,OAAO,MAAM,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC5C,OAAO;gBACH,QAAQ,EAAE,KAAK;gBACf,SAAS,EAAE;oBACP,IAAI,EAAE,GAAG;oBACT,OAAO,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE;iBACtD;aACJ,CAAC;QACN,CAAC;KAAA;CAGJ;AAhDD,kDAgDC"}
@@ -0,0 +1,7 @@
1
+ import { Express } from "express";
2
+ import { APIRequestConfig } from "../../APIRequest";
3
+ import { CheckableAPIRequest } from "../CheckableAPIRequest";
4
+ export declare abstract class CheckableDeleteRequest extends CheckableAPIRequest {
5
+ constructor(config: APIRequestConfig);
6
+ init(app: Express): void;
7
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CheckableDeleteRequest = void 0;
4
+ const APIRequest_1 = require("../../APIRequest");
5
+ const CheckableAPIRequest_1 = require("../CheckableAPIRequest");
6
+ class CheckableDeleteRequest extends CheckableAPIRequest_1.CheckableAPIRequest {
7
+ constructor(config) {
8
+ super(APIRequest_1.RequestMethod.DELETE, config);
9
+ }
10
+ init(app) {
11
+ app.delete(this.path, this.check, this.process);
12
+ }
13
+ }
14
+ exports.CheckableDeleteRequest = CheckableDeleteRequest;
15
+ //# sourceMappingURL=CheckableDeleteRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckableDeleteRequest.js","sourceRoot":"","sources":["../../../../src/api/check/request/CheckableDeleteRequest.ts"],"names":[],"mappings":";;;AACA,iDAAmE;AACnE,gEAA6D;AAE7D,MAAsB,sBAAuB,SAAQ,yCAAmB;IACpE,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAEM,IAAI,CAAC,GAAY;QACpB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;CACJ;AARD,wDAQC"}
@@ -0,0 +1,7 @@
1
+ import { Express } from "express";
2
+ import { APIRequestConfig } from "../../APIRequest";
3
+ import { CheckableAPIRequest } from "../CheckableAPIRequest";
4
+ export declare abstract class CheckableGetRequest extends CheckableAPIRequest {
5
+ constructor(config: APIRequestConfig);
6
+ init(app: Express): void;
7
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CheckableGetRequest = void 0;
4
+ const APIRequest_1 = require("../../APIRequest");
5
+ const CheckableAPIRequest_1 = require("../CheckableAPIRequest");
6
+ class CheckableGetRequest extends CheckableAPIRequest_1.CheckableAPIRequest {
7
+ constructor(config) {
8
+ super(APIRequest_1.RequestMethod.GET, config);
9
+ }
10
+ init(app) {
11
+ app.get(this.path, this.check, this.process);
12
+ }
13
+ }
14
+ exports.CheckableGetRequest = CheckableGetRequest;
15
+ //# sourceMappingURL=CheckableGetRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckableGetRequest.js","sourceRoot":"","sources":["../../../../src/api/check/request/CheckableGetRequest.ts"],"names":[],"mappings":";;;AACA,iDAAmE;AACnE,gEAA6D;AAE7D,MAAsB,mBAAoB,SAAQ,yCAAmB;IACjE,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAEM,IAAI,CAAC,GAAY;QACpB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;CACJ;AARD,kDAQC"}
@@ -0,0 +1,7 @@
1
+ import { Express } from "express";
2
+ import { APIRequestConfig } from "../../APIRequest";
3
+ import { CheckableAPIRequest } from "../CheckableAPIRequest";
4
+ export declare abstract class CheckablePostRequest extends CheckableAPIRequest {
5
+ constructor(config: APIRequestConfig);
6
+ init(app: Express): void;
7
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CheckablePostRequest = void 0;
4
+ const APIRequest_1 = require("../../APIRequest");
5
+ const CheckableAPIRequest_1 = require("../CheckableAPIRequest");
6
+ class CheckablePostRequest extends CheckableAPIRequest_1.CheckableAPIRequest {
7
+ constructor(config) {
8
+ super(APIRequest_1.RequestMethod.POST, config);
9
+ }
10
+ init(app) {
11
+ app.post(this.path, this.check, this.process);
12
+ }
13
+ }
14
+ exports.CheckablePostRequest = CheckablePostRequest;
15
+ //# sourceMappingURL=CheckablePostRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckablePostRequest.js","sourceRoot":"","sources":["../../../../src/api/check/request/CheckablePostRequest.ts"],"names":[],"mappings":";;;AACA,iDAAmE;AACnE,gEAA6D;AAE7D,MAAsB,oBAAqB,SAAQ,yCAAmB;IAClE,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAEM,IAAI,CAAC,GAAY;QACpB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;CACJ;AARD,oDAQC"}
@@ -0,0 +1,7 @@
1
+ import { Express } from "express";
2
+ import { APIRequestConfig } from "../../APIRequest";
3
+ import { CheckableAPIRequest } from "../CheckableAPIRequest";
4
+ export declare abstract class CheckablePutRequest extends CheckableAPIRequest {
5
+ constructor(config: APIRequestConfig);
6
+ init(app: Express): void;
7
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CheckablePutRequest = void 0;
4
+ const APIRequest_1 = require("../../APIRequest");
5
+ const CheckableAPIRequest_1 = require("../CheckableAPIRequest");
6
+ class CheckablePutRequest extends CheckableAPIRequest_1.CheckableAPIRequest {
7
+ constructor(config) {
8
+ super(APIRequest_1.RequestMethod.PUT, config);
9
+ }
10
+ init(app) {
11
+ app.put(this.path, this.check, this.process);
12
+ }
13
+ }
14
+ exports.CheckablePutRequest = CheckablePutRequest;
15
+ //# sourceMappingURL=CheckablePutRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckablePutRequest.js","sourceRoot":"","sources":["../../../../src/api/check/request/CheckablePutRequest.ts"],"names":[],"mappings":";;;AACA,iDAAmE;AACnE,gEAA6D;AAE7D,MAAsB,mBAAoB,SAAQ,yCAAmB;IACjE,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAEM,IAAI,CAAC,GAAY;QACpB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;CACJ;AARD,kDAQC"}
@@ -1,5 +1,11 @@
1
1
  import { Express } from "express";
2
+ import cors from "cors";
2
3
  import { ExpressConfiguration } from "../ExpressConfiguration";
3
4
  export declare class ExpressStandardConfiguration implements ExpressConfiguration {
4
5
  apply(app: Express): void;
6
+ static getCorsConfiguration(): (req: cors.CorsRequest, res: {
7
+ statusCode?: number | undefined;
8
+ setHeader(key: string, value: string): any;
9
+ end(): any;
10
+ }, next: (err?: any) => any) => void;
5
11
  }
@@ -9,7 +9,12 @@ const body_parser_1 = __importDefault(require("body-parser"));
9
9
  const APIService_1 = require("../APIService");
10
10
  class ExpressStandardConfiguration {
11
11
  apply(app) {
12
- app.use((0, cors_1.default)({
12
+ app.use(ExpressStandardConfiguration.getCorsConfiguration());
13
+ app.use(body_parser_1.default.json({ limit: '50mb' }));
14
+ app.use(body_parser_1.default.urlencoded({ limit: '50mb', extended: true }));
15
+ }
16
+ static getCorsConfiguration() {
17
+ return (0, cors_1.default)({
13
18
  origin: function (origin, callback) {
14
19
  let whitelist = APIService_1.ITRMAPIServiceGlobal.whitelist;
15
20
  if (whitelist.length == 0 || (origin && whitelist.indexOf(origin) !== -1))
@@ -17,9 +22,7 @@ class ExpressStandardConfiguration {
17
22
  else
18
23
  callback(new Error('Not allowed by CORS'), false);
19
24
  }
20
- }));
21
- app.use(body_parser_1.default.json({ limit: '50mb' }));
22
- app.use(body_parser_1.default.urlencoded({ limit: '50mb', extended: true }));
25
+ });
23
26
  }
24
27
  }
25
28
  exports.ExpressStandardConfiguration = ExpressStandardConfiguration;
@@ -1 +1 @@
1
- {"version":3,"file":"ExpressStandardConfiguration.js","sourceRoot":"","sources":["../../../src/api/express/ExpressStandardConfiguration.ts"],"names":[],"mappings":";;;;;;AACA,gDAAwB;AACxB,8DAAqC;AAErC,8CAAqD;AAErD,MAAa,4BAA4B;IAC9B,KAAK,CAAC,GAAY;QACrB,GAAG,CAAC,GAAG,CAAC,IAAA,cAAI,EAAC;YACT,MAAM,EAAE,UAAU,MAAM,EAAE,QAAQ;gBAC9B,IAAI,SAAS,GAAG,iCAAoB,CAAC,SAAS,CAAC;gBAC/C,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBACrE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;;oBAErB,QAAQ,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,EAAE,KAAK,CAAC,CAAC;YAC1D,CAAC;SACJ,CAAC,CAAC,CAAC;QACJ,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAC5C,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACtE,CAAC;CACJ;AAdD,oEAcC"}
1
+ {"version":3,"file":"ExpressStandardConfiguration.js","sourceRoot":"","sources":["../../../src/api/express/ExpressStandardConfiguration.ts"],"names":[],"mappings":";;;;;;AACA,gDAAwB;AACxB,8DAAqC;AAErC,8CAAqD;AAErD,MAAa,4BAA4B;IAC9B,KAAK,CAAC,GAAY;QACrB,GAAG,CAAC,GAAG,CAAC,4BAA4B,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAC7D,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAC5C,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACtE,CAAC;IAEM,MAAM,CAAC,oBAAoB;QAC9B,OAAO,IAAA,cAAI,EAAC;YACR,MAAM,EAAE,UAAU,MAAM,EAAE,QAAQ;gBAC9B,IAAI,SAAS,GAAG,iCAAoB,CAAC,SAAS,CAAC;gBAC/C,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBACrE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;;oBAErB,QAAQ,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,EAAE,KAAK,CAAC,CAAC;YAC1D,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;CACJ;AAlBD,oEAkBC"}
@@ -2,5 +2,5 @@ import { Express } from "express";
2
2
  import { APIRequest, APIRequestConfig } from "../APIRequest";
3
3
  export declare abstract class DeleteRequest extends APIRequest {
4
4
  constructor(config: APIRequestConfig);
5
- init(app: Express): Promise<void>;
5
+ init(app: Express): void;
6
6
  }
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.DeleteRequest = void 0;
13
4
  const APIRequest_1 = require("../APIRequest");
@@ -16,9 +7,7 @@ class DeleteRequest extends APIRequest_1.APIRequest {
16
7
  super(APIRequest_1.RequestMethod.DELETE, config);
17
8
  }
18
9
  init(app) {
19
- return __awaiter(this, void 0, void 0, function* () {
20
- app.delete(this.path, this.process);
21
- });
10
+ app.delete(this.path, this.process);
22
11
  }
23
12
  }
24
13
  exports.DeleteRequest = DeleteRequest;
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteRequest.js","sourceRoot":"","sources":["../../../src/api/request/DeleteRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,8CAA4E;AAE5E,MAAsB,aAAc,SAAQ,uBAAU;IAClD,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAEY,IAAI,CAAC,GAAY;;YAC1B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;KAAA;CACJ;AARD,sCAQC"}
1
+ {"version":3,"file":"DeleteRequest.js","sourceRoot":"","sources":["../../../src/api/request/DeleteRequest.ts"],"names":[],"mappings":";;;AACA,8CAA4E;AAE5E,MAAsB,aAAc,SAAQ,uBAAU;IAClD,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAEM,IAAI,CAAC,GAAY;QACpB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;CACJ;AARD,sCAQC"}
@@ -2,5 +2,5 @@ import { Express } from "express";
2
2
  import { APIRequest, APIRequestConfig } from "../APIRequest";
3
3
  export declare abstract class GetRequest extends APIRequest {
4
4
  constructor(config: APIRequestConfig);
5
- init(app: Express): Promise<void>;
5
+ init(app: Express): void;
6
6
  }
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.GetRequest = void 0;
13
4
  const APIRequest_1 = require("../APIRequest");
@@ -16,9 +7,7 @@ class GetRequest extends APIRequest_1.APIRequest {
16
7
  super(APIRequest_1.RequestMethod.GET, config);
17
8
  }
18
9
  init(app) {
19
- return __awaiter(this, void 0, void 0, function* () {
20
- app.get(this.path, this.process);
21
- });
10
+ app.get(this.path, this.process);
22
11
  }
23
12
  }
24
13
  exports.GetRequest = GetRequest;
@@ -1 +1 @@
1
- {"version":3,"file":"GetRequest.js","sourceRoot":"","sources":["../../../src/api/request/GetRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,8CAA4E;AAE5E,MAAsB,UAAW,SAAQ,uBAAU;IAC/C,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAEY,IAAI,CAAC,GAAY;;YAC1B,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;KAAA;CACJ;AARD,gCAQC"}
1
+ {"version":3,"file":"GetRequest.js","sourceRoot":"","sources":["../../../src/api/request/GetRequest.ts"],"names":[],"mappings":";;;AACA,8CAA4E;AAE5E,MAAsB,UAAW,SAAQ,uBAAU;IAC/C,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAEM,IAAI,CAAC,GAAY;QACpB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;CACJ;AARD,gCAQC"}
@@ -2,5 +2,5 @@ import { Express } from "express";
2
2
  import { APIRequest, APIRequestConfig } from "../APIRequest";
3
3
  export declare abstract class PostRequest extends APIRequest {
4
4
  constructor(config: APIRequestConfig);
5
- init(app: Express): Promise<void>;
5
+ init(app: Express): void;
6
6
  }
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.PostRequest = void 0;
13
4
  const APIRequest_1 = require("../APIRequest");
@@ -16,9 +7,7 @@ class PostRequest extends APIRequest_1.APIRequest {
16
7
  super(APIRequest_1.RequestMethod.POST, config);
17
8
  }
18
9
  init(app) {
19
- return __awaiter(this, void 0, void 0, function* () {
20
- app.post(this.path, this.process);
21
- });
10
+ app.post(this.path, this.process);
22
11
  }
23
12
  }
24
13
  exports.PostRequest = PostRequest;
@@ -1 +1 @@
1
- {"version":3,"file":"PostRequest.js","sourceRoot":"","sources":["../../../src/api/request/PostRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,8CAA4E;AAE5E,MAAsB,WAAY,SAAQ,uBAAU;IAChD,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAEY,IAAI,CAAC,GAAY;;YAC1B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;KAAA;CACJ;AARD,kCAQC"}
1
+ {"version":3,"file":"PostRequest.js","sourceRoot":"","sources":["../../../src/api/request/PostRequest.ts"],"names":[],"mappings":";;;AACA,8CAA4E;AAE5E,MAAsB,WAAY,SAAQ,uBAAU;IAChD,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAEM,IAAI,CAAC,GAAY;QACpB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;CACJ;AARD,kCAQC"}
@@ -2,5 +2,5 @@ import { Express } from "express";
2
2
  import { APIRequest, APIRequestConfig } from "../APIRequest";
3
3
  export declare abstract class PutRequest extends APIRequest {
4
4
  constructor(config: APIRequestConfig);
5
- init(app: Express): Promise<void>;
5
+ init(app: Express): void;
6
6
  }
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.PutRequest = void 0;
13
4
  const APIRequest_1 = require("../APIRequest");
@@ -16,9 +7,7 @@ class PutRequest extends APIRequest_1.APIRequest {
16
7
  super(APIRequest_1.RequestMethod.PUT, config);
17
8
  }
18
9
  init(app) {
19
- return __awaiter(this, void 0, void 0, function* () {
20
- app.put(this.path, this.process);
21
- });
10
+ app.put(this.path, this.process);
22
11
  }
23
12
  }
24
13
  exports.PutRequest = PutRequest;
@@ -1 +1 @@
1
- {"version":3,"file":"PutRequest.js","sourceRoot":"","sources":["../../../src/api/request/PutRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,8CAA4E;AAE5E,MAAsB,UAAW,SAAQ,uBAAU;IAC/C,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAEY,IAAI,CAAC,GAAY;;YAC1B,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;KAAA;CACJ;AARD,gCAQC"}
1
+ {"version":3,"file":"PutRequest.js","sourceRoot":"","sources":["../../../src/api/request/PutRequest.ts"],"names":[],"mappings":";;;AACA,8CAA4E;AAE5E,MAAsB,UAAW,SAAQ,uBAAU;IAC/C,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAEM,IAAI,CAAC,GAAY;QACpB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;CACJ;AARD,gCAQC"}
package/dist/index.d.ts CHANGED
@@ -1,8 +1,15 @@
1
+ export { APIServiceConfig as APIServiceConfig, APIService as APIService, APIServiceResponse as APIServiceResponse } from './api/APIService';
2
+ export { HttpsAPIService as HttpsAPIService } from './api/HttpsAPIService';
1
3
  export { ExpressConfiguration as ExpressConfiguration } from './api/ExpressConfiguration';
2
4
  export { ExpressStandardConfiguration as ExpressStandardConfiguration } from './api/express/ExpressStandardConfiguration';
3
5
  export { APIRequest as APIRequest, RequestMethod as RequestMethod, RequestContext as RequestContext, GroupedParameters as GroupedParameters, APIRequestConfig as APIRequestConfig } from './api/APIRequest';
4
- export { APIServiceConfig as APIServiceConfig, APIService as APIService, APIServiceResponse as APIServiceResponse } from './api/APIService';
5
6
  export { GetRequest as GetRequest } from './api/request/GetRequest';
6
7
  export { PostRequest as PostRequest } from './api/request/PostRequest';
7
8
  export { PutRequest as PutRequest } from './api/request/PutRequest';
8
9
  export { DeleteRequest as DeleteRequest } from './api/request/DeleteRequest';
10
+ export { APICheckResult as APICheckResult, APIChecker as APIChecker } from './api/check/APIChecker';
11
+ export { CheckableAPIRequest as CheckableAPIRequest } from './api/check/CheckableAPIRequest';
12
+ export { CheckableDeleteRequest as CheckableDeleteRequest } from './api/check/request/CheckableDeleteRequest';
13
+ export { CheckableGetRequest as CheckableGetRequest } from './api/check/request/CheckableGetRequest';
14
+ export { CheckablePostRequest as CheckablePostRequest } from './api/check/request/CheckablePostRequest';
15
+ export { CheckablePutRequest as CheckablePutRequest } from './api/check/request/CheckablePutRequest';
package/dist/index.js CHANGED
@@ -1,14 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DeleteRequest = exports.PutRequest = exports.PostRequest = exports.GetRequest = exports.APIService = exports.RequestContext = exports.RequestMethod = exports.APIRequest = exports.ExpressStandardConfiguration = void 0;
3
+ exports.CheckablePutRequest = exports.CheckablePostRequest = exports.CheckableGetRequest = exports.CheckableDeleteRequest = exports.CheckableAPIRequest = exports.DeleteRequest = exports.PutRequest = exports.PostRequest = exports.GetRequest = exports.RequestContext = exports.RequestMethod = exports.APIRequest = exports.ExpressStandardConfiguration = exports.HttpsAPIService = exports.APIService = void 0;
4
+ var APIService_1 = require("./api/APIService");
5
+ Object.defineProperty(exports, "APIService", { enumerable: true, get: function () { return APIService_1.APIService; } });
6
+ var HttpsAPIService_1 = require("./api/HttpsAPIService");
7
+ Object.defineProperty(exports, "HttpsAPIService", { enumerable: true, get: function () { return HttpsAPIService_1.HttpsAPIService; } });
4
8
  var ExpressStandardConfiguration_1 = require("./api/express/ExpressStandardConfiguration");
5
9
  Object.defineProperty(exports, "ExpressStandardConfiguration", { enumerable: true, get: function () { return ExpressStandardConfiguration_1.ExpressStandardConfiguration; } });
6
10
  var APIRequest_1 = require("./api/APIRequest");
7
11
  Object.defineProperty(exports, "APIRequest", { enumerable: true, get: function () { return APIRequest_1.APIRequest; } });
8
12
  Object.defineProperty(exports, "RequestMethod", { enumerable: true, get: function () { return APIRequest_1.RequestMethod; } });
9
13
  Object.defineProperty(exports, "RequestContext", { enumerable: true, get: function () { return APIRequest_1.RequestContext; } });
10
- var APIService_1 = require("./api/APIService");
11
- Object.defineProperty(exports, "APIService", { enumerable: true, get: function () { return APIService_1.APIService; } });
12
14
  var GetRequest_1 = require("./api/request/GetRequest");
13
15
  Object.defineProperty(exports, "GetRequest", { enumerable: true, get: function () { return GetRequest_1.GetRequest; } });
14
16
  var PostRequest_1 = require("./api/request/PostRequest");
@@ -17,4 +19,14 @@ var PutRequest_1 = require("./api/request/PutRequest");
17
19
  Object.defineProperty(exports, "PutRequest", { enumerable: true, get: function () { return PutRequest_1.PutRequest; } });
18
20
  var DeleteRequest_1 = require("./api/request/DeleteRequest");
19
21
  Object.defineProperty(exports, "DeleteRequest", { enumerable: true, get: function () { return DeleteRequest_1.DeleteRequest; } });
22
+ var CheckableAPIRequest_1 = require("./api/check/CheckableAPIRequest");
23
+ Object.defineProperty(exports, "CheckableAPIRequest", { enumerable: true, get: function () { return CheckableAPIRequest_1.CheckableAPIRequest; } });
24
+ var CheckableDeleteRequest_1 = require("./api/check/request/CheckableDeleteRequest");
25
+ Object.defineProperty(exports, "CheckableDeleteRequest", { enumerable: true, get: function () { return CheckableDeleteRequest_1.CheckableDeleteRequest; } });
26
+ var CheckableGetRequest_1 = require("./api/check/request/CheckableGetRequest");
27
+ Object.defineProperty(exports, "CheckableGetRequest", { enumerable: true, get: function () { return CheckableGetRequest_1.CheckableGetRequest; } });
28
+ var CheckablePostRequest_1 = require("./api/check/request/CheckablePostRequest");
29
+ Object.defineProperty(exports, "CheckablePostRequest", { enumerable: true, get: function () { return CheckablePostRequest_1.CheckablePostRequest; } });
30
+ var CheckablePutRequest_1 = require("./api/check/request/CheckablePutRequest");
31
+ Object.defineProperty(exports, "CheckablePutRequest", { enumerable: true, get: function () { return CheckablePutRequest_1.CheckablePutRequest; } });
20
32
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,2FAA0H;AAAjH,4IAAA,4BAA4B,OAAgC;AACrE,+CAA4M;AAAnM,wGAAA,UAAU,OAAc;AAAE,2GAAA,aAAa,OAAiB;AAAE,4GAAA,cAAc,OAAkB;AACnG,+CAA4I;AAA7F,wGAAA,UAAU,OAAc;AACvE,uDAAoE;AAA3D,wGAAA,UAAU,OAAc;AACjC,yDAAuE;AAA9D,0GAAA,WAAW,OAAe;AACnC,uDAAoE;AAA3D,wGAAA,UAAU,OAAc;AACjC,6DAA6E;AAApE,8GAAA,aAAa,OAAiB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,+CAA4I;AAA7F,wGAAA,UAAU,OAAc;AACvE,yDAA2E;AAAlE,kHAAA,eAAe,OAAmB;AAG3C,2FAA0H;AAAjH,4IAAA,4BAA4B,OAAgC;AAErE,+CAA4M;AAAnM,wGAAA,UAAU,OAAc;AAAE,2GAAA,aAAa,OAAiB;AAAE,4GAAA,cAAc,OAAkB;AACnG,uDAAoE;AAA3D,wGAAA,UAAU,OAAc;AACjC,yDAAuE;AAA9D,0GAAA,WAAW,OAAe;AACnC,uDAAoE;AAA3D,wGAAA,UAAU,OAAc;AACjC,6DAA6E;AAApE,8GAAA,aAAa,OAAiB;AAGvC,uEAA6F;AAApF,0HAAA,mBAAmB,OAAuB;AACnD,qFAA8G;AAArG,gIAAA,sBAAsB,OAA0B;AACzD,+EAAqG;AAA5F,0HAAA,mBAAmB,OAAuB;AACnD,iFAAwG;AAA/F,4HAAA,oBAAoB,OAAwB;AACrD,+EAAqG;AAA5F,0HAAA,mBAAmB,OAAuB"}
@@ -0,0 +1,7 @@
1
+ export declare class Logger {
2
+ private executor;
3
+ private url;
4
+ constructor(executor: string, url: string);
5
+ requestExecutionId(): Promise<any>;
6
+ send(log: any): Promise<any>;
7
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Logger = void 0;
7
+ const axios_1 = __importDefault(require("axios"));
8
+ class Logger {
9
+ constructor(executor, url) {
10
+ this.executor = executor;
11
+ this.url = url;
12
+ }
13
+ requestExecutionId() {
14
+ return new Promise((resolve, reject) => {
15
+ axios_1.default.post(this.executor + "/generateid", {}, { headers: { 'Content-Type': 'application/json' } })
16
+ .then(response => { resolve(response.data); })
17
+ .catch(err => { reject(err); });
18
+ });
19
+ }
20
+ send(log) {
21
+ return new Promise((resolve, reject) => {
22
+ axios_1.default.post(this.url, { log: log }, { headers: { 'Content-Type': 'application/json' } })
23
+ .then(response => { resolve(response.data); })
24
+ .catch(err => { reject(err); });
25
+ });
26
+ }
27
+ }
28
+ exports.Logger = Logger;
29
+ //# sourceMappingURL=Logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../src/log/Logger.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,MAAa,MAAM;IAIf,YAAY,QAAgB,EAAE,GAAW;QACrC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IAEM,kBAAkB;QACrB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,aAAa,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAC,CAAC;iBAChG,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC7C,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACP,CAAC;IAEM,IAAI,CAAC,GAAQ;QAChB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAC,CAAC;iBACrF,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC7C,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AAxBD,wBAwBC"}
@@ -0,0 +1,7 @@
1
+ import { LoggerWebSocket } from "./LoggerWebSocket";
2
+ export declare class LoggerManager {
3
+ private url;
4
+ constructor(url: string);
5
+ connect(): Promise<LoggerWebSocket>;
6
+ requestNextLogs(client: LoggerWebSocket, executionId: string): Promise<any[]>;
7
+ }
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.LoggerManager = void 0;
13
+ const LoggerWebSocket_1 = require("./LoggerWebSocket");
14
+ class LoggerManager {
15
+ constructor(url) {
16
+ this.url = url;
17
+ }
18
+ connect() {
19
+ return new Promise((resolve, reject) => {
20
+ let client = new LoggerWebSocket_1.LoggerWebSocket(this.url);
21
+ client.on('open', () => {
22
+ console.log("> client connected");
23
+ resolve(client);
24
+ });
25
+ client.on('message', function (data) {
26
+ let message = data.toString();
27
+ let datum = JSON.parse(message);
28
+ if (datum.action === 'LOG') {
29
+ delete datum.payload.log._id;
30
+ if (datum.payload.log.timestamp >= client.from)
31
+ client.transactions.push(datum.payload.log);
32
+ }
33
+ else if (datum.action === 'FINISHED') {
34
+ console.log("> finished");
35
+ client.resolve(client.transactions);
36
+ }
37
+ else if (datum.action === 'EMPTY_ID') {
38
+ console.log("> EMPTY_ID: ", datum.payload.message);
39
+ client.resolve([]);
40
+ }
41
+ else {
42
+ console.log("> unrecognizeable message: ", message);
43
+ client.resolve([]);
44
+ }
45
+ });
46
+ });
47
+ }
48
+ requestNextLogs(client, executionId) {
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ client.transactions = [];
51
+ let logs = yield new Promise((resolve, reject) => {
52
+ client.resolve = resolve;
53
+ client.reject = reject;
54
+ console.log("> requesting:", executionId);
55
+ client.send(executionId);
56
+ });
57
+ logs.sort(function (a, b) { return a.timestamp - b.timestamp; });
58
+ console.log("> logs:", logs.length);
59
+ return logs;
60
+ });
61
+ }
62
+ }
63
+ exports.LoggerManager = LoggerManager;
64
+ //# sourceMappingURL=LoggerManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoggerManager.js","sourceRoot":"","sources":["../../src/log/LoggerManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAAoD;AAEpD,MAAa,aAAa;IAGtB,YAAY,GAAW;QACnB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,MAAM,GAAG,IAAI,iCAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;gBACnB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;gBAClC,OAAO,CAAC,MAAM,CAAC,CAAC;YACpB,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,UAAS,IAAS;gBACnC,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC9B,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAChC,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;oBACxB,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;oBAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI;wBAC1C,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;iBACnD;qBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE;oBACpC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;oBAC1B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;iBACvC;qBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE;oBACpC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBACnD,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;iBACtB;qBAAM;oBACH,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAC;oBACpD,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;iBACtB;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAEY,eAAe,CAAC,MAAuB,EAAE,WAAmB;;YACrE,MAAM,CAAC,YAAY,GAAG,EAAE,CAAC;YACzB,IAAI,IAAI,GAAU,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACpD,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;gBACzB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;gBAC1C,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC7B,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,UAAS,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAA,CAAC,CAAC,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACpC,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;CACJ;AA/CD,sCA+CC"}
@@ -0,0 +1,10 @@
1
+ /// <reference types="node" />
2
+ import { ClientRequestArgs } from 'http';
3
+ import WebSocket from 'ws';
4
+ export declare class LoggerWebSocket extends WebSocket {
5
+ from: number;
6
+ transactions: any[];
7
+ resolve: any;
8
+ reject: any;
9
+ constructor(address: string, options?: WebSocket.ClientOptions | ClientRequestArgs | undefined);
10
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.LoggerWebSocket = void 0;
7
+ const ws_1 = __importDefault(require("ws"));
8
+ class LoggerWebSocket extends ws_1.default {
9
+ constructor(address, options) {
10
+ super(address, options);
11
+ this.from = 0;
12
+ this.transactions = [];
13
+ }
14
+ }
15
+ exports.LoggerWebSocket = LoggerWebSocket;
16
+ //# sourceMappingURL=LoggerWebSocket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoggerWebSocket.js","sourceRoot":"","sources":["../../src/log/LoggerWebSocket.ts"],"names":[],"mappings":";;;;;;AACA,4CAA2B;AAE3B,MAAa,eAAgB,SAAQ,YAAS;IAM1C,YAAY,OAAe,EAAE,OAAiE;QAC1F,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QANrB,SAAI,GAAW,CAAC,CAAC;QACjB,iBAAY,GAAU,EAAE,CAAC;IAMhC,CAAC;CACJ;AATD,0CASC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "itrm-tools",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -13,7 +13,7 @@
13
13
  "publish-beta": "npm run build && npm publish --tag beta",
14
14
  "publish-dryrun": "npm run build && npm publish --dry-run",
15
15
  "link": "npm run build && npm link",
16
- "test": "npm run build && jest"
16
+ "test": "npm run build && jest --runInBand"
17
17
  },
18
18
  "repository": {
19
19
  "type": "git",
@@ -35,11 +35,15 @@
35
35
  "dependencies": {
36
36
  "@types/express": "^4.17.15",
37
37
  "@types/node": "^18.11.18",
38
+ "@types/ws": "^8.5.4",
38
39
  "axios": "^1.2.2",
39
40
  "body-parser": "^1.20.1",
40
41
  "cors": "^2.8.5",
41
42
  "express": "^4.18.2",
43
+ "fs": "^0.0.1-security",
44
+ "https": "^1.0.0",
42
45
  "rimraf": "^3.0.2",
43
- "typescript": "^4.9.4"
46
+ "typescript": "^4.9.4",
47
+ "ws": "^8.12.0"
44
48
  }
45
49
  }