itrm-tools 1.0.8 → 1.0.10

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.
@@ -28,6 +28,7 @@ export declare abstract class APIRequest {
28
28
  abstract addToRouter(router: Router): void;
29
29
  abstract apply(req: Request, res: Response): Promise<any>;
30
30
  process(req: Request, res: Response): Promise<any>;
31
+ static buildKey(req: Request): string;
31
32
  private checkParameters;
32
33
  private buildResponseMessage;
33
34
  private buildMissingParametersMessage;
@@ -33,7 +33,7 @@ class APIRequest {
33
33
  }
34
34
  process(req, res) {
35
35
  return __awaiter(this, void 0, void 0, function* () {
36
- let request = APIService_1.ITRMAPIServiceGlobal.requests[req.method + "_" + req.route.path];
36
+ let request = APIService_1.ITRMAPIServiceGlobal.requests[APIRequest.buildKey(req)];
37
37
  let check = request.checkParameters(req);
38
38
  for (let key of Object.keys(check))
39
39
  if (check[key].status !== 'OK')
@@ -41,6 +41,11 @@ class APIRequest {
41
41
  return yield request.apply(req, res);
42
42
  });
43
43
  }
44
+ static buildKey(req) {
45
+ if (req.route.path.includes(req.baseUrl))
46
+ return req.method + "_" + req.route.path;
47
+ return req.method + "_" + req.baseUrl + req.route.path;
48
+ }
44
49
  checkParameters(req) {
45
50
  let result = {};
46
51
  for (let group of this.params)
@@ -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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"}
@@ -19,8 +19,8 @@ class APIChecker {
19
19
  }
20
20
  applyChecks(req) {
21
21
  return __awaiter(this, void 0, void 0, function* () {
22
- for (let checker of this.checks) {
23
- let result = yield checker.apply(checker.getConfig(), req);
22
+ for (let check of this.checks) {
23
+ let result = yield check.apply(check.getConfig(), req);
24
24
  if (!result.approved)
25
25
  return result;
26
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"APIChecker.js","sourceRoot":"","sources":["../../../src/api/check/APIChecker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAmBA,MAAa,UAAU;IAAvB;QACY,WAAM,GAAe,EAAE,CAAC;IAoBpC,CAAC;IAlBU,QAAQ,CAAC,OAAiB;QAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAEY,WAAW,CAAC,GAAY;;YACjC,KAAK,IAAI,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE;gBAC7B,IAAI,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC3D,IAAI,CAAC,MAAM,CAAC,QAAQ;oBAChB,OAAO,MAAM,CAAC;aACrB;YACD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC9B,CAAC;KAAA;IAEM,MAAM,CAAC,GAAa,EAAE,MAAsB;QAC/C,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;CACJ;AArBD,gCAqBC"}
1
+ {"version":3,"file":"APIChecker.js","sourceRoot":"","sources":["../../../src/api/check/APIChecker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAmBA,MAAa,UAAU;IAAvB;QACY,WAAM,GAAe,EAAE,CAAC;IAoBpC,CAAC;IAlBU,QAAQ,CAAC,OAAiB;QAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAEY,WAAW,CAAC,GAAY;;YACjC,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;gBAC3B,IAAI,MAAM,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,GAAG,CAAC,CAAC;gBACvD,IAAI,CAAC,MAAM,CAAC,QAAQ;oBAChB,OAAO,MAAM,CAAC;aACrB;YACD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC9B,CAAC;KAAA;IAEM,MAAM,CAAC,GAAa,EAAE,MAAsB;QAC/C,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;CACJ;AArBD,gCAqBC"}
@@ -23,7 +23,7 @@ class CheckableAPIRequest extends APIRequest_1.APIRequest {
23
23
  }
24
24
  check(req, res, next) {
25
25
  return __awaiter(this, void 0, void 0, function* () {
26
- let request = APIService_1.ITRMAPIServiceGlobal.requests[req.method + "_" + req.route.path];
26
+ let request = APIService_1.ITRMAPIServiceGlobal.requests[APIRequest_1.APIRequest.buildKey(req)];
27
27
  let result = yield request.checker.applyChecks(req);
28
28
  if (result.approved)
29
29
  return next();
@@ -1 +1 @@
1
- {"version":3,"file":"CheckableAPIRequest.js","sourceRoot":"","sources":["../../../src/api/check/CheckableAPIRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,8CAA4E;AAC5E,8CAAqD;AACrD,6CAAoE;AAEpE,MAAsB,mBAAoB,SAAQ,uBAAU;IAGxD,YAAY,MAAqB,EAAE,MAAwB;QACvD,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAHlB,YAAO,GAAe,IAAI,uBAAU,EAAE,CAAC;IAI/C,CAAC;IAEM,QAAQ,CAAC,OAAiB;QAC7B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACnC,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,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YACnE,IAAI,MAAM,CAAC,QAAQ;gBACf,OAAO,IAAI,EAAE,CAAC;YAClB,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC/C,CAAC;KAAA;CACJ;AAlBD,kDAkBC"}
1
+ {"version":3,"file":"CheckableAPIRequest.js","sourceRoot":"","sources":["../../../src/api/check/CheckableAPIRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,8CAA4E;AAC5E,8CAAqD;AACrD,6CAAoE;AAEpE,MAAsB,mBAAoB,SAAQ,uBAAU;IAGxD,YAAY,MAAqB,EAAE,MAAwB;QACvD,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAHlB,YAAO,GAAe,IAAI,uBAAU,EAAE,CAAC;IAI/C,CAAC;IAEM,QAAQ,CAAC,OAAiB;QAC7B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAEY,KAAK,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;;YAC9D,IAAI,OAAO,GAAwB,iCAAoB,CAAC,QAAQ,CAAC,uBAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3F,IAAI,MAAM,GAAmB,MAAM,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YACnE,IAAI,MAAM,CAAC,QAAQ;gBACf,OAAO,IAAI,EAAE,CAAC;YAClB,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC/C,CAAC;KAAA;CACJ;AAlBD,kDAkBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "itrm-tools",
3
- "version": "1.0.8",
3
+ "version": "1.0.10",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",