UNPKG

@tsed/common

Version:
29 lines 1.33 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ParamValidationError = void 0; const core_1 = require("@tsed/core"); const exceptions_1 = require("@tsed/exceptions"); const ValidationError_1 = require("../../mvc/errors/ValidationError"); class ParamValidationError extends exceptions_1.BadRequest { constructor() { super(...arguments); this.name = "PARAM_VALIDATION_ERROR"; } static from(metadata, origin = {}) { if (origin instanceof ValidationError_1.ValidationError || origin instanceof exceptions_1.BadRequest) { const name = core_1.nameOf(metadata.service) .toLowerCase() .replace(/parse|params|filter/gi, ""); const expression = metadata.expression; const message = `Bad request on parameter "request.${name}${expression ? "." + expression : ""}".\n${origin.message}`.trim(); const error = new ParamValidationError(message); error.dataPath = String(metadata.expression) || ""; error.requestType = core_1.nameOf(metadata.service); error.origin = origin.origin || origin; return error; } return origin; } } exports.ParamValidationError = ParamValidationError; //# sourceMappingURL=ParamValidationError.js.map