@pristine-ts/networking 0.0.192 → 0.0.196
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/interceptors/default-content-type-response-header.interceptor.js +75 -0
- package/dist/lib/cjs/interceptors/default-content-type-response-header.interceptor.js.map +1 -0
- package/dist/lib/cjs/interceptors/interceptors.js +1 -0
- package/dist/lib/cjs/interceptors/interceptors.js.map +1 -1
- package/dist/lib/cjs/interceptors/request-body-converter.interceptor.js +15 -1
- package/dist/lib/cjs/interceptors/request-body-converter.interceptor.js.map +1 -1
- package/dist/lib/cjs/interceptors/response-headers.interceptor.js +6 -0
- package/dist/lib/cjs/interceptors/response-headers.interceptor.js.map +1 -1
- package/dist/lib/cjs/networking.module.js +26 -1
- package/dist/lib/cjs/networking.module.js.map +1 -1
- package/dist/lib/cjs/nodes/path-router.node.js +17 -12
- package/dist/lib/cjs/nodes/path-router.node.js.map +1 -1
- package/dist/lib/cjs/router.js +33 -0
- package/dist/lib/cjs/router.js.map +1 -1
- package/dist/lib/cjs/utils/url.util.js +22 -0
- package/dist/lib/cjs/utils/url.util.js.map +1 -1
- package/dist/lib/esm/interceptors/default-content-type-response-header.interceptor.js +72 -0
- package/dist/lib/esm/interceptors/default-content-type-response-header.interceptor.js.map +1 -0
- package/dist/lib/esm/interceptors/interceptors.js +1 -0
- package/dist/lib/esm/interceptors/interceptors.js.map +1 -1
- package/dist/lib/esm/interceptors/request-body-converter.interceptor.js +15 -1
- package/dist/lib/esm/interceptors/request-body-converter.interceptor.js.map +1 -1
- package/dist/lib/esm/interceptors/response-headers.interceptor.js +6 -0
- package/dist/lib/esm/interceptors/response-headers.interceptor.js.map +1 -1
- package/dist/lib/esm/networking.module.js +26 -1
- package/dist/lib/esm/networking.module.js.map +1 -1
- package/dist/lib/esm/nodes/path-router.node.js +17 -12
- package/dist/lib/esm/nodes/path-router.node.js.map +1 -1
- package/dist/lib/esm/router.js +33 -0
- package/dist/lib/esm/router.js.map +1 -1
- package/dist/lib/esm/utils/url.util.js +22 -0
- package/dist/lib/esm/utils/url.util.js.map +1 -1
- package/dist/types/interceptors/default-content-type-response-header.interceptor.d.ts +28 -0
- package/dist/types/interceptors/interceptors.d.ts +1 -0
- package/dist/types/interceptors/request-body-converter.interceptor.d.ts +14 -0
- package/dist/types/interceptors/response-headers.interceptor.d.ts +6 -0
- package/dist/types/router.d.ts +12 -0
- package/dist/types/utils/url.util.d.ts +10 -0
- package/package.json +6 -6
|
@@ -0,0 +1,75 @@
|
|
|
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
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.DefaultContentTypeResponseHeaderInterceptor = void 0;
|
|
25
|
+
const common_1 = require("@pristine-ts/common");
|
|
26
|
+
const networking_module_keyname_1 = require("../networking.module.keyname");
|
|
27
|
+
const tsyringe_1 = require("tsyringe");
|
|
28
|
+
/**
|
|
29
|
+
* The Default ContentType Response Header Interceptor intercepts the response of the router and adds the default content-type header to the response.
|
|
30
|
+
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
31
|
+
*/
|
|
32
|
+
let DefaultContentTypeResponseHeaderInterceptor = class DefaultContentTypeResponseHeaderInterceptor {
|
|
33
|
+
/**
|
|
34
|
+
* The Default ContentType Response Header Interceptor intercepts the response of the router and adds the default content-type header to the response.
|
|
35
|
+
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
36
|
+
* @param defaultContentTypeResponseHeader The default Content-Type response header to set on responses that do not already have Content-Types.
|
|
37
|
+
* @param isActive Whether or not this interceptor is active.
|
|
38
|
+
* @param logHandler The log handler to output logs.
|
|
39
|
+
*/
|
|
40
|
+
constructor(defaultContentTypeResponseHeader, isActive, logHandler) {
|
|
41
|
+
this.defaultContentTypeResponseHeader = defaultContentTypeResponseHeader;
|
|
42
|
+
this.isActive = isActive;
|
|
43
|
+
this.logHandler = logHandler;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Intercepts the response from the router and adds the Content-Type header to it if it's not already there, with the default provided.
|
|
47
|
+
* @param response The response to intercept.
|
|
48
|
+
* @param request The request that triggered this response.
|
|
49
|
+
* @param methodNode The methode node.
|
|
50
|
+
*/
|
|
51
|
+
interceptResponse(response, request, methodNode) {
|
|
52
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
+
if (this.isActive === false) {
|
|
54
|
+
return response;
|
|
55
|
+
}
|
|
56
|
+
if (response.hasHeader("content-type")) {
|
|
57
|
+
return response;
|
|
58
|
+
}
|
|
59
|
+
response.setHeader("content-type", this.defaultContentTypeResponseHeader);
|
|
60
|
+
this.logHandler.debug("Set the default content type response header.", { response });
|
|
61
|
+
return response;
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
DefaultContentTypeResponseHeaderInterceptor = __decorate([
|
|
66
|
+
common_1.tag(common_1.ServiceDefinitionTagEnum.RequestInterceptor),
|
|
67
|
+
common_1.moduleScoped(networking_module_keyname_1.NetworkingModuleKeyname),
|
|
68
|
+
tsyringe_1.injectable(),
|
|
69
|
+
__param(0, tsyringe_1.inject(`%${networking_module_keyname_1.NetworkingModuleKeyname}.defaultContentTypeResponseHeader%`)),
|
|
70
|
+
__param(1, tsyringe_1.inject(`%${networking_module_keyname_1.NetworkingModuleKeyname}.defaultContentTypeResponseHeader.isActive%`)),
|
|
71
|
+
__param(2, tsyringe_1.inject("LogHandlerInterface")),
|
|
72
|
+
__metadata("design:paramtypes", [String, Boolean, Object])
|
|
73
|
+
], DefaultContentTypeResponseHeaderInterceptor);
|
|
74
|
+
exports.DefaultContentTypeResponseHeaderInterceptor = DefaultContentTypeResponseHeaderInterceptor;
|
|
75
|
+
//# sourceMappingURL=default-content-type-response-header.interceptor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-content-type-response-header.interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/default-content-type-response-header.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAmG;AACnG,4EAAqE;AAGrE,uCAA4C;AAG5C;;;GAGG;AAIH,IAAa,2CAA2C,GAAxD,MAAa,2CAA2C;IAEpD;;;;;;OAMG;IACH,YAAsG,gCAAwC,EAC/B,QAAiB,EACpE,UAA+B;QAFW,qCAAgC,GAAhC,gCAAgC,CAAQ;QAC/B,aAAQ,GAAR,QAAQ,CAAS;QACpE,eAAU,GAAV,UAAU,CAAqB;IAAE,CAAC;IAE9F;;;;;OAKG;IACG,iBAAiB,CAAC,QAAkB,EAAE,OAAgB,EAAE,UAA6B;;YACvF,IAAG,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE;gBACxB,OAAO,QAAQ,CAAC;aACnB;YAED,IAAG,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,EAAC;gBAClC,OAAO,QAAQ,CAAC;aACnB;YAED,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,CAAC,gCAAgC,CAAC,CAAC;YAC1E,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,+CAA+C,EAAE,EAAC,QAAQ,EAAC,CAAC,CAAA;YAElF,OAAO,QAAQ,CAAC;QACpB,CAAC;KAAA;CACJ,CAAA;AAjCY,2CAA2C;IAHvD,YAAG,CAAC,iCAAwB,CAAC,kBAAkB,CAAC;IAChD,qBAAY,CAAC,mDAAuB,CAAC;IACrC,qBAAU,EAAE;IAUI,WAAA,iBAAM,CAAC,IAAI,mDAAuB,oCAAoC,CAAC,CAAA;IACvE,WAAA,iBAAM,CAAC,IAAI,mDAAuB,6CAA6C,CAAC,CAAA;IAChF,WAAA,iBAAM,CAAC,qBAAqB,CAAC,CAAA;;GAXjC,2CAA2C,CAiCvD;AAjCY,kGAA2C"}
|
|
@@ -10,6 +10,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
__exportStar(require("./default-content-type-response-header.interceptor"), exports);
|
|
13
14
|
__exportStar(require("./request-body-converter.interceptor"), exports);
|
|
14
15
|
__exportStar(require("./response-headers.interceptor"), exports);
|
|
15
16
|
//# sourceMappingURL=interceptors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interceptors.js","sourceRoot":"","sources":["../../../../src/interceptors/interceptors.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uEAAqD;AACrD,iEAA+C"}
|
|
1
|
+
{"version":3,"file":"interceptors.js","sourceRoot":"","sources":["../../../../src/interceptors/interceptors.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qFAAmE;AACnE,uEAAqD;AACrD,iEAA+C"}
|
|
@@ -26,11 +26,25 @@ const tsyringe_1 = require("tsyringe");
|
|
|
26
26
|
const common_1 = require("@pristine-ts/common");
|
|
27
27
|
const networking_module_keyname_1 = require("../networking.module.keyname");
|
|
28
28
|
const invalid_body_http_error_1 = require("../errors/invalid-body.http-error");
|
|
29
|
+
/**
|
|
30
|
+
* The Request Body Converter Interceptor intercepts the request and parses the body based on the Content-tTpe header.
|
|
31
|
+
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
32
|
+
*/
|
|
29
33
|
let RequestBodyConverterInterceptor = class RequestBodyConverterInterceptor {
|
|
34
|
+
/**
|
|
35
|
+
* The Request Body Converter Interceptor intercepts the request and parses the body based on the Content-Type header.
|
|
36
|
+
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
37
|
+
* @param isActive Whether or not this interceptor is active.
|
|
38
|
+
* @param logHandler The log handler to output logs.
|
|
39
|
+
*/
|
|
30
40
|
constructor(isActive, logHandler) {
|
|
31
41
|
this.isActive = isActive;
|
|
32
42
|
this.logHandler = logHandler;
|
|
33
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Intercepts the request and parses the body based on it's Content-Type header.
|
|
46
|
+
* @param request The request to intercept.
|
|
47
|
+
*/
|
|
34
48
|
interceptRequest(request) {
|
|
35
49
|
return __awaiter(this, void 0, void 0, function* () {
|
|
36
50
|
if (this.isActive === false) {
|
|
@@ -78,7 +92,7 @@ RequestBodyConverterInterceptor = __decorate([
|
|
|
78
92
|
common_1.tag(common_1.ServiceDefinitionTagEnum.RequestInterceptor),
|
|
79
93
|
common_1.moduleScoped(networking_module_keyname_1.NetworkingModuleKeyname),
|
|
80
94
|
tsyringe_1.injectable(),
|
|
81
|
-
__param(0, tsyringe_1.inject("%" + networking_module_keyname_1.NetworkingModuleKeyname + ".
|
|
95
|
+
__param(0, tsyringe_1.inject("%" + networking_module_keyname_1.NetworkingModuleKeyname + ".requestBodyConverter.isActive%")),
|
|
82
96
|
__param(1, tsyringe_1.inject("LogHandlerInterface")),
|
|
83
97
|
__metadata("design:paramtypes", [Boolean, Object])
|
|
84
98
|
], RequestBodyConverterInterceptor);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-body-converter.interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/request-body-converter.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAA4C;AAE5C,gDAAyF;AACzF,4EAAqE;AAErE,+EAAuE;
|
|
1
|
+
{"version":3,"file":"request-body-converter.interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/request-body-converter.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAA4C;AAE5C,gDAAyF;AACzF,4EAAqE;AAErE,+EAAuE;AAEvE;;;GAGG;AAIH,IAAa,+BAA+B,GAA5C,MAAa,+BAA+B;IAExC;;;;;OAKG;IACH,YAAwG,QAAiB,EAC7D,UAA+B;QADa,aAAQ,GAAR,QAAQ,CAAS;QAC7D,eAAU,GAAV,UAAU,CAAqB;IAC3F,CAAC;IAED;;;OAGG;IACG,gBAAgB,CAAC,OAAgB;;YACnC,IAAG,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE;gBACxB,OAAO,OAAO,CAAC;aAClB;YAED,IAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,KAAK,EAAE;gBAC5C,OAAO,OAAO,CAAC;aAClB;YAED,MAAM,WAAW,GAAW,OAAO,CAAC,SAAS,CAAC,cAAc,CAAW,CAAC;YAExE,QAAQ,WAAW,CAAC,WAAW,EAAE,EAAE;gBAC/B,KAAK,kBAAkB;oBAGnB,QAAQ,OAAO,OAAO,CAAC,IAAI,EAAE;wBACzB,KAAK,WAAW;4BACZ,OAAO,OAAO,CAAC;wBACnB,KAAK,QAAQ;4BACT,IAAG,OAAO,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE;gCAClC,MAAM,YAAY,GAAG,kHAAkH,CAAC;gCACxI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gCAEpC,MAAM,IAAI,8CAAoB,CAAC,YAAY,CAAC,CAAC;6BAChD;4BACD,OAAO,OAAO,CAAC;wBAEnB,KAAK,QAAQ;4BACT,IAAI;gCACA,IAAG,OAAO,CAAC,IAAI,EAAE;oCACb,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iCAC3C;6BACJ;4BACD,OAAO,CAAC,EAAE;gCACN,MAAM,YAAY,GAAG,kIAAkI,CAAC;gCACxJ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gCAEpC,MAAM,IAAI,8CAAoB,CAAC,YAAY,CAAC,CAAC;6BAChD;4BACD,MAAM;wBAEV;4BACI,MAAM,YAAY,GAAG,iGAAiG,CAAC;4BACvH,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;4BAEpC,MAAM,IAAI,8CAAoB,CAAC,YAAY,CAAC,CAAC;qBACpD;aAGR;YAED,OAAO,OAAO,CAAC;QACnB,CAAC;KAAA;CAEJ,CAAA;AAtEY,+BAA+B;IAH3C,YAAG,CAAC,iCAAwB,CAAC,kBAAkB,CAAC;IAChD,qBAAY,CAAC,mDAAuB,CAAC;IACrC,qBAAU,EAAE;IASI,WAAA,iBAAM,CAAC,GAAG,GAAG,mDAAuB,GAAG,iCAAiC,CAAC,CAAA;IACzE,WAAA,iBAAM,CAAC,qBAAqB,CAAC,CAAA;;GATjC,+BAA+B,CAsE3C;AAtEY,0EAA+B"}
|
|
@@ -24,6 +24,12 @@ const tsyringe_1 = require("tsyringe");
|
|
|
24
24
|
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
25
25
|
*/
|
|
26
26
|
let ResponseHeadersInterceptor = class ResponseHeadersInterceptor {
|
|
27
|
+
/**
|
|
28
|
+
* Intercepts the response from the router and adds the headers specified by the response header decorator.
|
|
29
|
+
* @param response The response to intercept.
|
|
30
|
+
* @param request The request that triggered this response.
|
|
31
|
+
* @param methodNode The methode node.
|
|
32
|
+
*/
|
|
27
33
|
interceptResponse(response, request, methodNode) {
|
|
28
34
|
return __awaiter(this, void 0, void 0, function* () {
|
|
29
35
|
if (methodNode && methodNode.route.context && methodNode.route.context.hasOwnProperty("responseHeaders")) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response-headers.interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/response-headers.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,gDAAmG;AACnG,4EAAqE;AAGrE,uCAAoC;AACpC;;;GAGG;AAIH,IAAa,0BAA0B,GAAvC,MAAa,0BAA0B;
|
|
1
|
+
{"version":3,"file":"response-headers.interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/response-headers.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,gDAAmG;AACnG,4EAAqE;AAGrE,uCAAoC;AACpC;;;GAGG;AAIH,IAAa,0BAA0B,GAAvC,MAAa,0BAA0B;IAEnC;;;;;OAKG;IACG,iBAAiB,CAAC,QAAkB,EAAE,OAAgB,EAAE,UAA6B;;YACvF,IAAG,UAAU,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,iBAAiB,CAAC,EAAC;gBACpG,QAAQ,CAAC,UAAU,iCAAK,QAAQ,CAAC,OAAO,GAAK,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;aAC3F;YAED,OAAO,QAAQ,CAAC;QACpB,CAAC;KAAA;CACJ,CAAA;AAfY,0BAA0B;IAHtC,YAAG,CAAC,iCAAwB,CAAC,kBAAkB,CAAC;IAChD,qBAAY,CAAC,mDAAuB,CAAC;IACrC,qBAAU,EAAE;GACA,0BAA0B,CAetC;AAfY,gEAA0B"}
|
|
@@ -33,13 +33,38 @@ exports.NetworkingModule = {
|
|
|
33
33
|
telemetry_1.TelemetryModule,
|
|
34
34
|
],
|
|
35
35
|
configurationDefinitions: [
|
|
36
|
+
/**
|
|
37
|
+
* Whether or not the request body converter interceptor is active.
|
|
38
|
+
*/
|
|
36
39
|
{
|
|
37
|
-
parameterName: networking_module_keyname_1.NetworkingModuleKeyname + ".
|
|
40
|
+
parameterName: networking_module_keyname_1.NetworkingModuleKeyname + ".requestBodyConverter.isActive",
|
|
38
41
|
isRequired: false,
|
|
39
42
|
defaultValue: true,
|
|
40
43
|
defaultResolvers: [
|
|
41
44
|
new configuration_1.BooleanResolver(new configuration_1.EnvironmentVariableResolver("PRISTINE_NETWORKING_REQUEST_BODY_CONVERTER_IS_ACTIVE")),
|
|
42
45
|
],
|
|
46
|
+
},
|
|
47
|
+
/**
|
|
48
|
+
* Whether or not the default content type response header interceptor is active.
|
|
49
|
+
*/
|
|
50
|
+
{
|
|
51
|
+
parameterName: networking_module_keyname_1.NetworkingModuleKeyname + ".defaultContentTypeResponseHeader.isActive",
|
|
52
|
+
isRequired: false,
|
|
53
|
+
defaultValue: true,
|
|
54
|
+
defaultResolvers: [
|
|
55
|
+
new configuration_1.BooleanResolver(new configuration_1.EnvironmentVariableResolver("PRISTINE_NETWORKING_DEFAULT_CONTENT_TYPE_RESPONSE_HEADER_IS_ACTIVE")),
|
|
56
|
+
],
|
|
57
|
+
},
|
|
58
|
+
/**
|
|
59
|
+
* The default Content-Type response header to set on responses that do not already have Content-Types.
|
|
60
|
+
*/
|
|
61
|
+
{
|
|
62
|
+
parameterName: networking_module_keyname_1.NetworkingModuleKeyname + ".defaultContentTypeResponseHeader",
|
|
63
|
+
isRequired: false,
|
|
64
|
+
defaultValue: "application/json",
|
|
65
|
+
defaultResolvers: [
|
|
66
|
+
new configuration_1.EnvironmentVariableResolver("PRISTINE_NETWORKING_DEFAULT_CONTENT_TYPE_RESPONSE_HEADER"),
|
|
67
|
+
],
|
|
43
68
|
}
|
|
44
69
|
],
|
|
45
70
|
};
|
|
@@ -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;AAExF,0DAAwC;AACxC,kDAAgC;AAChC,sDAAoC;AACpC,8DAA4C;AAC5C,0DAAwC;AACxC,oDAAkC;AAClC,kDAAgC;AAChC,gDAA8B;AAC9B,wDAAsC;AACtC,gDAA8B;AAE9B,2CAAyB;AAEZ,QAAA,gBAAgB,GAAoB;IAC7C,OAAO,EAAE,mDAAuB;IAChC,aAAa,EAAE;QACX,yBAAc;QACd,2BAAe;KAClB;IACD,wBAAwB,EAAE;QACtB;YACI,aAAa,EAAE,mDAAuB,GAAG,
|
|
1
|
+
{"version":3,"file":"networking.module.js","sourceRoot":"","sources":["../../../src/networking.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;AACA,2EAAoE;AACpE,oDAAqD;AACrD,sDAAuD;AACvD,8DAAwF;AAExF,0DAAwC;AACxC,kDAAgC;AAChC,sDAAoC;AACpC,8DAA4C;AAC5C,0DAAwC;AACxC,oDAAkC;AAClC,kDAAgC;AAChC,gDAA8B;AAC9B,wDAAsC;AACtC,gDAA8B;AAE9B,2CAAyB;AAEZ,QAAA,gBAAgB,GAAoB;IAC7C,OAAO,EAAE,mDAAuB;IAChC,aAAa,EAAE;QACX,yBAAc;QACd,2BAAe;KAClB;IACD,wBAAwB,EAAE;QACtB;;WAEG;QACH;YACI,aAAa,EAAE,mDAAuB,GAAG,gCAAgC;YACzE,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE;gBACd,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,sDAAsD,CAAC,CAAC;aAC/G;SACJ;QAED;;WAEG;QACH;YACI,aAAa,EAAE,mDAAuB,GAAG,4CAA4C;YACrF,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE;gBACd,IAAI,+BAAe,CAAC,IAAI,2CAA2B,CAAC,oEAAoE,CAAC,CAAC;aAC7H;SACJ;QAED;;WAEG;QACH;YACI,aAAa,EAAE,mDAAuB,GAAG,mCAAmC;YAC5E,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,kBAAkB;YAChC,gBAAgB,EAAE;gBACd,IAAI,2CAA2B,CAAC,0DAA0D,CAAC;aAC9F;SACJ;KACJ;CACJ,CAAA"}
|
|
@@ -5,6 +5,7 @@ const router_node_1 = require("./router.node");
|
|
|
5
5
|
const method_router_node_1 = require("./method-router.node");
|
|
6
6
|
const path_router_instantiation_error_1 = require("../errors/path-router-instantiation.error");
|
|
7
7
|
const path_router_adding_error_1 = require("../errors/path-router-adding.error");
|
|
8
|
+
const url_util_1 = require("../utils/url.util");
|
|
8
9
|
/**
|
|
9
10
|
* This class represents a Path Node in the Router Node. It can never be a leaf node and will always have children.
|
|
10
11
|
*/
|
|
@@ -45,8 +46,20 @@ class PathRouterNode extends router_node_1.RouterNode {
|
|
|
45
46
|
this.children.push(new method_router_node_1.MethodRouterNode(this, method, route, levelFromRoot + 1));
|
|
46
47
|
return;
|
|
47
48
|
}
|
|
48
|
-
|
|
49
|
-
|
|
49
|
+
let matchedChild;
|
|
50
|
+
if (url_util_1.UrlUtil.isPathACatchAll(splitPaths[1])) {
|
|
51
|
+
// If this is a catch all we can only match with a catch all.
|
|
52
|
+
matchedChild = this.children.filter(child => child instanceof PathRouterNode).find((child) => child.isCatchAll());
|
|
53
|
+
}
|
|
54
|
+
else if (url_util_1.UrlUtil.isPathARouteParameter(splitPaths[1])) {
|
|
55
|
+
// If this is a catch all we can only match with a catch all.
|
|
56
|
+
matchedChild = this.children.filter(child => child instanceof PathRouterNode).find((child) => child.isRouteParameter());
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
// Loop over our children that are of PathRouterNode and check if the next path matches,
|
|
60
|
+
// but if it's not a catch all we can't match with a catch all.
|
|
61
|
+
matchedChild = this.children.filter(child => child instanceof PathRouterNode).find((child) => child.matches(splitPaths[1]) && child.isCatchAll() === false && child.isRouteParameter() === false);
|
|
62
|
+
}
|
|
50
63
|
// If there's a matched child, call the add method on it and return.
|
|
51
64
|
if (matchedChild !== undefined) {
|
|
52
65
|
// Remove the first part of the path as it is used by the current node.
|
|
@@ -127,21 +140,13 @@ class PathRouterNode extends router_node_1.RouterNode {
|
|
|
127
140
|
* This method return whether or not this pathRouterNode's path is a catch-all path: "/*"
|
|
128
141
|
*/
|
|
129
142
|
isCatchAll() {
|
|
130
|
-
return this.path
|
|
143
|
+
return url_util_1.UrlUtil.isPathACatchAll(this.path);
|
|
131
144
|
}
|
|
132
145
|
/**
|
|
133
146
|
* This method returns whether or not this pathRouterNode represents a route parameter, e.g.: /{id} or /:id
|
|
134
147
|
*/
|
|
135
148
|
isRouteParameter() {
|
|
136
|
-
|
|
137
|
-
if (this.path.startsWith("/{") && this.path.endsWith("}")) {
|
|
138
|
-
return true;
|
|
139
|
-
}
|
|
140
|
-
// We also support path parameter written as services/:id-of-service
|
|
141
|
-
if (this.path.startsWith("/:")) {
|
|
142
|
-
return true;
|
|
143
|
-
}
|
|
144
|
-
return false;
|
|
149
|
+
return url_util_1.UrlUtil.isPathARouteParameter(this.path);
|
|
145
150
|
}
|
|
146
151
|
/**
|
|
147
152
|
* This method returns whether the current path matches a path. We have to check if this node is a RouteParameter
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path-router.node.js","sourceRoot":"","sources":["../../../../src/nodes/path-router.node.ts"],"names":[],"mappings":";;;AAAA,+CAAyC;AAEzC,6DAAsD;AAEtD,+FAAuF;AACvF,iFAAyE;
|
|
1
|
+
{"version":3,"file":"path-router.node.js","sourceRoot":"","sources":["../../../../src/nodes/path-router.node.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/cjs/router.js
CHANGED
|
@@ -30,6 +30,7 @@ const url_util_1 = require("./utils/url.util");
|
|
|
30
30
|
const not_found_http_error_1 = require("./errors/not-found.http-error");
|
|
31
31
|
const path_router_node_1 = require("./nodes/path-router.node");
|
|
32
32
|
const route_1 = require("./models/route");
|
|
33
|
+
const method_router_node_1 = require("./nodes/method-router.node");
|
|
33
34
|
const forbidden_http_error_1 = require("./errors/forbidden.http-error");
|
|
34
35
|
const controller_method_parameter_decorator_resolver_1 = require("./resolvers/controller-method-parameter-decorator.resolver");
|
|
35
36
|
const url_parse_1 = __importDefault(require("url-parse"));
|
|
@@ -61,6 +62,37 @@ let Router = class Router {
|
|
|
61
62
|
// This property is used to track whether the router has been already been properly instantiated or not.
|
|
62
63
|
this.setupCompleted = false;
|
|
63
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* This method returns the whole route tree as a string.
|
|
67
|
+
*/
|
|
68
|
+
getRouteTree() {
|
|
69
|
+
let message = "";
|
|
70
|
+
message = this.getRouteTreeLevel(this.root, message, 1);
|
|
71
|
+
return message;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* This method takes the existing message and appends the following levels to it.
|
|
75
|
+
* It calls itself recursively.
|
|
76
|
+
* @param node The node to print the following levels.
|
|
77
|
+
* @param message The existing message on which to append.
|
|
78
|
+
* @param level The level at which we are at.
|
|
79
|
+
*/
|
|
80
|
+
getRouteTreeLevel(node, message, level) {
|
|
81
|
+
for (const child of node.children) {
|
|
82
|
+
// @ts-ignore
|
|
83
|
+
for (let i = 0; i < level; i++) {
|
|
84
|
+
message += "\t";
|
|
85
|
+
}
|
|
86
|
+
if (child instanceof path_router_node_1.PathRouterNode) {
|
|
87
|
+
message += "--" + child.path + "\n";
|
|
88
|
+
}
|
|
89
|
+
if (child instanceof method_router_node_1.MethodRouterNode) {
|
|
90
|
+
message += "--" + child.method + "\n";
|
|
91
|
+
}
|
|
92
|
+
message = this.getRouteTreeLevel(child, message, level + 1);
|
|
93
|
+
}
|
|
94
|
+
return message;
|
|
95
|
+
}
|
|
64
96
|
/**
|
|
65
97
|
* This method registers a Route into the Route Tree maintained by the router.
|
|
66
98
|
*
|
|
@@ -124,6 +156,7 @@ let Router = class Router {
|
|
|
124
156
|
}
|
|
125
157
|
});
|
|
126
158
|
this.setupCompleted = true;
|
|
159
|
+
this.loghandler.debug("Route tree: \n" + this.getRouteTree());
|
|
127
160
|
}
|
|
128
161
|
/**
|
|
129
162
|
* This method receives a Request object, identifies the "path" its trying to hit, navigates the internally
|
|
@@ -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,uCAAgE;AAChE,+CAAyC;AACzC,wEAAgE;AAGhE,+DAAwD;AACxD,0CAAqC;AACrC,mEAA4D;AAC5D,wEAAiE;AACjE,+HAAsH;AACtH,0DAA4B;AAC5B,gDAAoH;AAGpH,2EAAoE;AACpE,sDAAsF;AACtF,4EAAqE;AAErE,mCAAiC;AAEjC,oDAA8C;AAE9C;;;GAGG;AAGH,IAAa,MAAM,GAAnB,MAAa,MAAM;IAMf;;;;;;;OAOG;IACH,YAAoE,UAA+B,EAC9D,0CAAsF,EAChD,iBAA6C,EACzC,qBAAqD;QAHhE,eAAU,GAAV,UAAU,CAAqB;QAC9D,+CAA0C,GAA1C,0CAA0C,CAA4C;QAChD,sBAAiB,GAAjB,iBAAiB,CAA4B;QACzC,0BAAqB,GAArB,qBAAqB,CAAgC;QAhB5H,SAAI,GAAe,IAAI,iCAAc,CAAC,GAAG,CAAC,CAAC;QAEnD,wGAAwG;QAChG,mBAAc,GAAG,KAAK,CAAC;IAc/B,CAAC;IAED;;OAEG;IACH,YAAY;QACR,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;IACnB,CAAC;IAED;;;;;;OAMG;IACK,iBAAiB,CAAC,IAAgB,EAAE,OAAe,EAAE,KAAa;QACtE,KAAI,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE;YAC9B,aAAa;YACb,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAC;gBAC1B,OAAO,IAAE,IAAI,CAAC;aACjB;YACD,IAAG,KAAK,YAAY,iCAAc,EAAC;gBAC/B,OAAO,IAAE,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;aACrC;YACD,IAAG,KAAK,YAAY,qCAAgB,EAAC;gBACjC,OAAO,IAAE,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;aACvC;YACD,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,GAAC,CAAC,CAAC,CAAC;SAC7D;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED;;;;;;OAMG;IACI,QAAQ,CAAC,IAAY,EAAE,MAA2B,EAAE,KAAY;QACnE,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;IAChD,CAAC;IAED,MAAM;IACN,uHAAuH;IACvH,mEAAmE;IACnE,KAAK;IACL,cAAc;IACd,MAAM;IACC,KAAK;QACR,IAAG,IAAI,CAAC,cAAc,EAAE;YACpB,OAAO;SACV;QAED,2DAA2D;QAC3D,yCAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;;YACpC,IAAI,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,KAAK,EAAE;gBACrD,OAAO;aACV;YAED,IAAI,QAAQ,GAAW,MAAA,MAAA,UAAU,CAAC,YAAY,0CAAE,UAAU,0CAAE,QAAQ,CAAC;YAErE,oDAAoD;YACpD,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBACxB,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;aACrD;YAED,KAAK,MAAM,iBAAiB,IAAI,MAAA,UAAU,CAAC,YAAY,0CAAE,OAAO,EAAE;gBAC9D,IAAI,CAAA,MAAA,MAAA,UAAU,CAAC,YAAY,0CAAE,OAAO,0CAAE,cAAc,CAAC,iBAAiB,CAAC,MAAK,KAAK,EAAE;oBAC/E,SAAS;iBACZ;gBAED,MAAM,MAAM,GAAG,MAAA,UAAU,CAAC,YAAY,0CAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;gBAEnE,IAAI,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,KAAK,EAAE;oBAC1C,SAAS;iBACZ;gBAED,wFAAwF;gBACxF,MAAM,oBAAoB,GAAyB,MAAM,CAAC,KAAK,CAAC;gBAEhE,mFAAmF;gBACnF,oCAAoC;gBACpC,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,UAAU,CAAC,WAAW,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;gBACpF,KAAK,CAAC,eAAe,GAAG,MAAA,MAAM,CAAC,SAAS,mCAAI,EAAE,CAAC;gBAC/C,KAAK,CAAC,OAAO,GAAG,kBAAS,CAAC,EAAE,EAAE,MAAA,MAAA,UAAU,CAAC,YAAY,0CAAE,UAAU,0CAAE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBAE9G,wBAAwB;gBACxB,IAAI,IAAI,GAAG,oBAAoB,CAAC,IAAI,CAAC;gBAErC,6DAA6D;gBAC7D,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;oBACtB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;iBACrC;gBAED,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBACpB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;iBACzC;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;aACpE;QACL,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;IACjE,CAAC;IAED;;;;;;;OAOG;IACI,OAAO,CAAC,OAAgB,EAAE,SAA8B;QAC3D,sFAAsF;QACtF,4BAA4B;QAG5B,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;YACnD,sGAAsG;YACtG,MAAM,GAAG,GAAG,IAAI,mBAAG,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAExC,sBAAsB;YACtB,MAAM,SAAS,GAAG,kBAAO,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAElD,MAAM,cAAc,GAAG,cAAc,CAAC,SAAS,CAAC,2BAAe,CAAC,0BAA0B,EAAE,2BAAe,CAAC,sBAAsB,CAAC,CAAC;YACpI,6DAA6D;YAC7D,MAAM,UAAU,GAAqB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAqB,CAAC;YACvG,cAAc,CAAC,GAAG,EAAE,CAAC;YAErB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,0BAA0B,EAAE;gBAC9C,QAAQ,EAAE,IAAI,CAAC,IAAI;gBACnB,OAAO;gBACP,GAAG;gBACH,UAAU;aACb,EAAE,mDAAuB,CAAC,CAAC;YAE5B,2CAA2C;YAC3C,IAAG,UAAU,KAAK,IAAI,EAAE;gBACpB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,sBAAsB,EAAE;oBAC1C,QAAQ,EAAE,IAAI,CAAC,IAAI;oBACnB,OAAO;oBACP,GAAG;iBACN,EAAE,mDAAuB,CAAC,CAAC;gBAE5B,0BAA0B,CAAC,GAAG,EAAE,CAAC;gBACjC,OAAO,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,IAAI,wCAAiB,CAAC,4BAA4B,GAAG,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;aACxJ;YAED,2BAA2B;YAC3B,MAAM,eAAe,GAAI,UAAU,CAAC,MAAyB,CAAC,kBAAkB,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;YAEtG,6BAA6B;YAC7B,MAAM,4BAA4B,GAAG,cAAc,CAAC,SAAS,CAAC,2BAAe,CAAC,wBAAwB,EAAE,2BAAe,CAAC,sBAAsB,CAAC,CAAC;YAChJ,MAAM,UAAU,GAAQ,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;YACzF,4BAA4B,CAAC,GAAG,EAAE,CAAC;YAEnC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,mDAAmD,EAAE;gBACvE,UAAU;gBACV,eAAe;aAClB,EAAE,mDAAuB,CAAC,CAAC;YAE5B,IAAI,QAAuC,CAAC;YAE5C,2BAA2B;YAC3B,IAAI;gBACA,MAAM,+BAA+B,GAAG,cAAc,CAAC,SAAS,CAAC,2BAAe,CAAC,2BAA2B,EAAE,2BAAe,CAAC,sBAAsB,CAAC,CAAC;gBACtJ,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBACvG,+BAA+B,CAAC,GAAG,EAAE,CAAC;gBAEtC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,0BAA0B,EAAE;oBAC9C,QAAQ;iBACX,EAAE,mDAAuB,CAAC,CAAC;aAC/B;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,sBAAsB,EAAE;oBAC1C,KAAK;oBACL,OAAO;oBACP,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;oBACjC,SAAS;iBACZ,EAAE,mDAAuB,CAAC,CAAC;gBAE5B,yEAAyE;gBACzE,IAAG,KAAK,YAAY,yCAAkB,KAAK,KAAK,EAAC;oBAC7C,KAAK,GAAG,IAAI,yCAAkB,CAAC,qCAAqC,CAAC,CAAC;iBACzE;gBAED,0BAA0B,CAAC,GAAG,EAAE,CAAC;gBACjC,OAAO,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;aAChG;YAED,yDAAyD;YACzD,IAAI;gBAEA,mFAAmF;gBACnF,IAAG,CAAA,MAAM,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,MAAK,KAAK,EAAE;oBAC5G,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,yCAAyC,EAAE;wBAC7D,OAAO;wBACP,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;wBACjC,SAAS;wBACT,QAAQ;qBACX,EAAE,mDAAuB,CAAC,CAAC;oBAE5B,0BAA0B,CAAC,GAAG,EAAE,CAAC;oBACjC,OAAO,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,IAAI,yCAAkB,CAAC,qCAAqC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;iBACxJ;gBAED,+BAA+B;gBAC/B,MAAM,uBAAuB,GAAG,cAAc,CAAC,SAAS,CAAC,2BAAe,CAAC,mBAAmB,EAAE,2BAAe,CAAC,sBAAsB,CAAC,CAAC;gBACtI,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;gBACjG,uBAAuB,CAAC,GAAG,EAAE,CAAC;gBAE9B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,qBAAqB,EAAE;oBACzC,OAAO;oBACP,kBAAkB;iBACrB,EAAE,mDAAuB,CAAC,CAAA;gBAE3B,qFAAqF;gBACrF,MAAM,uBAAuB,GAAU,EAAE,CAAC;gBAE1C,KAAK,MAAM,cAAc,IAAI,UAAU,CAAC,KAAK,CAAC,eAAe,EAAE;oBAC3D,uBAAuB,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,0CAA0C,CAAC,OAAO,CAAC,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC;iBAC9J;gBAED,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,uCAAuC,EAAE;oBAC3D,uBAAuB;iBAC1B,EAAE,mDAAuB,CAAC,CAAA;gBAE3B,MAAM,kBAAkB,GAAG,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,uBAAuB,CAAC,CAAC;gBAErH,uEAAuE;gBACvE,8CAA8C;gBAC9C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;gBAE3D,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,kDAAkD,EAAE;oBACtE,QAAQ;iBACX,EAAE,mDAAuB,CAAC,CAAA;gBAE3B,IAAI,gBAA0B,CAAC;gBAC/B,oEAAoE;gBACpE,IAAG,QAAQ,YAAY,iBAAQ,EAAE;oBAC7B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,mEAAmE,EAAE;wBACvF,QAAQ;qBACX,EAAE,mDAAuB,CAAC,CAAA;oBAC3B,gBAAgB,GAAG,QAAQ,CAAC;iBAC/B;qBAAM;oBACH,8FAA8F;oBAC9F,kFAAkF;oBAClF,gBAAgB,GAAG,IAAI,iBAAQ,EAAE,CAAC;oBAClC,gBAAgB,CAAC,MAAM,GAAG,GAAG,CAAC;oBAC9B,gBAAgB,CAAC,IAAI,GAAG,QAAQ,CAAC;oBAEjC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,uEAAuE,EAAE;wBAC3F,QAAQ;wBACR,gBAAgB;qBACnB,EAAE,mDAAuB,CAAC,CAAA;iBAC9B;gBAED,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,iEAAiE,EAAE;oBACrF,QAAQ;oBACR,gBAAgB;iBACnB,EAAE,mDAAuB,CAAC,CAAA;gBAE3B,MAAM,wBAAwB,GAAG,cAAc,CAAC,SAAS,CAAC,2BAAe,CAAC,oBAAoB,EAAE,2BAAe,CAAC,sBAAsB,CAAC,CAAC;gBACxI,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;gBACrH,wBAAwB,CAAC,GAAG,EAAE,CAAC;gBAE/B,0BAA0B,CAAC,GAAG,EAAE,CAAC;gBACjC,OAAO,OAAO,CAAC,mBAAmB,CAAC,CAAC;aACvC;YACD,OAAO,KAAK,EAAE;gBACV,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,yEAAyE,EAAE;oBAC7F,KAAK;iBACR,EAAE,mDAAuB,CAAC,CAAA;gBAE3B,sDAAsD;gBAEtD,0BAA0B,CAAC,GAAG,EAAE,CAAC;gBAEjC,OAAO,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;aAChG;QACL,CAAC,CAAA,CAAC,CAAA;IACN,CAAC;IAGD;;;;;;;OAOG;IACW,0BAA0B,CAAE,OAAgB,EAAE,SAA8B,EAAE,UAA4B;;;YACpH,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,uCAAuC,EAAE;gBAC3D,OAAO;gBACP,UAAU;aACb,EAAE,mDAAuB,CAAC,CAAA;YAE3B,uCAAuC;YACvC,IAAI,kBAAkB,GAAG,OAAO,CAAC;YAEjC,oDAAoD;YACpD,IAAI,SAAS,CAAC,YAAY,CAAC,iCAAwB,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE;gBAC3E,MAAM,YAAY,GAAU,SAAS,CAAC,UAAU,CAAC,iCAAwB,CAAC,kBAAkB,CAAC,CAAC;gBAE9F,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;oBACpC,yHAAyH;oBACzH,2EAA2E;oBAC3E,IAAI,OAAO,WAAW,CAAC,gBAAgB,KAAK,WAAW,EAAE;wBACrD,sGAAsG;wBACtG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,wEAAwE,EAAE,EAAC,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,EAAC,CAAC,CAAC;wBAClJ,SAAS;qBACZ;oBAED,IAAI;wBACA,8CAA8C;wBAC9C,kBAAkB,GAAG,MAAA,MAAM,CAAA,MAAA,MAAC,WAA2C,EAAC,gBAAgB,mDAAG,kBAAkB,EAAE,UAAU,CAAC,CAAA,mCAAI,kBAAkB,CAAC;qBACpJ;oBAAC,OAAO,CAAC,EAAE;wBACR,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,kHAAkH,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,EAAE,EAAC,CAAC,EAAC,EAAE,mDAAuB,CAAC,CAAC;wBAC9M,MAAM,CAAC,CAAC;qBACX;iBACJ;aACJ;YAED,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,qCAAqC,EAAE;gBACzD,OAAO;gBACP,kBAAkB;gBAClB,UAAU;aACb,EAAE,mDAAuB,CAAC,CAAA;YAE3B,OAAO,kBAAkB,CAAC;;KAC7B;IAGD;;;;;;;;OAQG;IACW,2BAA2B,CAAC,QAAkB,EAAE,OAAgB,EAAE,SAA8B,EAAE,UAA6B;;;YACzI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,wCAAwC,EAAE;gBAC5D,QAAQ;gBACR,OAAO;gBACP,UAAU;aACb,EAAE,mDAAuB,CAAC,CAAA;YAE3B,uCAAuC;YACvC,IAAI,mBAAmB,GAAG,QAAQ,CAAC;YAEnC,oDAAoD;YACpD,IAAI,SAAS,CAAC,YAAY,CAAC,iCAAwB,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE;gBAC3E,MAAM,YAAY,GAAU,SAAS,CAAC,UAAU,CAAC,iCAAwB,CAAC,kBAAkB,CAAC,CAAC;gBAE9F,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;oBACpC,kIAAkI;oBAClI,2EAA2E;oBAC3E,IAAI,OAAO,WAAW,CAAC,iBAAiB,KAAK,WAAW,EAAE;wBACtD,uGAAuG;wBACvG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,kFAAkF,EAAE,EAAC,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,EAAC,EAAE,mDAAuB,CAAC,CAAC;wBACrL,SAAS;qBACZ;oBAED,IAAI;wBACA,mBAAmB,GAAG,MAAA,MAAM,CAAA,MAAA,MAAC,WAA2C,EAAC,iBAAiB,mDAAG,mBAAmB,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA,mCAAI,mBAAmB,CAAC;qBACjK;oBAAC,OAAO,CAAC,EAAE;wBACR,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,0HAA0H,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,EAAE,EAAC,CAAC,EAAC,EAAE,mDAAuB,CAAC,CAAC;wBACtN,MAAM,CAAC,CAAC;qBACX;iBACJ;aACJ;YAED,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,sCAAsC,EAAE;gBAC1D,QAAQ;gBACR,mBAAmB;gBACnB,OAAO;gBACP,UAAU;aACb,EAAE,mDAAuB,CAAC,CAAA;YAE3B,OAAO,mBAAmB,CAAC;;KAC9B;IAGD;;;;;;;;OAQG;IACW,gCAAgC,CAAC,KAAY,EAAE,OAAgB,EAAE,SAA8B,EAAE,UAA6B;;;YACxI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,8CAA8C,EAAE;gBAClE,KAAK;gBACL,OAAO;gBACP,UAAU;aACb,EAAE,mDAAuB,CAAC,CAAA;YAE3B,uCAAuC;YACvC,IAAI,mBAAmB,GAAG,IAAI,iBAAQ,EAAE,CAAC;YACzC,IAAG,KAAK,YAAY,sBAAS,EAAE;gBAC3B,mBAAmB,CAAC,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC;gBAC9C,mBAAmB,CAAC,IAAI,GAAG;oBACvB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,KAAK,EAAE,KAAK,CAAC,KAAK;iBACrB,CAAA;aACJ;iBACI;gBACD,mBAAmB,CAAC,MAAM,GAAG,GAAG,CAAC;gBACjC,mBAAmB,CAAC,IAAI,GAAG,EAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAC,CAAC;aAC7F;YAED,mBAAmB,CAAC,OAAO,GAAG,OAAO,CAAC;YAEtC,oDAAoD;YACpD,IAAI,SAAS,CAAC,YAAY,CAAC,iCAAwB,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE;gBAC3E,MAAM,YAAY,GAAU,SAAS,CAAC,UAAU,CAAC,iCAAwB,CAAC,kBAAkB,CAAC,CAAC;gBAE9F,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;oBACpC,kIAAkI;oBAClI,2EAA2E;oBAC3E,IAAI,OAAO,WAAW,CAAC,cAAc,KAAK,WAAW,EAAE;wBACnD,oGAAoG;wBACpG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,sEAAsE,EAAE,EAAC,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,EAAC,CAAC,CAAC;wBAChJ,SAAS;qBACZ;oBAED,IAAI;wBACA,mBAAmB,GAAG,MAAA,MAAM,CAAA,MAAA,MAAC,WAA2C,EAAC,cAAc,mDAAG,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA,mCAAI,mBAAmB,CAAC;qBACrK;oBAAC,OAAO,CAAC,EAAE;wBACR,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,8GAA8G,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,EAAE,EAAC,CAAC,EAAC,EAAE,mDAAuB,CAAC,CAAC;wBAC1M,MAAM,CAAC,CAAC;qBACX;iBACJ;aACJ;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;gBAChE,KAAK;gBACL,mBAAmB;gBACnB,OAAO;gBACP,UAAU;aACb,EAAE,mDAAuB,CAAC,CAAA;YAE3B,OAAO,mBAAmB,CAAC;;KAC9B;CACJ,CAAA;AAveY,MAAM;IAFlB,YAAG,CAAC,iBAAiB,CAAC;IACtB,oBAAS,EAAE;IAea,WAAA,iBAAM,CAAC,qBAAqB,CAAC,CAAA;IAE7B,WAAA,iBAAM,CAAC,4BAA4B,CAAC,CAAA;IACpC,WAAA,iBAAM,CAAC,gCAAgC,CAAC,CAAA;6CAFoB,2FAA0C;GAflH,MAAM,CAuelB;AAveY,wBAAM"}
|
|
@@ -39,6 +39,28 @@ class UrlUtil {
|
|
|
39
39
|
}
|
|
40
40
|
return paths;
|
|
41
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
*
|
|
44
|
+
* @param path Must start with a '/'.
|
|
45
|
+
*/
|
|
46
|
+
static isPathARouteParameter(path) {
|
|
47
|
+
// If the current path is a path parameter, meaning has services/{id-of-service}
|
|
48
|
+
if (path.startsWith("/{") && path.endsWith("}")) {
|
|
49
|
+
return true;
|
|
50
|
+
}
|
|
51
|
+
// We also support path parameter written as services/:id-of-service
|
|
52
|
+
if (path.startsWith("/:")) {
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
*
|
|
59
|
+
* @param path Must start with a '/'.
|
|
60
|
+
*/
|
|
61
|
+
static isPathACatchAll(path) {
|
|
62
|
+
return path.startsWith("/*");
|
|
63
|
+
}
|
|
42
64
|
}
|
|
43
65
|
exports.UrlUtil = UrlUtil;
|
|
44
66
|
//# sourceMappingURL=url.util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url.util.js","sourceRoot":"","sources":["../../../../src/utils/url.util.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,OAAO;IAChB;;;;;;;;;OASG;IACI,MAAM,CAAC,SAAS,CAAC,IAAY;QAChC,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,IAAI,KAAK,GAAa,EAAE,CAAC;QAEzB,gHAAgH;QAChH,4FAA4F;QAC5F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClC,IAAG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;gBAChB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;gBACzB,MAAM,GAAG,EAAE,CAAC;aACf;iBACI;gBACD,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CAAA;aACpB;SACJ;QAED,uEAAuE;QACvE,IAAG,MAAM,KAAK,EAAE,EAAE;YACd,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;SAC5B;QAED,kFAAkF;QAClF,IAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE;YAChC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;SAC5C;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;
|
|
1
|
+
{"version":3,"file":"url.util.js","sourceRoot":"","sources":["../../../../src/utils/url.util.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,OAAO;IAChB;;;;;;;;;OASG;IACI,MAAM,CAAC,SAAS,CAAC,IAAY;QAChC,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,IAAI,KAAK,GAAa,EAAE,CAAC;QAEzB,gHAAgH;QAChH,4FAA4F;QAC5F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClC,IAAG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;gBAChB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;gBACzB,MAAM,GAAG,EAAE,CAAC;aACf;iBACI;gBACD,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CAAA;aACpB;SACJ;QAED,uEAAuE;QACvE,IAAG,MAAM,KAAK,EAAE,EAAE;YACd,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;SAC5B;QAED,kFAAkF;QAClF,IAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE;YAChC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;SAC5C;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,qBAAqB,CAAC,IAAY;QAC5C,gFAAgF;QAChF,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC7C,OAAO,IAAI,CAAC;SACf;QAED,oEAAoE;QACpE,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACf;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,eAAe,CAAC,IAAY;QACtC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;CACJ;AAlED,0BAkEC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
11
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
12
|
+
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
import { moduleScoped, ServiceDefinitionTagEnum, tag } from "@pristine-ts/common";
|
|
23
|
+
import { NetworkingModuleKeyname } from "../networking.module.keyname";
|
|
24
|
+
import { injectable, inject } from "tsyringe";
|
|
25
|
+
/**
|
|
26
|
+
* The Default ContentType Response Header Interceptor intercepts the response of the router and adds the default content-type header to the response.
|
|
27
|
+
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
28
|
+
*/
|
|
29
|
+
let DefaultContentTypeResponseHeaderInterceptor = class DefaultContentTypeResponseHeaderInterceptor {
|
|
30
|
+
/**
|
|
31
|
+
* The Default ContentType Response Header Interceptor intercepts the response of the router and adds the default content-type header to the response.
|
|
32
|
+
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
33
|
+
* @param defaultContentTypeResponseHeader The default Content-Type response header to set on responses that do not already have Content-Types.
|
|
34
|
+
* @param isActive Whether or not this interceptor is active.
|
|
35
|
+
* @param logHandler The log handler to output logs.
|
|
36
|
+
*/
|
|
37
|
+
constructor(defaultContentTypeResponseHeader, isActive, logHandler) {
|
|
38
|
+
this.defaultContentTypeResponseHeader = defaultContentTypeResponseHeader;
|
|
39
|
+
this.isActive = isActive;
|
|
40
|
+
this.logHandler = logHandler;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Intercepts the response from the router and adds the Content-Type header to it if it's not already there, with the default provided.
|
|
44
|
+
* @param response The response to intercept.
|
|
45
|
+
* @param request The request that triggered this response.
|
|
46
|
+
* @param methodNode The methode node.
|
|
47
|
+
*/
|
|
48
|
+
interceptResponse(response, request, methodNode) {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
if (this.isActive === false) {
|
|
51
|
+
return response;
|
|
52
|
+
}
|
|
53
|
+
if (response.hasHeader("content-type")) {
|
|
54
|
+
return response;
|
|
55
|
+
}
|
|
56
|
+
response.setHeader("content-type", this.defaultContentTypeResponseHeader);
|
|
57
|
+
this.logHandler.debug("Set the default content type response header.", { response });
|
|
58
|
+
return response;
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
DefaultContentTypeResponseHeaderInterceptor = __decorate([
|
|
63
|
+
tag(ServiceDefinitionTagEnum.RequestInterceptor),
|
|
64
|
+
moduleScoped(NetworkingModuleKeyname),
|
|
65
|
+
injectable(),
|
|
66
|
+
__param(0, inject(`%${NetworkingModuleKeyname}.defaultContentTypeResponseHeader%`)),
|
|
67
|
+
__param(1, inject(`%${NetworkingModuleKeyname}.defaultContentTypeResponseHeader.isActive%`)),
|
|
68
|
+
__param(2, inject("LogHandlerInterface")),
|
|
69
|
+
__metadata("design:paramtypes", [String, Boolean, Object])
|
|
70
|
+
], DefaultContentTypeResponseHeaderInterceptor);
|
|
71
|
+
export { DefaultContentTypeResponseHeaderInterceptor };
|
|
72
|
+
//# sourceMappingURL=default-content-type-response-header.interceptor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-content-type-response-header.interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/default-content-type-response-header.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAC,YAAY,EAAqB,wBAAwB,EAAE,GAAG,EAAC,MAAM,qBAAqB,CAAC;AACnG,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AAGrE,OAAO,EAAC,UAAU,EAAE,MAAM,EAAC,MAAM,UAAU,CAAC;AAG5C;;;GAGG;AAIH,IAAa,2CAA2C,GAAxD,MAAa,2CAA2C;IAEpD;;;;;;OAMG;IACH,YAAsG,gCAAwC,EAC/B,QAAiB,EACpE,UAA+B;QAFW,qCAAgC,GAAhC,gCAAgC,CAAQ;QAC/B,aAAQ,GAAR,QAAQ,CAAS;QACpE,eAAU,GAAV,UAAU,CAAqB;IAAE,CAAC;IAE9F;;;;;OAKG;IACG,iBAAiB,CAAC,QAAkB,EAAE,OAAgB,EAAE,UAA6B;;YACvF,IAAG,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE;gBACxB,OAAO,QAAQ,CAAC;aACnB;YAED,IAAG,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,EAAC;gBAClC,OAAO,QAAQ,CAAC;aACnB;YAED,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,CAAC,gCAAgC,CAAC,CAAC;YAC1E,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,+CAA+C,EAAE,EAAC,QAAQ,EAAC,CAAC,CAAA;YAElF,OAAO,QAAQ,CAAC;QACpB,CAAC;KAAA;CACJ,CAAA;AAjCY,2CAA2C;IAHvD,GAAG,CAAC,wBAAwB,CAAC,kBAAkB,CAAC;IAChD,YAAY,CAAC,uBAAuB,CAAC;IACrC,UAAU,EAAE;IAUI,WAAA,MAAM,CAAC,IAAI,uBAAuB,oCAAoC,CAAC,CAAA;IACvE,WAAA,MAAM,CAAC,IAAI,uBAAuB,6CAA6C,CAAC,CAAA;IAChF,WAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;;GAXjC,2CAA2C,CAiCvD;SAjCY,2CAA2C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interceptors.js","sourceRoot":"","sources":["../../../../src/interceptors/interceptors.ts"],"names":[],"mappings":"AAAA,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC"}
|
|
1
|
+
{"version":3,"file":"interceptors.js","sourceRoot":"","sources":["../../../../src/interceptors/interceptors.ts"],"names":[],"mappings":"AAAA,cAAc,oDAAoD,CAAC;AACnE,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC"}
|
|
@@ -23,11 +23,25 @@ import { injectable, inject } from "tsyringe";
|
|
|
23
23
|
import { moduleScoped, ServiceDefinitionTagEnum, tag } from "@pristine-ts/common";
|
|
24
24
|
import { NetworkingModuleKeyname } from "../networking.module.keyname";
|
|
25
25
|
import { InvalidBodyHttpError } from "../errors/invalid-body.http-error";
|
|
26
|
+
/**
|
|
27
|
+
* The Request Body Converter Interceptor intercepts the request and parses the body based on the Content-tTpe header.
|
|
28
|
+
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
29
|
+
*/
|
|
26
30
|
let RequestBodyConverterInterceptor = class RequestBodyConverterInterceptor {
|
|
31
|
+
/**
|
|
32
|
+
* The Request Body Converter Interceptor intercepts the request and parses the body based on the Content-Type header.
|
|
33
|
+
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
34
|
+
* @param isActive Whether or not this interceptor is active.
|
|
35
|
+
* @param logHandler The log handler to output logs.
|
|
36
|
+
*/
|
|
27
37
|
constructor(isActive, logHandler) {
|
|
28
38
|
this.isActive = isActive;
|
|
29
39
|
this.logHandler = logHandler;
|
|
30
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Intercepts the request and parses the body based on it's Content-Type header.
|
|
43
|
+
* @param request The request to intercept.
|
|
44
|
+
*/
|
|
31
45
|
interceptRequest(request) {
|
|
32
46
|
return __awaiter(this, void 0, void 0, function* () {
|
|
33
47
|
if (this.isActive === false) {
|
|
@@ -75,7 +89,7 @@ RequestBodyConverterInterceptor = __decorate([
|
|
|
75
89
|
tag(ServiceDefinitionTagEnum.RequestInterceptor),
|
|
76
90
|
moduleScoped(NetworkingModuleKeyname),
|
|
77
91
|
injectable(),
|
|
78
|
-
__param(0, inject("%" + NetworkingModuleKeyname + ".
|
|
92
|
+
__param(0, inject("%" + NetworkingModuleKeyname + ".requestBodyConverter.isActive%")),
|
|
79
93
|
__param(1, inject("LogHandlerInterface")),
|
|
80
94
|
__metadata("design:paramtypes", [Boolean, Object])
|
|
81
95
|
], RequestBodyConverterInterceptor);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-body-converter.interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/request-body-converter.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAC,UAAU,EAAE,MAAM,EAAC,MAAM,UAAU,CAAC;AAE5C,OAAO,EAAC,YAAY,EAAW,wBAAwB,EAAE,GAAG,EAAC,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAC,oBAAoB,EAAC,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"request-body-converter.interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/request-body-converter.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAC,UAAU,EAAE,MAAM,EAAC,MAAM,UAAU,CAAC;AAE5C,OAAO,EAAC,YAAY,EAAW,wBAAwB,EAAE,GAAG,EAAC,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAC,oBAAoB,EAAC,MAAM,mCAAmC,CAAC;AAEvE;;;GAGG;AAIH,IAAa,+BAA+B,GAA5C,MAAa,+BAA+B;IAExC;;;;;OAKG;IACH,YAAwG,QAAiB,EAC7D,UAA+B;QADa,aAAQ,GAAR,QAAQ,CAAS;QAC7D,eAAU,GAAV,UAAU,CAAqB;IAC3F,CAAC;IAED;;;OAGG;IACG,gBAAgB,CAAC,OAAgB;;YACnC,IAAG,IAAI,CAAC,QAAQ,KAAK,KAAK,EAAE;gBACxB,OAAO,OAAO,CAAC;aAClB;YAED,IAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,KAAK,EAAE;gBAC5C,OAAO,OAAO,CAAC;aAClB;YAED,MAAM,WAAW,GAAW,OAAO,CAAC,SAAS,CAAC,cAAc,CAAW,CAAC;YAExE,QAAQ,WAAW,CAAC,WAAW,EAAE,EAAE;gBAC/B,KAAK,kBAAkB;oBAGnB,QAAQ,OAAO,OAAO,CAAC,IAAI,EAAE;wBACzB,KAAK,WAAW;4BACZ,OAAO,OAAO,CAAC;wBACnB,KAAK,QAAQ;4BACT,IAAG,OAAO,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE;gCAClC,MAAM,YAAY,GAAG,kHAAkH,CAAC;gCACxI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gCAEpC,MAAM,IAAI,oBAAoB,CAAC,YAAY,CAAC,CAAC;6BAChD;4BACD,OAAO,OAAO,CAAC;wBAEnB,KAAK,QAAQ;4BACT,IAAI;gCACA,IAAG,OAAO,CAAC,IAAI,EAAE;oCACb,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iCAC3C;6BACJ;4BACD,OAAO,CAAC,EAAE;gCACN,MAAM,YAAY,GAAG,kIAAkI,CAAC;gCACxJ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gCAEpC,MAAM,IAAI,oBAAoB,CAAC,YAAY,CAAC,CAAC;6BAChD;4BACD,MAAM;wBAEV;4BACI,MAAM,YAAY,GAAG,iGAAiG,CAAC;4BACvH,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;4BAEpC,MAAM,IAAI,oBAAoB,CAAC,YAAY,CAAC,CAAC;qBACpD;aAGR;YAED,OAAO,OAAO,CAAC;QACnB,CAAC;KAAA;CAEJ,CAAA;AAtEY,+BAA+B;IAH3C,GAAG,CAAC,wBAAwB,CAAC,kBAAkB,CAAC;IAChD,YAAY,CAAC,uBAAuB,CAAC;IACrC,UAAU,EAAE;IASI,WAAA,MAAM,CAAC,GAAG,GAAG,uBAAuB,GAAG,iCAAiC,CAAC,CAAA;IACzE,WAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;;GATjC,+BAA+B,CAsE3C;SAtEY,+BAA+B"}
|
|
@@ -21,6 +21,12 @@ import { injectable } from "tsyringe";
|
|
|
21
21
|
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
22
22
|
*/
|
|
23
23
|
let ResponseHeadersInterceptor = class ResponseHeadersInterceptor {
|
|
24
|
+
/**
|
|
25
|
+
* Intercepts the response from the router and adds the headers specified by the response header decorator.
|
|
26
|
+
* @param response The response to intercept.
|
|
27
|
+
* @param request The request that triggered this response.
|
|
28
|
+
* @param methodNode The methode node.
|
|
29
|
+
*/
|
|
24
30
|
interceptResponse(response, request, methodNode) {
|
|
25
31
|
return __awaiter(this, void 0, void 0, function* () {
|
|
26
32
|
if (methodNode && methodNode.route.context && methodNode.route.context.hasOwnProperty("responseHeaders")) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response-headers.interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/response-headers.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,OAAO,EAAC,YAAY,EAAqB,wBAAwB,EAAE,GAAG,EAAC,MAAM,qBAAqB,CAAC;AACnG,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AAGrE,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACpC;;;GAGG;AAIH,IAAa,0BAA0B,GAAvC,MAAa,0BAA0B;
|
|
1
|
+
{"version":3,"file":"response-headers.interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/response-headers.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,OAAO,EAAC,YAAY,EAAqB,wBAAwB,EAAE,GAAG,EAAC,MAAM,qBAAqB,CAAC;AACnG,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AAGrE,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACpC;;;GAGG;AAIH,IAAa,0BAA0B,GAAvC,MAAa,0BAA0B;IAEnC;;;;;OAKG;IACG,iBAAiB,CAAC,QAAkB,EAAE,OAAgB,EAAE,UAA6B;;YACvF,IAAG,UAAU,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,iBAAiB,CAAC,EAAC;gBACpG,QAAQ,CAAC,UAAU,iCAAK,QAAQ,CAAC,OAAO,GAAK,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;aAC3F;YAED,OAAO,QAAQ,CAAC;QACpB,CAAC;KAAA;CACJ,CAAA;AAfY,0BAA0B;IAHtC,GAAG,CAAC,wBAAwB,CAAC,kBAAkB,CAAC;IAChD,YAAY,CAAC,uBAAuB,CAAC;IACrC,UAAU,EAAE;GACA,0BAA0B,CAetC;SAfY,0BAA0B"}
|
|
@@ -20,13 +20,38 @@ export const NetworkingModule = {
|
|
|
20
20
|
TelemetryModule,
|
|
21
21
|
],
|
|
22
22
|
configurationDefinitions: [
|
|
23
|
+
/**
|
|
24
|
+
* Whether or not the request body converter interceptor is active.
|
|
25
|
+
*/
|
|
23
26
|
{
|
|
24
|
-
parameterName: NetworkingModuleKeyname + ".
|
|
27
|
+
parameterName: NetworkingModuleKeyname + ".requestBodyConverter.isActive",
|
|
25
28
|
isRequired: false,
|
|
26
29
|
defaultValue: true,
|
|
27
30
|
defaultResolvers: [
|
|
28
31
|
new BooleanResolver(new EnvironmentVariableResolver("PRISTINE_NETWORKING_REQUEST_BODY_CONVERTER_IS_ACTIVE")),
|
|
29
32
|
],
|
|
33
|
+
},
|
|
34
|
+
/**
|
|
35
|
+
* Whether or not the default content type response header interceptor is active.
|
|
36
|
+
*/
|
|
37
|
+
{
|
|
38
|
+
parameterName: NetworkingModuleKeyname + ".defaultContentTypeResponseHeader.isActive",
|
|
39
|
+
isRequired: false,
|
|
40
|
+
defaultValue: true,
|
|
41
|
+
defaultResolvers: [
|
|
42
|
+
new BooleanResolver(new EnvironmentVariableResolver("PRISTINE_NETWORKING_DEFAULT_CONTENT_TYPE_RESPONSE_HEADER_IS_ACTIVE")),
|
|
43
|
+
],
|
|
44
|
+
},
|
|
45
|
+
/**
|
|
46
|
+
* The default Content-Type response header to set on responses that do not already have Content-Types.
|
|
47
|
+
*/
|
|
48
|
+
{
|
|
49
|
+
parameterName: NetworkingModuleKeyname + ".defaultContentTypeResponseHeader",
|
|
50
|
+
isRequired: false,
|
|
51
|
+
defaultValue: "application/json",
|
|
52
|
+
defaultResolvers: [
|
|
53
|
+
new EnvironmentVariableResolver("PRISTINE_NETWORKING_DEFAULT_CONTENT_TYPE_RESPONSE_HEADER"),
|
|
54
|
+
],
|
|
30
55
|
}
|
|
31
56
|
],
|
|
32
57
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"networking.module.js","sourceRoot":"","sources":["../../../src/networking.module.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,uBAAuB,EAAC,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAC,eAAe,EAAE,2BAA2B,EAAC,MAAM,4BAA4B,CAAC;AAExF,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAE9B,cAAc,UAAU,CAAC;AAEzB,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC7C,OAAO,EAAE,uBAAuB;IAChC,aAAa,EAAE;QACX,cAAc;QACd,eAAe;KAClB;IACD,wBAAwB,EAAE;QACtB;YACI,aAAa,EAAE,uBAAuB,GAAG,
|
|
1
|
+
{"version":3,"file":"networking.module.js","sourceRoot":"","sources":["../../../src/networking.module.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,uBAAuB,EAAC,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAC,eAAe,EAAE,2BAA2B,EAAC,MAAM,4BAA4B,CAAC;AAExF,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAE9B,cAAc,UAAU,CAAC;AAEzB,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC7C,OAAO,EAAE,uBAAuB;IAChC,aAAa,EAAE;QACX,cAAc;QACd,eAAe;KAClB;IACD,wBAAwB,EAAE;QACtB;;WAEG;QACH;YACI,aAAa,EAAE,uBAAuB,GAAG,gCAAgC;YACzE,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE;gBACd,IAAI,eAAe,CAAC,IAAI,2BAA2B,CAAC,sDAAsD,CAAC,CAAC;aAC/G;SACJ;QAED;;WAEG;QACH;YACI,aAAa,EAAE,uBAAuB,GAAG,4CAA4C;YACrF,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE;gBACd,IAAI,eAAe,CAAC,IAAI,2BAA2B,CAAC,oEAAoE,CAAC,CAAC;aAC7H;SACJ;QAED;;WAEG;QACH;YACI,aAAa,EAAE,uBAAuB,GAAG,mCAAmC;YAC5E,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,kBAAkB;YAChC,gBAAgB,EAAE;gBACd,IAAI,2BAA2B,CAAC,0DAA0D,CAAC;aAC9F;SACJ;KACJ;CACJ,CAAA"}
|
|
@@ -2,6 +2,7 @@ import { RouterNode } from "./router.node";
|
|
|
2
2
|
import { MethodRouterNode } from "./method-router.node";
|
|
3
3
|
import { PathRouterInstantiationError } from "../errors/path-router-instantiation.error";
|
|
4
4
|
import { PathRouterAddingError } from "../errors/path-router-adding.error";
|
|
5
|
+
import { UrlUtil } from "../utils/url.util";
|
|
5
6
|
/**
|
|
6
7
|
* This class represents a Path Node in the Router Node. It can never be a leaf node and will always have children.
|
|
7
8
|
*/
|
|
@@ -42,8 +43,20 @@ export class PathRouterNode extends RouterNode {
|
|
|
42
43
|
this.children.push(new MethodRouterNode(this, method, route, levelFromRoot + 1));
|
|
43
44
|
return;
|
|
44
45
|
}
|
|
45
|
-
|
|
46
|
-
|
|
46
|
+
let matchedChild;
|
|
47
|
+
if (UrlUtil.isPathACatchAll(splitPaths[1])) {
|
|
48
|
+
// If this is a catch all we can only match with a catch all.
|
|
49
|
+
matchedChild = this.children.filter(child => child instanceof PathRouterNode).find((child) => child.isCatchAll());
|
|
50
|
+
}
|
|
51
|
+
else if (UrlUtil.isPathARouteParameter(splitPaths[1])) {
|
|
52
|
+
// If this is a catch all we can only match with a catch all.
|
|
53
|
+
matchedChild = this.children.filter(child => child instanceof PathRouterNode).find((child) => child.isRouteParameter());
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
// Loop over our children that are of PathRouterNode and check if the next path matches,
|
|
57
|
+
// but if it's not a catch all we can't match with a catch all.
|
|
58
|
+
matchedChild = this.children.filter(child => child instanceof PathRouterNode).find((child) => child.matches(splitPaths[1]) && child.isCatchAll() === false && child.isRouteParameter() === false);
|
|
59
|
+
}
|
|
47
60
|
// If there's a matched child, call the add method on it and return.
|
|
48
61
|
if (matchedChild !== undefined) {
|
|
49
62
|
// Remove the first part of the path as it is used by the current node.
|
|
@@ -124,21 +137,13 @@ export class PathRouterNode extends RouterNode {
|
|
|
124
137
|
* This method return whether or not this pathRouterNode's path is a catch-all path: "/*"
|
|
125
138
|
*/
|
|
126
139
|
isCatchAll() {
|
|
127
|
-
return this.path
|
|
140
|
+
return UrlUtil.isPathACatchAll(this.path);
|
|
128
141
|
}
|
|
129
142
|
/**
|
|
130
143
|
* This method returns whether or not this pathRouterNode represents a route parameter, e.g.: /{id} or /:id
|
|
131
144
|
*/
|
|
132
145
|
isRouteParameter() {
|
|
133
|
-
|
|
134
|
-
if (this.path.startsWith("/{") && this.path.endsWith("}")) {
|
|
135
|
-
return true;
|
|
136
|
-
}
|
|
137
|
-
// We also support path parameter written as services/:id-of-service
|
|
138
|
-
if (this.path.startsWith("/:")) {
|
|
139
|
-
return true;
|
|
140
|
-
}
|
|
141
|
-
return false;
|
|
146
|
+
return UrlUtil.isPathARouteParameter(this.path);
|
|
142
147
|
}
|
|
143
148
|
/**
|
|
144
149
|
* This method returns whether the current path matches a path. We have to check if this node is a RouteParameter
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path-router.node.js","sourceRoot":"","sources":["../../../../src/nodes/path-router.node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAC,4BAA4B,EAAC,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAC,qBAAqB,EAAC,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"path-router.node.js","sourceRoot":"","sources":["../../../../src/nodes/path-router.node.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/esm/router.js
CHANGED
|
@@ -24,6 +24,7 @@ import { UrlUtil } from "./utils/url.util";
|
|
|
24
24
|
import { NotFoundHttpError } from "./errors/not-found.http-error";
|
|
25
25
|
import { PathRouterNode } from "./nodes/path-router.node";
|
|
26
26
|
import { Route } from "./models/route";
|
|
27
|
+
import { MethodRouterNode } from "./nodes/method-router.node";
|
|
27
28
|
import { ForbiddenHttpError } from "./errors/forbidden.http-error";
|
|
28
29
|
import { ControllerMethodParameterDecoratorResolver } from "./resolvers/controller-method-parameter-decorator.resolver";
|
|
29
30
|
import Url from 'url-parse';
|
|
@@ -55,6 +56,37 @@ let Router = class Router {
|
|
|
55
56
|
// This property is used to track whether the router has been already been properly instantiated or not.
|
|
56
57
|
this.setupCompleted = false;
|
|
57
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* This method returns the whole route tree as a string.
|
|
61
|
+
*/
|
|
62
|
+
getRouteTree() {
|
|
63
|
+
let message = "";
|
|
64
|
+
message = this.getRouteTreeLevel(this.root, message, 1);
|
|
65
|
+
return message;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* This method takes the existing message and appends the following levels to it.
|
|
69
|
+
* It calls itself recursively.
|
|
70
|
+
* @param node The node to print the following levels.
|
|
71
|
+
* @param message The existing message on which to append.
|
|
72
|
+
* @param level The level at which we are at.
|
|
73
|
+
*/
|
|
74
|
+
getRouteTreeLevel(node, message, level) {
|
|
75
|
+
for (const child of node.children) {
|
|
76
|
+
// @ts-ignore
|
|
77
|
+
for (let i = 0; i < level; i++) {
|
|
78
|
+
message += "\t";
|
|
79
|
+
}
|
|
80
|
+
if (child instanceof PathRouterNode) {
|
|
81
|
+
message += "--" + child.path + "\n";
|
|
82
|
+
}
|
|
83
|
+
if (child instanceof MethodRouterNode) {
|
|
84
|
+
message += "--" + child.method + "\n";
|
|
85
|
+
}
|
|
86
|
+
message = this.getRouteTreeLevel(child, message, level + 1);
|
|
87
|
+
}
|
|
88
|
+
return message;
|
|
89
|
+
}
|
|
58
90
|
/**
|
|
59
91
|
* This method registers a Route into the Route Tree maintained by the router.
|
|
60
92
|
*
|
|
@@ -118,6 +150,7 @@ let Router = class Router {
|
|
|
118
150
|
}
|
|
119
151
|
});
|
|
120
152
|
this.setupCompleted = true;
|
|
153
|
+
this.loghandler.debug("Route tree: \n" + this.getRouteTree());
|
|
121
154
|
}
|
|
122
155
|
/**
|
|
123
156
|
* This method receives a Request object, identifies the "path" its trying to hit, navigates the internally
|
|
@@ -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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"}
|
|
@@ -36,5 +36,27 @@ export class UrlUtil {
|
|
|
36
36
|
}
|
|
37
37
|
return paths;
|
|
38
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
*
|
|
41
|
+
* @param path Must start with a '/'.
|
|
42
|
+
*/
|
|
43
|
+
static isPathARouteParameter(path) {
|
|
44
|
+
// If the current path is a path parameter, meaning has services/{id-of-service}
|
|
45
|
+
if (path.startsWith("/{") && path.endsWith("}")) {
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
// We also support path parameter written as services/:id-of-service
|
|
49
|
+
if (path.startsWith("/:")) {
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
*
|
|
56
|
+
* @param path Must start with a '/'.
|
|
57
|
+
*/
|
|
58
|
+
static isPathACatchAll(path) {
|
|
59
|
+
return path.startsWith("/*");
|
|
60
|
+
}
|
|
39
61
|
}
|
|
40
62
|
//# sourceMappingURL=url.util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url.util.js","sourceRoot":"","sources":["../../../../src/utils/url.util.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,OAAO;IAChB;;;;;;;;;OASG;IACI,MAAM,CAAC,SAAS,CAAC,IAAY;QAChC,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,IAAI,KAAK,GAAa,EAAE,CAAC;QAEzB,gHAAgH;QAChH,4FAA4F;QAC5F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClC,IAAG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;gBAChB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;gBACzB,MAAM,GAAG,EAAE,CAAC;aACf;iBACI;gBACD,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CAAA;aACpB;SACJ;QAED,uEAAuE;QACvE,IAAG,MAAM,KAAK,EAAE,EAAE;YACd,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;SAC5B;QAED,kFAAkF;QAClF,IAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE;YAChC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;SAC5C;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ"}
|
|
1
|
+
{"version":3,"file":"url.util.js","sourceRoot":"","sources":["../../../../src/utils/url.util.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,OAAO;IAChB;;;;;;;;;OASG;IACI,MAAM,CAAC,SAAS,CAAC,IAAY;QAChC,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,IAAI,KAAK,GAAa,EAAE,CAAC;QAEzB,gHAAgH;QAChH,4FAA4F;QAC5F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClC,IAAG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;gBAChB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;gBACzB,MAAM,GAAG,EAAE,CAAC;aACf;iBACI;gBACD,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CAAA;aACpB;SACJ;QAED,uEAAuE;QACvE,IAAG,MAAM,KAAK,EAAE,EAAE;YACd,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;SAC5B;QAED,kFAAkF;QAClF,IAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE;YAChC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;SAC5C;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,qBAAqB,CAAC,IAAY;QAC5C,gFAAgF;QAChF,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC7C,OAAO,IAAI,CAAC;SACf;QAED,oEAAoE;QACpE,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACf;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,eAAe,CAAC,IAAY;QACtC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;CACJ"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Request, Response } from "@pristine-ts/common";
|
|
2
|
+
import { MethodRouterNode } from "../nodes/method-router.node";
|
|
3
|
+
import { RequestInterceptorInterface } from "../interfaces/request-interceptor.interface";
|
|
4
|
+
import { LogHandlerInterface } from "@pristine-ts/logging";
|
|
5
|
+
/**
|
|
6
|
+
* The Default ContentType Response Header Interceptor intercepts the response of the router and adds the default content-type header to the response.
|
|
7
|
+
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
8
|
+
*/
|
|
9
|
+
export declare class DefaultContentTypeResponseHeaderInterceptor implements RequestInterceptorInterface {
|
|
10
|
+
private readonly defaultContentTypeResponseHeader;
|
|
11
|
+
private readonly isActive;
|
|
12
|
+
private readonly logHandler;
|
|
13
|
+
/**
|
|
14
|
+
* The Default ContentType Response Header Interceptor intercepts the response of the router and adds the default content-type header to the response.
|
|
15
|
+
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
16
|
+
* @param defaultContentTypeResponseHeader The default Content-Type response header to set on responses that do not already have Content-Types.
|
|
17
|
+
* @param isActive Whether or not this interceptor is active.
|
|
18
|
+
* @param logHandler The log handler to output logs.
|
|
19
|
+
*/
|
|
20
|
+
constructor(defaultContentTypeResponseHeader: string, isActive: boolean, logHandler: LogHandlerInterface);
|
|
21
|
+
/**
|
|
22
|
+
* Intercepts the response from the router and adds the Content-Type header to it if it's not already there, with the default provided.
|
|
23
|
+
* @param response The response to intercept.
|
|
24
|
+
* @param request The request that triggered this response.
|
|
25
|
+
* @param methodNode The methode node.
|
|
26
|
+
*/
|
|
27
|
+
interceptResponse(response: Response, request: Request, methodNode?: MethodRouterNode): Promise<Response>;
|
|
28
|
+
}
|
|
@@ -1,9 +1,23 @@
|
|
|
1
1
|
import { LogHandlerInterface } from "@pristine-ts/logging";
|
|
2
2
|
import { Request } from "@pristine-ts/common";
|
|
3
3
|
import { RequestInterceptorInterface } from "../interfaces/request-interceptor.interface";
|
|
4
|
+
/**
|
|
5
|
+
* The Request Body Converter Interceptor intercepts the request and parses the body based on the Content-tTpe header.
|
|
6
|
+
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
7
|
+
*/
|
|
4
8
|
export declare class RequestBodyConverterInterceptor implements RequestInterceptorInterface {
|
|
5
9
|
private readonly isActive;
|
|
6
10
|
private readonly logHandler;
|
|
11
|
+
/**
|
|
12
|
+
* The Request Body Converter Interceptor intercepts the request and parses the body based on the Content-Type header.
|
|
13
|
+
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
14
|
+
* @param isActive Whether or not this interceptor is active.
|
|
15
|
+
* @param logHandler The log handler to output logs.
|
|
16
|
+
*/
|
|
7
17
|
constructor(isActive: boolean, logHandler: LogHandlerInterface);
|
|
18
|
+
/**
|
|
19
|
+
* Intercepts the request and parses the body based on it's Content-Type header.
|
|
20
|
+
* @param request The request to intercept.
|
|
21
|
+
*/
|
|
8
22
|
interceptRequest(request: Request): Promise<Request>;
|
|
9
23
|
}
|
|
@@ -6,5 +6,11 @@ import { RequestInterceptorInterface } from "../interfaces/request-interceptor.i
|
|
|
6
6
|
* It is tagged as a RequestInterceptor so it can be automatically injected with the all the other RequestInterceptor.
|
|
7
7
|
*/
|
|
8
8
|
export declare class ResponseHeadersInterceptor implements RequestInterceptorInterface {
|
|
9
|
+
/**
|
|
10
|
+
* Intercepts the response from the router and adds the headers specified by the response header decorator.
|
|
11
|
+
* @param response The response to intercept.
|
|
12
|
+
* @param request The request that triggered this response.
|
|
13
|
+
* @param methodNode The methode node.
|
|
14
|
+
*/
|
|
9
15
|
interceptResponse(response: Response, request: Request, methodNode?: MethodRouterNode): Promise<Response>;
|
|
10
16
|
}
|
package/dist/types/router.d.ts
CHANGED
|
@@ -25,6 +25,18 @@ export declare class Router implements RouterInterface {
|
|
|
25
25
|
* @param authenticationManager The authentication manager to validate authentication.
|
|
26
26
|
*/
|
|
27
27
|
constructor(loghandler: LogHandlerInterface, controllerMethodParameterDecoratorResolver: ControllerMethodParameterDecoratorResolver, authorizerManager: AuthorizerManagerInterface, authenticationManager: AuthenticationManagerInterface);
|
|
28
|
+
/**
|
|
29
|
+
* This method returns the whole route tree as a string.
|
|
30
|
+
*/
|
|
31
|
+
getRouteTree(): string;
|
|
32
|
+
/**
|
|
33
|
+
* This method takes the existing message and appends the following levels to it.
|
|
34
|
+
* It calls itself recursively.
|
|
35
|
+
* @param node The node to print the following levels.
|
|
36
|
+
* @param message The existing message on which to append.
|
|
37
|
+
* @param level The level at which we are at.
|
|
38
|
+
*/
|
|
39
|
+
private getRouteTreeLevel;
|
|
28
40
|
/**
|
|
29
41
|
* This method registers a Route into the Route Tree maintained by the router.
|
|
30
42
|
*
|
|
@@ -13,4 +13,14 @@ export declare class UrlUtil {
|
|
|
13
13
|
* @param path
|
|
14
14
|
*/
|
|
15
15
|
static splitPath(path: string): string[];
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @param path Must start with a '/'.
|
|
19
|
+
*/
|
|
20
|
+
static isPathARouteParameter(path: string): boolean;
|
|
21
|
+
/**
|
|
22
|
+
*
|
|
23
|
+
* @param path Must start with a '/'.
|
|
24
|
+
*/
|
|
25
|
+
static isPathACatchAll(path: string): boolean;
|
|
16
26
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pristine-ts/networking",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.196",
|
|
4
4
|
"description": "",
|
|
5
5
|
"module": "dist/lib/esm/networking.module.js",
|
|
6
6
|
"main": "dist/lib/cjs/networking.module.js",
|
|
@@ -20,10 +20,10 @@
|
|
|
20
20
|
"access": "public"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@pristine-ts/common": "^0.0.
|
|
24
|
-
"@pristine-ts/core": "^0.0.
|
|
25
|
-
"@pristine-ts/security": "^0.0.
|
|
26
|
-
"@pristine-ts/telemetry": "^0.0.
|
|
23
|
+
"@pristine-ts/common": "^0.0.196",
|
|
24
|
+
"@pristine-ts/core": "^0.0.196",
|
|
25
|
+
"@pristine-ts/security": "^0.0.196",
|
|
26
|
+
"@pristine-ts/telemetry": "^0.0.196",
|
|
27
27
|
"lodash": "^4.17.21",
|
|
28
28
|
"url-parse": "^1.4.7"
|
|
29
29
|
},
|
|
@@ -61,5 +61,5 @@
|
|
|
61
61
|
"src/*.{js,ts}"
|
|
62
62
|
]
|
|
63
63
|
},
|
|
64
|
-
"gitHead": "
|
|
64
|
+
"gitHead": "6d237f26b93ece85cad41fe82283987df96bf915"
|
|
65
65
|
}
|