UNPKG

mediatr-ts

Version:

Mimic the famous MediatR csharp library see: (https://github.com/jbogard/MediatR)

22 lines 905 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var index_js_1 = require("../models/mappings/index.js"); /** * Decorate the requestHandler with this attribute * * @param value The request type */ var requestHandler = function (value) { return function (target) { var existingTypeMappings = index_js_1.typeMappings.requestHandlers.getAll().filter(function (x) { return x.requestClass === value; }); if (existingTypeMappings.length > 0) { throw new Error("Request handler for ".concat(value.name, " has been defined twice. Make sure you only have one @requestHandler decorator for each request type.")); } index_js_1.typeMappings.requestHandlers.add({ requestClass: value, handlerClass: target }); }; }; exports.default = requestHandler; //# sourceMappingURL=requestHandler.attribute.js.map