@pristine-ts/networking 2.0.4 → 2.0.6

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 (97) hide show
  1. package/dist/lib/cjs/errors/errors.js +1 -7
  2. package/dist/lib/cjs/errors/errors.js.map +1 -1
  3. package/dist/lib/cjs/errors/method-router-adding.error.js +7 -12
  4. package/dist/lib/cjs/errors/method-router-adding.error.js.map +1 -1
  5. package/dist/lib/cjs/errors/networking-error-code.enum.js +16 -0
  6. package/dist/lib/cjs/errors/networking-error-code.enum.js.map +1 -0
  7. package/dist/lib/cjs/errors/path-router-adding.error.js +7 -11
  8. package/dist/lib/cjs/errors/path-router-adding.error.js.map +1 -1
  9. package/dist/lib/cjs/errors/path-router-instantiation.error.js +5 -9
  10. package/dist/lib/cjs/errors/path-router-instantiation.error.js.map +1 -1
  11. package/dist/lib/cjs/errors/request-handling.error.js +4 -8
  12. package/dist/lib/cjs/errors/request-handling.error.js.map +1 -1
  13. package/dist/lib/cjs/interceptors/interceptors.js +0 -1
  14. package/dist/lib/cjs/interceptors/interceptors.js.map +1 -1
  15. package/dist/lib/cjs/interceptors/request-body-converter.interceptor.js +4 -4
  16. package/dist/lib/cjs/interceptors/request-body-converter.interceptor.js.map +1 -1
  17. package/dist/lib/cjs/networking.module.js +1 -11
  18. package/dist/lib/cjs/networking.module.js.map +1 -1
  19. package/dist/lib/cjs/responders/http-error.responder.js +108 -0
  20. package/dist/lib/cjs/responders/http-error.responder.js.map +1 -0
  21. package/dist/lib/cjs/router.js +14 -25
  22. package/dist/lib/cjs/router.js.map +1 -1
  23. package/dist/lib/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  24. package/dist/lib/esm/errors/errors.js +1 -7
  25. package/dist/lib/esm/errors/errors.js.map +1 -1
  26. package/dist/lib/esm/errors/method-router-adding.error.js +8 -13
  27. package/dist/lib/esm/errors/method-router-adding.error.js.map +1 -1
  28. package/dist/lib/esm/errors/networking-error-code.enum.js +13 -0
  29. package/dist/lib/esm/errors/networking-error-code.enum.js.map +1 -0
  30. package/dist/lib/esm/errors/path-router-adding.error.js +8 -12
  31. package/dist/lib/esm/errors/path-router-adding.error.js.map +1 -1
  32. package/dist/lib/esm/errors/path-router-instantiation.error.js +6 -10
  33. package/dist/lib/esm/errors/path-router-instantiation.error.js.map +1 -1
  34. package/dist/lib/esm/errors/request-handling.error.js +5 -9
  35. package/dist/lib/esm/errors/request-handling.error.js.map +1 -1
  36. package/dist/lib/esm/interceptors/interceptors.js +0 -1
  37. package/dist/lib/esm/interceptors/interceptors.js.map +1 -1
  38. package/dist/lib/esm/interceptors/request-body-converter.interceptor.js +5 -5
  39. package/dist/lib/esm/interceptors/request-body-converter.interceptor.js.map +1 -1
  40. package/dist/lib/esm/networking.module.js +1 -11
  41. package/dist/lib/esm/networking.module.js.map +1 -1
  42. package/dist/lib/esm/responders/http-error.responder.js +105 -0
  43. package/dist/lib/esm/responders/http-error.responder.js.map +1 -0
  44. package/dist/lib/esm/router.js +15 -26
  45. package/dist/lib/esm/router.js.map +1 -1
  46. package/dist/lib/esm/tsconfig.tsbuildinfo +1 -1
  47. package/dist/types/errors/errors.d.ts +1 -7
  48. package/dist/types/errors/method-router-adding.error.d.ts +2 -2
  49. package/dist/types/errors/networking-error-code.enum.d.ts +11 -0
  50. package/dist/types/errors/path-router-adding.error.d.ts +2 -2
  51. package/dist/types/errors/path-router-instantiation.error.d.ts +2 -2
  52. package/dist/types/errors/request-handling.error.d.ts +2 -2
  53. package/dist/types/interceptors/interceptors.d.ts +0 -1
  54. package/dist/types/networking.module.d.ts +1 -0
  55. package/dist/types/responders/http-error.responder.d.ts +43 -0
  56. package/dist/types/router.d.ts +3 -1
  57. package/package.json +7 -7
  58. package/dist/lib/cjs/errors/bad-request.http-error.js +0 -20
  59. package/dist/lib/cjs/errors/bad-request.http-error.js.map +0 -1
  60. package/dist/lib/cjs/errors/forbidden.http-error.js +0 -19
  61. package/dist/lib/cjs/errors/forbidden.http-error.js.map +0 -1
  62. package/dist/lib/cjs/errors/http.error.js +0 -25
  63. package/dist/lib/cjs/errors/http.error.js.map +0 -1
  64. package/dist/lib/cjs/errors/invalid-body.http-error.js +0 -19
  65. package/dist/lib/cjs/errors/invalid-body.http-error.js.map +0 -1
  66. package/dist/lib/cjs/errors/not-found.http-error.js +0 -19
  67. package/dist/lib/cjs/errors/not-found.http-error.js.map +0 -1
  68. package/dist/lib/cjs/errors/request-interception-execution.error.js +0 -21
  69. package/dist/lib/cjs/errors/request-interception-execution.error.js.map +0 -1
  70. package/dist/lib/cjs/errors/response-interception-execution.error.js +0 -23
  71. package/dist/lib/cjs/errors/response-interception-execution.error.js.map +0 -1
  72. package/dist/lib/cjs/interceptors/error-response-sanitizer.request-interceptor.js +0 -61
  73. package/dist/lib/cjs/interceptors/error-response-sanitizer.request-interceptor.js.map +0 -1
  74. package/dist/lib/esm/errors/bad-request.http-error.js +0 -16
  75. package/dist/lib/esm/errors/bad-request.http-error.js.map +0 -1
  76. package/dist/lib/esm/errors/forbidden.http-error.js +0 -15
  77. package/dist/lib/esm/errors/forbidden.http-error.js.map +0 -1
  78. package/dist/lib/esm/errors/http.error.js +0 -21
  79. package/dist/lib/esm/errors/http.error.js.map +0 -1
  80. package/dist/lib/esm/errors/invalid-body.http-error.js +0 -15
  81. package/dist/lib/esm/errors/invalid-body.http-error.js.map +0 -1
  82. package/dist/lib/esm/errors/not-found.http-error.js +0 -15
  83. package/dist/lib/esm/errors/not-found.http-error.js.map +0 -1
  84. package/dist/lib/esm/errors/request-interception-execution.error.js +0 -17
  85. package/dist/lib/esm/errors/request-interception-execution.error.js.map +0 -1
  86. package/dist/lib/esm/errors/response-interception-execution.error.js +0 -19
  87. package/dist/lib/esm/errors/response-interception-execution.error.js.map +0 -1
  88. package/dist/lib/esm/interceptors/error-response-sanitizer.request-interceptor.js +0 -58
  89. package/dist/lib/esm/interceptors/error-response-sanitizer.request-interceptor.js.map +0 -1
  90. package/dist/types/errors/bad-request.http-error.d.ts +0 -9
  91. package/dist/types/errors/forbidden.http-error.d.ts +0 -8
  92. package/dist/types/errors/http.error.d.ts +0 -11
  93. package/dist/types/errors/invalid-body.http-error.d.ts +0 -8
  94. package/dist/types/errors/not-found.http-error.d.ts +0 -8
  95. package/dist/types/errors/request-interception-execution.error.d.ts +0 -7
  96. package/dist/types/errors/response-interception-execution.error.d.ts +0 -7
  97. package/dist/types/interceptors/error-response-sanitizer.request-interceptor.d.ts +0 -11
