@pristine-ts/validation 2.0.4 → 2.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/cjs/interceptors/body-validation.request-interceptor.js +15 -4
- package/dist/lib/cjs/interceptors/body-validation.request-interceptor.js.map +1 -1
- package/dist/lib/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/lib/esm/interceptors/body-validation.request-interceptor.js +17 -6
- package/dist/lib/esm/interceptors/body-validation.request-interceptor.js.map +1 -1
- package/dist/lib/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/types/interceptors/body-validation.request-interceptor.d.ts +3 -2
- package/package.json +6 -6
|
@@ -43,8 +43,9 @@ let BodyValidationRequestInterceptor = class BodyValidationRequestInterceptor {
|
|
|
43
43
|
* @param validator The validator that validates objects.
|
|
44
44
|
* @param dataMapper
|
|
45
45
|
*/
|
|
46
|
-
constructor(loghandler, validator, dataMapper) {
|
|
46
|
+
constructor(loghandler, tracingManager, validator, dataMapper) {
|
|
47
47
|
this.loghandler = loghandler;
|
|
48
|
+
this.tracingManager = tracingManager;
|
|
48
49
|
this.validator = validator;
|
|
49
50
|
this.dataMapper = dataMapper;
|
|
50
51
|
this.priority = networking_1.RequestInterceptorPriorityEnum.BodyMapping - 100;
|
|
@@ -71,8 +72,15 @@ let BodyValidationRequestInterceptor = class BodyValidationRequestInterceptor {
|
|
|
71
72
|
// Validates if all the conditions are respected in the expected type.
|
|
72
73
|
const errors = yield this.validator.validate(mappedBody);
|
|
73
74
|
if (errors.length == 0) {
|
|
75
|
+
this.tracingManager.addMarkerToCurrentSpan("validation.passed", {
|
|
76
|
+
classType: bodyValidator.classType.name,
|
|
77
|
+
});
|
|
74
78
|
return request;
|
|
75
79
|
}
|
|
80
|
+
this.tracingManager.addMarkerToCurrentSpan("validation.failed", {
|
|
81
|
+
classType: bodyValidator.classType.name,
|
|
82
|
+
errorCount: String(errors.length),
|
|
83
|
+
});
|
|
76
84
|
this.loghandler.error(`Error validating body of request.`, {
|
|
77
85
|
eventGroupId: request.groupId,
|
|
78
86
|
highlights: {
|
|
@@ -85,8 +93,10 @@ let BodyValidationRequestInterceptor = class BodyValidationRequestInterceptor {
|
|
|
85
93
|
routeContext: methodNode.route.context,
|
|
86
94
|
},
|
|
87
95
|
});
|
|
88
|
-
// If we received some error while validating we reject by throwing an error.
|
|
89
|
-
|
|
96
|
+
// If we received some error while validating we reject by throwing an error. The
|
|
97
|
+
// `details.errors` array carries the structured class-validator output; the responders
|
|
98
|
+
// surface it to API callers (HTTP body) and CLI users (stderr lines).
|
|
99
|
+
throw new common_1.ValidationError("Validation error", { details: { errors } });
|
|
90
100
|
});
|
|
91
101
|
}
|
|
92
102
|
};
|
|
@@ -102,7 +112,8 @@ exports.BodyValidationRequestInterceptor = BodyValidationRequestInterceptor = __
|
|
|
102
112
|
(0, common_1.tag)(common_1.ServiceDefinitionTagEnum.RequestInterceptor),
|
|
103
113
|
(0, tsyringe_1.injectable)(),
|
|
104
114
|
__param(0, (0, tsyringe_1.inject)("LogHandlerInterface")),
|
|
105
|
-
|
|
115
|
+
__param(1, (0, tsyringe_1.inject)("TracingManagerInterface")),
|
|
116
|
+
__metadata("design:paramtypes", [Object, Object, class_validator_1.Validator,
|
|
106
117
|
data_mapping_common_1.DataMapper])
|
|
107
118
|
], BodyValidationRequestInterceptor);
|
|
108
119
|
//# sourceMappingURL=body-validation.request-interceptor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"body-validation.request-interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/body-validation.request-interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"body-validation.request-interceptor.js","sourceRoot":"","sources":["../../../../src/interceptors/body-validation.request-interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAIiC;AACjC,kEAAuD;AACvD,gDAA2I;AAC3I,4EAAqE;AACrE,uCAA4C;AAE5C,uFAAsF;AACtF,0EAA4D;AAE5D;;;;GAIG;AAII,IAAM,gCAAgC,GAAtC,MAAM,gCAAgC;IAI3C;;;;;;;OAOG;IACH,YAA2C,UAAgD,EAC5C,cAAwD,EAC1E,SAAoB,EACpB,UAAsB;QAHS,eAAU,GAAV,UAAU,CAAqB;QAC3B,mBAAc,GAAd,cAAc,CAAyB;QAC1E,cAAS,GAAT,SAAS,CAAW;QACpB,eAAU,GAAV,UAAU,CAAY;QAbnD,aAAQ,GAAG,2CAA8B,CAAC,WAAW,GAAG,GAAG,CAAC;IAe5D,CAAC;IAED;;;;;OAKG;IAEG,gBAAgB,CAAC,OAAgB,EAAE,UAA4B;;YACnE,MAAM,aAAa,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,yDAA6B,CAAC,CAAC;YAE9E,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACzE,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,kCAAkC,EAAE;gBACxD,OAAO;gBACP,UAAU;gBACV,YAAY,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;aACvC,CAAC,CAAA;YAEF,6DAA6D;YAC7D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;YAExF,sEAAsE;YACtE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAEzD,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACvB,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,mBAAmB,EAAE;oBAC9D,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,IAAI;iBACxC,CAAC,CAAC;gBACH,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,mBAAmB,EAAE;gBAC9D,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,IAAI;gBACvC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;aAClC,CAAC,CAAC;YAGH,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,mCAAmC,EAAE;gBACzD,YAAY,EAAE,OAAO,CAAC,OAAO;gBAC7B,UAAU,EAAE;oBACV,MAAM;oBACN,UAAU;iBACX;gBACD,KAAK,EAAE;oBACL,OAAO;oBACP,UAAU;oBACV,YAAY,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;iBACvC;aACF,CAAC,CAAA;YAEF,iFAAiF;YACjF,uFAAuF;YACvF,sEAAsE;YACtE,MAAM,IAAI,wBAAe,CAAC,kBAAkB,EAAE,EAAC,OAAO,EAAE,EAAC,MAAM,EAAC,EAAC,CAAC,CAAC;QACrE,CAAC;KAAA;CACF,CAAA;AA5EY,4EAAgC;AA0BrC;IADL,IAAA,eAAM,GAAE;;qCACuB,gBAAO,EAAc,6BAAgB;;wEAiDpE;2CA3EU,gCAAgC;IAH5C,IAAA,qBAAY,EAAC,mDAAuB,CAAC;IACrC,IAAA,YAAG,EAAC,iCAAwB,CAAC,kBAAkB,CAAC;IAChD,IAAA,qBAAU,GAAE;IAaE,WAAA,IAAA,iBAAM,EAAC,qBAAqB,CAAC,CAAA;IAC7B,WAAA,IAAA,iBAAM,EAAC,yBAAyB,CAAC,CAAA;qDACN,2BAAS;QACR,gCAAU;GAfxC,gCAAgC,CA4E5C"}
|