actionhero
Version:
actionhero.js is a multi-transport API Server with integrated cluster capabilities and delayed tasks
26 lines (25 loc) • 950 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.action = void 0;
const index_1 = require("../index");
var action;
(function (action) {
/**
* Add a middleware component available to pre or post-process actions.
*/
function addMiddleware(data) {
if (!data.name) {
throw new Error("middleware.name is required");
}
if (!data.priority) {
data.priority = index_1.config.general.defaultMiddlewarePriority;
}
data.priority = Number(data.priority);
index_1.api.actions.middleware[data.name] = data;
if (data.global === true) {
index_1.api.actions.globalMiddleware.push(data.name);
index_1.utils.sortGlobalMiddleware(index_1.api.actions.globalMiddleware, index_1.api.actions.middleware);
}
}
action.addMiddleware = addMiddleware;
})(action = exports.action || (exports.action = {}));