@pluginjs/simple-emitter
Advanced tools
Comparing version 0.7.16 to 0.7.17
/*! | ||
* @pluginjs/simple-emitter v0.7.16 (https://pluginjs.com) | ||
* Copyright 2019 Creation Studio Limited | ||
* @pluginjs/simple-emitter v0.7.17 (https://pluginjs.com) | ||
* Copyright 2020 Creation Studio Limited | ||
* Released under the GPL-3.0 License. | ||
@@ -5,0 +5,0 @@ */ |
/*! | ||
* @pluginjs/simple-emitter v0.7.16 (https://pluginjs.com) | ||
* Copyright 2019 Creation Studio Limited | ||
* @pluginjs/simple-emitter v0.7.17 (https://pluginjs.com) | ||
* Copyright 2020 Creation Studio Limited | ||
* Released under the GPL-3.0 License. | ||
*/ | ||
"use strict";class SimpleEmitter{constructor(){this.listeners={}}emit(e){for(var t=this.getListeners(e),s=arguments.length,r=new Array(s>1?s-1:0),i=1;i<s;i++)r[i-1]=arguments[i];for(var n=0;n<t.length;n++){var l=null;l=null!==t[n].context?t[n].context:{type:e};var h=t[n].listener.apply(l,r);if(t[n].one&&this.removeListener(e,t[n].listener),!1===h)return!1}return!0}on(e,t,s){return this.addListener(e,t,s)}once(e,t,s){return this.addListenerOnce(e,t,s)}off(e,t){return void 0===t?this.removeAllListeners(e):this.removeListener(e,t)}addListener(e,t){var s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return this.ensureListener(t),this.hasListeners(e)||(this.listeners[e]=[]),this.listeners[e].push({context:s,listener:t,one:r}),this}addListenerOnce(e,t,s){return this.addListener(e,t,s,!0)}removeListener(e,t){return this.hasListeners(e)&&(this.listeners[e]=this.listeners[e].filter(e=>e.listener!==t),0===this.listeners[e].length&&delete this.listeners[e]),this}removeAllListeners(e){return this.hasListeners(e)&&delete this.listeners[e],this}hasListeners(e){return!(!this.listeners[e]||0===this.listeners[e].length)}getListeners(e){return this.hasListeners(e)?this.listeners[e]:[]}ensureListener(e){var t=typeof e;if("function"===t)return e;throw new TypeError("Listeners should be function or closure. Received type: ".concat(t))}}module.exports=SimpleEmitter; |
/*! | ||
* @pluginjs/simple-emitter v0.7.16 (https://pluginjs.com) | ||
* Copyright 2019 Creation Studio Limited | ||
* @pluginjs/simple-emitter v0.7.17 (https://pluginjs.com) | ||
* Copyright 2020 Creation Studio Limited | ||
* Released under the GPL-3.0 License. | ||
@@ -5,0 +5,0 @@ */ |
/*! | ||
* @pluginjs/simple-emitter v0.7.16 (https://pluginjs.com) | ||
* Copyright 2019 Creation Studio Limited | ||
* @pluginjs/simple-emitter v0.7.17 (https://pluginjs.com) | ||
* Copyright 2020 Creation Studio Limited | ||
* Released under the GPL-3.0 License. | ||
*/ | ||
export default class{constructor(){this.listeners={}}emit(e){for(var t=this.getListeners(e),s=arguments.length,r=new Array(s>1?s-1:0),n=1;n<s;n++)r[n-1]=arguments[n];for(var i=0;i<t.length;i++){var h=null;h=null!==t[i].context?t[i].context:{type:e};var l=t[i].listener.apply(h,r);if(t[i].one&&this.removeListener(e,t[i].listener),!1===l)return!1}return!0}on(e,t,s){return this.addListener(e,t,s)}once(e,t,s){return this.addListenerOnce(e,t,s)}off(e,t){return void 0===t?this.removeAllListeners(e):this.removeListener(e,t)}addListener(e,t){var s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return this.ensureListener(t),this.hasListeners(e)||(this.listeners[e]=[]),this.listeners[e].push({context:s,listener:t,one:r}),this}addListenerOnce(e,t,s){return this.addListener(e,t,s,!0)}removeListener(e,t){return this.hasListeners(e)&&(this.listeners[e]=this.listeners[e].filter(e=>e.listener!==t),0===this.listeners[e].length&&delete this.listeners[e]),this}removeAllListeners(e){return this.hasListeners(e)&&delete this.listeners[e],this}hasListeners(e){return!(!this.listeners[e]||0===this.listeners[e].length)}getListeners(e){return this.hasListeners(e)?this.listeners[e]:[]}ensureListener(e){var t=typeof e;if("function"===t)return e;throw new TypeError("Listeners should be function or closure. Received type: ".concat(t))}} |
/*! | ||
* @pluginjs/simple-emitter v0.7.16 (https://pluginjs.com) | ||
* Copyright 2019 Creation Studio Limited | ||
* @pluginjs/simple-emitter v0.7.17 (https://pluginjs.com) | ||
* Copyright 2020 Creation Studio Limited | ||
* Released under the GPL-3.0 License. | ||
@@ -5,0 +5,0 @@ */ |
/*! | ||
* @pluginjs/simple-emitter v0.7.16 (https://pluginjs.com) | ||
* Copyright 2019 Creation Studio Limited | ||
* @pluginjs/simple-emitter v0.7.17 (https://pluginjs.com) | ||
* Copyright 2020 Creation Studio Limited | ||
* Released under the GPL-3.0 License. | ||
*/ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self)["@pluginjs/simple-emitter"]=t()}(this,(function(){"use strict";function e(t){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(t)}function t(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)}}return function(){function n(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,n),this.listeners={}}var r,i,s;return r=n,(i=[{key:"emit",value:function(e){for(var t=this.getListeners(e),n=arguments.length,r=new Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];for(var s=0;s<t.length;s++){var o=null;o=null!==t[s].context?t[s].context:{type:e};var u=t[s].listener.apply(o,r);if(t[s].one&&this.removeListener(e,t[s].listener),!1===u)return!1}return!0}},{key:"on",value:function(e,t,n){return this.addListener(e,t,n)}},{key:"once",value:function(e,t,n){return this.addListenerOnce(e,t,n)}},{key:"off",value:function(e,t){return void 0===t?this.removeAllListeners(e):this.removeListener(e,t)}},{key:"addListener",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return this.ensureListener(t),this.hasListeners(e)||(this.listeners[e]=[]),this.listeners[e].push({context:n,listener:t,one:r}),this}},{key:"addListenerOnce",value:function(e,t,n){return this.addListener(e,t,n,!0)}},{key:"removeListener",value:function(e,t){return this.hasListeners(e)&&(this.listeners[e]=this.listeners[e].filter((function(e){return e.listener!==t})),0===this.listeners[e].length&&delete this.listeners[e]),this}},{key:"removeAllListeners",value:function(e){return this.hasListeners(e)&&delete this.listeners[e],this}},{key:"hasListeners",value:function(e){return!(!this.listeners[e]||0===this.listeners[e].length)}},{key:"getListeners",value:function(e){return this.hasListeners(e)?this.listeners[e]:[]}},{key:"ensureListener",value:function(t){var n=e(t);if("function"===n)return t;throw new TypeError("Listeners should be function or closure. Received type: ".concat(n))}}])&&t(r.prototype,i),s&&t(r,s),n}()})); |
@@ -14,3 +14,3 @@ { | ||
}, | ||
"version": "0.7.16", | ||
"version": "0.7.17", | ||
"category": "core", | ||
@@ -38,3 +38,3 @@ "main": "dist/simple-emitter.common.js", | ||
"@babel/core": "^7.7.5", | ||
"@pluginjs/browserslist-config": "^1.2.12", | ||
"@pluginjs/browserslist-config": "^1.2.14", | ||
"@pluginjs/cli": "^0.7.15", | ||
@@ -66,4 +66,4 @@ "babel-jest": "*", | ||
], | ||
"gitHead": "f0767d4ff57027169d885ad7a3a46dbc4ff5cf7f", | ||
"gitHead": "45f59203aaa9720d1fb61f5e96cde6d73b4cf2c8", | ||
"title": "Plugin" | ||
} |