@methodus/server
Version:
Server components for @methodus workflow
22 lines • 1.08 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
require("reflect-metadata");
function ModuleConfiguration(moduleClass) {
return (target) => {
const moduleClassInfo = moduleClass.prototype.constructor;
if (!moduleClassInfo.prototype.options) {
throw new Error('Empty module.');
}
const original = target.prototype.constructor;
original.prototype.options = original.prototype.options ||
{ servers: [], classes: [], clients: [], plugins: [] };
const setupObject = original.prototype.options;
const moduleObject = moduleClassInfo.prototype.options;
setupObject.classes = setupObject.classes.concat(moduleObject.classes);
setupObject.servers = setupObject.servers.concat(moduleObject.servers);
setupObject.clients = setupObject.clients.concat(moduleObject.clients);
setupObject.plugins = setupObject.plugins.concat(moduleObject.plugins);
};
}
exports.ModuleConfiguration = ModuleConfiguration;
//# sourceMappingURL=module-config.js.map