UNPKG

@opra/nestjs-http

Version:
34 lines (33 loc) 1.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.OpraMiddleware = void 0; const tslib_1 = require("tslib"); const common_1 = require("@nestjs/common"); const http_1 = require("@opra/http"); const opra_http_nestjs_adapter_js_1 = require("./opra-http-nestjs-adapter.js"); let OpraMiddleware = class OpraMiddleware { constructor(opraAdapter) { this.opraAdapter = opraAdapter; } use(req, res, next) { const request = http_1.HttpIncoming.from(req); const response = http_1.HttpOutgoing.from(res); /** Create the HttpContext */ const context = new http_1.HttpContext({ adapter: this.opraAdapter, platform: req.route ? 'express' : 'fastify', request, response, }); req.opraContext = context; this.opraAdapter .emitAsync('createContext', context) .then(() => next()) .catch(next); } }; exports.OpraMiddleware = OpraMiddleware; exports.OpraMiddleware = OpraMiddleware = tslib_1.__decorate([ (0, common_1.Injectable)(), tslib_1.__metadata("design:paramtypes", [opra_http_nestjs_adapter_js_1.OpraHttpNestjsAdapter]) ], OpraMiddleware);