UNPKG

micro-typed-events

Version:

micro-typed-events

30 lines (28 loc) 904 B
function createEvents() { var listeners = []; return { subscribe: function (listener) { listeners.push(listener); return function () { var index = listeners.indexOf(listener); if (index > -1) { listeners.splice(index, 1); } }; }, emit: function () { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } // take care of user trying to unsub inside a listener listeners.slice().forEach(function (listener) { if (listeners.indexOf(listener) > -1) { listener.apply(void 0, args); } }); }, }; } export { createEvents }; //# sourceMappingURL=index.es.js.map