UNPKG

routing-controllers

Version:

Create structured, declarative and beautifully organized class-based controllers with heavy decorators usage for Express / Koa using TypeScript.

46 lines 1.68 kB
import { BadRequestError } from '../http-error/BadRequestError'; /** * Thrown when parameter is required, but was missing in a user request. */ export class ParamRequiredError extends BadRequestError { constructor(action, param) { super(); this.name = 'ParamRequiredError'; Object.setPrototypeOf(this, ParamRequiredError.prototype); let paramName; switch (param.type) { case 'param': paramName = `Parameter "${param.name}" is`; break; case 'body': paramName = 'Request body is'; break; case 'body-param': paramName = `Body parameter "${param.name}" is`; break; case 'query': paramName = `Query parameter "${param.name}" is`; break; case 'header': paramName = `Header "${param.name}" is`; break; case 'file': paramName = `Uploaded file "${param.name}" is`; break; case 'files': paramName = `Uploaded files "${param.name}" are`; break; case 'session': paramName = 'Session is'; break; case 'cookie': paramName = 'Cookie is'; break; default: paramName = 'Parameter is'; } const uri = `${action.request.method} ${action.request.url}`; // todo: check it it works in koa this.message = `${paramName} required for request on ${uri}`; } } //# sourceMappingURL=ParamRequiredError.js.map