UNPKG

micro-typed-events

Version:

micro-typed-events

34 lines (30 loc) 992 B
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); 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); } }); }, }; } exports.createEvents = createEvents; //# sourceMappingURL=index.js.map