UNPKG

@tsed/common

Version:
37 lines 1.47 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PlatformAcceptMimesMiddleware = void 0; const tslib_1 = require("tslib"); const core_1 = require("@tsed/core"); const di_1 = require("@tsed/di"); const exceptions_1 = require("@tsed/exceptions"); const mvc_1 = require("../../mvc"); const context_1 = require("../decorators/context"); /** * @middleware * @platform */ let PlatformAcceptMimesMiddleware = class PlatformAcceptMimesMiddleware { use(ctx) { const { endpoint, request } = ctx; const mimes = core_1.uniq((endpoint.get("acceptMimes") || []).concat(this.acceptMimes)); if (mimes.length && !request.accepts(mimes)) { throw new exceptions_1.NotAcceptable(mimes.join(", ")); } } }; tslib_1.__decorate([ di_1.Constant("acceptMimes", []), tslib_1.__metadata("design:type", Array) ], PlatformAcceptMimesMiddleware.prototype, "acceptMimes", void 0); tslib_1.__decorate([ tslib_1.__param(0, context_1.Context()), tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object]), tslib_1.__metadata("design:returntype", void 0) ], PlatformAcceptMimesMiddleware.prototype, "use", null); PlatformAcceptMimesMiddleware = tslib_1.__decorate([ mvc_1.Middleware() ], PlatformAcceptMimesMiddleware); exports.PlatformAcceptMimesMiddleware = PlatformAcceptMimesMiddleware; //# sourceMappingURL=PlatformAcceptMimesMiddleware.js.map