UNPKG

@restmatic/server

Version:

The core Pomegranate plugins for RestMatic

33 lines 1.26 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /** * @file PreRouter * @author Jim Bulkowski <jim.b@paperelectron.com> * @project server * @license MIT {@link http://opensource.org/licenses/MIT} */ const fp_1 = require("lodash/fp"); const plugin_tools_1 = require("@pomegranate/plugin-tools"); const ExtractMiddleware_1 = require("./helpers/ExtractMiddleware"); exports.PreRouter = plugin_tools_1.CreatePlugin('action') .configuration({ name: 'PreRouter', depends: ['@restmatic/StaticFiles'] }) .variables({ middlewareOrder: ['compression', 'serveStatic', 'responseTime', 'logger'] }) .hooks({ load: (PluginInjector, PluginLogger, PluginVariables, Middleware, Express) => { PluginLogger.log('Configuring Pre-route Middleware', 1); fp_1.each((available) => { PluginLogger.log(`Available Middleware: ${available}`, 2); }, fp_1.keys(Middleware)); let MountMiddleware = ExtractMiddleware_1.extractMiddleware(Middleware); fp_1.each((mw) => { PluginLogger.log(`Using Middleware: ${mw.name}.`); Express.use(mw.fn); }, MountMiddleware(PluginVariables.middlewareOrder)); } }); //# sourceMappingURL=PreRouter.js.map