flak

Powerfull universal JavaScript event emitter for browser and server.


Keywords
event, listener, emitter, on, off, trigger, once, addEvent, removeEvent, addListener, suspendEvent, resumeEvent, eventemitter, events, javascript-event-emitter, nodejs
License
MIT
Install
npm install flak@1.0.0

Documentation





Powerfull universal JavaScript event emitter for browser and server.

Installation

Node.js

npm install flak --save

Example

const Flak = require('flak');
const emitter = new Flak();

// Adds listener for the event
emitter.on('myEvent1', (param1, param2)=>{
    console.log(param1, param2);
});

// Adds a one time listener function for the event 
emitter.once('myEvent2', (param1, param2)=>{
    console.log(param1, param2);
});

// Adds listener for the event that can be call just 4 time
emitter.on('myEvent3', (param1, param2)=>{
    console.log(param1, param2);
}, {
    maxCalls: 4
});

// Adds the listener function to the beginning of the listeners array for the event named myEvent1
emitter.on('myEvent1', (param1, param2)=>{
    console.log(param1, param2);
}, {
    prepend: true
});

// Catch all events
emitter.onCatchAll(params=>{
    console.log(params);
});

// Fire event
emitter.fire('myEvent1', true, {a: 1});

// Fire async method
emitter.fireAsync('myEvent2', true, {a: 1});

// Remove all listeners for myEvent1
emitter.off('myEvent1');

// Returning data using "fireTheFirst"
emitter.on('myEvent', (param1, param2)=>{
    return param1 + '-' + param2;
});
console.log('foo-bar' === emitter.fireTheFirst('myEvent', 'foo', 'bar')) //=> true;

// Suspend event
emitter.suspendEvent('myEvent');
emitter.fire('myEvent'); // will not be fired!

// Resume event
emitter.resumeEvent('myEvent');

API Documentation

See full documentation here

Browser

Local

<script src="node_modules/flak/dist/flak.min.js"></script>

CDN unpkg

<script src="https://unpkg.com/flak/dist/flak.min.js"></script>

CDN jsDeliver

<script src="https://cdn.jsdelivr.net/npm/flak/dist/flak.min.js"></script>

Changelog

You can view the changelog here

License

Flak is open-sourced software licensed under the MIT license

Author

Fabio Ricali