UNPKG

@tlrg/middleware-js

Version:
28 lines (22 loc) 810 B
var fs = require('fs'); var path = require('path'); var basePath = path.join(__dirname, 'middlewares'); var availableMiddlewares = fs.readdirSync(basePath).filter(function (middleware) { return middleware.charAt(0) !== '.'; }); var middlewares = {}; availableMiddlewares.forEach(function (middlewareName) { middlewares[middlewareName] = require(path.join(basePath, middlewareName)); }); exports = middlewares; exports.use = function loadMiddleware() { var middlewaresToLoad = []; for (var i = 0; i < arguments.length; i++) { if (middlewares[arguments[i]] === undefined) { throw new Error('Middleware ' + arguments[i] + ' not found.'); } middlewaresToLoad.push(middlewares[arguments[i]]); } return middlewaresToLoad; }; module.exports = exports;