@pristine-ts/networking 2.0.4 → 2.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/cjs/errors/errors.js +1 -7
- package/dist/lib/cjs/errors/errors.js.map +1 -1
- package/dist/lib/cjs/errors/method-router-adding.error.js +7 -12
- package/dist/lib/cjs/errors/method-router-adding.error.js.map +1 -1
- package/dist/lib/cjs/errors/networking-error-code.enum.js +16 -0
- package/dist/lib/cjs/errors/networking-error-code.enum.js.map +1 -0
- package/dist/lib/cjs/errors/path-router-adding.error.js +7 -11
- package/dist/lib/cjs/errors/path-router-adding.error.js.map +1 -1
- package/dist/lib/cjs/errors/path-router-instantiation.error.js +5 -9
- package/dist/lib/cjs/errors/path-router-instantiation.error.js.map +1 -1
- package/dist/lib/cjs/errors/request-handling.error.js +4 -8
- package/dist/lib/cjs/errors/request-handling.error.js.map +1 -1
- package/dist/lib/cjs/interceptors/interceptors.js +0 -1
- package/dist/lib/cjs/interceptors/interceptors.js.map +1 -1
- package/dist/lib/cjs/interceptors/request-body-converter.interceptor.js +4 -4
- package/dist/lib/cjs/interceptors/request-body-converter.interceptor.js.map +1 -1
- package/dist/lib/cjs/networking.module.js +1 -11
- package/dist/lib/cjs/networking.module.js.map +1 -1
- package/dist/lib/cjs/responders/http-error.responder.js +108 -0
- package/dist/lib/cjs/responders/http-error.responder.js.map +1 -0
- package/dist/lib/cjs/router.js +14 -25
- package/dist/lib/cjs/router.js.map +1 -1
- package/dist/lib/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/lib/esm/errors/errors.js +1 -7
- package/dist/lib/esm/errors/errors.js.map +1 -1
- package/dist/lib/esm/errors/method-router-adding.error.js +8 -13
- package/dist/lib/esm/errors/method-router-adding.error.js.map +1 -1
- package/dist/lib/esm/errors/networking-error-code.enum.js +13 -0
- package/dist/lib/esm/errors/networking-error-code.enum.js.map +1 -0
- package/dist/lib/esm/errors/path-router-adding.error.js +8 -12
- package/dist/lib/esm/errors/path-router-adding.error.js.map +1 -1
- package/dist/lib/esm/errors/path-router-instantiation.error.js +6 -10
- package/dist/lib/esm/errors/path-router-instantiation.error.js.map +1 -1
- package/dist/lib/esm/errors/request-handling.error.js +5 -9
- package/dist/lib/esm/errors/request-handling.error.js.map +1 -1
- package/dist/lib/esm/interceptors/interceptors.js +0 -1
- package/dist/lib/esm/interceptors/interceptors.js.map +1 -1
- package/dist/lib/esm/interceptors/request-body-converter.interceptor.js +5 -5
- package/dist/lib/esm/interceptors/request-body-converter.interceptor.js.map +1 -1
- package/dist/lib/esm/networking.module.js +1 -11
- package/dist/lib/esm/networking.module.js.map +1 -1
- package/dist/lib/esm/responders/http-error.responder.js +105 -0
- package/dist/lib/esm/responders/http-error.responder.js.map +1 -0
- package/dist/lib/esm/router.js +15 -26
- package/dist/lib/esm/router.js.map +1 -1
- package/dist/lib/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/types/errors/errors.d.ts +1 -7
- package/dist/types/errors/method-router-adding.error.d.ts +2 -2
- package/dist/types/errors/networking-error-code.enum.d.ts +11 -0
- package/dist/types/errors/path-router-adding.error.d.ts +2 -2
- package/dist/types/errors/path-router-instantiation.error.d.ts +2 -2
- package/dist/types/errors/request-handling.error.d.ts +2 -2
- package/dist/types/interceptors/interceptors.d.ts +0 -1
- package/dist/types/networking.module.d.ts +1 -0
- package/dist/types/responders/http-error.responder.d.ts +43 -0
- package/dist/types/router.d.ts +3 -1
- package/package.json +7 -7
- package/dist/lib/cjs/errors/bad-request.http-error.js +0 -20
- package/dist/lib/cjs/errors/bad-request.http-error.js.map +0 -1
- package/dist/lib/cjs/errors/forbidden.http-error.js +0 -19
- package/dist/lib/cjs/errors/forbidden.http-error.js.map +0 -1
- package/dist/lib/cjs/errors/http.error.js +0 -25
- package/dist/lib/cjs/errors/http.error.js.map +0 -1
- package/dist/lib/cjs/errors/invalid-body.http-error.js +0 -19
- package/dist/lib/cjs/errors/invalid-body.http-error.js.map +0 -1
- package/dist/lib/cjs/errors/not-found.http-error.js +0 -19
- package/dist/lib/cjs/errors/not-found.http-error.js.map +0 -1
- package/dist/lib/cjs/errors/request-interception-execution.error.js +0 -21
- package/dist/lib/cjs/errors/request-interception-execution.error.js.map +0 -1
- package/dist/lib/cjs/errors/response-interception-execution.error.js +0 -23
- package/dist/lib/cjs/errors/response-interception-execution.error.js.map +0 -1
- package/dist/lib/cjs/interceptors/error-response-sanitizer.request-interceptor.js +0 -61
- package/dist/lib/cjs/interceptors/error-response-sanitizer.request-interceptor.js.map +0 -1
- package/dist/lib/esm/errors/bad-request.http-error.js +0 -16
- package/dist/lib/esm/errors/bad-request.http-error.js.map +0 -1
- package/dist/lib/esm/errors/forbidden.http-error.js +0 -15
- package/dist/lib/esm/errors/forbidden.http-error.js.map +0 -1
- package/dist/lib/esm/errors/http.error.js +0 -21
- package/dist/lib/esm/errors/http.error.js.map +0 -1
- package/dist/lib/esm/errors/invalid-body.http-error.js +0 -15
- package/dist/lib/esm/errors/invalid-body.http-error.js.map +0 -1
- package/dist/lib/esm/errors/not-found.http-error.js +0 -15
- package/dist/lib/esm/errors/not-found.http-error.js.map +0 -1
- package/dist/lib/esm/errors/request-interception-execution.error.js +0 -17
- package/dist/lib/esm/errors/request-interception-execution.error.js.map +0 -1
- package/dist/lib/esm/errors/response-interception-execution.error.js +0 -19
- package/dist/lib/esm/errors/response-interception-execution.error.js.map +0 -1
- package/dist/lib/esm/interceptors/error-response-sanitizer.request-interceptor.js +0 -58
- package/dist/lib/esm/interceptors/error-response-sanitizer.request-interceptor.js.map +0 -1
- package/dist/types/errors/bad-request.http-error.d.ts +0 -9
- package/dist/types/errors/forbidden.http-error.d.ts +0 -8
- package/dist/types/errors/http.error.d.ts +0 -11
- package/dist/types/errors/invalid-body.http-error.d.ts +0 -8
- package/dist/types/errors/not-found.http-error.d.ts +0 -8
- package/dist/types/errors/request-interception-execution.error.d.ts +0 -7
- package/dist/types/errors/response-interception-execution.error.d.ts +0 -7
- 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("./
|
|
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
|
|
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.
|
|
9
|
+
class MethodRouterAddingError extends common_1.PristineError {
|
|
11
10
|
constructor(message, splitPaths, method, route, methodRouterNode) {
|
|
12
|
-
super(message, {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
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;
|
|
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.
|
|
9
|
+
class PathRouterAddingError extends common_1.PristineError {
|
|
10
10
|
constructor(message, splitPaths, method, route, pathRouterNode) {
|
|
11
|
-
super(message, {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
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;
|
|
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.
|
|
9
|
+
class PathRouterInstantiationError extends common_1.PristineError {
|
|
10
10
|
constructor(message, path, parent) {
|
|
11
|
-
super(message, {
|
|
12
|
-
|
|
13
|
-
|
|
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
|
|
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.
|
|
8
|
+
class RequestHandlingError extends common_1.PristineError {
|
|
9
9
|
constructor(message, request) {
|
|
10
|
-
super(message, {
|
|
11
|
-
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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,
|
|
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;
|
|
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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"}
|
package/dist/lib/cjs/router.js
CHANGED
|
@@ -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
|
|
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
|
|
265
|
-
error = new
|
|
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
|
|
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
|
-
//
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
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":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,4BAAyB;AACzB,uCAAgE;AAChE,+CAAyC;AAGzC,+DAAwD;AACxD,0CAAqC;AACrC,mEAA4D;AAC5D,+HAAsH;AACtH,gDAW6B;AAG7B,sDAAgF;AAChF,4EAAqE;AAErE,mCAAiC;AAGjC,uDAAiD;AACjD,oDAAoE;AACpE,iGAAyF;AACzF,gEAA0D;AAC1D,gFAAyE;AACzE,4EAAqE;AAErE;;;GAGG;AAGI,IAAM,MAAM,GAAZ,MAAM,MAAM;IAMjB;;;;;;;;OAQG;IACH,YAAkD,UAAgD,EAC9D,0CAAsF,EACjE,iBAA8D,EAC1D,qBAAsE,EAC/F,KAAkB,EAClB,qBAA4C,EAC5C,kBAAsC;QANP,eAAU,GAAV,UAAU,CAAqB;QAC9D,+CAA0C,GAA1C,0CAA0C,CAA4C;QAChD,sBAAiB,GAAjB,iBAAiB,CAA4B;QACzC,0BAAqB,GAArB,qBAAqB,CAAgC;QAC/F,UAAK,GAAL,KAAK,CAAa;QAClB,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,uBAAkB,GAAlB,kBAAkB,CAAoB;QApBlE,SAAI,GAAe,IAAI,iCAAc,CAAC,GAAG,CAAC,CAAC;QAEnD,wGAAwG;QAChG,mBAAc,GAAG,KAAK,CAAC;IAkB/B,CAAC;IAED;;OAEG;IACH,YAAY;QACV,IAAI,OAAO,GAAG,EAAE,CAAA;QAChB,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QACxD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACI,QAAQ,CAAC,IAAY,EAAE,MAA2B,EAAE,KAAY;QACrE,MAAM,UAAU,GAAG,kBAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAE3C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM;IACC,KAAK;QACV,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,2DAA2D;QAC3D,yCAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;;YACtC,IAAI,QAAQ,GAAW,MAAA,wBAAa,CAAC,WAAW,CAAC,UAAU,EAAE,qBAAY,CAAC,kBAAkB,CAAC,mCAAI,EAAE,CAAC;YAEpG,oDAAoD;YACpD,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3B,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACpD,CAAC;YAED,MAAM,iBAAiB,GAAa,wBAAa,CAAC,WAAW,CAAC,UAAU,EAAE,qBAAY,CAAC,gBAAgB,CAAC,CAAC;YAEzG,iBAAiB,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE;gBAC5C,IAAI,yBAAc,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,EAAE,iBAAiB,EAAE,qBAAY,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE,CAAC;oBACtG,OAAO;gBACT,CAAC;gBAED,wFAAwF;gBACxF,MAAM,oBAAoB,GAAyB,yBAAc,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,EAAE,iBAAiB,EAAE,qBAAY,CAAC,KAAK,CAAC,CAAC;gBAE3I,kFAAkF;gBAClF,oCAAoC;gBACpC,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,UAAU,CAAC,SAAS,CAAC,WAAW,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;gBAC9F,KAAK,CAAC,eAAe,GAAG,qBAAY,CAAC,2BAA2B,CAAC,UAAU,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;gBAC1G,MAAM,OAAO,GAAG,IAAA,kBAAS,EAAC,EAAE,EAAE,qBAAY,CAAC,eAAe,CAAC,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,qBAAY,CAAC,eAAe,CAAC,UAAU,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC;gBACrK,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;gBAExB,wBAAwB;gBACxB,IAAI,IAAI,GAAG,oBAAoB,CAAC,IAAI,CAAC;gBAErC,6DAA6D;gBAC7D,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpC,CAAC;gBAED,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACvB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACxC,CAAC;gBAED,wBAAwB;gBACxB,MAAM,SAAS,GAAG,QAAQ,GAAG,GAAG,GAAG,IAAI,CAAC;gBAExC,qBAAqB;gBACrB,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAEnE,CAAC,CAAC,CAAA;QAEJ,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,CAAA;IAC/D,CAAC;IAED,MAAM;IACN,uHAAuH;IACvH,mEAAmE;IACnE,KAAK;IACL,cAAc;IAEd;;;;;;;OAOG;IACI,OAAO,CAAC,OAAgB,EAAE,SAA8B;QAC7D,sFAAsF;QACtF,4BAA4B;QAG5B,iFAAiF;QACjF,+EAA+E;QAC/E,kFAAkF;QAClF,iFAAiF;QACjF,gFAAgF;QAChF,iFAAiF;QACjF,gEAAgE;QAChE,MAAM,cAAc,GAA4B,SAAS,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAE7F,MAAM,0BAA0B,GAAG,cAAc,CAAC,SAAS,CAAC,2BAAe,CAAC,sBAAsB,EAAE,2BAAe,CAAC,gBAAgB,CAAC,CAAC;QAEtI,OAAO,IAAI,OAAO,CAAW,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;;YACrD,sGAAsG;YACtG,kHAAkH;YAClH,gGAAgG;YAChG,2EAA2E;YAC3E,MAAM,GAAG,GAAG,kBAAO,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC;YAE9D,sBAAsB;YACtB,MAAM,SAAS,GAAG,kBAAO,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAElD,2BAA2B;YAC3B,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,GAAG,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC;YAE7D,IAAI,iBAAiB,GAAkC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAEpF,IAAI,UAAU,GAAiC,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,UAAU,CAAC;YAE7E,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,MAAM,cAAc,GAAG,cAAc,CAAC,SAAS,CAAC,2BAAe,CAAC,0BAA0B,EAAE,2BAAe,CAAC,sBAAsB,CAAC,CAAC;gBACpI,6DAA6D;gBAC7D,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAqB,CAAC;gBAC/E,cAAc,CAAC,GAAG,EAAE,CAAC;gBAErB,yBAAyB;gBACzB,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YAC/D,CAAC;YAED,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,0BAA0B,EAAE;gBAChD,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,OAAO;gBACP,GAAG;gBACH,UAAU;aACX,CAAC,CAAC;YAEH,2CAA2C;YAC3C,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;gBACxB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,sBAAsB,EAAE;oBAC5C,UAAU,EAAE;wBACV,GAAG;qBACJ;oBACD,KAAK,EAAE;wBACL,QAAQ,EAAE,IAAI,CAAC,IAAI;wBACnB,OAAO;qBACR;iBACF,CAAC,CAAC;gBAEH,0BAA0B,CAAC,GAAG,EAAE,CAAC;gBACjC,OAAO,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,IAAI,sBAAa,CAAC,8BAA8B,GAAG,OAAO,CAAC,UAAU,GAAG,eAAe,GAAG,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;YAC5L,CAAC;YAED,2BAA2B;YAC3B,MAAM,eAAe,GAAG,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,eAAe,mCAAK,UAAU,CAAC,MAAyB,CAAC,kBAAkB,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAEpJ,IAAI,iBAAiB,KAAK,SAAS,IAAI,iBAAiB,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBACvF,iBAAiB,CAAC,eAAe,GAAG,eAAe,CAAC;YACtD,CAAC;YAED,kFAAkF;YAClF,kFAAkF;YAClF,8DAA8D;YAC9D,8EAA8E;YAC9E,6EAA6E;YAC7E,0CAA0C;YAC1C,MAAM,cAAc,GAAG,IAAI,gCAAc,EAAE,CAAC;YAC5C,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;YACjC,cAAc,CAAC,UAAU,GAAG,UAAU,CAAC;YAEvC,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,cAAc,EAAE,GAAS,EAAE;;gBAEjE,6BAA6B;gBAC7B,MAAM,4BAA4B,GAAG,cAAc,CAAC,SAAS,CAAC,2BAAe,CAAC,wBAAwB,EAAE,2BAAe,CAAC,sBAAsB,CAAC,CAAC;gBAChJ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,yDAAyD,EAAE;oBAC/E,eAAe;iBAChB,CAAC,CAAC;gBACH,+EAA+E;gBAC/E,+EAA+E;gBAC/E,gFAAgF;gBAChF,8EAA8E;gBAC9E,kEAAkE;gBAClE,MAAM,UAAU,GAAQ,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;gBACzF,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,iDAAiD,EAAE;oBACvE,eAAe;iBAChB,CAAC,CAAC;gBACH,4BAA4B,CAAC,GAAG,EAAE,CAAC;gBAEnC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,mDAAmD,EAAE;oBACzE,UAAU;oBACV,eAAe;iBAChB,CAAC,CAAC;gBAEH,IAAI,QAAuC,CAAC;gBAE5C,2BAA2B;gBAC3B,IAAI,CAAC;oBACH,MAAM,+BAA+B,GAAG,cAAc,CAAC,SAAS,CAAC,2BAAe,CAAC,2BAA2B,EAAE,2BAAe,CAAC,sBAAsB,CAAC,CAAC;oBACtJ,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;oBACvG,+BAA+B,CAAC,GAAG,EAAE,CAAC;oBAEtC,kFAAkF;oBAClF,4EAA4E;oBAC5E,+EAA+E;oBAC/E,cAAc,CAAC,QAAQ,GAAG,QAAQ,CAAC;oBAEnC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,0BAA0B,EAAE;wBAChD,UAAU,EAAE;4BACV,UAAU,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,EAAE,mCAAI,MAAM;yBACnC,EAAE,KAAK,EAAE;4BACR,QAAQ;yBACT;qBACF,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,sBAAsB,EAAE;wBAC5C,UAAU,EAAE;4BACV,YAAY,EAAE,MAAA,KAAK,CAAC,OAAO,mCAAI,eAAe;yBAC/C;wBACD,KAAK,EAAE;4BACL,KAAK;4BACL,OAAO;4BACP,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;4BACjC,SAAS;yBACV;qBACF,CAAC,CAAC;oBAEH,yEAAyE;oBACzE,IAAI,KAAK,YAAY,uBAAc,KAAK,KAAK,EAAE,CAAC;wBAC9C,KAAK,GAAG,IAAI,uBAAc,CAAC,qCAAqC,CAAC,CAAC;oBACpE,CAAC;oBAED,0BAA0B,CAAC,GAAG,EAAE,CAAC;oBACjC,OAAO,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,KAAc,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;gBACxG,CAAC;gBAED,yDAAyD;gBACzD,IAAI,CAAC;oBACH,mFAAmF;oBACnF,IAAI,CAAA,MAAM,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,MAAK,KAAK,EAAE,CAAC;wBAChH,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,yCAAyC,EAAE;4BAC/D,OAAO;4BACP,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;4BACjC,SAAS;4BACT,QAAQ;yBACT,CAAC,CAAC;wBAEH,0BAA0B,CAAC,GAAG,EAAE,CAAC;wBACjC,OAAO,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,IAAI,uBAAc,CAAC,qCAAqC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;oBACnJ,CAAC;oBAED,+BAA+B;oBAC/B,MAAM,uBAAuB,GAAG,cAAc,CAAC,SAAS,CAAC,2BAAe,CAAC,mBAAmB,EAAE,2BAAe,CAAC,sBAAsB,CAAC,CAAC;oBACtI,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;oBACjG,uBAAuB,CAAC,GAAG,EAAE,CAAC;oBAE9B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,qBAAqB,EAAE;wBAC3C,KAAK,EAAE;4BACL,OAAO;4BACP,kBAAkB;yBACnB;qBACF,CAAC,CAAA;oBAEF,qFAAqF;oBACrF,IAAI,uBAAuB,GAAsB,IAAI,CAAC,KAAK,CAAC,kCAAkC,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;oBAEjI,sEAAsE;oBACtE,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;wBAC1C,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,gEAAgE,EAAE;4BACtF,KAAK,EAAE;gCACL,OAAO;gCACP,kBAAkB;6BACnB;yBACF,CAAC,CAAC;wBACH,uBAAuB,GAAG,EAAE,CAAC;wBAE7B,KAAK,MAAM,cAAc,IAAI,UAAU,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;4BAC9D,uBAAuB,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,0CAA0C,CAAC,OAAO,CAAC,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC;wBAC7J,CAAC;wBAED,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,YAAY,EAAE,kBAAkB,EAAE,uBAAuB,CAAC,CAAC;wBAEnG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,iDAAiD,EAAE;4BACvE,OAAO;4BACP,kBAAkB;4BAClB,uBAAuB;yBACxB,CAAC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,6DAA6D,EAAE;4BACnF,OAAO;4BACP,kBAAkB;4BAClB,uBAAuB;yBACxB,CAAC,CAAC;oBACL,CAAC;oBAED,MAAM,kBAAkB,GAAG,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,GAAG,uBAAuB,CAAC,CAAC;oBAEtG,uEAAuE;oBACvE,8CAA8C;oBAC9C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;oBAE3D,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,kDAAkD,EAAE;wBACxE,KAAK,EAAE,EAAC,QAAQ,EAAC;qBAClB,CAAC,CAAA;oBAEF,IAAI,gBAA0B,CAAC;oBAC/B,oEAAoE;oBACpE,IAAI,QAAQ,YAAY,iBAAQ,EAAE,CAAC;wBACjC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,mEAAmE,EAAE;4BACzF,KAAK,EAAE,EAAC,QAAQ,EAAC;yBAClB,CAAC,CAAA;wBACF,gBAAgB,GAAG,QAAQ,CAAC;oBAC9B,CAAC;yBAAM,CAAC;wBACN,8FAA8F;wBAC9F,kFAAkF;wBAClF,gBAAgB,GAAG,IAAI,iBAAQ,EAAE,CAAC;wBAClC,gBAAgB,CAAC,MAAM,GAAG,GAAG,CAAC;wBAC9B,gBAAgB,CAAC,IAAI,GAAG,QAAQ,CAAC;wBAEjC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,uEAAuE,EAAE;4BAC7F,KAAK,EAAE;gCACL,QAAQ;gCACR,gBAAgB;6BACjB;yBACF,CAAC,CAAA;oBACJ,CAAC;oBAED,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,iEAAiE,EAAE;wBACvF,KAAK,EAAE;4BACL,QAAQ;4BACR,gBAAgB;yBACjB;qBACF,CAAC,CAAA;oBAEF,MAAM,wBAAwB,GAAG,cAAc,CAAC,SAAS,CAAC,2BAAe,CAAC,oBAAoB,EAAE,2BAAe,CAAC,sBAAsB,CAAC,CAAC;oBACxI,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;oBACrH,wBAAwB,CAAC,GAAG,EAAE,CAAC;oBAE/B,0BAA0B,CAAC,GAAG,EAAE,CAAC;oBACjC,OAAO,OAAO,CAAC,mBAAmB,CAAC,CAAC;gBACtC,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,yEAAyE,EAAE;wBAC/F,UAAU,EAAE;4BACV,YAAY,EAAE,MAAA,KAAK,CAAC,OAAO,mCAAI,eAAe;yBAC/C;wBACD,KAAK,EAAE;4BACL,KAAK;yBACN;qBACF,CAAC,CAAA;oBAEF,sDAAsD;oBAEtD,0BAA0B,CAAC,GAAG,EAAE,CAAC;oBAEjC,OAAO,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,KAAc,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;gBACxG,CAAC;YAED,CAAC,CAAA,CAAC,CAAC,CAAE,oEAAoE;QAC3E,CAAC,CAAA,CAAC,CAAA;IACJ,CAAC;IAED;;;;;;OAMG;IACK,iBAAiB,CAAC,IAAgB,EAAE,OAAe,EAAE,KAAa;QACxE,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC/B,OAAO,IAAI,IAAI,CAAC;YAClB,CAAC;YACD,IAAI,KAAK,YAAY,iCAAc,EAAE,CAAC;gBACpC,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YACtC,CAAC;YACD,IAAI,KAAK,YAAY,qCAAgB,EAAE,CAAC;gBACtC,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;YACxC,CAAC;YACD,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;OAOG;IACW,0BAA0B,CAAC,OAAgB,EAAE,SAA8B,EAAE,UAA4B;;;YACrH,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,uCAAuC,EAAE;gBAC7D,KAAK,EAAE;oBACL,OAAO;oBACP,UAAU;iBACX;aACF,CAAC,CAAA;YAEF,uCAAuC;YACvC,IAAI,kBAAkB,GAAG,OAAO,CAAC;YAEjC,oDAAoD;YACpD,IAAI,SAAS,CAAC,YAAY,CAAC,iCAAwB,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC9E,4EAA4E;gBAC5E,8EAA8E;gBAC9E,8EAA8E;gBAC9E,6EAA6E;gBAC7E,8EAA8E;gBAC9E,uCAAuC;gBACvC,MAAM,YAAY,GAAW,SAAS,CAAC,UAAU,CAAC,iCAAwB,CAAC,kBAAkB,CAAmC,CAAC,IAAI,CAAC,CAAC,CAA8B,EAAE,CAA8B,EAAE,EAAE;;oBACvM,MAAM,SAAS,GAAG,MAAA,CAAC,CAAC,QAAQ,mCAAI,kEAA8B,CAAC,OAAO,CAAC;oBACvE,MAAM,SAAS,GAAG,MAAA,CAAC,CAAC,QAAQ,mCAAI,kEAA8B,CAAC,OAAO,CAAC;oBAEvE,OAAO,SAAS,GAAG,SAAS,CAAC;gBAC/B,CAAC,CAAC,CAAC;gBAEH,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;oBACvC,yHAAyH;oBACzH,2EAA2E;oBAC3E,IAAI,OAAO,WAAW,CAAC,gBAAgB,KAAK,WAAW,EAAE,CAAC;wBACxD,sGAAsG;wBACtG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,wEAAwE,EAAE;4BAC9F,UAAU,EAAE;gCACV,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,IAAI;6BACnC;4BACD,KAAK,EAAE;gCACL,WAAW;6BACZ;yBACF,CAAC,CAAC;wBACH,SAAS;oBACX,CAAC;oBAED,IAAI,CAAC;wBACH,8CAA8C;wBAC9C,kBAAkB,GAAG,MAAA,MAAM,CAAA,MAAA,MAAC,WAA2C,EAAC,gBAAgB,mDAAG,kBAAkB,EAAE,UAAU,CAAC,CAAA,mCAAI,kBAAkB,CAAC;oBACnJ,CAAC;oBAAC,OAAO,KAAU,EAAE,CAAC;wBACpB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,kHAAkH,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,EAAE;4BAC9K,UAAU,EAAE;gCACV,YAAY,EAAE,MAAA,KAAK,CAAC,OAAO,mCAAI,eAAe;gCAC9C,eAAe,EAAE,WAAW,CAAC,WAAW,CAAC,IAAI;6BAC9C;4BACD,KAAK,EAAE;gCACL,KAAK;gCACL,WAAW;6BACZ;yBACF,CAAC,CAAC;wBACH,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,qCAAqC,EAAE;gBAC3D,KAAK,EAAE;oBACL,OAAO;oBACP,kBAAkB;oBAClB,UAAU;iBACX;aACF,CAAC,CAAA;YAEF,OAAO,kBAAkB,CAAC;QAC5B,CAAC;KAAA;IAGD;;;;;;;;OAQG;IACW,2BAA2B,CAAC,QAAkB,EAAE,OAAgB,EAAE,SAA8B,EAAE,UAA6B;;;YAC3I,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,wCAAwC,EAAE;gBAC9D,KAAK,EAAE;oBACL,QAAQ;oBACR,OAAO;oBACP,UAAU;iBACX;aACF,CAAC,CAAA;YAEF,uCAAuC;YACvC,IAAI,mBAAmB,GAAG,QAAQ,CAAC;YAEnC,oDAAoD;YACpD,IAAI,SAAS,CAAC,YAAY,CAAC,iCAAwB,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC9E,4EAA4E;gBAC5E,8EAA8E;gBAC9E,8EAA8E;gBAC9E,6EAA6E;gBAC7E,8EAA8E;gBAC9E,uCAAuC;gBACvC,MAAM,YAAY,GAAW,SAAS,CAAC,UAAU,CAAC,iCAAwB,CAAC,kBAAkB,CAAmC,CAAC,IAAI,CAAC,CAAC,CAA8B,EAAE,CAA8B,EAAE,EAAE;;oBACvM,MAAM,SAAS,GAAG,MAAA,CAAC,CAAC,QAAQ,mCAAI,kEAA8B,CAAC,OAAO,CAAC;oBACvE,MAAM,SAAS,GAAG,MAAA,CAAC,CAAC,QAAQ,mCAAI,kEAA8B,CAAC,OAAO,CAAC;oBAEvE,OAAO,SAAS,GAAG,SAAS,CAAC;gBAC/B,CAAC,CAAC,CAAC;gBAEH,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;oBACvC,kIAAkI;oBAClI,2EAA2E;oBAC3E,IAAI,OAAO,WAAW,CAAC,iBAAiB,KAAK,WAAW,EAAE,CAAC;wBACzD,uGAAuG;wBACvG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,kFAAkF,EAAE;4BACxG,UAAU,EAAE;gCACV,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,IAAI;6BACnC;4BACD,KAAK,EAAE;gCACL,WAAW;6BACZ;yBACF,CAAC,CAAC;wBACH,SAAS;oBACX,CAAC;oBAED,IAAI,CAAC;wBACH,mBAAmB,GAAG,MAAA,MAAM,CAAA,MAAA,MAAC,WAA2C,EAAC,iBAAiB,mDAAG,mBAAmB,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA,mCAAI,mBAAmB,CAAC;oBAChK,CAAC;oBAAC,OAAO,KAAU,EAAE,CAAC;wBACpB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,0HAA0H,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,EAAE;4BACtL,UAAU,EAAE;gCACV,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,IAAI;6BACnC;4BACD,KAAK,EAAE;gCACL,KAAK;gCACL,WAAW;6BACZ;yBACF,CAAC,CAAC;wBACH,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,sCAAsC,EAAE;gBAC5D,KAAK,EAAE;oBACL,QAAQ;oBACR,mBAAmB;oBACnB,OAAO;oBACP,UAAU;iBACX;aACF,CAAC,CAAA;YAEF,OAAO,mBAAmB,CAAC;QAC7B,CAAC;KAAA;IAGD;;;;;;;;OAQG;IACW,gCAAgC,CAAC,KAAY,EAAE,OAAgB,EAAE,SAA8B,EAAE,UAA6B;;;YAC1I,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,8CAA8C,EAAE;gBACpE,KAAK;gBACL,OAAO;gBACP,UAAU;aACX,CAAC,CAAA;YAEF,kFAAkF;YAClF,8EAA8E;YAC9E,oFAAoF;YACpF,uFAAuF;YACvF,IAAI,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACjE,mBAAmB,CAAC,OAAO,GAAG,OAAO,CAAC;YAEtC,oDAAoD;YACpD,IAAI,SAAS,CAAC,YAAY,CAAC,iCAAwB,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC9E,4EAA4E;gBAC5E,8EAA8E;gBAC9E,8EAA8E;gBAC9E,6EAA6E;gBAC7E,8EAA8E;gBAC9E,uCAAuC;gBACvC,MAAM,YAAY,GAAW,SAAS,CAAC,UAAU,CAAC,iCAAwB,CAAC,kBAAkB,CAAmC,CAAC,IAAI,CAAC,CAAC,CAA8B,EAAE,CAA8B,EAAE,EAAE;;oBACvM,MAAM,SAAS,GAAG,MAAA,CAAC,CAAC,QAAQ,mCAAI,kEAA8B,CAAC,OAAO,CAAC;oBACvE,MAAM,SAAS,GAAG,MAAA,CAAC,CAAC,QAAQ,mCAAI,kEAA8B,CAAC,OAAO,CAAC;oBAEvE,OAAO,SAAS,GAAG,SAAS,CAAC;gBAC/B,CAAC,CAAC,CAAC;gBAEH,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;oBACvC,kIAAkI;oBAClI,2EAA2E;oBAC3E,IAAI,OAAO,WAAW,CAAC,cAAc,KAAK,WAAW,EAAE,CAAC;wBACtD,oGAAoG;wBACpG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,sEAAsE,EAAE;4BAC5F,UAAU,EAAE;gCACV,eAAe,EAAE,WAAW,CAAC,WAAW,CAAC,IAAI;6BAC9C;4BACD,KAAK,EAAE;gCACL,WAAW;6BACZ;yBACF,CAAC,CAAC;wBACH,SAAS;oBACX,CAAC;oBAED,IAAI,CAAC;wBACH,mBAAmB,GAAG,MAAA,MAAM,CAAA,MAAA,MAAC,WAA2C,EAAC,cAAc,mDAAG,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA,mCAAI,mBAAmB,CAAC;oBACpK,CAAC;oBAAC,OAAO,KAAU,EAAE,CAAC;wBACpB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,8GAA8G,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,EAAE;4BAC1K,UAAU,EAAE;gCACV,YAAY,EAAE,MAAA,KAAK,CAAC,OAAO,mCAAI,EAAE;gCACjC,eAAe,EAAE,WAAW,CAAC,WAAW,CAAC,IAAI;6BAC9C;4BACD,KAAK,EAAE,EAAC,KAAK,EAAC;yBACf,CAAC,CAAC;wBACH,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC;YACH,CAAC;YAED,mBAAmB,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,mBAAmB,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;YAElH,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,4CAA4C,EAAE;gBAClE,KAAK,EAAE;oBACL,KAAK;oBACL,mBAAmB;oBACnB,OAAO;oBACP,UAAU;iBACX;aACF,CAAC,CAAA;YAEF,OAAO,mBAAmB,CAAC;QAC7B,CAAC;KAAA;CACF,CAAA;AAnpBY,wBAAM;iBAAN,MAAM;IAFlB,IAAA,YAAG,EAAC,iBAAiB,CAAC;IACtB,IAAA,oBAAS,GAAE;IAgBU,WAAA,IAAA,iBAAM,EAAC,qBAAqB,CAAC,CAAA;IAE7B,WAAA,IAAA,iBAAM,EAAC,4BAA4B,CAAC,CAAA;IACpC,WAAA,IAAA,iBAAM,EAAC,gCAAgC,CAAC,CAAA;6CAFoB,2FAA0C,kBAG/E,0BAAW;QACK,+CAAqB;QACxB,yCAAkB;GArB/D,MAAM,CAmpBlB"}
|