UNPKG

@o-galaxy/ether

Version:

Rest Api Framework

31 lines 1.54 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const express_1 = require("express"); const controller_processor_1 = require("./controller-processor"); const guard_processor_1 = require("./guard-processor"); function moduleProcessor(moduleClass) { const params = moduleClass.prototype['$module_params']; let { path, guards = [], controllers = [], // providers = [], errorHandlers = [], modules = [], } = params; let router = express_1.Router(); router = guards.reduce((accRouter, guard) => guard_processor_1.gourdProcessor(accRouter, guard), router); router = controllers.reduce((accRouter, controller) => controller_processor_1.controllerProcessor(accRouter, controller), router); router = modules.reduce((accRouter, subModule) => subModuleProcessor(accRouter, subModule), router); router = errorHandlers.reduce((accRouter, errorHandler) => errorHandlerProcessor(accRouter, errorHandler), router); if (path != undefined && path != "" && typeof path == 'string') { router = express_1.Router().use(path, router); } return router; } exports.moduleProcessor = moduleProcessor; function subModuleProcessor(router, moduleClass) { const moduleRouter = moduleProcessor(moduleClass); return router.use(moduleRouter); } function errorHandlerProcessor(router, errorHandler) { return Array.isArray(errorHandler) ? router.use(errorHandler[0], errorHandler[1]) : router.use(errorHandler); } //# sourceMappingURL=module-processor.js.map