Have hooks and middleware for just about any function.
- Execute middleware before your function executes
- Execute afterware after your function executes
- Organize and compose repeated workflows
- Asynchronous middleware and afterware support
- Works in node as well as browser
Using NPM:
npm i intermediary
Using yarn:
yarn add intermediary
UMD Build CDN:
<script src="https://cdn.jsdelivr.net/npm/intermediary/lib/intermediary.min.js"></script>
Common JS:
const Intermediary = require('intermediary')
ES6:
import Intermediary from 'intermediary';
Browser:
If using the CDN, Intermediary is available at window.Intermediary
.
Usage: see http://eskawl.github.io/intermediary
-
Middleware and Afterware executor is removed. Therefore, no use of a executor function that takes a
next
argument and return thenext(args)
-
In middleware, instead of returning
next(args)
, return[...args]
in an array form -
In afterware, instead of returning
next(args)
, return{result: <result to be used by next afterware>, args: <arguments to be used by next afterware>}
-
Afterware callback takes
result
from previous afterware/target as first argument and remaining arguments with it -
Extra argument as config can be sent to
involve
orseries
. It includes the flag forthrowOnMiddleware, throwOnTarget, throwOnAfterware
that help in execution of the middleware/afterware/target even if there is any error that occurs in any of them, according the flags provided