@@ -14,15 +14,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./bad-request.http-error"), exports);
18
- __exportStar(require("./forbidden.http-error"), exports);
19
- __exportStar(require("./http.error"), exports);
20
- __exportStar(require("./invalid-body.http-error"), exports);
21
17
  __exportStar(require("./method-router-adding.error"), exports);
22
- __exportStar(require("./not-found.http-error"), exports);
18
+ __exportStar(require("./networking-error-code.enum"), exports);
23
19
  __exportStar(require("./path-router-adding.error"), exports);
24
20
  __exportStar(require("./path-router-instantiation.error"), exports);
25
21
  __exportStar(require("./request-handling.error"), exports);
26
- __exportStar(require("./request-interception-execution.error"), exports);
27
- __exportStar(require("./response-interception-execution.error"), exports);
28
22
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../src/errors/errors.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC;AACzC,yDAAuC;AACvC,+CAA6B;AAC7B,4DAA0C;AAC1C,+DAA6C;AAC7C,yDAAuC;AACvC,6DAA2C;AAC3C,oEAAkD;AAClD,2DAAyC;AACzC,yEAAuD;AACvD,0EAAwD"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../src/errors/errors.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+DAA6C;AAC7C,+DAA6C;AAC7C,6DAA2C;AAC3C,oEAAkD;AAClD,2DAAyC"}
@@ -2,23 +2,18 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MethodRouterAddingError = void 0;
4
4
  const common_1 = require("@pristine-ts/common");
5
- const method_router_node_1 = require("../nodes/method-router.node");
6
5
  /**
7
6
  * This Error is thrown when there's an error that happens when the networking is being initialized.
8
7
  * It is thrown when trying to add a child node to a MethodRouterNode, since a MethodRouterNode is a leaf it cannot have any children.
9
8
  */
