Trap me if you can!
traps
leverages proxies and allows to easily create chainable api
s.
You can register traps which will be invoked when a specific method is invoked or capture all method invocations in a sink.
npm install --save traps
import traps from 'traps'
// capture all method invocations
const api = traps(console.log)
api.foo('bar').baz('qux')
// =>
// foo, ['bar']
// baz, ['qux']
// register a trap
api('woot', (name, params) => console.log('WOOT!', params))
api.woot('a wombat')
// => WOOT!, ['a wombat']
// invoke an lambda trap
api.trap(() => console.log('I do not have a name.'))
// => I do not have a name.
MIT © Nicolas Gryman