@osjs/event-emitter
Version:
A simple event emitter
2 lines • 3.15 kB
JavaScript
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.osjsEventEmitter=t():e.osjsEventEmitter=t()}(global,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=2)}([function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function n(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}e.exports=function(e,t,r){return t&&n(e.prototype,t),r&&n(e,r),e}},function(e,t,n){e.exports=n(3)},function(e,t,n){"use strict";n.r(t),n.d(t,"EventEmitter",(function(){return c}));var r=n(0),o=n.n(r),i=n(1),u=n.n(i),f=function(e){return e instanceof Array?e:String(e).replace(/\s+/g,"").split(",")},c=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"undefined";o()(this,e),this.name=t,this.events={}}return u()(e,[{key:"destroy",value:function(){this.events={}}},{key:"on",value:function(e,t){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(r=r||{},"function"!=typeof t)throw new TypeError("Invalid callback");return f(e).forEach((function(e){n.events[e]||(n.events[e]=[]),n.events[e].push({callback:t,options:r})})),this}},{key:"once",value:function(e,t){return this.on(e,t,{once:!0})}},{key:"off",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return f(e).filter((function(e){return!!t.events[e]})).forEach((function(e){if(n)for(var o=t.events[e].length;o--;){var i=t.events[e][o];(!i.options.persist||r)&&i.callback===n&&t.events[e].splice(o,1)}else t.events[e]=r?[]:t.events[e].filter((function(e){return!0===e.options.persist}))})),this}},{key:"emit",value:function(e){for(var t=this,n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return f(e).forEach((function(e){if(t.events[e])for(var n=t.events[e].length;n--;){var o=t.events[e][n],i=o.options,u=o.callback;try{u.apply(void 0,r)}catch(e){console.warn(e)}i&&i.once&&t.events[e].splice(n,1)}})),this}}]),e}()}])}));
//# sourceMappingURL=main.js.map