10
- class MethodRouterAddingError extends common_1.LoggableError {
9
+ class MethodRouterAddingError extends common_1.PristineError {
11
10
  constructor(message, splitPaths, method, route, methodRouterNode) {
12
- super(message, {
13
- splitPaths,
14
- method,
15
- route,
16
- methodRouterNode,
17
- });
18
- // Set the prototype explicitly.
19
- // As specified in the documentation in TypeScript
20
- // https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work
21
- Object.setPrototypeOf(this, method_router_node_1.MethodRouterNode.prototype);
11
+ super(message, { details: {
12
+ splitPaths,
13
+ method,
14
+ route,
15
+ methodRouterNode,
16
+ } });
22
17
  }
23
18
  }
24
19
  exports.MethodRouterAddingError = MethodRouterAddingError;
@@ -1 +1 @@
1
- {"version":3,"file":"method-router-adding.error.js","sourceRoot":"","sources":["../../../../src/errors/method-router-adding.error.ts"],"names":[],"mappings":";;;AAAA,gDAA8D;AAE9D,oEAA6D;AAE7D;;;GAGG;AACH,MAAa,uBAAwB,SAAQ,sBAAa;IAExD,YAAmB,OAAe,EAAE,UAAoB,EAAE,MAA2B,EAAE,KAAY,EAAE,gBAAkC;QACrI,KAAK,CAAC,OAAO,EAAE;YACb,UAAU;YACV,MAAM;YACN,KAAK;YACL,gBAAgB;SACjB,CAAC,CAAC;QAEH,gCAAgC;QAChC,kDAAkD;QAClD,gIAAgI;QAChI,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,qCAAgB,CAAC,SAAS,CAAC,CAAC;IAC1D,CAAC;CACF;AAfD,0DAeC"}
1
+ {"version":3,"file":"method-router-adding.error.js","sourceRoot":"","sources":["../../../../src/errors/method-router-adding.error.ts"],"names":[],"mappings":";;;AAAA,gDAA8D;AAI9D;;;GAGG;AACH,MAAa,uBAAwB,SAAQ,sBAAa;IAExD,YAAmB,OAAe,EAAE,UAAoB,EAAE,MAA2B,EAAE,KAAY,EAAE,gBAAkC;QACrI,KAAK,CAAC,OAAO,EAAE,EAAC,OAAO,EAAE;gBACvB,UAAU;gBACV,MAAM;gBACN,KAAK;gBACL,gBAAgB;aACjB,EAAC,CAAC,CAAC;IAAE,CAAC;CACV;AATD,0DASC"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NetworkingErrorCode = void 0;
4
+ /**
5
+ * Error-code catalog owned by `@pristine-ts/networking`. Surfaced via
6
+ * `PristineErrorOptions.code` (typed `PristineErrorCode | string`, so any enum value is
7
+ * accepted).
8
+ *
9
+ * Codes here describe HTTP-layer failures specific to the networking module — body
10
+ * parsing/validation, request mapping, etc.
11
+ */
12
+ var NetworkingErrorCode;
13
+ (function (NetworkingErrorCode) {
14
+ NetworkingErrorCode["InvalidBody"] = "INVALID_BODY";
15
+ })(NetworkingErrorCode || (exports.NetworkingErrorCode = NetworkingErrorCode = {}));
16
+ //# sourceMappingURL=networking-error-code.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"networking-error-code.enum.js","sourceRoot":"","sources":["../../../../src/errors/networking-error-code.enum.ts"],"names":[],"mappings":";;;AAAA;;;;;;;GAOG;AACH,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC7B,mDAA4B,CAAA;AAC9B,CAAC,EAFW,mBAAmB,mCAAnB,mBAAmB,QAE9B"}
@@ -6,18 +6,14 @@ const common_1 = require("@pristine-ts/common");
6
6
  * This Error is thrown when there's an error that happens when the networking is being initialized.
7
7
  * It is thrown when an error occurs when trying to add a child node to a PathRouterNode.
8
8
  */
9
- class PathRouterAddingError extends common_1.LoggableError {
9
+ class PathRouterAddingError extends common_1.PristineError {
10
10
  constructor(message, splitPaths, method, route, pathRouterNode) {
11
- super(message, {
12
- splitPaths,
13
- method,
14
- route,
15
- pathRouterNode,
16
- });
17
- // Set the prototype explicitly.
18
- // As specified in the documentation in TypeScript
19
- // https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work
20
- Object.setPrototypeOf(this, PathRouterAddingError.prototype);
11
+ super(message, { details: {
12
+ splitPaths,
13
+ method,
14
+ route,
15
+ pathRouterNode,
16
+ } });
21
17
  }
22
18
  }
23
19
  exports.PathRouterAddingError = PathRouterAddingError;
@@ -1 +1 @@
1
- {"version":3,"file":"path-router-adding.error.js","sourceRoot":"","sources":["../../../../src/errors/path-router-adding.error.ts"],"names":[],"mappings":";;;AAAA,gDAA8D;AAI9D;;;GAGG;AACH,MAAa,qBAAsB,SAAQ,sBAAa;IAEtD,YAAmB,OAAe,EAAE,UAAoB,EAAE,MAA2B,EAAE,KAAY,EAAE,cAA8B;QACjI,KAAK,CAAC,OAAO,EAAE;YACb,UAAU;YACV,MAAM;YACN,KAAK;YACL,cAAc;SACf,CAAC,CAAC;QAEH,gCAAgC;QAChC,kDAAkD;QAClD,gIAAgI;QAChI,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAC/D,CAAC;CACF;AAfD,sDAeC"}
1
+ {"version":3,"file":"path-router-adding.error.js","sourceRoot":"","sources":["../../../../src/errors/path-router-adding.error.ts"],"names":[],"mappings":";;;AAAA,gDAA8D;AAI9D;;;GAGG;AACH,MAAa,qBAAsB,SAAQ,sBAAa;IAEtD,YAAmB,OAAe,EAAE,UAAoB,EAAE,MAA2B,EAAE,KAAY,EAAE,cAA8B;QACjI,KAAK,CAAC,OAAO,EAAE,EAAC,OAAO,EAAE;gBACvB,UAAU;gBACV,MAAM;gBACN,KAAK;gBACL,cAAc;aACf,EAAC,CAAC,CAAC;IAAE,CAAC;CACV;AATD,sDASC"}
@@ -6,16 +6,12 @@ const common_1 = require("@pristine-ts/common");
6
6
  * This Error is thrown when there's an error that happens when the networking is being initialized.
7
7
  * It is thrown when an error occurs when trying to instantiate a PathRouterNode.
8
8
  */
9
- class PathRouterInstantiationError extends common_1.LoggableError {
9
+ class PathRouterInstantiationError extends common_1.PristineError {
10
10
  constructor(message, path, parent) {
11
- super(message, {
12
- path,
13
- parent,
14
- });
15
- // Set the prototype explicitly.
16
- // As specified in the documentation in TypeScript
17
- // https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work
18
- Object.setPrototypeOf(this, PathRouterInstantiationError.prototype);
11
+ super(message, { details: {
12
+ path,
13
+ parent,
14
+ } });
19
15
  }
20
16
  }
21
17
  exports.PathRouterInstantiationError = PathRouterInstantiationError;
@@ -1 +1 @@
1
- {"version":3,"file":"path-router-instantiation.error.js","sourceRoot":"","sources":["../../../../src/errors/path-router-instantiation.error.ts"],"names":[],"mappings":";;;AAAA,gDAAkD;AAGlD;;;GAGG;AACH,MAAa,4BAA6B,SAAQ,sBAAa;IAE7D,YAAmB,OAAe,EAAE,IAAY,EAAE,MAAuB;QACvE,KAAK,CAAC,OAAO,EAAE;YACb,IAAI;YACJ,MAAM;SACP,CAAC,CAAC;QAEH,gCAAgC;QAChC,kDAAkD;QAClD,gIAAgI;QAChI,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,4BAA4B,CAAC,SAAS,CAAC,CAAC;IACtE,CAAC;CACF;AAbD,oEAaC"}
1
+ {"version":3,"file":"path-router-instantiation.error.js","sourceRoot":"","sources":["../../../../src/errors/path-router-instantiation.error.ts"],"names":[],"mappings":";;;AAAA,gDAAkD;AAGlD;;;GAGG;AACH,MAAa,4BAA6B,SAAQ,sBAAa;IAE7D,YAAmB,OAAe,EAAE,IAAY,EAAE,MAAuB;QACvE,KAAK,CAAC,OAAO,EAAE,EAAC,OAAO,EAAE;gBACvB,IAAI;gBACJ,MAAM;aACP,EAAC,CAAC,CAAC;IAAE,CAAC;CACV;AAPD,oEAOC"}
@@ -5,15 +5,11 @@ const common_1 = require("@pristine-ts/common");
5
5
  /**
6
6
  * This Error is thrown when there's an error that happens while handling a request.
7
7
  */
8
- class RequestHandlingError extends common_1.LoggableError {
8
+ class RequestHandlingError extends common_1.PristineError {
9
9
  constructor(message, request) {
10
- super(message, {
11
- request,
12
- });
13
- // Set the prototype explicitly.
14
- // As specified in the documentation in TypeScript
15
- // https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work
16
- Object.setPrototypeOf(this, RequestHandlingError.prototype);
10
+ super(message, { details: {
11
+ request,
12
+ } });
17
13
  }
18
14
  }
19
15
  exports.RequestHandlingError = RequestHandlingError;
@@ -1 +1 @@
1
- {"version":3,"file":"request-handling.error.js","sourceRoot":"","sources":["../../../../src/errors/request-handling.error.ts"],"names":[],"mappings":";;;AAAA,gDAA2D;AAE3D;;GAEG;AACH,MAAa,oBAAqB,SAAQ,sBAAa;IAErD,YAAmB,OAAe,EAAE,OAAgB;QAClD,KAAK,CAAC,OAAO,EAAE;YACb,OAAO;SACR,CAAC,CAAC;QAEH,gCAAgC;QAChC,kDAAkD;QAClD,gIAAgI;QAChI,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAC9D,CAAC;CACF;AAZD,oDAYC"}
1
+ {"version":3,"file":"request-handling.error.js","sourceRoot":"","sources":["../../../../src/errors/request-handling.error.ts"],"names":[],"mappings":";;;AAAA,gDAA2D;AAE3D;;GAEG;AACH,MAAa,oBAAqB,SAAQ,sBAAa;IAErD,YAAmB,OAAe,EAAE,OAAgB;QAClD,KAAK,CAAC,OAAO,EAAE,EAAC,OAAO,EAAE;gBACvB,OAAO;aACR,EAAC,CAAC,CAAC;IAAE,CAAC;CACV;AAND,oDAMC"}
@@ -18,5 +18,4 @@ __exportStar(require("./body-mapping.request-interceptor"), exports);
18
18
  __exportStar(require("./default-content-type-response-header.interceptor"), exports);
19
19
  __exportStar(require("./request-body-converter.interceptor"), exports);
20
20
  __exportStar(require("./response-headers.interceptor"), exports);
21
- __exportStar(require("./error-response-sanitizer.request-interceptor"), exports);
22
21
  //# sourceMappingURL=interceptors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interceptors.js","sourceRoot":"","sources":["../../../../src/interceptors/interceptors.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qEAAmD;AACnD,qFAAmE;AACnE,uEAAqD;AACrD,iEAA+C;AAC/C,iFAA+D"}
1
+ {"version":3,"file":"interceptors.js","sourceRoot":"","sources":["../../../../src/interceptors/interceptors.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qEAAmD;AACnD,qFAAmE;AACnE,uEAAqD;AACrD,iEAA+C"}
@@ -26,8 +26,8 @@ const tsyringe_1 = require("tsyringe");
26
26
  const networking_configuration_keys_1 = require("../networking.configuration-keys");
27
27
  const common_1 = require("@pristine-ts/common");
28
28
  const networking_module_keyname_1 = require("../networking.module.keyname");
29
- const invalid_body_http_error_1 = require("../errors/invalid-body.http-error");
30
29
  const request_interceptor_priority_enum_1 = require("../enums/request-interceptor-priority.enum");
30
+ const networking_error_code_enum_1 = require("../errors/networking-error-code.enum");
31
31
  /**
32
32
  * The Request Body Converter Interceptor intercepts the request and parses the body based on the Content-tTpe header.
33
33
  * It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
@@ -66,7 +66,7 @@ let RequestBodyConverterInterceptor = class RequestBodyConverterInterceptor {
66
66
  if (request.body.constructor === Date) {
67
67
  const errorMessage = "RequestBodyConverterInterceptor: This request has the Content-Type header 'application/json' but the body is a Date object which is invalid JSON.";
68
68
  this.logHandler.error(errorMessage);
69
- throw new invalid_body_http_error_1.InvalidBodyHttpError(errorMessage);
69
+ throw new common_1.BadRequestError(errorMessage, { code: networking_error_code_enum_1.NetworkingErrorCode.InvalidBody });
70
70
  }
71
71
  return request;
72
72
  case "string":
@@ -78,13 +78,13 @@ let RequestBodyConverterInterceptor = class RequestBodyConverterInterceptor {
78
78
  catch (e) {
79
79
  const errorMessage = "RequestBodyConverterInterceptor: This request has the Content-Type header 'application/json', and the body is of type string, but the body contains invalid JSON.";
80
80
  this.logHandler.error(errorMessage);
81
- throw new invalid_body_http_error_1.InvalidBodyHttpError(errorMessage);
81
+ throw new common_1.BadRequestError(errorMessage, { code: networking_error_code_enum_1.NetworkingErrorCode.InvalidBody });
82
82
  }
83
83
  break;
84
84
  default:
85
85
  const errorMessage = "RequestBodyConverterInterceptor: This request has the Content-Type header 'application/json' but the body contains invalid JSON.";
86
86
  this.logHandler.error(errorMessage);
87
- throw new invalid_body_http_error_1.InvalidBodyHttpError(errorMessage);
87
+ throw new common_1.BadRequestError(errorMessage, { code: networking_error_code_enum_1.NetworkingErrorCode.InvalidBody });
88
88
  }
89
89
  }
90
90
  return request;
@@ -1 +1 @@
1
- {"version":3,"file":"request-body-converter.interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/request-body-converter.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAA4C;AAC5C,oFAA6E;AAE7E,gDAA+G;AAC/G,4EAAqE;AAErE,+EAAuE;AACvE,kGAA0F;AAE1F;;;GAGG;AAII,IAAM,+BAA+B,GAArC,MAAM,+BAA+B;IAI1C;;;;;OAKG;IACH,YAAoF,QAAkC,EAC3E,UAAgD;QADU,aAAQ,GAAR,QAAQ,CAAS;QAC1D,eAAU,GAAV,UAAU,CAAqB;QAT3F,aAAQ,GAAG,kEAA8B,CAAC,aAAa,CAAC;IAUxD,CAAC;IAED;;;OAGG;IAEG,gBAAgB,CAAC,OAAgB;;YACrC,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;gBAC5B,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,IAAI,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,KAAK,EAAE,CAAC;gBAChD,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,MAAM,WAAW,GAAW,OAAO,CAAC,SAAS,CAAC,cAAc,CAAW,CAAC;YAExE,QAAQ,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;gBAClC,KAAK,kBAAkB;oBAGrB,QAAQ,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;wBAC5B,KAAK,WAAW;4BACd,OAAO,OAAO,CAAC;wBACjB,KAAK,QAAQ;4BACX,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;gCACtC,MAAM,YAAY,GAAG,mJAAmJ,CAAC;gCACzK,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gCAEpC,MAAM,IAAI,8CAAoB,CAAC,YAAY,CAAC,CAAC;4BAC/C,CAAC;4BACD,OAAO,OAAO,CAAC;wBAEjB,KAAK,QAAQ;4BACX,IAAI,CAAC;gCACH,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oCACjB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gCAC1C,CAAC;4BACH,CAAC;4BAAC,OAAO,CAAC,EAAE,CAAC;gCACX,MAAM,YAAY,GAAG,mKAAmK,CAAC;gCACzL,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gCAEpC,MAAM,IAAI,8CAAoB,CAAC,YAAY,CAAC,CAAC;4BAC/C,CAAC;4BACD,MAAM;wBAER;4BACE,MAAM,YAAY,GAAG,kIAAkI,CAAC;4BACxJ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;4BAEpC,MAAM,IAAI,8CAAoB,CAAC,YAAY,CAAC,CAAC;oBACjD,CAAC;YAGL,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;KAAA;CAEF,CAAA;AAxEY,0EAA+B;AAmBpC;IADL,IAAA,eAAM,GAAE;;qCACuB,gBAAO;;uEAmDtC;0CAtEU,+BAA+B;IAH3C,IAAA,YAAG,EAAC,iCAAwB,CAAC,kBAAkB,CAAC;IAChD,IAAA,qBAAY,EAAC,mDAAuB,CAAC;IACrC,IAAA,qBAAU,GAAE;IAWE,WAAA,IAAA,qBAAY,EAAC,2DAA2B,CAAC,4BAA4B,CAAC,CAAA;IACtE,WAAA,IAAA,iBAAM,EAAC,qBAAqB,CAAC,CAAA;;GAX/B,+BAA+B,CAwE3C"}
1
+ {"version":3,"file":"request-body-converter.interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/request-body-converter.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAA4C;AAC5C,oFAA6E;AAE7E,gDAAgI;AAChI,4EAAqE;AAErE,kGAA0F;AAC1F,qFAAyE;AAEzE;;;GAGG;AAII,IAAM,+BAA+B,GAArC,MAAM,+BAA+B;IAI1C;;;;;OAKG;IACH,YAAoF,QAAkC,EAC3E,UAAgD;QADU,aAAQ,GAAR,QAAQ,CAAS;QAC1D,eAAU,GAAV,UAAU,CAAqB;QAT3F,aAAQ,GAAG,kEAA8B,CAAC,aAAa,CAAC;IAUxD,CAAC;IAED;;;OAGG;IAEG,gBAAgB,CAAC,OAAgB;;YACrC,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;gBAC5B,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,IAAI,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,KAAK,EAAE,CAAC;gBAChD,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,MAAM,WAAW,GAAW,OAAO,CAAC,SAAS,CAAC,cAAc,CAAW,CAAC;YAExE,QAAQ,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;gBAClC,KAAK,kBAAkB;oBAGrB,QAAQ,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;wBAC5B,KAAK,WAAW;4BACd,OAAO,OAAO,CAAC;wBACjB,KAAK,QAAQ;4BACX,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;gCACtC,MAAM,YAAY,GAAG,mJAAmJ,CAAC;gCACzK,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gCAEpC,MAAM,IAAI,wBAAe,CAAC,YAAY,EAAE,EAAC,IAAI,EAAE,gDAAmB,CAAC,WAAW,EAAC,CAAC,CAAC;4BACnF,CAAC;4BACD,OAAO,OAAO,CAAC;wBAEjB,KAAK,QAAQ;4BACX,IAAI,CAAC;gCACH,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oCACjB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gCAC1C,CAAC;4BACH,CAAC;4BAAC,OAAO,CAAC,EAAE,CAAC;gCACX,MAAM,YAAY,GAAG,mKAAmK,CAAC;gCACzL,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gCAEpC,MAAM,IAAI,wBAAe,CAAC,YAAY,EAAE,EAAC,IAAI,EAAE,gDAAmB,CAAC,WAAW,EAAC,CAAC,CAAC;4BACnF,CAAC;4BACD,MAAM;wBAER;4BACE,MAAM,YAAY,GAAG,kIAAkI,CAAC;4BACxJ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;4BAEpC,MAAM,IAAI,wBAAe,CAAC,YAAY,EAAE,EAAC,IAAI,EAAE,gDAAmB,CAAC,WAAW,EAAC,CAAC,CAAC;oBACrF,CAAC;YAGL,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;KAAA;CAEF,CAAA;AAxEY,0EAA+B;AAmBpC;IADL,IAAA,eAAM,GAAE;;qCACuB,gBAAO;;uEAmDtC;0CAtEU,+BAA+B;IAH3C,IAAA,YAAG,EAAC,iCAAwB,CAAC,kBAAkB,CAAC;IAChD,IAAA,qBAAY,EAAC,mDAAuB,CAAC;IACrC,IAAA,qBAAU,GAAE;IAWE,WAAA,IAAA,qBAAY,EAAC,2DAA2B,CAAC,4BAA4B,CAAC,CAAA;IACtE,WAAA,IAAA,iBAAM,EAAC,qBAAqB,CAAC,CAAA;;GAX/B,+BAA+B,CAwE3C"}
@@ -36,6 +36,7 @@ __exportStar(require("./nodes/nodes"), exports);
36
36
  __exportStar(require("./resolvers/resolvers"), exports);
37
37
  __exportStar(require("./utils/utils"), exports);
38
38
  __exportStar(require("./router"), exports);
39
+ __exportStar(require("./responders/http-error.responder"), exports);
39
40
  __exportStar(require("./networking.configuration-keys"), exports);
40
41
  exports.NetworkingModule = {
41
42
  keyname: networking_module_keyname_1.NetworkingModuleKeyname,
@@ -90,17 +91,6 @@ exports.NetworkingModule = {
90
91
  new configuration_1.BooleanResolver(new configuration_1.EnvironmentVariableResolver("PRISTINE_NETWORKING_ROUTER_CACHE_IS_ACTIVE")),
91
92
  ],
92
93
  },
93
- /**
94
- * Activates or deactivates whether the Router Cache is on or off.
95
- */
96
- {
97
- parameterName: networking_module_keyname_1.NetworkingModuleKeyname + ".error_response_sanitizer.is_active",
98
- isRequired: false,
99
- defaultValue: true,
100
- defaultResolvers: [
101
- new configuration_1.BooleanResolver(new configuration_1.EnvironmentVariableResolver("PRISTINE_NETWORKING_ERROR_RESPONSE_SANITIZER_IS_ACTIVE")),
102
- ],
103
- },
104
94
  ],
105
95
  };
106
96
  //# sourceMappingURL=networking.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"networking.module.js","sourceRoot":"","sources":["../../../src/networking.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,2EAAoE;AACpE,oDAAqD;AACrD,sDAAuD;AACvD,8DAAwF;AACxF,kDAAmD;AACnD,4DAA4D;AAE5D,gDAA8B;AAC9B,sDAAoC;AACpC,0DAAwC;AACxC,gDAA8B;AAC9B,kDAAgC;AAChC,sDAAoC;AACpC,8DAA4C;AAC5C,0DAAwC;AACxC,sDAAoC;AACpC,oDAAkC;AAClC,kDAAgC;AAChC,gDAA8B;AAC9B,wDAAsC;AACtC,gDAA8B;AAE9B,2CAAyB;AAEzB,kEAAgD;AACnC,QAAA,gBAAgB,GAAoB;IAC/C,OAAO,EAAE,mDAAuB;IAChC,aAAa,EAAE;QACb,uBAAa;QACb,yBAAc;QACd,2BAAe;QACf,gCAAiB;KAClB;IACD,wBAAwB,EAAE;QACxB;;WAEG;QACH;YACE,aAAa,EAAE,mDAAuB,GAAG,gCAAgC;YACzE,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE;gBAChB,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,sDAAsD,CAAC,CAAC;aAC7G;SACF;QAED;;WAEG;QACH;YACE,aAAa,EAAE,mDAAuB,GAAG,4CAA4C;YACrF,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE;gBAChB,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,oEAAoE,CAAC,CAAC;aAC3H;SACF;QAED;;WAEG;QACH;YACE,aAAa,EAAE,mDAAuB,GAAG,mCAAmC;YAC5E,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,kBAAkB;YAChC,gBAAgB,EAAE;gBAChB,IAAI,2CAA2B,CAAC,0DAA0D,CAAC;aAC5F;SACF;QAED;;WAEG;QACH;YACE,aAAa,EAAE,mDAAuB,GAAG,uBAAuB;YAChE,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,KAAK;YACnB,gBAAgB,EAAE;gBAChB,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,4CAA4C,CAAC,CAAC;aACnG;SACF;QAED;;WAEG;QACH;YACE,aAAa,EAAE,mDAAuB,GAAG,qCAAqC;YAC9E,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE;gBAChB,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,wDAAwD,CAAC,CAAC;aAC/G;SACF;KACF;CACF,CAAA"}
1
+ {"version":3,"file":"networking.module.js","sourceRoot":"","sources":["../../../src/networking.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,2EAAoE;AACpE,oDAAqD;AACrD,sDAAuD;AACvD,8DAAwF;AACxF,kDAAmD;AACnD,4DAA4D;AAE5D,gDAA8B;AAC9B,sDAAoC;AACpC,0DAAwC;AACxC,gDAA8B;AAC9B,kDAAgC;AAChC,sDAAoC;AACpC,8DAA4C;AAC5C,0DAAwC;AACxC,sDAAoC;AACpC,oDAAkC;AAClC,kDAAgC;AAChC,gDAA8B;AAC9B,wDAAsC;AACtC,gDAA8B;AAE9B,2CAAyB;AACzB,oEAAkD;AAElD,kEAAgD;AACnC,QAAA,gBAAgB,GAAoB;IAC/C,OAAO,EAAE,mDAAuB;IAChC,aAAa,EAAE;QACb,uBAAa;QACb,yBAAc;QACd,2BAAe;QACf,gCAAiB;KAClB;IACD,wBAAwB,EAAE;QACxB;;WAEG;QACH;YACE,aAAa,EAAE,mDAAuB,GAAG,gCAAgC;YACzE,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE;gBAChB,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,sDAAsD,CAAC,CAAC;aAC7G;SACF;QAED;;WAEG;QACH;YACE,aAAa,EAAE,mDAAuB,GAAG,4CAA4C;YACrF,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE;gBAChB,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,oEAAoE,CAAC,CAAC;aAC3H;SACF;QAED;;WAEG;QACH;YACE,aAAa,EAAE,mDAAuB,GAAG,mCAAmC;YAC5E,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,kBAAkB;YAChC,gBAAgB,EAAE;gBAChB,IAAI,2CAA2B,CAAC,0DAA0D,CAAC;aAC5F;SACF;QAED;;WAEG;QACH;YACE,aAAa,EAAE,mDAAuB,GAAG,uBAAuB;YAChE,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,KAAK;YACnB,gBAAgB,EAAE;gBAChB,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,4CAA4C,CAAC,CAAC;aACnG;SACF;KAEF;CACF,CAAA"}
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.HttpErrorResponder = void 0;
13
+ const tsyringe_1 = require("tsyringe");
14
+ const common_1 = require("@pristine-ts/common");
15
+ const core_1 = require("@pristine-ts/core");
16
+ /**
17
+ * Converts any thrown value into an HTTP `Response`. Single chokepoint that the Router
18
+ * calls from its `catch` blocks — replaces the inline `if (error instanceof HttpError)`
19
+ * block that used to leak stack traces by default.
20
+ *
21
+ * **Production mode (default)**: sanitized output. `SystemError`s render as
22
+ * `{code: "INTERNAL_ERROR", message: "Internal Server Error"}` with no stack, no cause,
23
+ * no internal message. `UserError`s (validation, auth, etc.) surface their code, message,
24
+ * and `details` — those are safe by definition.
25
+ *
26
+ * **Development mode** (`pristine.environment = dev`, env override `PRISTINE_ENV=dev`):
27
+ * everything is included — message, stack, cause chain, structured details. Useful when
28
+ * debugging locally; never appropriate for a deployed instance.
29
+ *
30
+ * Anything that's not already a `PristineError` is normalized via `PristineError.from`,
31
+ * which marks it `kind: PristineErrorKind.SystemError` and propagates the original via
32
+ * the `cause` chain.
33
+ *
34
+ * The environment comes from `EnvironmentManager` — injected, not read from `process.env`
35
+ * directly — so the value flows through the normal configuration graph and can be
36
+ * overridden via `pristine.config.ts` like every other framework setting.
37
+ *
38
+ * **`request` is not set on the returned Response** — the responder doesn't know which
39
+ * inbound request triggered the error. The router assigns `response.request` itself
40
+ * after calling `respond()`.
41
+ */
42
+ let HttpErrorResponder = class HttpErrorResponder {
43
+ constructor(environmentManager) {
44
+ this.environmentManager = environmentManager;
45
+ }
46
+ /**
47
+ * Turns any thrown value into a `Response` with status and body populated. The caller
48
+ * assigns `response.request` and layers any error-response interceptors on top.
49
+ */
50
+ respond(error) {
51
+ var _a, _b;
52
+ const e = common_1.PristineError.from(error);
53
+ const isDev = this.environmentManager.getEnvironment() === core_1.PristineEnvironment.Development;
54
+ const isUserError = e.options.kind !== common_1.PristineErrorKind.SystemError;
55
+ const status = (_a = e.options.httpStatus) !== null && _a !== void 0 ? _a : 500;
56
+ const code = (_b = e.options.code) !== null && _b !== void 0 ? _b : common_1.PristineErrorCode.InternalError;
57
+ // User errors: caller wrote them, message is meant for the user. Surface verbatim.
58
+ // System errors in production: replace with a generic message so internal bugs
59
+ // never leak details to API consumers.
60
+ const messageForUser = isUserError
61
+ ? e.message
62
+ : (isDev ? e.message : (status === 500 ? "Internal Server Error" : "Error"));
63
+ const body = { code, message: messageForUser };
64
+ // `details` is only safe to expose for user errors — it's per-error-class structured
65
+ // data that the throwing code explicitly chose to surface. In dev mode we expose it
66
+ // even for system errors (helps debugging).
67
+ if (e.options.details && (isUserError || isDev)) {
68
+ body.details = e.options.details;
69
+ }
70
+ // Dev-only fields. The cause chain is walked to whatever depth exists, so a nested
71
+ // wrapper like `PristineError → BadRequestError → original ValidationError` shows
72
+ // every level.
73
+ if (isDev) {
74
+ body.debugMessage = e.message;
75
+ if (e.stack)
76
+ body.stack = e.stack;
77
+ const causeChain = this.collectCauseChain(e);
78
+ if (causeChain.length > 0)
79
+ body.cause = causeChain;
80
+ }
81
+ const response = new common_1.Response();
82
+ response.status = status;
83
+ response.body = body;
84
+ return response;
85
+ }
86
+ /**
87
+ * Walks the standard `Error.cause` chain (Node 16.9+ native) and produces a JSON-safe
88
+ * representation. Used in dev mode to surface the full error history without forcing
89
+ * the response object to carry live Error instances.
90
+ */
91
+ collectCauseChain(error) {
92
+ const chain = [];
93
+ let current = error.cause;
94
+ let depth = 0;
95
+ while (current instanceof Error && depth < 10) {
96
+ chain.push({ name: current.name, message: current.message, stack: current.stack });
97
+ current = current.cause;
98
+ depth++;
99
+ }
100
+ return chain;
101
+ }
102
+ };
103
+ exports.HttpErrorResponder = HttpErrorResponder;
104
+ exports.HttpErrorResponder = HttpErrorResponder = __decorate([
105
+ (0, tsyringe_1.injectable)(),
106
+ __metadata("design:paramtypes", [core_1.EnvironmentManager])
107
+ ], HttpErrorResponder);
108
+ //# sourceMappingURL=http-error.responder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-error.responder.js","sourceRoot":"","sources":["../../../../src/responders/http-error.responder.ts"],"names":[],"mappings":"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"}
@@ -25,22 +25,20 @@ exports.Router = void 0;
25
25
  require("reflect-metadata");
26
26
  const tsyringe_1 = require("tsyringe");
27
27
  const url_util_1 = require("./utils/url.util");
28
- const not_found_http_error_1 = require("./errors/not-found.http-error");
29
28
  const path_router_node_1 = require("./nodes/path-router.node");
30
29
  const route_1 = require("./models/route");
31
30
  const method_router_node_1 = require("./nodes/method-router.node");
32
- const forbidden_http_error_1 = require("./errors/forbidden.http-error");
33
31
  const controller_method_parameter_decorator_resolver_1 = require("./resolvers/controller-method-parameter-decorator.resolver");
34
32
  const common_1 = require("@pristine-ts/common");
35
33
  const telemetry_1 = require("@pristine-ts/telemetry");
36
34
  const controller_decorator_1 = require("./decorators/controller.decorator");
37
35
  const lodash_1 = require("lodash");
38
- const http_error_1 = require("./errors/http.error");
39
36
  const router_cache_1 = require("./cache/router.cache");
40
37
  const metadata_1 = require("@pristine-ts/metadata");
41
38
  const request_interceptor_priority_enum_1 = require("./enums/request-interceptor-priority.enum");
42
39
  const request_context_1 = require("./contexts/request-context");
43
40
  const request_context_manager_1 = require("./managers/request-context.manager");
41
+ const http_error_responder_1 = require("./responders/http-error.responder");
44
42
  /**
45
43
  * The router service is the service that creates the routing tree from the controllers.
46
44
  * It also executes a request properly by routing it to the intended controller and returns the response.
@@ -55,13 +53,14 @@ let Router = class Router {
55
53
  * @param authorizerManager The authorizer manager to validate authorization.
56
54
  * @param authenticationManager The authentication manager to validate authentication.
57
55
  */
58
- constructor(loghandler, controllerMethodParameterDecoratorResolver, authorizerManager, authenticationManager, cache, requestContextManager) {
56
+ constructor(loghandler, controllerMethodParameterDecoratorResolver, authorizerManager, authenticationManager, cache, requestContextManager, httpErrorResponder) {
59
57
  this.loghandler = loghandler;
60
58
  this.controllerMethodParameterDecoratorResolver = controllerMethodParameterDecoratorResolver;
61
59
  this.authorizerManager = authorizerManager;
62
60
  this.authenticationManager = authenticationManager;
63
61
  this.cache = cache;
64
62
  this.requestContextManager = requestContextManager;
63
+ this.httpErrorResponder = httpErrorResponder;
65
64
  this.root = new path_router_node_1.PathRouterNode("/");
66
65
  // This property is used to track whether the router has been already been properly instantiated or not.
67
66
  this.setupCompleted = false;
@@ -193,7 +192,7 @@ let Router = class Router {
193
192
  },
194
193
  });
195
194
  routerRequestExecutionSpan.end();
196
- return resolve(this.executeErrorResponseInterceptors(new not_found_http_error_1.NotFoundHttpError("No route found for method: '" + request.httpMethod + "' and path: '" + url.pathname + "'."), request, container));
195
+ return resolve(this.executeErrorResponseInterceptors(new common_1.NotFoundError("No route found for method: '" + request.httpMethod + "' and path: '" + url.pathname + "'."), request, container));
197
196
  }
198
197
  // Get the route parameters
199
198
  const routeParameters = (_a = cachedRouterRoute === null || cachedRouterRoute === void 0 ? void 0 : cachedRouterRoute.routeParameters) !== null && _a !== void 0 ? _a : methodNode.parent.getRouteParameters(splitPath.slice().reverse());
@@ -261,8 +260,8 @@ let Router = class Router {
261
260
  },
262
261
  });
263
262
  // Todo: check if the error is an UnauthorizedHttpError, else create one.
264
- if (error instanceof forbidden_http_error_1.ForbiddenHttpError === false) {
265
- error = new forbidden_http_error_1.ForbiddenHttpError("You are not allowed to access this.");
263
+ if (error instanceof common_1.ForbiddenError === false) {
264
+ error = new common_1.ForbiddenError("You are not allowed to access this.");
266
265
  }
267
266
  routerRequestExecutionSpan.end();
268
267
  return resolve(this.executeErrorResponseInterceptors(error, request, container, methodNode));
@@ -278,7 +277,7 @@ let Router = class Router {
278
277
  identity
279
278
  });
280
279
  routerRequestExecutionSpan.end();
281
- return resolve(this.executeErrorResponseInterceptors(new forbidden_http_error_1.ForbiddenHttpError("You are not allowed to access this."), request, container, methodNode));
280
+ return resolve(this.executeErrorResponseInterceptors(new common_1.ForbiddenError("You are not allowed to access this."), request, container, methodNode));
282
281
  }
283
282
  // Execute all the interceptors
284
283
  const requestInterceptorsSpan = tracingManager.startSpan(telemetry_1.SpanKeynameEnum.RequestInterceptors, telemetry_1.SpanKeynameEnum.RouterRequestExecution);
@@ -568,22 +567,11 @@ let Router = class Router {
568
567
  request,
569
568
  methodNode,
570
569
  });
571
- // Execute all the request interceptors
572
- let interceptedResponse = new common_1.Response();
573
- if (error instanceof http_error_1.HttpError) {
574
- interceptedResponse.status = error.httpStatus;
575
- interceptedResponse.body = {
576
- name: error.name,
577
- message: error.message,
578
- stack: error.stack,
579
- errors: error.errors,
580
- extra: error.extra,
581
- };
582
- }
583
- else {
584
- interceptedResponse.status = 500;
585
- interceptedResponse.body = { name: error.name, message: error.message, stack: error.stack };
586
- }
570
+ // Single chokepoint for "thrown value → HTTP response". Production mode (default)
571
+ // sanitizes internal errors and never leaks stacks; development mode surfaces
572
+ // everything. See `HttpErrorResponder` for the contract. The responder doesn't know
573
+ // about the inbound request — we set it here before any interceptor sees the response.
574
+ let interceptedResponse = this.httpErrorResponder.respond(error);
587
575
  interceptedResponse.request = request;
588
576
  // Check first if there are any Request interceptors
589
577
  if (container.isRegistered(common_1.ServiceDefinitionTagEnum.RequestInterceptor, true)) {
@@ -650,6 +638,7 @@ exports.Router = Router = __decorate([
650
638
  __param(2, (0, tsyringe_1.inject)("AuthorizerManagerInterface")),
651
639
  __param(3, (0, tsyringe_1.inject)("AuthenticationManagerInterface")),
652
640
  __metadata("design:paramtypes", [Object, controller_method_parameter_decorator_resolver_1.ControllerMethodParameterDecoratorResolver, Object, Object, router_cache_1.RouterCache,
653
- request_context_manager_1.RequestContextManager])
641
+ request_context_manager_1.RequestContextManager,
642
+ http_error_responder_1.HttpErrorResponder])
654
643
  ], Router);
655
644
  //# sourceMappingURL=router.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/router.ts"],"names":[],"mappings":"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"}