@tsed/event-emitter 8.9.4 → 8.10.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,23 @@
1
+ (function(J,be){typeof exports=="object"&&typeof module<"u"?be(exports,require("\0/home/runner/work/tsed/tsed/node_modules/reflect-metadata/Reflect.js?commonjs-external"),require("/home/runner/work/tsed/tsed/node_modules/eventemitter2/lib/eventemitter2.js")):typeof define=="function"&&define.amd?define(["exports","\0/home/runner/work/tsed/tsed/node_modules/reflect-metadata/Reflect.js?commonjs-external","/home/runner/work/tsed/tsed/node_modules/eventemitter2/lib/eventemitter2.js"],be):(J=typeof globalThis<"u"?globalThis:J||self,be(J["@tsed/event-emitter"]={},J.require$$0,J.eventEmitter2))})(this,function(J,be,Sr){"use strict";var Tr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},we={exports:{}},un=we.exports,nn;function fn(){return nn||(nn=1,function(ft,I){(function(a,$){$(I)})(un,function(a){var $=r=>{throw TypeError(r)},U=(r,o,i)=>o.has(r)||$("Cannot "+i),A=(r,o,i)=>(U(r,o,"read from private field"),i?i.call(r):o.get(r)),Q=(r,o,i)=>o.has(r)?$("Cannot add the same private member more than once"):o instanceof WeakSet?o.add(r):o.set(r,i),Y=(r,o,i,h)=>(U(r,o,"write to private field"),o.set(r,i),i),ot,St,tt,lt,Z=(r=>(r.PARAM="parameter",r.PARAM_CTOR="parameter.constructor",r.PARAM_STC="parameter.static",r.PROP="property",r.PROP_STC="property.static",r.METHOD="method",r.METHOD_STC="method.static",r.CLASS="class",r))(Z||{});function q(r){return r.prototype?r:r.constructor}function x(r){return q(r)}function mt(r){const[o,i,h]=r,g=E=>o!==x(o)?E:`${E}.static`;return typeof h=="number"?i?g("parameter"):"parameter.constructor":h&&h.value?g("method"):i&&h===void 0||h?g("property"):Z.CLASS}function Ct(r){return r===Date||r instanceof Date&&!isNaN(+r)}function Ot(r){return typeof r=="function"}function bt(r){return r==null}function Lt(r){return typeof r=="boolean"||r instanceof Boolean||r===Boolean}function Ft(r){return typeof r=="boolean"||r instanceof Boolean||r===Boolean}function te(r){return typeof r=="number"}function jt(r){return typeof r=="number"||r instanceof Number||r===Number}function Bt(r){return typeof r=="string"}function ee(r){return typeof r=="string"||r instanceof String||r===String}function He(r){return ee(r)||jt(r)||Ft(r)}function X(r){return Bt(r)||te(r)||Lt(r)}function Vt(r){return[String,Number,Boolean].includes(r)}function ze(r){return r instanceof RegExp}function j(r){return typeof r=="symbol"}function qe(r){return typeof r=="symbol"||r instanceof Symbol||r===Symbol}const wt=r=>bt(r)||X(r)||j(r)||Ot(r),Et=(r,o=new WeakMap)=>{if(wt(r))return r;const i=o.get(r);if(i)return i;if(ArrayBuffer.isView(r))return Buffer.isBuffer(r)?Buffer.from(r):new(x(r))(r.buffer.slice(0),r.byteOffset,r.byteLength);if(Ct(r))return new Date(r);if(ze(r))return new RegExp(r);if(Array.isArray(r)){const g=[];return o.set(r,g),r.forEach((E,k)=>g[k]=Et(E,o)),g}if(r instanceof Map){const g=new Map;return o.set(r,g),r.forEach((E,k)=>g.set(Et(k,o),Et(E,o))),g}if(r instanceof Set){const g=new Set;return o.set(r,g),r.forEach(E=>g.add(Et(E,o))),g}const h=Object.create(Reflect.getPrototypeOf(r));return o.set(r,h),Reflect.ownKeys(r).forEach(g=>{const E=Object.getOwnPropertyDescriptor(r,g);E&&(Ot(E.value)?Object.defineProperty(h,g,E):Object.defineProperty(h,g,{...E,value:Et(E.value,o)}))}),h};function Je(r){return r?x(r)!==Object?Object.create(r):{}:{}}function re(r){return["__proto__","constructor","prototype"].includes(r)}function Pe(r){return Object.keys(r).filter(o=>!re(o))}function Qe(r){return(o,i,h)=>{const g=o.findIndex(E=>r(E,i));return g===-1?[...o,i]:(o[g]=Ut(o[g],i,h),o)}}const Kt=Qe((r,o)=>r===o);function kr({reducers:r,parentKey:o}){return r?o&&r[o]?r[o]:r.default||Kt:Kt}function Ar(r,o){return X(r)||j(r)||Ot(r)||o===void 0}function Ye(r,o){return r==null||r===""&&o!==""}function Ut(r,o,i={}){if(Ye(o,r))return r;if(Ar(o,r))return o;if(Array.isArray(r)){const g=kr(i);return[].concat(o).reduce((E,k)=>g(E,k,i),[...r])}const h=Je(r);return[...Pe(r),...Pe(o)].reduce((g,E)=>{var k;const D=r&&r[E],K=Ut(D,o&&o[E],{...i,parentKey:E});return i.cleanUndefinedProps&&K===void 0||(g[E]=((k=i.alter)==null?void 0:k.call(i,E,K))??K),g},h)}function et(r,o){return Reflect.getOwnPropertyDescriptor(r&&r.prototype||r,o)}function Cr(r,o){var i;return(i=et(r,o))==null?void 0:i.value}function ct(r){return typeof r=="function"?r.name:r.constructor.name}const Ze=r=>r.toString().replace("Symbol(","").replace(")","");function ht(r){switch(typeof r){default:return""+r;case"symbol":return Ze(r);case"function":return ct(r)}}var Re=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof Tr<"u"?Tr:typeof self<"u"?self:{},Xe={};/*! *****************************************************************************
2
+ Copyright (C) Microsoft. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */var Me;function jr(){if(Me)return Xe;Me=1;var r;return function(o){(function(i){var h=typeof globalThis=="object"?globalThis:typeof Re=="object"?Re:typeof self=="object"?self:typeof this=="object"?this:K(),g=E(o);typeof h.Reflect<"u"&&(g=E(h.Reflect,g)),i(g,h),typeof h.Reflect>"u"&&(h.Reflect=o);function E(st,yt){return function(gt,Dt){Object.defineProperty(st,gt,{configurable:!0,writable:!0,value:Dt}),yt&&yt(gt,Dt)}}function k(){try{return Function("return this;")()}catch{}}function D(){try{return(0,eval)("(function() { return this; })()")}catch{}}function K(){return k()||D()}})(function(i,h){var g=Object.prototype.hasOwnProperty,E=typeof Symbol=="function",k=E&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",D=E&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",K=typeof Object.create=="function",st={__proto__:[]}instanceof Array,yt=!K&&!st,gt={create:K?function(){return ut(Object.create(null))}:st?function(){return ut({__proto__:null})}:function(){return ut({})},has:yt?function(u,f){return g.call(u,f)}:function(u,f){return f in u},get:yt?function(u,f){return g.call(u,f)?u[f]:void 0}:function(u,f){return u[f]}},Dt=Object.getPrototypeOf(Function),Yt=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:N(),Nt=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:at(),de=typeof WeakMap=="function"?WeakMap:Mt(),xt=E?Symbol.for("@reflect-metadata:registry"):void 0,ye=b(),dr=m(ye);function Fe(u,f,p,v){if(S(p)){if(!Pr(u))throw new TypeError;if(!Rr(f))throw new TypeError;return Xr(u,f)}else{if(!Pr(u))throw new TypeError;if(!G(f))throw new TypeError;if(!G(v)&&!S(v)&&!$t(v))throw new TypeError;return $t(v)&&(v=void 0),p=it(p),vr(u,f,p,v)}}i("decorate",Fe);function Be(u,f){function p(v,w){if(!G(v))throw new TypeError;if(!S(w)&&!Mr(w))throw new TypeError;Ge(u,f,v,w)}return p}i("metadata",Be);function Ve(u,f,p,v){if(!G(p))throw new TypeError;return S(v)||(v=it(v)),Ge(u,f,p,v)}i("defineMetadata",Ve);function yr(u,f,p){if(!G(f))throw new TypeError;return S(p)||(p=it(p)),Ke(u,f,p)}i("hasMetadata",yr);function Jr(u,f,p){if(!G(f))throw new TypeError;return S(p)||(p=it(p)),Ue(u,f,p)}i("hasOwnMetadata",Jr);function gr(u,f,p){if(!G(f))throw new TypeError;return S(p)||(p=it(p)),ve(u,f,p)}i("getMetadata",gr);function Qr(u,f,p){if(!G(f))throw new TypeError;return S(p)||(p=it(p)),We(u,f,p)}i("getOwnMetadata",Qr);function Yr(u,f){if(!G(u))throw new TypeError;return S(f)||(f=it(f)),mr(u,f)}i("getMetadataKeys",Yr);function ge(u,f){if(!G(u))throw new TypeError;return S(f)||(f=it(f)),Or(u,f)}i("getOwnMetadataKeys",ge);function Zr(u,f,p){if(!G(f))throw new TypeError;if(S(p)||(p=it(p)),!G(f))throw new TypeError;S(p)||(p=it(p));var v=L(f,p,!1);return S(v)?!1:v.OrdinaryDeleteMetadata(u,f,p)}i("deleteMetadata",Zr);function Xr(u,f){for(var p=u.length-1;p>=0;--p){var v=u[p],w=v(f);if(!S(w)&&!$t(w)){if(!Rr(w))throw new TypeError;f=w}}return f}function vr(u,f,p,v){for(var w=u.length-1;w>=0;--w){var _=u[w],M=_(f,p,v);if(!S(M)&&!$t(M)){if(!G(M))throw new TypeError;v=M}}return v}function Ke(u,f,p){var v=Ue(u,f,p);if(v)return!0;var w=c(f);return $t(w)?!1:Ke(u,w,p)}function Ue(u,f,p){var v=L(f,p,!1);return S(v)?!1:me(v.OrdinaryHasOwnMetadata(u,f,p))}function ve(u,f,p){var v=Ue(u,f,p);if(v)return We(u,f,p);var w=c(f);if(!$t(w))return ve(u,w,p)}function We(u,f,p){var v=L(f,p,!1);if(!S(v))return v.OrdinaryGetOwnMetadata(u,f,p)}function Ge(u,f,p,v){var w=L(p,v,!0);w.OrdinaryDefineOwnMetadata(u,f,p,v)}function mr(u,f){var p=Or(u,f),v=c(u);if(v===null)return p;var w=mr(v,f);if(w.length<=0)return p;if(p.length<=0)return w;for(var _=new Nt,M=[],R=0,d=p;R<d.length;R++){var y=d[R],O=_.has(y);O||(_.add(y),M.push(y))}for(var P=0,C=w;P<C.length;P++){var y=C[P],O=_.has(y);O||(_.add(y),M.push(y))}return M}function Or(u,f){var p=L(u,f,!1);return p?p.OrdinaryOwnMetadataKeys(u,f):[]}function br(u){if(u===null)return 1;switch(typeof u){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return u===null?1:6;default:return 6}}function S(u){return u===void 0}function $t(u){return u===null}function wr(u){return typeof u=="symbol"}function G(u){return typeof u=="object"?u!==null:typeof u=="function"}function tn(u,f){switch(br(u)){case 0:return u;case 1:return u;case 2:return u;case 3:return u;case 4:return u;case 5:return u}var p="string",v=_r(u,k);if(v!==void 0){var w=v.call(u,p);if(G(w))throw new TypeError;return w}return en(u)}function en(u,f){var p,v;{var w=u.toString;if(Zt(w)){var v=w.call(u);if(!G(v))return v}var p=u.valueOf;if(Zt(p)){var v=p.call(u);if(!G(v))return v}}throw new TypeError}function me(u){return!!u}function Er(u){return""+u}function it(u){var f=tn(u);return wr(f)?f:Er(f)}function Pr(u){return Array.isArray?Array.isArray(u):u instanceof Object?u instanceof Array:Object.prototype.toString.call(u)==="[object Array]"}function Zt(u){return typeof u=="function"}function Rr(u){return typeof u=="function"}function Mr(u){switch(br(u)){case 3:return!0;case 4:return!0;default:return!1}}function Oe(u,f){return u===f||u!==u&&f!==f}function _r(u,f){var p=u[f];if(p!=null){if(!Zt(p))throw new TypeError;return p}}function e(u){var f=_r(u,D);if(!Zt(f))throw new TypeError;var p=f.call(u);if(!G(p))throw new TypeError;return p}function t(u){return u.value}function n(u){var f=u.next();return f.done?!1:f}function s(u){var f=u.return;f&&f.call(u)}function c(u){var f=Object.getPrototypeOf(u);if(typeof u!="function"||u===Dt||f!==Dt)return f;var p=u.prototype,v=p&&Object.getPrototypeOf(p);if(v==null||v===Object.prototype)return f;var w=v.constructor;return typeof w!="function"||w===u?f:w}function l(){var u;!S(xt)&&typeof h.Reflect<"u"&&!(xt in h.Reflect)&&typeof h.Reflect.defineMetadata=="function"&&(u=T(h.Reflect));var f,p,v,w=new de,_={registerProvider:M,getProvider:d,setProvider:O};return _;function M(P){if(!Object.isExtensible(_))throw new Error("Cannot add provider to a frozen registry.");switch(!0){case u===P:break;case S(f):f=P;break;case f===P:break;case S(p):p=P;break;case p===P:break;default:v===void 0&&(v=new Nt),v.add(P);break}}function R(P,C){if(!S(f)){if(f.isProviderFor(P,C))return f;if(!S(p)){if(p.isProviderFor(P,C))return f;if(!S(v))for(var B=e(v);;){var z=n(B);if(!z)return;var vt=t(z);if(vt.isProviderFor(P,C))return s(B),vt}}}if(!S(u)&&u.isProviderFor(P,C))return u}function d(P,C){var B=w.get(P),z;return S(B)||(z=B.get(C)),S(z)&&(z=R(P,C),S(z)||(S(B)&&(B=new Yt,w.set(P,B)),B.set(C,z))),z}function y(P){if(S(P))throw new TypeError;return f===P||p===P||!S(v)&&v.has(P)}function O(P,C,B){if(!y(B))throw new Error("Metadata provider not registered.");var z=d(P,C);if(z!==B){if(!S(z))return!1;var vt=w.get(P);S(vt)&&(vt=new Yt,w.set(P,vt)),vt.set(C,B)}return!0}}function b(){var u;return!S(xt)&&G(h.Reflect)&&Object.isExtensible(h.Reflect)&&(u=h.Reflect[xt]),S(u)&&(u=l()),!S(xt)&&G(h.Reflect)&&Object.isExtensible(h.Reflect)&&Object.defineProperty(h.Reflect,xt,{enumerable:!1,configurable:!1,writable:!1,value:u}),u}function m(u){var f=new de,p={isProviderFor:function(y,O){var P=f.get(y);return S(P)?!1:P.has(O)},OrdinaryDefineOwnMetadata:M,OrdinaryHasOwnMetadata:w,OrdinaryGetOwnMetadata:_,OrdinaryOwnMetadataKeys:R,OrdinaryDeleteMetadata:d};return ye.registerProvider(p),p;function v(y,O,P){var C=f.get(y),B=!1;if(S(C)){if(!P)return;C=new Yt,f.set(y,C),B=!0}var z=C.get(O);if(S(z)){if(!P)return;if(z=new Yt,C.set(O,z),!u.setProvider(y,O,p))throw C.delete(O),B&&f.delete(y),new Error("Wrong provider for target.")}return z}function w(y,O,P){var C=v(O,P,!1);return S(C)?!1:me(C.has(y))}function _(y,O,P){var C=v(O,P,!1);if(!S(C))return C.get(y)}function M(y,O,P,C){var B=v(P,C,!0);B.set(y,O)}function R(y,O){var P=[],C=v(y,O,!1);if(S(C))return P;for(var B=C.keys(),z=e(B),vt=0;;){var an=n(z);if(!an)return P.length=vt,P;var mn=t(an);try{P[vt]=mn}catch(On){try{s(z)}finally{throw On}}vt++}}function d(y,O,P){var C=v(O,P,!1);if(S(C)||!C.delete(y))return!1;if(C.size===0){var B=f.get(O);S(B)||(B.delete(P),B.size===0&&f.delete(B))}return!0}}function T(u){var f=u.defineMetadata,p=u.hasOwnMetadata,v=u.getOwnMetadata,w=u.getOwnMetadataKeys,_=u.deleteMetadata,M=new de,R={isProviderFor:function(d,y){var O=M.get(d);return!S(O)&&O.has(y)?!0:w(d,y).length?(S(O)&&(O=new Nt,M.set(d,O)),O.add(y),!0):!1},OrdinaryDefineOwnMetadata:f,OrdinaryHasOwnMetadata:p,OrdinaryGetOwnMetadata:v,OrdinaryOwnMetadataKeys:w,OrdinaryDeleteMetadata:_};return R}function L(u,f,p){var v=ye.getProvider(u,f);if(!S(v))return v;if(p){if(ye.setProvider(u,f,dr))return dr;throw new Error("Illegal state.")}}function N(){var u={},f=[],p=function(){function R(d,y,O){this._index=0,this._keys=d,this._values=y,this._selector=O}return R.prototype["@@iterator"]=function(){return this},R.prototype[D]=function(){return this},R.prototype.next=function(){var d=this._index;if(d>=0&&d<this._keys.length){var y=this._selector(this._keys[d],this._values[d]);return d+1>=this._keys.length?(this._index=-1,this._keys=f,this._values=f):this._index++,{value:y,done:!1}}return{value:void 0,done:!0}},R.prototype.throw=function(d){throw this._index>=0&&(this._index=-1,this._keys=f,this._values=f),d},R.prototype.return=function(d){return this._index>=0&&(this._index=-1,this._keys=f,this._values=f),{value:d,done:!0}},R}(),v=function(){function R(){this._keys=[],this._values=[],this._cacheKey=u,this._cacheIndex=-2}return Object.defineProperty(R.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),R.prototype.has=function(d){return this._find(d,!1)>=0},R.prototype.get=function(d){var y=this._find(d,!1);return y>=0?this._values[y]:void 0},R.prototype.set=function(d,y){var O=this._find(d,!0);return this._values[O]=y,this},R.prototype.delete=function(d){var y=this._find(d,!1);if(y>=0){for(var O=this._keys.length,P=y+1;P<O;P++)this._keys[P-1]=this._keys[P],this._values[P-1]=this._values[P];return this._keys.length--,this._values.length--,Oe(d,this._cacheKey)&&(this._cacheKey=u,this._cacheIndex=-2),!0}return!1},R.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=u,this._cacheIndex=-2},R.prototype.keys=function(){return new p(this._keys,this._values,w)},R.prototype.values=function(){return new p(this._keys,this._values,_)},R.prototype.entries=function(){return new p(this._keys,this._values,M)},R.prototype["@@iterator"]=function(){return this.entries()},R.prototype[D]=function(){return this.entries()},R.prototype._find=function(d,y){if(!Oe(this._cacheKey,d)){this._cacheIndex=-1;for(var O=0;O<this._keys.length;O++)if(Oe(this._keys[O],d)){this._cacheIndex=O;break}}return this._cacheIndex<0&&y&&(this._cacheIndex=this._keys.length,this._keys.push(d),this._values.push(void 0)),this._cacheIndex},R}();return v;function w(R,d){return R}function _(R,d){return d}function M(R,d){return[R,d]}}function at(){var u=function(){function f(){this._map=new Yt}return Object.defineProperty(f.prototype,"size",{get:function(){return this._map.size},enumerable:!0,configurable:!0}),f.prototype.has=function(p){return this._map.has(p)},f.prototype.add=function(p){return this._map.set(p,p),this},f.prototype.delete=function(p){return this._map.delete(p)},f.prototype.clear=function(){this._map.clear()},f.prototype.keys=function(){return this._map.keys()},f.prototype.values=function(){return this._map.keys()},f.prototype.entries=function(){return this._map.entries()},f.prototype["@@iterator"]=function(){return this.keys()},f.prototype[D]=function(){return this.keys()},f}();return u}function Mt(){var u=16,f=gt.create(),p=v();return function(){function d(){this._key=v()}return d.prototype.has=function(y){var O=w(y,!1);return O!==void 0?gt.has(O,this._key):!1},d.prototype.get=function(y){var O=w(y,!1);return O!==void 0?gt.get(O,this._key):void 0},d.prototype.set=function(y,O){var P=w(y,!0);return P[this._key]=O,this},d.prototype.delete=function(y){var O=w(y,!1);return O!==void 0?delete O[this._key]:!1},d.prototype.clear=function(){this._key=v()},d}();function v(){var d;do d="@@WeakMap@@"+R();while(gt.has(f,d));return f[d]=!0,d}function w(d,y){if(!g.call(d,p)){if(!y)return;Object.defineProperty(d,p,{value:gt.create()})}return d[p]}function _(d,y){for(var O=0;O<y;++O)d[O]=Math.random()*255|0;return d}function M(d){if(typeof Uint8Array=="function"){var y=new Uint8Array(d);return typeof crypto<"u"?crypto.getRandomValues(y):typeof msCrypto<"u"?msCrypto.getRandomValues(y):_(y,d),y}return _(new Array(d),d)}function R(){var d=M(u);d[6]=d[6]&79|64,d[8]=d[8]&191|128;for(var y="",O=0;O<u;++O){var P=d[O];(O===4||O===6||O===8)&&(y+="-"),P<16&&(y+="0"),y+=P.toString(16).toLowerCase()}return y}}function ut(u){return u.__=void 0,delete u.__,u}})}(r||(r={})),Xe}jr();const _e="design:paramtypes",tr="design:type",Tt="design:returntype",Wt=new Map,er=class{static get(o,i,h){return Reflect.getMetadata(o,x(i),h)}static getOwn(o,i,h){return Reflect.getOwnMetadata(o,x(i),h)}static getType(o,i){return Reflect.getMetadata(tr,o,i)}static getOwnType(o,i){return Reflect.getMetadata(tr,o,i)}static getReturnType(o,i){return Reflect.getMetadata(Tt,o,i)}static getOwnReturnType(o,i){return Reflect.getOwnMetadata(Tt,o,i)}static has(o,i,h){try{return Reflect.hasMetadata(o,x(i),h)}catch{}return!1}static hasOwn(o,i,h){return Reflect.hasOwnMetadata(o,x(i),h)}static delete(o,i,h){return Reflect.deleteMetadata(o,x(i),h)}static setParamTypes(o,i,h){return this.set(_e,h,o.prototype,i)}static set(o,i,h,g){const E=Wt.has(o)?Wt.get(o)||[]:[],k=x(h);E.indexOf(k)===-1&&(E.push(k),Wt.set(o,E)),Reflect.defineMetadata(o,i,x(h),g)}static getParamTypes(o,i){return Reflect.getMetadata(_e,o,i)||[]}static getOwnParamTypes(o,i){return Reflect.getOwnMetadata(_e,o,i)||[]}};er.getTargetsFromPropertyKey=r=>Wt.has(r)?Wt.get(r)||[]:[];let rr=er;const nr="tsed:class:store",ne="tsed:method:store",Gt="tsed:property:store",Se="tsed:param:store",Te=new Map;function oe(r,...o){if(j(o[0]))return Te.has(o[0])||Te.set(o[0],new F),Te.get(o[0]);{const i=rr;return i.hasOwn(r,...o)||i.set(r,new F,...o),i.getOwn(r,...o)}}function Ir(r){const[o,i,h]=r;switch(mt(r)){case Z.PARAM_CTOR:case Z.PARAM_STC:case Z.PARAM:const g=oe(Se,o,i);return g.has(""+h)||g.set(""+h,new F),g.get(""+h);case Z.PROP:case Z.PROP_STC:return oe(Gt,o,i);case Z.METHOD:case Z.METHOD_STC:return oe(ne,o,i);case Z.CLASS:return oe(nr,o)}}class F{constructor(){this._entries=new Map}static from(...o){return Ir(o)}static fromMethod(o,i){return F.from(o,i,et(o,i))}static mergeStoreFrom(o,i,...h){const g=F.from(o,...h);return F.from(i,...h)._entries.forEach((E,k)=>{g.merge(k,E)}),g}static mergeStoreMethodFrom(o,i,h){return this.mergeStoreFrom(o,i,h,et(o,h))}get(o,i){return this._entries.get(ht(o))||i}has(o){return this._entries.has(ht(o))}set(o,i){return this._entries.set(ht(o),i),this}delete(o){return this._entries.delete(ht(o))}merge(o,i,h=!1){let g=this.get(o);return g&&(i=Et(i),g=Et(g),i=h?Ut(i,g):Ut(g,i)),this.set(o,i),this}toJson(){return[...this._entries.entries()].reduce((o,[i,h])=>({...o,[i]:h}),{})}}function ke(r){return(...o)=>{const i=F.from(...o),h=r(i,o);return typeof h=="function"&&h(...o),o[2]}}function se(r,o){return ke(i=>{i.merge(r,o)})}function Ht(r,o){return ke(i=>{i.set(r,o)})}class V extends Error{constructor(o,i){super(V.buildMessage(o,i))}static buildMessage(o,i){const[h,g,E]=i,k=mt(i),D=k.split("/")[0],K=D==="parameter"?".["+E+"]":"",st=g?"."+g:D==="parameter"?".constructor":"",yt=ht(x(h))+st+K;return`${o.name} cannot be used as ${k} decorator on ${yt}`}}var Pt=(r=>(r.PROD="production",r.DEV="development",r.TEST="test",r))(Pt||{});const Ae=Pt,ie=Function;Tr.Type=ie;function ae(r){return r&&Object.getPrototypeOf(r)}function Ce(r){return ae(r)}function kt(r){const o=[];let i=x(r);for(;i&&ht(i)!=="";)o.unshift(i),i=Ce(i);return o}function zt(r){return typeof r=="object"}function Rt(r){return!!r&&typeof r.lift=="function"&&typeof r.subscribe=="function"}function je(r){return r===Promise||r instanceof Promise||!!r&&typeof r.subscribe!="function"&&typeof r.then=="function"}function ce(r){return r!==null&&typeof r=="object"&&typeof r.pipe=="function"}function or(r){return zt(r)&&"data"in r&&"headers"in r&&"status"in r&&"statusText"in r}var sr=(r=>(r.PENDING="PENDING",r.CANCELED="CANCELED",r.RESOLVED="RESOLVED",r.REJECTED="REJECTED",r))(sr||{}),ue=(r=>(r.STREAM="STREAM",r.BUFFER="BUFFER",r.DATA="DATA",r))(ue||{});class fe{constructor({hasNextFunction:o=!1}={}){Q(this,ot),Q(this,St),Q(this,tt),Q(this,lt),this.status="PENDING",Y(this,tt,!1),Y(this,tt,o),Y(this,lt,new Promise((i,h)=>{Y(this,ot,i),Y(this,St,h)}))}isDone(){return this.status!=="PENDING"}get next(){return Y(this,tt,!0),o=>{if(!this.isDone())return o?this.reject(o):this.resolve({type:"DATA"})}}call(o){if(this.isDone())return Promise.resolve(this);try{this.handle(o())}catch(i){this.reject(i)}return A(this,lt)}reject(o){this.isDone()||(this.done("REJECTED"),A(this,St).call(this,o))}resolve(o={}){this.isDone()||(this.done("RESOLVED"),A(this,ot).call(this,{...o,state:"RESOLVED"}))}destroy(){}cancel(){if(!this.isDone())return this.done("CANCELED"),A(this,ot).call(this,{state:"CANCELED"})}done(o){this.destroy(),this.status=o}handle(o,i={}){if(!this.isDone()){if(o){if(this.isCanceledResponse(o))return this.cancel();if(Rt(o)&&(o=o.toPromise()),or(o))return this.handle(o.data,{...i,status:o.status,headers:o.headers});if(ce(o))return this.resolve({...i,type:"STREAM",data:o});if(ce(o)||Buffer.isBuffer(o))return this.resolve({...i,type:"BUFFER",data:o});if(je(o))return o.then(h=>this.handle(h,i)).catch(h=>h.response&&or(h.response)?this.handle(h.response):this.reject(h))}if(!A(this,tt))return this.resolve({...i,data:o,type:"DATA"})}}isCanceledResponse(o){return o==="CANCELED"}}ot=new WeakMap,St=new WeakMap,tt=new WeakMap,lt=new WeakMap;function Dr(r){try{r()}catch(o){return o}}async function W(r){try{await r()}catch(o){return o}}function Nr(r,o=[]){return Object.entries(r).reduce((i,[h,g])=>(re(h)||o.includes(h)||g===void 0||(i[h]=g),i),{})}function qt(r){return typeof r=="function"?r:r.constructor}function Ie(r){return qt(r)}function It(r){return x(r)===r?r.prototype:r}function rt(r){const o=new Map;return r=x(r),kt(r).forEach(i=>{Reflect.ownKeys(It(i)).forEach(h=>{var g;j(h)||h==="constructor"||(g=Object.getOwnPropertyDescriptor(It(i),h))!=null&&g.get||o.set(h,{target:i,propertyKey:h})})}),Array.from(o.values())}function nt(r,o){rt(r).forEach(({target:i,propertyKey:h})=>{const g=It(r);i!==x(r)&&(Object.defineProperty(g,h,{writable:!0,configurable:!0,value(...D){return It(i)[h].apply(this,D)}}),F.mergeStoreMethodFrom(r,i,h));let E=et(r,h);const k=o(g,h,E)||E;k&&Object.defineProperty(g,h,k)})}function xr(r,o){return[r,o,et(r,o)]}function pt(r){return Array.isArray(r)}function le(r){return r===Array||pt(r)}function dt(r){return r&&Ot(r)&&!r.prototype}function he(r){return r&&"isBuffer"in r&&typeof r.isBuffer=="function"?!0:ir(r)}function ir(r){return!!(r&&(r===Uint8Array||r instanceof Uint8Array))}function De(r){return r===Object}function $r(r){return De(x(r))&&r!==Object}function ar(r){return!r||dt(r)?!1:!(j(r)||He(r)||De(r)||Ct(r)||je(r)||le(r)||he(r))}function Ne(r){return ar(r)?x(r):r}function cr(r){return`${(Ie(r).toString().split(`
15
+ `).find(o=>o.indexOf("constructor(")>-1)||"constructor()").replace("{","").trim()}`}function Lr(r){return cr(r).split("constructor(")[1].split(")")[0].split(", ").filter(Boolean).map(o=>o.trim())}function Fr(){return`e${Math.random().toString(36).substring(7)}`}const xe=r=>{const[o,i,h,g="."]=r;return zt(i)||Bt(o)?{expression:o,scope:i,defaultValue:h,separator:g}:{expression:i,scope:o,defaultValue:h,separator:g}};function Jt(...r){const o=xe(r);let i=o.scope;const{expression:h,defaultValue:g,separator:E}=o;if(!h)return i;if(!i)return g;const k=h.split(E),D=K=>{if(i){if(i[K]!==void 0||zt(i)&&K in i)return i[K];if(Ot(i.get))return i.get(K)}};for(;(i=D(k.shift()))&&k.length;);return i===void 0?g:i}function ur(r){return r&&typeof r.toJSON=="function"}function $e(r,o){let i="0.0.0.0",h=o;return typeof o=="string"&&o.indexOf(":")>-1&&([i,h]=o.split(":"),h=+h),{protocol:r,address:i,port:h,toString(){return[`${this.protocol}://${this.address}`,typeof this.port=="number"&&this.port].filter(Boolean).join(":")}}}function Qt(r,o){for(const i of kt(r)){const h=Object.getOwnPropertyDescriptor(i&&i.prototype||i,o);if(h)return h}}function fr(r){return le(r)||r===Map||r instanceof Map||r===Set||r instanceof Set||r===WeakMap||r instanceof WeakMap||r===WeakSet||r instanceof WeakSet}function Br(r){return r===""||bt(r)}function lr(r,o){const i=x(r);if(i){const h=Qt(i,o);if(h)return h.enumerable}return Object.prototype.propertyIsEnumerable.call(r,o)}function Vr(r,o,i=5){if(!r||!o)return!1;for(r=x(r),o=x(o);ht(r)!=="";){if(!i)return!1;if(r===o)return!0;r=ae(r),i--}return!1}function Kr(r){return!!(r&&r!=null&&r._isAMomentObject)}function At(r){return r&&r._bsontype}function Ur(r){return!!(ur(r)&&r.$isMongooseModelPrototype||At(r))}function Wr(r){return!(Buffer.isBuffer(r)||ce(r)||Lt(r)||te(r)||Bt(r)||bt(r))}function pe(r){return ee(r)?"string":jt(r)?"number":Ft(r)?"boolean":"any"}function Le(r,o,i,h="."){const g=o.split(h),E=(k,D)=>re(k)?!1:D?(typeof r.set=="function"?r.set(k,i):r[k]=i,!1):(typeof r.set=="function"?(r.has(k)||r.set(k,{}),r=r.get(k)):r=r[k]=r[k]||{},!0);for(;E(g.shift(),!g.length););}function H(r){return r?Bt(r)?o=>o[r]:r:(o,i)=>String(i)}function Gr(r,o){if(pt(r)){const h=H(o||"id");return r.reduce((g,E,k)=>([].concat(h(E,k)).forEach(D=>{var K;const st=g.get(D);E=((K=st==null?void 0:st.merge)==null?void 0:K.call(st,E))||E,g.set(D,E)}),g),new Map)}const i=H(o);return Object.entries(r).reduce((h,[g,E])=>h.set(i(E,g),E),new Map)}function Hr(r){return Array.from(new Set(r).values())}function zr(r,o="id"){const i=new Map;return r.forEach(h=>{i.set(h[o],h)}),Array.from(i.values())}function hr(...r){return(...o)=>{const i=typeof o[2]=="object";if(r.filter(h=>!!h).forEach(h=>{const g=h(...o);i&&typeof g=="object"&&(o[2]=g)}),i)return o[2]}}function pr(r){return(o,i)=>r(o,i,et(o,i))}function qr(...r){return(o,i)=>{r.filter(Boolean).forEach(h=>h(o,i,et(o,i)))}}a.AnyToPromise=fe,a.AnyToPromiseResponseTypes=ue,a.AnyToPromiseStatus=sr,a.CLASS_STORE=nr,a.DecoratorTypes=Z,a.Env=Pt,a.EnvTypes=Ae,a.METHOD_STORE=ne,a.Metadata=rr,a.PARAM_STORE=Se,a.PROPERTY_STORE=Gt,a.Store=F,a.StoreFn=ke,a.StoreMerge=se,a.StoreSet=Ht,a.Type=ie,a.UnsupportedDecoratorType=V,a.ancestorOf=ae,a.ancestorsOf=kt,a.catchAsyncError=W,a.catchError=Dr,a.classOf=x,a.cleanObject=Nr,a.constructorOf=Ie,a.createInstance=Je,a.decorateMethodsOf=nt,a.decoratorArgs=xr,a.decoratorTypeOf=mt,a.deepClone=Et,a.deepMerge=Ut,a.descriptorOf=et,a.getClass=q,a.getClassOrSymbol=Ne,a.getConstructor=qt,a.getConstructorArgNames=Lr,a.getHostInfoFromPort=$e,a.getInheritedClass=Ce,a.getRandomId=Fr,a.getValue=Jt,a.hasJsonMethod=ur,a.inheritedDescriptorOf=Qt,a.isArray=pt,a.isArrayOrArrayClass=le,a.isArrowFn=dt,a.isBoolean=Lt,a.isBooleanOrBooleanClass=Ft,a.isBuffer=he,a.isClass=ar,a.isClassObject=De,a.isCollection=fr,a.isDate=Ct,a.isEmpty=Br,a.isEnumerable=lr,a.isFunction=Ot,a.isInheritedFrom=Vr,a.isMethodDescriptor=Cr,a.isMomentObject=Kr,a.isMongooseObject=Ur,a.isNil=bt,a.isNumber=te,a.isNumberOrNumberClass=jt,a.isObject=zt,a.isObjectID=At,a.isObservable=Rt,a.isPlainObject=$r,a.isPrimitive=X,a.isPrimitiveClass=Vt,a.isPrimitiveOrPrimitiveClass=He,a.isPromise=je,a.isProtectedKey=re,a.isRegExp=ze,a.isSerializable=Wr,a.isStream=ce,a.isString=Bt,a.isStringOrStringClass=ee,a.isSymbol=j,a.isSymbolOrSymbolClass=qe,a.isUint8Array=ir,a.mergeReducerBuilder=Qe,a.methodsOf=rt,a.nameOf=ht,a.nameOfClass=ct,a.nameOfSymbol=Ze,a.objectKeys=Pe,a.primitiveOf=pe,a.prototypeOf=It,a.setValue=Le,a.toMap=Gr,a.toStringConstructor=cr,a.uniq=Hr,a.uniqBy=zr,a.useDecorators=hr,a.useMethodDecorator=pr,a.useMethodDecorators=qr,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})}(we,we.exports)),we.exports}var on=fn();function ln(){return(ft,I)=>{const a={onAny:{[I]:{}}};on.Store.from(ft).merge("eventEmitter",a)}}function hn(ft,I){return(a,$)=>{const U={onEvent:{[$]:{event:ft,options:I}}};on.Store.from(a).merge("eventEmitter",U)}}var Ee={exports:{}},pn=Ee.exports,sn;function dn(){return sn||(sn=1,function(ft,I){(function(a,$){$(I,be)})(pn,function(a){var $=e=>{throw TypeError(e)},U=(e,t,n)=>t.has(e)||$("Cannot "+n),A=(e,t,n)=>(U(e,t,"read from private field"),n?n.call(e):t.get(e)),Q=(e,t,n)=>t.has(e)?$("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),Y=(e,t,n,s)=>(U(e,t,"write to private field"),t.set(e,n),n),ot,St,tt,lt,Z,q,x;const mt=Symbol("DI_INVOKE_OPTIONS"),Ct=Symbol("DI_INJECTABLE_PROPS"),Ot="DI_USE_OPTIONS",bt="DI_USE_PARAM_OPTIONS",Lt="DI_INTERCEPTOR_OPTIONS";function Ft(e){return Array.isArray(e)}function te(e){return e===Array||Ft(e)}var jt={exports:{}},Bt=jt.exports,ee;function He(){return ee||(ee=1,function(e,t){(function(n,s){s(t)})(Bt,function(n){var s=w=>{throw TypeError(w)},c=(w,_,M)=>_.has(w)||s("Cannot "+M),l=(w,_,M)=>(c(w,_,"read from private field"),M?M.call(w):_.get(w)),b=(w,_,M)=>_.has(w)?s("Cannot add the same private member more than once"):_ instanceof WeakSet?_.add(w):_.set(w,M),m;function T(w,_){return!w||!_.ref||w&&_.ref===w}class L{constructor(){b(this,m,new Map)}has(_){var M;return!!((M=l(this,m).get(_))!=null&&M.length)}on(_,M,R){let d=M;R||(R=d,d=void 0);const y=l(this,m).get(_)||[];return y.push({cb:R,ref:d}),l(this,m).set(_,y),this}once(_,M,R){R||(R=M);const d=(...y)=>{R(...y),this.off(_,d)};return this.on(_,M,d),this}off(_,M){const R=(d,y)=>{y.length?l(this,m).set(d,y):l(this,m).delete(d)};if(typeof _=="string"&&M){let d=l(this,m).get(_);d&&R(_,d.filter(y=>y.cb!==M))}else{const d=_;l(this,m).forEach((y,O)=>{R(O,y.filter(P=>P.ref!==d))})}return this}emit(_,M,R){Array.isArray(M)&&(R=M,M=void 0),R||(R=[]);const d=l(this,m).get(_);if(d!=null&&d.length)for(const y of d)T(M,y)&&y.cb.apply(null,R)}async asyncEmit(_,M,R){Array.isArray(M)&&(R=M,M=void 0);const d=l(this,m).get(_);if(d!=null&&d.length){const y=d.filter(O=>T(M,O)).map(O=>O.cb.apply(null,R));await Promise.all(y)}}alter(_,M,R=[],d=null){const y=l(this,m).get(_);if(y!=null&&y.length)for(const{cb:O}of y)M=O.call(d,M,...R);return M}async asyncAlter(_,M,R=[],d=null){const y=l(this,m).get(_);if(y!=null&&y.length)for(const O of y)M=await O.cb.call(d,M,...R);return M}destroy(){l(this,m).clear()}}m=new WeakMap;const N=new L,at=N.on.bind(N),Mt=N.once.bind(N),ut=N.off.bind(N),u=N.emit.bind(N),f=N.asyncEmit.bind(N),p=N.alter.bind(N),v=N.asyncAlter.bind(N);n.$alter=p,n.$asyncAlter=v,n.$asyncEmit=f,n.$emit=u,n.$off=ut,n.$on=at,n.$once=Mt,n.Hooks=L,n.hooks=N,Object.defineProperty(n,Symbol.toStringTag,{value:"Module"})})}(jt,jt.exports)),jt.exports}var X=He();class Vt extends Map{constructor(){super(...arguments),this.hooks=new X.Hooks}async destroy(){await this.hooks.asyncEmit("$onDestroy")}}function ze(e){return e.prototype?e:e.constructor}function j(e){return ze(e)}function qe(e){return e===Date||e instanceof Date&&!isNaN(+e)}function wt(e){return typeof e=="function"}function Et(e){return e==null}function Je(e){return typeof e=="boolean"||e instanceof Boolean||e===Boolean}function re(e){return typeof e=="boolean"||e instanceof Boolean||e===Boolean}function Pe(e){return typeof e=="number"}function Qe(e){return typeof e=="number"||e instanceof Number||e===Number}function Kt(e){return typeof e=="string"}function kr(e){return typeof e=="string"||e instanceof String||e===String}function Ar(e){return kr(e)||Qe(e)||re(e)}function Ye(e){return Kt(e)||Pe(e)||Je(e)}function Ut(e){return e instanceof RegExp}function et(e){return typeof e=="symbol"}const Cr=e=>Et(e)||Ye(e)||et(e)||wt(e),ct=(e,t=new WeakMap)=>{if(Cr(e))return e;const n=t.get(e);if(n)return n;if(ArrayBuffer.isView(e))return Buffer.isBuffer(e)?Buffer.from(e):new(j(e))(e.buffer.slice(0),e.byteOffset,e.byteLength);if(qe(e))return new Date(e);if(Ut(e))return new RegExp(e);if(Array.isArray(e)){const c=[];return t.set(e,c),e.forEach((l,b)=>c[b]=ct(l,t)),c}if(e instanceof Map){const c=new Map;return t.set(e,c),e.forEach((l,b)=>c.set(ct(b,t),ct(l,t))),c}if(e instanceof Set){const c=new Set;return t.set(e,c),e.forEach(l=>c.add(ct(l,t))),c}const s=Object.create(Reflect.getPrototypeOf(e));return t.set(e,s),Reflect.ownKeys(e).forEach(c=>{const l=Object.getOwnPropertyDescriptor(e,c);l&&(wt(l.value)?Object.defineProperty(s,c,l):Object.defineProperty(s,c,{...l,value:ct(l.value,t)}))}),s};function Ze(e){return e?j(e)!==Object?Object.create(e):{}:{}}function ht(e){return["__proto__","constructor","prototype"].includes(e)}function Re(e){return Object.keys(e).filter(t=>!ht(t))}function Xe(e){return(t,n,s)=>{const c=t.findIndex(l=>e(l,n));return c===-1?[...t,n]:(t[c]=Tt(t[c],n,s),t)}}const Me=Xe((e,t)=>e===t);function jr({reducers:e,parentKey:t}){return e?t&&e[t]?e[t]:e.default||Me:Me}function _e(e,t){return Ye(e)||et(e)||wt(e)||t===void 0}function tr(e,t){return e==null||e===""&&t!==""}function Tt(e,t,n={}){if(tr(t,e))return e;if(_e(t,e))return t;if(Array.isArray(e)){const c=jr(n);return[].concat(t).reduce((l,b)=>c(l,b,n),[...e])}const s=Ze(e);return[...Re(e),...Re(t)].reduce((c,l)=>{var b;const m=e&&e[l],T=Tt(m,t&&t[l],{...n,parentKey:l});return n.cleanUndefinedProps&&T===void 0||(c[l]=((b=n.alter)==null?void 0:b.call(n,l,T))??T),c},s)}function Wt(e){return e&&wt(e)&&!e.prototype}function er(e){return e&&"isBuffer"in e&&typeof e.isBuffer=="function"?!0:rr(e)}function rr(e){return!!(e&&(e===Uint8Array||e instanceof Uint8Array))}function nr(e){return e===Object}function ne(e){return e===Promise||e instanceof Promise||!!e&&typeof e.subscribe!="function"&&typeof e.then=="function"}function Gt(e){return!e||Wt(e)?!1:!(et(e)||Ar(e)||nr(e)||qe(e)||ne(e)||te(e)||er(e))}function Se(e){return e&&Object.getPrototypeOf(e)}function Te(e){return Se(e)}function oe(e){return typeof e=="function"?e.name:e.constructor.name}const Ir=e=>e.toString().replace("Symbol(","").replace(")","");function F(e){switch(typeof e){default:return""+e;case"symbol":return Ir(e);case"function":return oe(e)}}function ke(e,t,n=5){if(!e||!t)return!1;for(e=j(e),t=j(t);F(e)!=="";){if(!n)return!1;if(e===t)return!0;e=Se(e),n--}return!1}function se(e){return typeof e=="object"}function Ht(e){return Gt(e)?j(e):e}var V;(function(e){e.PARAM="parameter",e.PARAM_CTOR="parameter.constructor",e.PARAM_STC="parameter.static",e.PROP="property",e.PROP_STC="property.static",e.METHOD="method",e.METHOD_STC="method.static",e.CLASS="class"})(V||(V={}));function Pt(e){const[t,n,s]=e,c=l=>t!==j(t)?l:`${l}.static`;return typeof s=="number"?n?c("parameter"):"parameter.constructor":s&&s.value?c("method"):n&&s===void 0||s?c("property"):V.CLASS}function Ae(e,t){return Reflect.getOwnPropertyDescriptor(e&&e.prototype||e,t)}const ie="design:paramtypes",ae="design:type",Ce="design:returntype",kt=new Map,zt=class{static get(t,n,s){return Reflect.getMetadata(t,j(n),s)}static getOwn(t,n,s){return Reflect.getOwnMetadata(t,j(n),s)}static getType(t,n){return Reflect.getMetadata(ae,t,n)}static getOwnType(t,n){return Reflect.getMetadata(ae,t,n)}static getReturnType(t,n){return Reflect.getMetadata(Ce,t,n)}static getOwnReturnType(t,n){return Reflect.getOwnMetadata(Ce,t,n)}static has(t,n,s){try{return Reflect.hasMetadata(t,j(n),s)}catch{}return!1}static hasOwn(t,n,s){return Reflect.hasOwnMetadata(t,j(n),s)}static delete(t,n,s){return Reflect.deleteMetadata(t,j(n),s)}static setParamTypes(t,n,s){return this.set(ie,s,t.prototype,n)}static set(t,n,s,c){const l=kt.has(t)?kt.get(t)||[]:[],b=j(s);l.indexOf(b)===-1&&(l.push(b),kt.set(t,l)),Reflect.defineMetadata(t,n,j(s),c)}static getParamTypes(t,n){return Reflect.getMetadata(ie,t,n)||[]}static getOwnParamTypes(t,n){return Reflect.getOwnMetadata(ie,t,n)||[]}};zt.getTargetsFromPropertyKey=e=>kt.has(e)?kt.get(e)||[]:[];let Rt=zt;const je="tsed:class:store",ce="tsed:method:store",or="tsed:property:store",sr="tsed:param:store",ue=new Map;function fe(e,...t){if(et(t[0]))return ue.has(t[0])||ue.set(t[0],new W),ue.get(t[0]);{const n=Rt;return n.hasOwn(e,...t)||n.set(e,new W,...t),n.getOwn(e,...t)}}function Dr(e){const[t,n,s]=e;switch(Pt(e)){case V.PARAM_CTOR:case V.PARAM_STC:case V.PARAM:const c=fe(sr,t,n);return c.has(""+s)||c.set(""+s,new W),c.get(""+s);case V.PROP:case V.PROP_STC:return fe(or,t,n);case V.METHOD:case V.METHOD_STC:return fe(ce,t,n);case V.CLASS:return fe(je,t)}}class W{constructor(){this._entries=new Map}static from(...t){return Dr(t)}static fromMethod(t,n){return W.from(t,n,Ae(t,n))}static mergeStoreFrom(t,n,...s){const c=W.from(t,...s);return W.from(n,...s)._entries.forEach((l,b)=>{c.merge(b,l)}),c}static mergeStoreMethodFrom(t,n,s){return this.mergeStoreFrom(t,n,s,Ae(t,s))}get(t,n){return this._entries.get(F(t))||n}has(t){return this._entries.has(F(t))}set(t,n){return this._entries.set(F(t),n),this}delete(t){return this._entries.delete(F(t))}merge(t,n,s=!1){let c=this.get(t);return c&&(n=ct(n),c=ct(c),n=s?Tt(n,c):Tt(c,n)),this.set(t,n),this}toJson(){return[...this._entries.entries()].reduce((t,[n,s])=>({...t,[n]:s}),{})}}function Nr(e){const t=[];let n=j(e);for(;n&&F(n)!=="";)t.unshift(n),n=Te(n);return t}function qt(e){return j(e)===e?e.prototype:e}function Ie(e){const t=new Map;return e=j(e),Nr(e).forEach(n=>{Reflect.ownKeys(qt(n)).forEach(s=>{var c;et(s)||s==="constructor"||(c=Object.getOwnPropertyDescriptor(qt(n),s))!=null&&c.get||t.set(s,{target:n,propertyKey:s})})}),Array.from(t.values())}function It(e){return Ie(e).reduce((t,{propertyKey:n})=>{if(String(n).startsWith("$")){const s=(c,...l)=>c==null?void 0:c[n](...l);return{...t,[n]:s}}return t},{})}var rt=(e=>(e.SINGLETON="singleton",e.REQUEST="request",e.INSTANCE="instance",e))(rt||{}),nt=(e=>(e.VALUE="value",e.PROVIDER="provider",e.MODULE="module",e.CONTROLLER="controller",e.INTERCEPTOR="interceptor",e.MIDDLEWARE="middleware",e))(nt||{});const xr=class cn{constructor(t,n={}){Q(this,ot),Q(this,St),Q(this,tt),Q(this,lt),this.type=nt.PROVIDER,this.hooks={},this.token=t,this.useClass=t,Object.assign(this,n),n instanceof cn&&(Y(this,ot,A(n,ot)),Y(this,tt,A(n,tt)),Y(this,lt,A(n,lt)))}get token(){return A(this,St)}set token(t){t&&(Y(this,St,Ht(t)),Y(this,lt,Y(this,tt,W.from(t))))}get provide(){return this.token}set provide(t){this.token=t}get useClass(){return A(this,ot)}set useClass(t){Gt(t)&&(Y(this,ot,j(t)),Y(this,tt,W.from(t)),this.hooks=It(A(this,ot)))}get className(){return this.name}get name(){return F(this.token)}get store(){return A(this,tt)}get path(){return this.store.get("path","/")}set path(t){this.store.set("path",t)}get scope(){return this.isAsync()?rt.SINGLETON:this.get("scope",rt.SINGLETON)}set scope(t){this.store.set("scope",t)}get configuration(){return this.get("configuration")}set configuration(t){this.store.set("configuration",t)}get children(){return this.store.get("childrenControllers",[])}set children(t){this.store.set("childrenControllers",t)}getArgOpts(t){return this.store.get(`${bt}:${t}`)}get(t,n){return this.store.get(t)||A(this,lt).get(t)||n}isAsync(){return!!this.useAsyncFactory}clone(){return new(j(this))(this.token,this)}hasChildren(){return!!this.children.length}hasParent(){return!!this.store.get("parentController")}toString(){return["Token",this.name,this.useClass&&F(this.useClass),this.useFactory&&"Factory",this.useValue&&"Value",this.useAsyncFactory&&"AsyncFactory"].filter(Boolean).join(":")}reset(){return this.useValue=void 0,this.useFactory=void 0,this.useAsyncFactory=void 0,this}};ot=new WeakMap,St=new WeakMap,tt=new WeakMap,lt=new WeakMap;let pt=xr;class le extends Map{constructor(){super(...arguments),Q(this,Z,new Map)}get(t){return super.get(Ht(t))}has(t){return super.has(Ht(t))}set(t,n){return super.set(Ht(t),n),this}merge(t,n){if(n.global===!1)return dt.createProvider(t,n);const s=this.createIfNotExists(t,n);return Object.keys(n).forEach(c=>{s[c]=n[c]}),this.set(t,s),s}delete(t){return super.delete(Ht(t))}createRegistry(t,n,s={}){const c=this.getRegistrySettings(t);return s=Object.assign(c,{...s,model:n}),A(this,Z).set(t,s),this}getRegistrySettings(t){let n=nt.PROVIDER;if(typeof t=="string")n=t;else{const s=this.get(t);s&&(n=s.type)}return A(this,Z).get(n)||{model:pt}}createProvider(t,n){const s=n.type||nt.PROVIDER,{model:c=pt}=A(this,Z).get(s)||{};return new c(t,n)}createIfNotExists(t,n){if(!this.has(t)){const s=this.createProvider(t,n);this.set(t,s)}return this.get(t)}}Z=new WeakMap;const dt=new le;class he extends Map{add(t,n={}){var s;const c=((s=dt.get(t))==null?void 0:s.clone())||new pt(t);return Object.assign(c,n),super.set(t,c)}addProvider(t,n={}){return this.add(t,n)}hasProvider(t){return super.has(t)}setProvider(t,n){return super.set(t,n)}getProvider(t){return super.get(t)}getProviders(t){const n=[].concat(t).map(String);return[...this].reduce((s,[c,l])=>n.includes(String(l.type))||!t?[...s,l]:s,[])}addProviders(t){t.forEach(n=>{this.hasProvider(n.token)||this.setProvider(n.token,n.clone())})}}function ir(e){return typeof e=="function"?e:e.constructor}function De(e){return ir(e)}function $r(e){return`${(De(e).toString().split(`
16
+ `).find(t=>t.indexOf("constructor(")>-1)||"constructor()").replace("{","").trim()}`}function ar(e){return $r(e).split("constructor(")[1].split(")")[0].split(", ").filter(Boolean).map(t=>t.trim())}const Ne=e=>t=>!process.env.NO_COLOR&&process.env.NODE_ENV!=="production"?e(t):t,cr=Ne(e=>`\x1B[31m${e}\x1B[39m`),Lr=Ne(e=>`\x1B[33m${e}\x1B[39m`),Fr=Ne(e=>`\x1B[32m${e}\x1B[39m`),xe={red:cr,yellow:Lr,green:Fr};class Jt extends Error{constructor(t,n){super(Kt(n)?n:""),this.name="INJECTION_ERROR",this.tokens=[],this.tokens=[t],n&&(Kt(n)?this.origin={message:n,stack:this.stack}:n.tokens?(this.tokens=this.tokens.concat(n.tokens),this.origin=n.origin):(this.origin=n,this.stack=n.stack));const s=this.origin?`
17
+ Origin: `+this.origin.message:"",c=this.tokens.map(l=>F(l)).join(" > ");this.message=`Injection failed on ${c}${s}`}static throwInjectorError(t,n,s){throw n&&Gt(t)&&(s.message=ur(t,{...n,message:s.message})),new Jt(t,s)}}function ur(e,t){let n="";const s=ar(e).map((m,T)=>(t.index===T&&(n=m,m=xe.red(m)),`${m}: ${F(t.deps[T])}`)).join(", "),c=F(e)+"->constructor("+s+")",l=c.indexOf(n)-5,b=m=>" ".repeat(m)+xe.red("^"+"‾".repeat(n.length-1));return"Unable to inject dependency. "+t.message+`
18
+
19
+ `+c+`
20
+ `+(l>-1?b(l):"")}function $e(e){const t=new he(dt.entries());return e&&t.delete(e),t}function Qt(e,t){return Rt.getOwn("override:ctor:design:paramtypes",e,t)||[...Rt.getParamTypes(e,t)]}function fr(e,t){Rt.set("override:ctor:design:paramtypes",t,e)}const Br=e=>{const[t,n,s,c="."]=e;return se(n)||Kt(t)?{expression:t,scope:n,defaultValue:s,separator:c}:{expression:n,scope:t,defaultValue:s,separator:c}};function lr(...e){const t=Br(e);let n=t.scope;const{expression:s,defaultValue:c,separator:l}=t;if(!s)return n;if(!n)return c;const b=s.split(l),m=T=>{if(n){if(n[T]!==void 0||se(n)&&T in n)return n[T];if(wt(n.get))return n.get(T)}};for(;(n=m(b.shift()))&&b.length;);return n===void 0?c:n}function Vr(e,t,n,s="."){const c=t.split(s),l=(b,m)=>ht(b)?!1:m?(typeof e.set=="function"?e.set(b,n):e[b]=n,!1):(typeof e.set=="function"?(e.has(b)||e.set(b,{}),e=e.get(b)):e=e[b]=e[b]||{},!0);for(;l(c.shift(),!c.length););}const Kr=Symbol.for("CONFIGURATION");class At{constructor(t={}){this.default=new Map,this.map=new Map,Object.entries({imports:[],routes:[],logger:{},...t}).forEach(([n,s])=>{this.default.set(n,s)})}get version(){return this.get("version")}set version(t){this.map.set("version",t)}get rootDir(){return this.get("rootDir")}set rootDir(t){this.map.set("rootDir",t)}get env(){return this.map.get("env")}set env(t){this.map.set("env",t)}get imports(){return this.get("imports")}set imports(t){this.map.set("imports",t)}get routes(){return this.get("routes")}set routes(t){this.map.set("routes",t)}get logger(){return this.get("logger")}set logger(t){const n={...this.logger,...t};this.map.set("logger",n)}get debug(){return this.logger.level==="debug"}set debug(t){this.logger={...this.logger,level:t?"debug":"info"}}forEach(t,n){return new Set([...Array.from(this.default.keys()),...Array.from(this.map.keys())]).forEach(s=>{t(this.getRaw(s),s,this.map)},n)}set(t,n){return typeof t=="string"?Reflect.has(this,t)?this[t]=n:this.setRaw(t,n):Object.entries(t).forEach(([s,c])=>{this.set(s,c)}),this}setRaw(t,n){return Vr(this.map,t,n),this}get(t,n){return this.getRaw(t,n)}getRaw(t,n){const s=lr(this.map,t);return s!==void 0?s:lr(this.default,t,n)}}const Ur=["mount","imports"],Wr=class rn extends he{constructor(){super(),Q(this,q),Q(this,x),this.logger=console,this.resolvedConfiguration=!1,Y(this,q,new Vt),Y(this,x,!1),A(this,q).set(rn,this),A(this,q).set(At,new At)}get settings(){return A(this,q).get(At)}set settings(t){A(this,q).set(At,t)}isLoaded(){return A(this,x)}toArray(){return[...A(this,q).values()]}get(t,n){return this.has(t)?A(this,q).get(t):this.resolve(t,n)}getMany(t,n){return this.getProviders(t).map(s=>this.resolve(s.token,n))}has(t){return A(this,q).get(t)!==void 0}alias(t,n){return A(this,q).set(n,A(this,q).get(t)),this}resolve(t,n={}){let s=n.locals?n.locals.get(t):void 0;if(s!==void 0)return s;if(t===bt)return n.useOpts;if(s=n.rebuild?void 0:A(this,q).get(t),s!=null)return s;const c=this.ensureProvider(t);if(!c||n.rebuild)return s=this.invokeToken(t,n),c?this.setToCache(c,s):s;switch(s=this.invokeToken(t,n),c.scope){case rt.SINGLETON:return n.rebuild||this.registerHooks(c,n),this.setToCache(c,s);case rt.REQUEST:return n.locals&&(n.locals.set(c.token,s),this.registerHooks(c,n)),s}return s}invoke(t,n={}){return this.resolve(t,n)}async loadAsync(){for(const[,t]of this)!this.has(t.token)&&t.isAsync()&&await this.resolve(t.token)}loadSync(){for(const[,t]of this)!this.has(t.token)&&t.scope===rt.SINGLETON&&this.resolve(t.token)}async load(t=$e()){Y(this,x,!0),await X.$asyncEmit("$beforeInit"),await this.bootstrap(t),await this.loadAsync(),this.loadSync(),await X.$asyncEmit("$onInit")}async resolveConfiguration(){if(this.resolvedConfiguration)return;const t=new Map;super.forEach(n=>{n.configuration&&n.type!=="server:module"&&Object.entries(n.configuration).forEach(([s,c])=>{Ur.includes(s)||(c=t.has(s)?Tt(t.get(s),c):ct(c),t.set(s,c))})}),t.forEach((n,s)=>{this.settings.set(s,Tt(n,this.settings.get(s)))}),await X.$asyncEmit("$afterResolveConfiguration",this.settings),this.resolvedConfiguration=!0}emit(t,...n){return X.$asyncEmit(t,n)}alter(t,n,...s){return X.$alter(t,n,s)}alterAsync(t,n,...s){return X.$asyncAlter(t,n,s)}async destroy(){await X.$asyncEmit("$onDestroy"),A(this,q).forEach((t,n)=>{X.$off(n)})}async bootstrap(t=$e()){return this.addProviders(t),await this.resolveConfiguration(),this.resolveImportsProviders(),this}ensureProvider(t,n=!1){return!this.hasProvider(t)&&(dt.has(t)||n)&&this.addProvider(t),this.getProvider(t)}invokeToken(t,n={}){const s=this.mapInvokeOptions(t,n);if(!s)return;const{token:c,deps:l,construct:b,imports:m,provider:T}=s;X.$emit("$beforeInvoke",c,[s]),X.$emit(`$beforeInvoke:${String(T.type)}`,[s]);let L,N=!1;try{const at=ut=>(u,f)=>(N={token:u,index:f,deps:l},Ft(u)?this.getMany(u[0],n):ke(u,pt,1)?T:this.resolve(u,{parent:ut,locals:n.locals,useOpts:(T==null?void 0:T.getArgOpts(f))||n.useOpts}));m.forEach(at());const Mt=l.map(at(c));N=!1,L=b(Mt)}catch(at){Jt.throwInjectorError(c,N,at)}if(L===void 0)throw new Jt(c,`Unable to create new instance from undefined value. Check your provider declaration for ${F(c)}`);return L&&Gt(j(L))&&Reflect.defineProperty(L,mt,{get:()=>({rebuild:n.rebuild,locals:n.locals})}),X.$emit("$afterInvoke",c,[L,s]),L}resolveImportsProviders(){var t;this.settings.imports=(t=this.settings.imports)==null?void 0:t.filter(n=>se(n)&&"token"in n&&n.token!==rn).map(n=>{if(se(n)&&"token"in n){const{token:s,...c}=n,l=this.ensureProvider(s,!0);if(l){if(l.useValue=void 0,l.useAsyncFactory=void 0,l.useFactory=void 0,"useClass"in c){l.useClass=c.useClass;return}if("useFactory"in c){l.useFactory=c.useFactory;return}if("useAsyncFactory"in c){l.useAsyncFactory=c.useAsyncFactory;return}if("use"in c){l.useValue=c.use;return}}}return n}).filter(Boolean)}mapInvokeOptions(t,n){const s=n.locals||new Vt;n.locals=s;let c=n.imports,l=n.deps,b;if(!t||t===Object)throw new Error("Given token is undefined. Could mean a circular dependency problem. Try to use @Inject(() => Token) to solve it.");let m;if(this.hasProvider(t)?m=this.getProvider(t):m=new pt(t),l=l||m.deps,c=c||m.imports,m.useValue!==void 0)b=()=>wt(m.useValue)?m.useValue():m.useValue;else if(m.useFactory)b=T=>m.useFactory(...T);else if(m.useAsyncFactory)b=async T=>(T=await Promise.all(T),m.useAsyncFactory(...T));else if(m.useClass)l=l||Qt(m.useClass),b=T=>new m.useClass(...T);else return!1;return{token:t,deps:l||[],imports:c||[],construct:b,provider:m,locals:s}}registerHooks(t,n){var s;if(t.hooks){if(t.scope===rt.REQUEST){if(n.locals&&(s=t.hooks)!=null&&s.$onDestroy){const{locals:c}=n;n.locals.hooks.on("$onDestroy",(...l)=>{var b,m;return(m=(b=t.hooks)==null?void 0:b.$onDestroy)==null?void 0:m.call(b,c.get(t.token),...l)})}return}Object.entries(t.hooks).forEach(([c,l])=>{const b=(...m)=>l(A(this,q).get(t.token),...m);X.$on(c,t.token,b)})}}setToCache(t,n){const s=c=>{A(this,q).set(t.token,c),t!=null&&t.alias&&this.alias(t.token,t.alias)};return"isAsync"in t&&!t.isAsync()&&!ne(n)?(s(n),n):(s(n),n=n.then(c=>(s(c),c)),n)}};q=new WeakMap,x=new WeakMap;let pe=Wr,Le=new pe;function H(){return Le}async function Gr(){await Le.destroy(),Le=new pe}function Hr(e,t){const n=H(),s=new Vt,c=Qt(e),l=[],b=Math.max(c.length,t.length);for(let m=0;m<b;m++)if(t[m]!==void 0)l.push(t[m]);else{const T=c[m],L=Ft(T)?n.getMany(T[0],{locals:s,parent:e}):n.invoke(T,{locals:s,parent:e});l.push(L)}return l}function zr(){return e=>class extends e{constructor(...t){super(...Hr(e,t))}}}function hr(e,t){if(e){const n=W.from(e);return t&&n.set("configuration",t),n.get("configuration",t)}return H().settings}class pr extends pt{constructor(t,n={}){super(t,n),this.type=nt.CONTROLLER}get middlewares(){return Object.assign({use:[],useAfter:[],useBefore:[]},this.store.get("middlewares",{}))}set middlewares(t){const n=this.middlewares,s=(c,l,b)=>l[c]=l[c].concat(b[c]);Object.keys(t).forEach(c=>{s(c,n,t)}),this.store.set("middlewares",n)}}dt.createRegistry(nt.CONTROLLER,pr);function qr({token:e,provide:t,...n}){return i(e||t,{...n,token:e||t}).inspect()}function r(e,t={}){return(n,s={})=>{const c={global:!H().isLoaded(),...s,...t,token:n},l=dt.merge(n,c);return c.global||H().setProvider(n,l),e.reduce((b,m)=>({...b,[m]:function(T){return l[m]=T,this}}),{factory(b){return l.reset(),l.useFactory=b,this},asyncFactory(b){return l.reset(),l.useAsyncFactory=b,this},value(b){return l.reset(),l.useValue=b,l.type=nt.VALUE,this},class(b){return l.reset(),l.useClass=b,this},store(){return l.store},inspect(){return l},token(){return l.token}})}}const o=["type","scope","path","alias","hooks","deps","imports","configuration","priority"],i=r(o),h=r(o,{type:nt.INTERCEPTOR}),g=r([...o,"middlewares"],{type:nt.CONTROLLER});function E(e){try{e()}catch(t){return t}}class k extends Error{constructor(t,n){super(`Object isn't a valid token. Please check the token set on ${F(j(t))}.${n}.
21
+ - Check that it is not a circular reference.
22
+ - Check that the token (class or symbol) exists`),this.name="INVALID_TOKEN_ERROR"}}let D,K={};const st=[];function yt({providers:e,rebuild:t}={}){return(!D||e)&&(D=new Vt,e&&(e.forEach(n=>{D.set(n.token,n.use)}),D.set(pe,H())),t&&(K.rebuild=t)),D}function gt(){return{...K}}function Dt(){D&&st.push(D),D=void 0,K={}}function Yt(){Dt(),st.map(e=>e.clear())}function Nt(e,t){return H().resolve(e,{...t,...gt(),locals:(t==null?void 0:t.locals)||yt()})}function de(e,t){return H().getMany(e,{...t,locals:(t==null?void 0:t.locals)||yt()})}function xt(e,{target:t,propertyKey:n,parameterIndex:s}){const c=Qt(t,n),l=c[s];c[s]=l===Array?[e]:e,Rt.setParamTypes(t,n,c),fr(t,c)}function ye(e,t,n){const s=e||Rt.getType(t,n);if(s===Object)throw new k(t,String(n));return s}function dr(e,t,{token:n,transform:s=l=>l,useOpts:c}){const l=Symbol();e[Ct]||Reflect.defineProperty(e,Ct,{value:new Set,enumerable:!1,configurable:!1}),e[Ct].add(t),E(()=>Reflect.deleteProperty(e,t)),Reflect.defineProperty(e,t,{get(){var b,m;const T=ye(n,e,t),L=Rt.getType(e,t),N={rebuild:!!((b=this[mt])!=null&&b.rebuild),locals:(m=this[mt])==null?void 0:m.locals,useOpts:c||W.from(e,t).get(Ot)};return this[l]===void 0&&(this[l]=L===Array?de(n,N):Nt(T,N)),[].concat(this[l]).forEach((at,Mt)=>{ne(this[l])&&at.then(ut=>{this[l][Mt]=ut,L!==Array&&(this[l]=ut)})}),s(this[l],{self:this,target:e,propertyKey:t})}})}function Fe(e,t={}){return t=typeof t=="function"?{transform:t}:t,(n,s,c)=>{switch(Pt([n,s,c])){case V.PARAM_CTOR:e&&xt(e,{target:n,propertyKey:s,parameterIndex:c});break;case V.PROP:dr(n,s,{...t,token:e})}}}function Be(e={}){return(...t)=>{switch(Pt(t)){case V.CLASS:hr(t[0],e);break;default:case V.PARAM_CTOR:return Fe(At)(t[0],t[1],t[2])}}}i(Be).factory(()=>H().settings);function Ve(e,t){return H().settings.get(e,t)}function yr(e,t,n,s){const c=Symbol();E(()=>Reflect.deleteProperty(e,t)),Reflect.defineProperty(e,t,{get(){if(this[c]!==void 0)return this[c];const l=Ve(n,s);return this[c]=Object.freeze(ct(l)),this[c]},set(l){(Ve(n,s)||this[c])===void 0&&l!==void 0&&(this[c]=l)},enumerable:!0,configurable:!0})}function Jr(e,t){return(n,s)=>yr(n,s,e,t)}function gr(...e){return(...t)=>{const n=typeof t[2]=="object";if(e.filter(s=>!!s).forEach(s=>{const c=s(...t);n&&typeof c=="object"&&(t[2]=c)}),n)return t[2]}}function Qr(e){return typeof e=="string"||e instanceof RegExp||te(e)?{path:e}:e}function Yr(e){const{children:t=[],path:n,...s}=Qr(e);return gr(c=>{const l=g(c,s);n&&l.store().set("path",n),l.store().set("childrenControllers",t),t.forEach(b=>{W.from(b).set("parentController",j(c))})})}function ge(e={}){return t=>{const n={...e,...e.token?{useClass:t}:{token:t}};i(n.token,n)}}function Zr(e,t){Ie(e).forEach(({target:n,propertyKey:s})=>{const c=qt(e);n!==j(e)&&(Object.defineProperty(c,s,{writable:!0,configurable:!0,value(...m){return qt(n)[s].apply(this,m)}}),W.mergeStoreMethodFrom(e,n,s));let l=Ae(e,s);const b=t(c,s,l)||l;b&&Object.defineProperty(c,s,b)})}function Xr(e,t){return W.fromMethod(e,t).get(Lt)}function vr(e,t,n,s){const c=j(e),l=Reflect.getOwnPropertyDescriptor(c.prototype,t),b=l.value,m=Symbol();W.fromMethod(c,t).set(Lt,s);function T(...L){var N,at;const Mt=f=>{if(!f)return b.apply(this,L);throw f},ut={target:c,propertyKey:t,args:L,options:s,next:Mt},u={rebuild:!!((N=this[mt])!=null&&N.rebuild),locals:(at=this[mt])==null?void 0:at.locals};return this[m]=this[m]||Nt(n,u),this[m].intercept({...ut,options:s},Mt)}return l.value=T,Reflect.deleteProperty(c.prototype,t),Reflect.defineProperty(c.prototype,t,l),l}function Ke(e,t){return(...n)=>{const[s,c]=n;switch(Pt(n)){case V.CLASS:Zr(s,Ke(e,t));break;case V.METHOD:return vr(s,c,e,t)}}}function Ue(){return ge({type:nt.INTERCEPTOR})}async function ve(e){const{default:t}=await e();if(!H().has(t)){const n=await Nt(t);"$onInit"in n&&wt(n.$onInit)&&await n.$onInit()}return H().get(t)}async function We(e){try{return await ve(e)}catch{return}}function Ge(e,t=!1){function n(s,c){return async()=>{try{const{[s]:l}=await c();return{default:l}}catch(l){if(!t)throw l;return}}}return wt(e[0])?n("default",e[0]):n(e[0],e[1])}function mr(...e){let t=Ge(e);return(n,s)=>{E(()=>Reflect.deleteProperty(n,s)),Reflect.defineProperty(n,s,{async get(){return ve(t)}})}}function Or(...e){const t=Ge(e,!0);return(n,s)=>{E(()=>Reflect.deleteProperty(n,s)),Reflect.defineProperty(n,s,{async get(){return We(t)}})}}function br(e={}){const{scopes:t,imports:n,deps:s,scope:c,...l}=e;return gr(Be(l),ge({type:nt.MODULE,scope:rt.SINGLETON,imports:n,deps:s,injectable:!1}))}function S(e){return(...t)=>{const n=W.from(...t),s=e(n,t);return typeof s=="function"&&s(...t),t[2]}}function $t(e,t){return S(n=>{n.set(e,t)})}function wr(e=rt.REQUEST){return $t("scope",e)}function G(e,t,n){wr(rt.INSTANCE)(j(e)),Fe(bt)(e,t,n)}function tn(e){return t=>{dt.get(e).useClass=t}}function en(){return ge()}class me extends Error{constructor(t,n){super(me.buildMessage(t,n))}static buildMessage(t,n){const[s,c,l]=n,b=Pt(n),m=b.split("/")[0],T=m==="parameter"?".["+l+"]":"",L=c?"."+c:m==="parameter"?".constructor":"",N=F(j(s))+L+T;return`${t.name} cannot be used as ${b} decorator on ${N}`}}function Er(e){return(t,n,s)=>{switch(Pt([t,n,s])){case V.PARAM_CTOR:W.from(t).merge(`${bt}:${s}`,e);break;case V.PROP:W.from(t,n).set(Ot,e);break;default:throw new me(Er,[t,n,s])}}}function it(e,t,n,s){const c={get(){return H().settings.get(n,s)},set(l){H().settings.set(n,l)},enumerable:!0,configurable:!0};E(()=>Reflect.deleteProperty(e,t)),E(()=>Reflect.defineProperty(e,t,c))}function Pr(e,t){return(n,s)=>it(n,s,e,t)}var Zt=(e=>(e.METHOD="method",e.PROPERTY="property",e.CONSTANT="constant",e.VALUE="value",e.INTERCEPTOR="interceptor",e))(Zt||{});function Rr(e,t){return Object.freeze({get value(){return H().settings.get(e,t)},set value(n){H().settings.set(e,n)}})}const Mr=Symbol.for("LOGGER");i(Mr).factory(()=>H().logger);function Oe(e={},t={}){return Object.entries(t).reduce((n,[s,c])=>({...n,[s]:(n[s]||[]).concat(c)}),e)}function _r(e,t={}){const n=W.from(e).get("configuration")||{};return{...n,...t,mount:Oe(n.mount,t.mount)}}a.AutoInjectable=zr,a.CONFIGURATION=Kr,a.Configuration=Be,a.Constant=Jr,a.Container=he,a.Controller=Yr,a.ControllerProvider=pr,a.DIConfiguration=At,a.DI_INJECTABLE_PROPS=Ct,a.DI_INTERCEPTOR_OPTIONS=Lt,a.DI_INVOKE_OPTIONS=mt,a.DI_USE_OPTIONS=Ot,a.DI_USE_PARAM_OPTIONS=bt,a.GlobalProviderRegistry=le,a.GlobalProviders=dt,a.Inject=Fe,a.Injectable=ge,a.InjectablePropertyType=Zt,a.InjectionError=Jt,a.InjectorService=pe,a.Intercept=Ke,a.Interceptor=Ue,a.InvalidPropertyTokenError=k,a.LOGGER=Mr,a.LazyInject=mr,a.LocalsContainer=Vt,a.Module=br,a.OptionalLazyInject=Or,a.Opts=G,a.OverrideProvider=tn,a.Provider=pt,a.ProviderScope=rt,a.ProviderType=nt,a.Scope=wr,a.Service=en,a.UseOpts=Er,a.Value=Pr,a.bindConstant=yr,a.bindIntercept=vr,a.bindValue=it,a.cleanAllLocalsContainer=Yt,a.colors=xe,a.configuration=hr,a.constant=Ve,a.controller=g,a.createContainer=$e,a.destroyInjector=Gr,a.detachLocalsContainer=Dt,a.discoverHooks=It,a.getConfiguration=_r,a.getConstructorDependencies=Qt,a.getInterceptorOptions=Xr,a.inject=Nt,a.injectMany=de,a.injectable=i,a.injector=H,a.interceptor=h,a.invokeOptions=gt,a.lazyInject=ve,a.localsContainer=yt,a.mergeMount=Oe,a.optionalLazyInject=We,a.providerBuilder=r,a.refValue=Rr,a.registerProvider=qr,a.setConstructorDependencies=fr,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})}(Ee,Ee.exports)),Ee.exports}var _t=dn(),yn=Object.defineProperty,gn=Object.getOwnPropertyDescriptor,Xt=(ft,I,a,$)=>{for(var U=$>1?void 0:$?gn(I,a):I,A=ft.length-1,Q;A>=0;A--)(Q=ft[A])&&(U=($?Q(I,a,U):Q(U))||U);return $&&U&&yn(I,a,U),U};J.EventEmitterModule=class{$onInit(){this.loadEventEmitter&&this.injector.getProviders().forEach(a=>this.bindEventListeners(a))}$onReady(){this.loadEventEmitter?(this.disableSummary||this.printEvents(),this.logger.info("EventEmitter listening...")):this.logger.info("EventEmitter disabled...")}printEvents(){const I=this.eventEmitter.eventNames().map($=>{const U=this.eventEmitter.listenerCount($).toString();return{eventName:$,listenerCount:U}});this.logger.info("EventEmitter events mounted:");const a=this.logger.drawTable(I,{padding:1,header:{eventName:"Event name",listenerCount:"Number of listener"}});this.logger.info(`
23
+ `+a.trim())}bindEventListeners(I){this.bindOn(I),this.bindOnAny(I)}getListener(I,a){const $=this.injector.get(I.token);return $[a].bind($)}bindOn(I){const a=I.store.get("eventEmitter");Object.entries((a==null?void 0:a.onEvent)||{}).forEach(([$,{event:U,options:A}])=>{const Q=this.getListener(I,$);this.eventEmitter.on(U,Q,A)})}bindOnAny(I){const a=I.store.get("eventEmitter");Object.keys((a==null?void 0:a.onAny)||{}).forEach($=>{const U=this.getListener(I,$);this.eventEmitter.onAny(U)})}},Xt([_t.Inject(_t.LOGGER)],J.EventEmitterModule.prototype,"logger",2),Xt([_t.Inject()],J.EventEmitterModule.prototype,"injector",2),Xt([_t.Inject()],J.EventEmitterModule.prototype,"eventEmitter",2),Xt([_t.Constant("eventEmitter.disableSummary",!1)],J.EventEmitterModule.prototype,"disableSummary",2),Xt([_t.Constant("eventEmitter.enabled",!1)],J.EventEmitterModule.prototype,"loadEventEmitter",2),J.EventEmitterModule=Xt([_t.Module()],J.EventEmitterModule);const vn=Sr.EventEmitter2;_t.registerProvider({token:Sr.EventEmitter2,deps:[_t.Configuration],useFactory(ft){const I=ft.get("eventEmitter",{enabled:!1});return I.enabled?new Sr.EventEmitter2(I):{}}}),J.EventEmitterService=vn,J.OnAny=ln,J.OnEvent=hn,Object.defineProperty(J,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -2,24 +2,24 @@
2
2
  "name": "@tsed/event-emitter",
3
3
  "description": "EventEmitter package for Ts.ED framework",
4
4
  "type": "module",
5
- "version": "8.9.4",
5
+ "version": "8.10.0-rc.1",
6
6
  "source": "./src/index.ts",
7
7
  "main": "./lib/esm/index.js",
8
8
  "module": "./lib/esm/index.js",
9
9
  "typings": "./lib/types/index.d.ts",
10
- "browser": "./lib/browser/event-emitter.umd.min.js",
10
+ "browser": "./lib/browser/event-emitter.umd.cjs",
11
11
  "exports": {
12
12
  ".": {
13
13
  "tsed-source": "./src/index.ts",
14
14
  "types": "./lib/types/index.d.ts",
15
- "browser": "./lib/browser/event-emitter.umd.min.js",
15
+ "browser": "./lib/browser/event-emitter.umd.cjs",
16
16
  "import": "./lib/esm/index.js",
17
17
  "default": "./lib/esm/index.js"
18
18
  }
19
19
  },
20
20
  "scripts": {
21
21
  "build": "yarn barrels && yarn build:ts && yarn run build:browser",
22
- "build:browser": "webpack",
22
+ "build:browser": "vite build",
23
23
  "barrels": "barrels",
24
24
  "test": "vitest run",
25
25
  "build:ts": "tsc --build tsconfig.esm.json",
@@ -29,16 +29,16 @@
29
29
  "tslib": "2.7.0"
30
30
  },
31
31
  "devDependencies": {
32
- "@tsed/barrels": "8.9.4",
33
- "@tsed/core": "8.9.4",
34
- "@tsed/di": "8.9.4",
35
- "@tsed/platform-http": "8.9.4",
36
- "@tsed/typescript": "8.9.4",
32
+ "@tsed/barrels": "8.10.0-rc.1",
33
+ "@tsed/core": "8.10.0-rc.1",
34
+ "@tsed/di": "8.10.0-rc.1",
35
+ "@tsed/platform-http": "8.10.0-rc.1",
36
+ "@tsed/typescript": "8.10.0-rc.1",
37
37
  "eslint": "9.12.0",
38
38
  "eventemitter2": "^6.4.9",
39
39
  "typescript": "5.4.5",
40
- "vitest": "3.1.1",
41
- "webpack": "^5.75.0"
40
+ "vite": "6.2.2",
41
+ "vitest": "3.1.4"
42
42
  },
43
43
  "peerDependencies": {
44
44
  "eventemitter2": "^6.4.4"
@@ -49,5 +49,8 @@
49
49
  },
50
50
  "homepage": "https://github.com/tsedio/tsed/tree/production/packages/third-parties/event-emitter",
51
51
  "author": "Romain Lenzotti",
52
- "license": "MIT"
52
+ "license": "MIT",
53
+ "publishConfig": {
54
+ "tag": "rc"
55
+ }
53
56
  }
@@ -0,0 +1,19 @@
1
+ import {defineConfig} from "vite";
2
+ import {join} from "node:path";
3
+
4
+ // https://vitejs.dev/config/
5
+ export default defineConfig({
6
+ plugins: [],
7
+ build: {
8
+ outDir: "lib/browser",
9
+ lib: {
10
+ entry: join(import.meta.dirname, "src/index.ts"),
11
+ formats: ["umd"],
12
+ name: "@tsed/event-emitter",
13
+ fileName: "event-emitter"
14
+ },
15
+ rollupOptions: {
16
+ external: /node_modules\/(.*)/
17
+ }
18
+ }
19
+ });
@@ -1,3 +0,0 @@
1
- /*! For license information please see event-emitter.umd.min.js.LICENSE.txt */
2
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@tsed/core"),require("@tsed/di")):"function"==typeof define&&define.amd?define(["@tsed/core","@tsed/di"],t):"object"==typeof exports?exports["@tsed/event-emitter"]=t(require("@tsed/core"),require("@tsed/di")):e["@tsed/event-emitter"]=t(e["@tsed/core"],e["@tsed/di"])}(self,((e,t)=>(()=>{var r={553:(e,t,r)=>{var n;!function(i){var s=Object.hasOwnProperty,o=Array.isArray?Array.isArray:function(e){return"[object Array]"===Object.prototype.toString.call(e)},l="object"==typeof process&&"function"==typeof process.nextTick,a="function"==typeof Symbol,c="object"==typeof Reflect,f="function"==typeof setImmediate?setImmediate:setTimeout,h=a?c&&"function"==typeof Reflect.ownKeys?Reflect.ownKeys:function(e){var t=Object.getOwnPropertyNames(e);return t.push.apply(t,Object.getOwnPropertySymbols(e)),t}:Object.keys;function u(){this._events={},this._conf&&p.call(this,this._conf)}function p(e){e&&(this._conf=e,e.delimiter&&(this.delimiter=e.delimiter),e.maxListeners!==i&&(this._maxListeners=e.maxListeners),e.wildcard&&(this.wildcard=e.wildcard),e.newListener&&(this._newListener=e.newListener),e.removeListener&&(this._removeListener=e.removeListener),e.verboseMemoryLeak&&(this.verboseMemoryLeak=e.verboseMemoryLeak),e.ignoreErrors&&(this.ignoreErrors=e.ignoreErrors),this.wildcard&&(this.listenerTree={}))}function v(e,t){var r="(node) warning: possible EventEmitter memory leak detected. "+e+" listeners added. Use emitter.setMaxListeners() to increase limit.";if(this.verboseMemoryLeak&&(r+=" Event name: "+t+"."),"undefined"!=typeof process&&process.emitWarning){var n=new Error(r);n.name="MaxListenersExceededWarning",n.emitter=this,n.count=e,process.emitWarning(n)}else console.error(r),console.trace&&console.trace()}var y=function(e,t,r){var n=arguments.length;switch(n){case 0:return[];case 1:return[e];case 2:return[e,t];case 3:return[e,t,r];default:for(var i=new Array(n);n--;)i[n]=arguments[n];return i}};function m(e,t){for(var r={},n=e.length,s=t?t.length:0,o=0;o<n;o++)r[e[o]]=o<s?t[o]:i;return r}function d(e,t,r){var n,i;if(this._emitter=e,this._target=t,this._listeners={},this._listenersCount=0,(r.on||r.off)&&(n=r.on,i=r.off),t.addEventListener?(n=t.addEventListener,i=t.removeEventListener):t.addListener?(n=t.addListener,i=t.removeListener):t.on&&(n=t.on,i=t.off),!n&&!i)throw Error("target does not implement any known event API");if("function"!=typeof n)throw TypeError("on method must be a function");if("function"!=typeof i)throw TypeError("off method must be a function");this._on=n,this._off=i;var s=e._observers;s?s.push(this):e._observers=[this]}function _(e,t,r,n){var o=Object.assign({},t);if(!e)return o;if("object"!=typeof e)throw TypeError("options must be an object");var l,a,c,f=Object.keys(e),h=f.length;function u(e){throw Error('Invalid "'+l+'" option value'+(e?". Reason: "+e:""))}for(var p=0;p<h;p++){if(l=f[p],!n&&!s.call(t,l))throw Error('Unknown "'+l+'" option');(a=e[l])!==i&&(c=r[l],o[l]=c?c(a,u):a)}return o}function b(e,t){return"function"==typeof e&&e.hasOwnProperty("prototype")||t("value must be a constructor"),e}function g(e){var t="value must be type of "+e.join("|"),r=e.length,n=e[0],i=e[1];return 1===r?function(e,r){if(typeof e===n)return e;r(t)}:2===r?function(e,r){var s=typeof e;if(s===n||s===i)return e;r(t)}:function(n,i){for(var s=typeof n,o=r;o-- >0;)if(s===e[o])return n;i(t)}}Object.assign(d.prototype,{subscribe:function(e,t,r){var n=this,i=this._target,s=this._emitter,o=this._listeners,l=function(){var n=y.apply(null,arguments),o={data:n,name:t,original:e};r?!1!==r.call(i,o)&&s.emit.apply(s,[o.name].concat(n)):s.emit.apply(s,[t].concat(n))};if(o[e])throw Error("Event '"+e+"' is already listening");this._listenersCount++,s._newListener&&s._removeListener&&!n._onNewListener?(this._onNewListener=function(r){r===t&&null===o[e]&&(o[e]=l,n._on.call(i,e,l))},s.on("newListener",this._onNewListener),this._onRemoveListener=function(r){r===t&&!s.hasListeners(r)&&o[e]&&(o[e]=null,n._off.call(i,e,l))},o[e]=null,s.on("removeListener",this._onRemoveListener)):(o[e]=l,n._on.call(i,e,l))},unsubscribe:function(e){var t,r,n,i=this,s=this._listeners,o=this._emitter,l=this._off,a=this._target;if(e&&"string"!=typeof e)throw TypeError("event must be a string");function c(){i._onNewListener&&(o.off("newListener",i._onNewListener),o.off("removeListener",i._onRemoveListener),i._onNewListener=null,i._onRemoveListener=null);var e=j.call(o,i);o._observers.splice(e,1)}if(e){if(!(t=s[e]))return;l.call(a,e,t),delete s[e],--this._listenersCount||c()}else{for(n=(r=h(s)).length;n-- >0;)e=r[n],l.call(a,e,s[e]);this._listeners={},this._listenersCount=0,c()}}});var w=g(["function"]),E=g(["object","function"]);function L(e,t,r){var n,i,s,o=0,l=new e((function(a,c,f){function h(){i&&(i=null),o&&(clearTimeout(o),o=0)}r=_(r,{timeout:0,overload:!1},{timeout:function(e,t){return("number"!=typeof(e*=1)||e<0||!Number.isFinite(e))&&t("timeout must be a positive number"),e}}),n=!r.overload&&"function"==typeof e.prototype.cancel&&"function"==typeof f;var u=function(e){h(),a(e)},p=function(e){h(),c(e)};n?t(u,p,f):(i=[function(e){p(e||Error("canceled"))}],t(u,p,(function(e){if(s)throw Error("Unable to subscribe on cancel event asynchronously");if("function"!=typeof e)throw TypeError("onCancel callback must be a function");i.push(e)})),s=!0),r.timeout>0&&(o=setTimeout((function(){var e=Error("timeout");e.code="ETIMEDOUT",o=0,l.cancel(e),c(e)}),r.timeout))}));return n||(l.cancel=function(e){if(i){for(var t=i.length,r=1;r<t;r++)i[r](e);i[0](e),i=null}}),l}function j(e){var t=this._observers;if(!t)return-1;for(var r=t.length,n=0;n<r;n++)if(t[n]._target===e)return n;return-1}function k(e,t,r,n,i){if(!r)return null;if(0===n){var s=typeof t;if("string"===s){var o,l,a=0,c=0,f=this.delimiter,u=f.length;if(-1!==(l=t.indexOf(f))){o=new Array(5);do{o[a++]=t.slice(c,l),c=l+u}while(-1!==(l=t.indexOf(f,c)));o[a++]=t.slice(c),t=o,i=a}else t=[t],i=1}else"object"===s?i=t.length:(t=[t],i=1)}var p,v,y,m,d,_,b,g=null,w=t[n],E=t[n+1];if(n===i)r._listeners&&("function"==typeof r._listeners?(e&&e.push(r._listeners),g=[r]):(e&&e.push.apply(e,r._listeners),g=[r]));else{if("*"===w){for(l=(_=h(r)).length;l-- >0;)"_listeners"!==(p=_[l])&&(b=k(e,t,r[p],n+1,i))&&(g?g.push.apply(g,b):g=b);return g}if("**"===w){for((d=n+1===i||n+2===i&&"*"===E)&&r._listeners&&(g=k(e,t,r,i,i)),l=(_=h(r)).length;l-- >0;)"_listeners"!==(p=_[l])&&("*"===p||"**"===p?(r[p]._listeners&&!d&&(b=k(e,t,r[p],i,i))&&(g?g.push.apply(g,b):g=b),b=k(e,t,r[p],n,i)):b=k(e,t,r[p],p===E?n+2:n,i),b&&(g?g.push.apply(g,b):g=b));return g}r[w]&&(g=k(e,t,r[w],n+1,i))}if((v=r["*"])&&k(e,t,v,n+1,i),y=r["**"])if(n<i)for(y._listeners&&k(e,t,y,i,i),l=(_=h(y)).length;l-- >0;)"_listeners"!==(p=_[l])&&(p===E?k(e,t,y[p],n+2,i):p===w?k(e,t,y[p],n+1,i):((m={})[p]=y[p],k(e,t,{"**":m},n+1,i)));else y._listeners?k(e,t,y,i,i):y["*"]&&y["*"]._listeners&&k(e,t,y["*"],i,i);return g}function O(e,t,r){var n,i,s=0,o=0,l=this.delimiter,a=l.length;if("string"==typeof e)if(-1!==(n=e.indexOf(l))){i=new Array(5);do{i[s++]=e.slice(o,n),o=n+a}while(-1!==(n=e.indexOf(l,o)));i[s++]=e.slice(o)}else i=[e],s=1;else i=e,s=e.length;if(s>1)for(n=0;n+1<s;n++)if("**"===i[n]&&"**"===i[n+1])return;var c,f=this.listenerTree;for(n=0;n<s;n++)if(f=f[c=i[n]]||(f[c]={}),n===s-1)return f._listeners?("function"==typeof f._listeners&&(f._listeners=[f._listeners]),r?f._listeners.unshift(t):f._listeners.push(t),!f._listeners.warned&&this._maxListeners>0&&f._listeners.length>this._maxListeners&&(f._listeners.warned=!0,v.call(this,f._listeners.length,c))):f._listeners=t,!0;return!0}function x(e,t,r,n){for(var i,s,o,l,a=h(e),c=a.length,f=e._listeners;c-- >0;)i=e[s=a[c]],o="_listeners"===s?r:r?r.concat(s):[s],l=n||"symbol"==typeof s,f&&t.push(l?o:o.join(this.delimiter)),"object"==typeof i&&x.call(this,i,t,o,l);return t}function T(e){for(var t,r,n,i=h(e),s=i.length;s-- >0;)(t=e[r=i[s]])&&(n=!0,"_listeners"===r||T(t)||delete e[r]);return n}function A(e,t,r){this.emitter=e,this.event=t,this.listener=r}function P(e,t,r){if(!0===r)s=!0;else if(!1===r)n=!0;else{if(!r||"object"!=typeof r)throw TypeError("options should be an object or true");var n=r.async,s=r.promisify,o=r.nextTick,a=r.objectify}if(n||o||s){var c=t,h=t._origin||t;if(o&&!l)throw Error("process.nextTick is not supported");s===i&&(s="AsyncFunction"===t.constructor.name),t=function(){var e=arguments,t=this,r=this.event;return s?o?Promise.resolve():new Promise((function(e){f(e)})).then((function(){return t.event=r,c.apply(t,e)})):(o?process.nextTick:f)((function(){t.event=r,c.apply(t,e)}))},t._async=!0,t._origin=h}return[t,a?new A(this,e,t):this]}function S(e){this._events={},this._newListener=!1,this._removeListener=!1,this.verboseMemoryLeak=!1,p.call(this,e)}A.prototype.off=function(){return this.emitter.off(this.event,this.listener),this},S.EventEmitter2=S,S.prototype.listenTo=function(e,t,r){if("object"!=typeof e)throw TypeError("target musts be an object");var n=this;function s(t){if("object"!=typeof t)throw TypeError("events must be an object");var i,s=r.reducers,o=j.call(n,e);i=-1===o?new d(n,e,r):n._observers[o];for(var l,a=h(t),c=a.length,f="function"==typeof s,u=0;u<c;u++)l=a[u],i.subscribe(l,t[l]||l,f?s:s&&s[l])}return r=_(r,{on:i,off:i,reducers:i},{on:w,off:w,reducers:E}),o(t)?s(m(t)):s("string"==typeof t?m(t.split(/\s+/)):t),this},S.prototype.stopListeningTo=function(e,t){var r=this._observers;if(!r)return!1;var n,i=r.length,s=!1;if(e&&"object"!=typeof e)throw TypeError("target should be an object");for(;i-- >0;)n=r[i],e&&n._target!==e||(n.unsubscribe(t),s=!0);return s},S.prototype.delimiter=".",S.prototype.setMaxListeners=function(e){e!==i&&(this._maxListeners=e,this._conf||(this._conf={}),this._conf.maxListeners=e)},S.prototype.getMaxListeners=function(){return this._maxListeners},S.prototype.event="",S.prototype.once=function(e,t,r){return this._once(e,t,!1,r)},S.prototype.prependOnceListener=function(e,t,r){return this._once(e,t,!0,r)},S.prototype._once=function(e,t,r,n){return this._many(e,1,t,r,n)},S.prototype.many=function(e,t,r,n){return this._many(e,t,r,!1,n)},S.prototype.prependMany=function(e,t,r,n){return this._many(e,t,r,!0,n)},S.prototype._many=function(e,t,r,n,i){var s=this;if("function"!=typeof r)throw new Error("many only accepts instances of Function");function o(){return 0==--t&&s.off(e,o),r.apply(this,arguments)}return o._origin=r,this._on(e,o,n,i)},S.prototype.emit=function(){if(!this._events&&!this._all)return!1;this._events||u.call(this);var e,t,r,n,i,s,o=arguments[0],l=this.wildcard;if("newListener"===o&&!this._newListener&&!this._events.newListener)return!1;if(l&&(e=o,"newListener"!==o&&"removeListener"!==o&&"object"==typeof o)){if(r=o.length,a)for(n=0;n<r;n++)if("symbol"==typeof o[n]){s=!0;break}s||(o=o.join(this.delimiter))}var c,f=arguments.length;if(this._all&&this._all.length)for(n=0,r=(c=this._all.slice()).length;n<r;n++)switch(this.event=o,f){case 1:c[n].call(this,o);break;case 2:c[n].call(this,o,arguments[1]);break;case 3:c[n].call(this,o,arguments[1],arguments[2]);break;default:c[n].apply(this,arguments)}if(l)c=[],k.call(this,c,e,this.listenerTree,0,r);else{if("function"==typeof(c=this._events[o])){switch(this.event=o,f){case 1:c.call(this);break;case 2:c.call(this,arguments[1]);break;case 3:c.call(this,arguments[1],arguments[2]);break;default:for(t=new Array(f-1),i=1;i<f;i++)t[i-1]=arguments[i];c.apply(this,t)}return!0}c&&(c=c.slice())}if(c&&c.length){if(f>3)for(t=new Array(f-1),i=1;i<f;i++)t[i-1]=arguments[i];for(n=0,r=c.length;n<r;n++)switch(this.event=o,f){case 1:c[n].call(this);break;case 2:c[n].call(this,arguments[1]);break;case 3:c[n].call(this,arguments[1],arguments[2]);break;default:c[n].apply(this,t)}return!0}if(!this.ignoreErrors&&!this._all&&"error"===o)throw arguments[1]instanceof Error?arguments[1]:new Error("Uncaught, unspecified 'error' event.");return!!this._all},S.prototype.emitAsync=function(){if(!this._events&&!this._all)return!1;this._events||u.call(this);var e,t,r,n,i,s,o=arguments[0],l=this.wildcard;if("newListener"===o&&!this._newListener&&!this._events.newListener)return Promise.resolve([!1]);if(l&&(e=o,"newListener"!==o&&"removeListener"!==o&&"object"==typeof o)){if(n=o.length,a)for(i=0;i<n;i++)if("symbol"==typeof o[i]){t=!0;break}t||(o=o.join(this.delimiter))}var c,f=[],h=arguments.length;if(this._all)for(i=0,n=this._all.length;i<n;i++)switch(this.event=o,h){case 1:f.push(this._all[i].call(this,o));break;case 2:f.push(this._all[i].call(this,o,arguments[1]));break;case 3:f.push(this._all[i].call(this,o,arguments[1],arguments[2]));break;default:f.push(this._all[i].apply(this,arguments))}if(l?(c=[],k.call(this,c,e,this.listenerTree,0)):c=this._events[o],"function"==typeof c)switch(this.event=o,h){case 1:f.push(c.call(this));break;case 2:f.push(c.call(this,arguments[1]));break;case 3:f.push(c.call(this,arguments[1],arguments[2]));break;default:for(r=new Array(h-1),s=1;s<h;s++)r[s-1]=arguments[s];f.push(c.apply(this,r))}else if(c&&c.length){if(c=c.slice(),h>3)for(r=new Array(h-1),s=1;s<h;s++)r[s-1]=arguments[s];for(i=0,n=c.length;i<n;i++)switch(this.event=o,h){case 1:f.push(c[i].call(this));break;case 2:f.push(c[i].call(this,arguments[1]));break;case 3:f.push(c[i].call(this,arguments[1],arguments[2]));break;default:f.push(c[i].apply(this,r))}}else if(!this.ignoreErrors&&!this._all&&"error"===o)return arguments[1]instanceof Error?Promise.reject(arguments[1]):Promise.reject("Uncaught, unspecified 'error' event.");return Promise.all(f)},S.prototype.on=function(e,t,r){return this._on(e,t,!1,r)},S.prototype.prependListener=function(e,t,r){return this._on(e,t,!0,r)},S.prototype.onAny=function(e){return this._onAny(e,!1)},S.prototype.prependAny=function(e){return this._onAny(e,!0)},S.prototype.addListener=S.prototype.on,S.prototype._onAny=function(e,t){if("function"!=typeof e)throw new Error("onAny only accepts instances of Function");return this._all||(this._all=[]),t?this._all.unshift(e):this._all.push(e),this},S.prototype._on=function(e,t,r,n){if("function"==typeof e)return this._onAny(e,t),this;if("function"!=typeof t)throw new Error("on only accepts instances of Function");this._events||u.call(this);var s,o=this;return n!==i&&(t=(s=P.call(this,e,t,n))[0],o=s[1]),this._newListener&&this.emit("newListener",e,t),this.wildcard?(O.call(this,e,t,r),o):(this._events[e]?("function"==typeof this._events[e]&&(this._events[e]=[this._events[e]]),r?this._events[e].unshift(t):this._events[e].push(t),!this._events[e].warned&&this._maxListeners>0&&this._events[e].length>this._maxListeners&&(this._events[e].warned=!0,v.call(this,this._events[e].length,e))):this._events[e]=t,o)},S.prototype.off=function(e,t){if("function"!=typeof t)throw new Error("removeListener only takes instances of Function");var r,n=[];if(this.wildcard){var i="string"==typeof e?e.split(this.delimiter):e.slice();if(!(n=k.call(this,null,i,this.listenerTree,0)))return this}else{if(!this._events[e])return this;r=this._events[e],n.push({_listeners:r})}for(var s=0;s<n.length;s++){var l=n[s];if(r=l._listeners,o(r)){for(var a=-1,c=0,f=r.length;c<f;c++)if(r[c]===t||r[c].listener&&r[c].listener===t||r[c]._origin&&r[c]._origin===t){a=c;break}if(a<0)continue;return this.wildcard?l._listeners.splice(a,1):this._events[e].splice(a,1),0===r.length&&(this.wildcard?delete l._listeners:delete this._events[e]),this._removeListener&&this.emit("removeListener",e,t),this}(r===t||r.listener&&r.listener===t||r._origin&&r._origin===t)&&(this.wildcard?delete l._listeners:delete this._events[e],this._removeListener&&this.emit("removeListener",e,t))}return this.listenerTree&&T(this.listenerTree),this},S.prototype.offAny=function(e){var t,r=0,n=0;if(e&&this._all&&this._all.length>0){for(r=0,n=(t=this._all).length;r<n;r++)if(e===t[r])return t.splice(r,1),this._removeListener&&this.emit("removeListenerAny",e),this}else{if(t=this._all,this._removeListener)for(r=0,n=t.length;r<n;r++)this.emit("removeListenerAny",t[r]);this._all=[]}return this},S.prototype.removeListener=S.prototype.off,S.prototype.removeAllListeners=function(e){if(e===i)return!this._events||u.call(this),this;if(this.wildcard){var t,r=k.call(this,null,e,this.listenerTree,0);if(!r)return this;for(t=0;t<r.length;t++)r[t]._listeners=null;this.listenerTree&&T(this.listenerTree)}else this._events&&(this._events[e]=null);return this},S.prototype.listeners=function(e){var t,r,n,s,o,l=this._events;if(e===i){if(this.wildcard)throw Error("event name required for wildcard emitter");if(!l)return[];for(s=(t=h(l)).length,n=[];s-- >0;)"function"==typeof(r=l[t[s]])?n.push(r):n.push.apply(n,r);return n}if(this.wildcard){if(!(o=this.listenerTree))return[];var a=[],c="string"==typeof e?e.split(this.delimiter):e.slice();return k.call(this,a,c,o,0),a}return l&&(r=l[e])?"function"==typeof r?[r]:r:[]},S.prototype.eventNames=function(e){var t=this._events;return this.wildcard?x.call(this,this.listenerTree,[],null,e):t?h(t):[]},S.prototype.listenerCount=function(e){return this.listeners(e).length},S.prototype.hasListeners=function(e){if(this.wildcard){var t=[],r="string"==typeof e?e.split(this.delimiter):e.slice();return k.call(this,t,r,this.listenerTree,0),t.length>0}var n=this._events,s=this._all;return!!(s&&s.length||n&&(e===i?h(n).length:n[e]))},S.prototype.listenersAny=function(){return this._all?this._all:[]},S.prototype.waitFor=function(e,t){var r=this,n=typeof t;return"number"===n?t={timeout:t}:"function"===n&&(t={filter:t}),L((t=_(t,{timeout:0,filter:i,handleError:!1,Promise,overload:!1},{filter:w,Promise:b})).Promise,(function(n,i,s){function o(){var s=t.filter;if(!s||s.apply(r,arguments))if(r.off(e,o),t.handleError){var l=arguments[0];l?i(l):n(y.apply(null,arguments).slice(1))}else n(y.apply(null,arguments))}s((function(){r.off(e,o)})),r._on(e,o,!1)}),{timeout:t.timeout,overload:t.overload})};var M=S.prototype;Object.defineProperties(S,{defaultMaxListeners:{get:function(){return M._maxListeners},set:function(e){if("number"!=typeof e||e<0||Number.isNaN(e))throw TypeError("n must be a non-negative number");M._maxListeners=e},enumerable:!0},once:{value:function(e,t,r){return L((r=_(r,{Promise,timeout:0,overload:!1},{Promise:b})).Promise,(function(r,n,i){var s;if("function"==typeof e.addEventListener)return s=function(){r(y.apply(null,arguments))},i((function(){e.removeEventListener(t,s)})),void e.addEventListener(t,s,{once:!0});var o,l=function(){o&&e.removeListener("error",o),r(y.apply(null,arguments))};"error"!==t&&(o=function(r){e.removeListener(t,l),n(r)},e.once("error",o)),i((function(){o&&e.removeListener("error",o),e.removeListener(t,l)})),e.once(t,l)}),{timeout:r.timeout,overload:r.overload})},writable:!0,configurable:!0}}),Object.defineProperties(M,{_maxListeners:{value:10,writable:!0,configurable:!0},_observers:{value:null,writable:!0,configurable:!0}}),(n=function(){return S}.call(t,r,t,e))===i||(e.exports=n)}()},414:t=>{"use strict";t.exports=e},546:e=>{"use strict";e.exports=t}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var s=n[e]={exports:{}};return r[e](s,s.exports,i),s.exports}i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var s={};return(()=>{"use strict";i.r(s),i.d(s,{EventEmitterModule:()=>h,EventEmitterService:()=>f,OnAny:()=>t,OnEvent:()=>r});var e=i(414);function t(){return(t,r)=>{const n={onAny:{[r]:{}}};e.Store.from(t).merge("eventEmitter",n)}}function r(t,r){return(n,i)=>{const s={onEvent:{[i]:{event:t,options:r}}};e.Store.from(n).merge("eventEmitter",s)}}function n(e,t,r,n){var i,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,r,n);else for(var l=e.length-1;l>=0;l--)(i=e[l])&&(o=(s<3?i(o):s>3?i(t,r,o):i(t,r))||o);return s>3&&o&&Object.defineProperty(t,r,o),o}function o(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}Object.create,Object.create,"function"==typeof SuppressedError&&SuppressedError;var l=i(546),a=i(553),c=i.n(a);const f=c().EventEmitter2;(0,l.registerProvider)({token:c().EventEmitter2,deps:[l.Configuration],useFactory(e){const t=e.get("eventEmitter",{enabled:!1});return t.enabled?new(c().EventEmitter2)(t):{}}});let h=class{$onInit(){this.loadEventEmitter&&this.injector.getProviders().forEach((e=>this.bindEventListeners(e)))}$onReady(){this.loadEventEmitter?(this.disableSummary||this.printEvents(),this.logger.info("EventEmitter listening...")):this.logger.info("EventEmitter disabled...")}printEvents(){const e=this.eventEmitter.eventNames().map((e=>({eventName:e,listenerCount:this.eventEmitter.listenerCount(e).toString()})));this.logger.info("EventEmitter events mounted:");const t=this.logger.drawTable(e,{padding:1,header:{eventName:"Event name",listenerCount:"Number of listener"}});this.logger.info("\n"+t.trim())}bindEventListeners(e){this.bindOn(e),this.bindOnAny(e)}getListener(e,t){const r=this.injector.get(e.token);return r[t].bind(r)}bindOn(e){const t=e.store.get("eventEmitter");Object.entries(t?.onEvent||{}).forEach((([t,{event:r,options:n}])=>{const i=this.getListener(e,t);this.eventEmitter.on(r,i,n)}))}bindOnAny(e){const t=e.store.get("eventEmitter");Object.keys(t?.onAny||{}).forEach((t=>{const r=this.getListener(e,t);this.eventEmitter.onAny(r)}))}};n([(0,l.Inject)(l.LOGGER),o("design:type",Object)],h.prototype,"logger",void 0),n([(0,l.Inject)(),o("design:type",l.InjectorService)],h.prototype,"injector",void 0),n([(0,l.Inject)(),o("design:type",f)],h.prototype,"eventEmitter",void 0),n([(0,l.Constant)("eventEmitter.disableSummary",!1),o("design:type",Boolean)],h.prototype,"disableSummary",void 0),n([(0,l.Constant)("eventEmitter.enabled",!1),o("design:type",Boolean)],h.prototype,"loadEventEmitter",void 0),h=n([(0,l.Module)()],h)})(),s})()));
3
- //# sourceMappingURL=event-emitter.umd.min.js.map
@@ -1,7 +0,0 @@
1
- /*!
2
- * EventEmitter2
3
- * https://github.com/hij1nx/EventEmitter2
4
- *
5
- * Copyright (c) 2013 hij1nx
6
- * Licensed under the MIT license.
7
- */
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-emitter.umd.min.js","mappings":"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","sources":["webpack://@tsed/event-emitter/webpack/universalModuleDefinition","webpack://@tsed/event-emitter/../../../node_modules/eventemitter2/lib/eventemitter2.js","webpack://@tsed/event-emitter/external umd \"@tsed/core\"","webpack://@tsed/event-emitter/external umd \"@tsed/di\"","webpack://@tsed/event-emitter/webpack/bootstrap","webpack://@tsed/event-emitter/webpack/runtime/compat get default export","webpack://@tsed/event-emitter/webpack/runtime/define property getters","webpack://@tsed/event-emitter/webpack/runtime/hasOwnProperty shorthand","webpack://@tsed/event-emitter/webpack/runtime/make namespace object","webpack://@tsed/event-emitter/./src/decorators/onAny.ts","webpack://@tsed/event-emitter/./src/decorators/onEvent.ts","webpack://@tsed/event-emitter/../../../node_modules/tslib/tslib.es6.mjs","webpack://@tsed/event-emitter/./src/services/EventEmitterFactory.ts","webpack://@tsed/event-emitter/./src/EventEmitterModule.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"@tsed/core\"), require(\"@tsed/di\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"@tsed/core\", \"@tsed/di\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"@tsed/event-emitter\"] = factory(require(\"@tsed/core\"), require(\"@tsed/di\"));\n\telse\n\t\troot[\"@tsed/event-emitter\"] = factory(root[\"@tsed/core\"], root[\"@tsed/di\"]);\n})(self, (__WEBPACK_EXTERNAL_MODULE__414__, __WEBPACK_EXTERNAL_MODULE__546__) => {\nreturn ","/*!\n * EventEmitter2\n * https://github.com/hij1nx/EventEmitter2\n *\n * Copyright (c) 2013 hij1nx\n * Licensed under the MIT license.\n */\n;!function(undefined) {\n var hasOwnProperty= Object.hasOwnProperty;\n var isArray = Array.isArray ? Array.isArray : function _isArray(obj) {\n return Object.prototype.toString.call(obj) === \"[object Array]\";\n };\n var defaultMaxListeners = 10;\n var nextTickSupported= typeof process=='object' && typeof process.nextTick=='function';\n var symbolsSupported= typeof Symbol==='function';\n var reflectSupported= typeof Reflect === 'object';\n var setImmediateSupported= typeof setImmediate === 'function';\n var _setImmediate= setImmediateSupported ? setImmediate : setTimeout;\n var ownKeys= symbolsSupported? (reflectSupported && typeof Reflect.ownKeys==='function'? Reflect.ownKeys : function(obj){\n var arr= Object.getOwnPropertyNames(obj);\n arr.push.apply(arr, Object.getOwnPropertySymbols(obj));\n return arr;\n }) : Object.keys;\n\n function init() {\n this._events = {};\n if (this._conf) {\n configure.call(this, this._conf);\n }\n }\n\n function configure(conf) {\n if (conf) {\n this._conf = conf;\n\n conf.delimiter && (this.delimiter = conf.delimiter);\n\n if(conf.maxListeners!==undefined){\n this._maxListeners= conf.maxListeners;\n }\n\n conf.wildcard && (this.wildcard = conf.wildcard);\n conf.newListener && (this._newListener = conf.newListener);\n conf.removeListener && (this._removeListener = conf.removeListener);\n conf.verboseMemoryLeak && (this.verboseMemoryLeak = conf.verboseMemoryLeak);\n conf.ignoreErrors && (this.ignoreErrors = conf.ignoreErrors);\n\n if (this.wildcard) {\n this.listenerTree = {};\n }\n }\n }\n\n function logPossibleMemoryLeak(count, eventName) {\n var errorMsg = '(node) warning: possible EventEmitter memory ' +\n 'leak detected. ' + count + ' listeners added. ' +\n 'Use emitter.setMaxListeners() to increase limit.';\n\n if(this.verboseMemoryLeak){\n errorMsg += ' Event name: ' + eventName + '.';\n }\n\n if(typeof process !== 'undefined' && process.emitWarning){\n var e = new Error(errorMsg);\n e.name = 'MaxListenersExceededWarning';\n e.emitter = this;\n e.count = count;\n process.emitWarning(e);\n } else {\n console.error(errorMsg);\n\n if (console.trace){\n console.trace();\n }\n }\n }\n\n var toArray = function (a, b, c) {\n var n = arguments.length;\n switch (n) {\n case 0:\n return [];\n case 1:\n return [a];\n case 2:\n return [a, b];\n case 3:\n return [a, b, c];\n default:\n var arr = new Array(n);\n while (n--) {\n arr[n] = arguments[n];\n }\n return arr;\n }\n };\n\n function toObject(keys, values) {\n var obj = {};\n var key;\n var len = keys.length;\n var valuesCount = values ? values.length : 0;\n for (var i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = i < valuesCount ? values[i] : undefined;\n }\n return obj;\n }\n\n function TargetObserver(emitter, target, options) {\n this._emitter = emitter;\n this._target = target;\n this._listeners = {};\n this._listenersCount = 0;\n\n var on, off;\n\n if (options.on || options.off) {\n on = options.on;\n off = options.off;\n }\n\n if (target.addEventListener) {\n on = target.addEventListener;\n off = target.removeEventListener;\n } else if (target.addListener) {\n on = target.addListener;\n off = target.removeListener;\n } else if (target.on) {\n on = target.on;\n off = target.off;\n }\n\n if (!on && !off) {\n throw Error('target does not implement any known event API');\n }\n\n if (typeof on !== 'function') {\n throw TypeError('on method must be a function');\n }\n\n if (typeof off !== 'function') {\n throw TypeError('off method must be a function');\n }\n\n this._on = on;\n this._off = off;\n\n var _observers= emitter._observers;\n if(_observers){\n _observers.push(this);\n }else{\n emitter._observers= [this];\n }\n }\n\n Object.assign(TargetObserver.prototype, {\n subscribe: function(event, localEvent, reducer){\n var observer= this;\n var target= this._target;\n var emitter= this._emitter;\n var listeners= this._listeners;\n var handler= function(){\n var args= toArray.apply(null, arguments);\n var eventObj= {\n data: args,\n name: localEvent,\n original: event\n };\n if(reducer){\n var result= reducer.call(target, eventObj);\n if(result!==false){\n emitter.emit.apply(emitter, [eventObj.name].concat(args))\n }\n return;\n }\n emitter.emit.apply(emitter, [localEvent].concat(args));\n };\n\n\n if(listeners[event]){\n throw Error('Event \\'' + event + '\\' is already listening');\n }\n\n this._listenersCount++;\n\n if(emitter._newListener && emitter._removeListener && !observer._onNewListener){\n\n this._onNewListener = function (_event) {\n if (_event === localEvent && listeners[event] === null) {\n listeners[event] = handler;\n observer._on.call(target, event, handler);\n }\n };\n\n emitter.on('newListener', this._onNewListener);\n\n this._onRemoveListener= function(_event){\n if(_event === localEvent && !emitter.hasListeners(_event) && listeners[event]){\n listeners[event]= null;\n observer._off.call(target, event, handler);\n }\n };\n\n listeners[event]= null;\n\n emitter.on('removeListener', this._onRemoveListener);\n }else{\n listeners[event]= handler;\n observer._on.call(target, event, handler);\n }\n },\n\n unsubscribe: function(event){\n var observer= this;\n var listeners= this._listeners;\n var emitter= this._emitter;\n var handler;\n var events;\n var off= this._off;\n var target= this._target;\n var i;\n\n if(event && typeof event!=='string'){\n throw TypeError('event must be a string');\n }\n\n function clearRefs(){\n if(observer._onNewListener){\n emitter.off('newListener', observer._onNewListener);\n emitter.off('removeListener', observer._onRemoveListener);\n observer._onNewListener= null;\n observer._onRemoveListener= null;\n }\n var index= findTargetIndex.call(emitter, observer);\n emitter._observers.splice(index, 1);\n }\n\n if(event){\n handler= listeners[event];\n if(!handler) return;\n off.call(target, event, handler);\n delete listeners[event];\n if(!--this._listenersCount){\n clearRefs();\n }\n }else{\n events= ownKeys(listeners);\n i= events.length;\n while(i-->0){\n event= events[i];\n off.call(target, event, listeners[event]);\n }\n this._listeners= {};\n this._listenersCount= 0;\n clearRefs();\n }\n }\n });\n\n function resolveOptions(options, schema, reducers, allowUnknown) {\n var computedOptions = Object.assign({}, schema);\n\n if (!options) return computedOptions;\n\n if (typeof options !== 'object') {\n throw TypeError('options must be an object')\n }\n\n var keys = Object.keys(options);\n var length = keys.length;\n var option, value;\n var reducer;\n\n function reject(reason) {\n throw Error('Invalid \"' + option + '\" option value' + (reason ? '. Reason: ' + reason : ''))\n }\n\n for (var i = 0; i < length; i++) {\n option = keys[i];\n if (!allowUnknown && !hasOwnProperty.call(schema, option)) {\n throw Error('Unknown \"' + option + '\" option');\n }\n value = options[option];\n if (value !== undefined) {\n reducer = reducers[option];\n computedOptions[option] = reducer ? reducer(value, reject) : value;\n }\n }\n return computedOptions;\n }\n\n function constructorReducer(value, reject) {\n if (typeof value !== 'function' || !value.hasOwnProperty('prototype')) {\n reject('value must be a constructor');\n }\n return value;\n }\n\n function makeTypeReducer(types) {\n var message= 'value must be type of ' + types.join('|');\n var len= types.length;\n var firstType= types[0];\n var secondType= types[1];\n\n if (len === 1) {\n return function (v, reject) {\n if (typeof v === firstType) {\n return v;\n }\n reject(message);\n }\n }\n\n if (len === 2) {\n return function (v, reject) {\n var kind= typeof v;\n if (kind === firstType || kind === secondType) return v;\n reject(message);\n }\n }\n\n return function (v, reject) {\n var kind = typeof v;\n var i = len;\n while (i-- > 0) {\n if (kind === types[i]) return v;\n }\n reject(message);\n }\n }\n\n var functionReducer= makeTypeReducer(['function']);\n\n var objectFunctionReducer= makeTypeReducer(['object', 'function']);\n\n function makeCancelablePromise(Promise, executor, options) {\n var isCancelable;\n var callbacks;\n var timer= 0;\n var subscriptionClosed;\n\n var promise = new Promise(function (resolve, reject, onCancel) {\n options= resolveOptions(options, {\n timeout: 0,\n overload: false\n }, {\n timeout: function(value, reject){\n value*= 1;\n if (typeof value !== 'number' || value < 0 || !Number.isFinite(value)) {\n reject('timeout must be a positive number');\n }\n return value;\n }\n });\n\n isCancelable = !options.overload && typeof Promise.prototype.cancel === 'function' && typeof onCancel === 'function';\n\n function cleanup() {\n if (callbacks) {\n callbacks = null;\n }\n if (timer) {\n clearTimeout(timer);\n timer = 0;\n }\n }\n\n var _resolve= function(value){\n cleanup();\n resolve(value);\n };\n\n var _reject= function(err){\n cleanup();\n reject(err);\n };\n\n if (isCancelable) {\n executor(_resolve, _reject, onCancel);\n } else {\n callbacks = [function(reason){\n _reject(reason || Error('canceled'));\n }];\n executor(_resolve, _reject, function (cb) {\n if (subscriptionClosed) {\n throw Error('Unable to subscribe on cancel event asynchronously')\n }\n if (typeof cb !== 'function') {\n throw TypeError('onCancel callback must be a function');\n }\n callbacks.push(cb);\n });\n subscriptionClosed= true;\n }\n\n if (options.timeout > 0) {\n timer= setTimeout(function(){\n var reason= Error('timeout');\n reason.code = 'ETIMEDOUT'\n timer= 0;\n promise.cancel(reason);\n reject(reason);\n }, options.timeout);\n }\n });\n\n if (!isCancelable) {\n promise.cancel = function (reason) {\n if (!callbacks) {\n return;\n }\n var length = callbacks.length;\n for (var i = 1; i < length; i++) {\n callbacks[i](reason);\n }\n // internal callback to reject the promise\n callbacks[0](reason);\n callbacks = null;\n };\n }\n\n return promise;\n }\n\n function findTargetIndex(observer) {\n var observers = this._observers;\n if(!observers){\n return -1;\n }\n var len = observers.length;\n for (var i = 0; i < len; i++) {\n if (observers[i]._target === observer) return i;\n }\n return -1;\n }\n\n // Attention, function return type now is array, always !\n // It has zero elements if no any matches found and one or more\n // elements (leafs) if there are matches\n //\n function searchListenerTree(handlers, type, tree, i, typeLength) {\n if (!tree) {\n return null;\n }\n\n if (i === 0) {\n var kind = typeof type;\n if (kind === 'string') {\n var ns, n, l = 0, j = 0, delimiter = this.delimiter, dl = delimiter.length;\n if ((n = type.indexOf(delimiter)) !== -1) {\n ns = new Array(5);\n do {\n ns[l++] = type.slice(j, n);\n j = n + dl;\n } while ((n = type.indexOf(delimiter, j)) !== -1);\n\n ns[l++] = type.slice(j);\n type = ns;\n typeLength = l;\n } else {\n type = [type];\n typeLength = 1;\n }\n } else if (kind === 'object') {\n typeLength = type.length;\n } else {\n type = [type];\n typeLength = 1;\n }\n }\n\n var listeners= null, branch, xTree, xxTree, isolatedBranch, endReached, currentType = type[i],\n nextType = type[i + 1], branches, _listeners;\n\n if (i === typeLength) {\n //\n // If at the end of the event(s) list and the tree has listeners\n // invoke those listeners.\n //\n\n if(tree._listeners) {\n if (typeof tree._listeners === 'function') {\n handlers && handlers.push(tree._listeners);\n listeners = [tree];\n } else {\n handlers && handlers.push.apply(handlers, tree._listeners);\n listeners = [tree];\n }\n }\n } else {\n\n if (currentType === '*') {\n //\n // If the event emitted is '*' at this part\n // or there is a concrete match at this patch\n //\n branches = ownKeys(tree);\n n = branches.length;\n while (n-- > 0) {\n branch = branches[n];\n if (branch !== '_listeners') {\n _listeners = searchListenerTree(handlers, type, tree[branch], i + 1, typeLength);\n if (_listeners) {\n if (listeners) {\n listeners.push.apply(listeners, _listeners);\n } else {\n listeners = _listeners;\n }\n }\n }\n }\n return listeners;\n } else if (currentType === '**') {\n endReached = (i + 1 === typeLength || (i + 2 === typeLength && nextType === '*'));\n if (endReached && tree._listeners) {\n // The next element has a _listeners, add it to the handlers.\n listeners = searchListenerTree(handlers, type, tree, typeLength, typeLength);\n }\n\n branches = ownKeys(tree);\n n = branches.length;\n while (n-- > 0) {\n branch = branches[n];\n if (branch !== '_listeners') {\n if (branch === '*' || branch === '**') {\n if (tree[branch]._listeners && !endReached) {\n _listeners = searchListenerTree(handlers, type, tree[branch], typeLength, typeLength);\n if (_listeners) {\n if (listeners) {\n listeners.push.apply(listeners, _listeners);\n } else {\n listeners = _listeners;\n }\n }\n }\n _listeners = searchListenerTree(handlers, type, tree[branch], i, typeLength);\n } else if (branch === nextType) {\n _listeners = searchListenerTree(handlers, type, tree[branch], i + 2, typeLength);\n } else {\n // No match on this one, shift into the tree but not in the type array.\n _listeners = searchListenerTree(handlers, type, tree[branch], i, typeLength);\n }\n if (_listeners) {\n if (listeners) {\n listeners.push.apply(listeners, _listeners);\n } else {\n listeners = _listeners;\n }\n }\n }\n }\n return listeners;\n } else if (tree[currentType]) {\n listeners = searchListenerTree(handlers, type, tree[currentType], i + 1, typeLength);\n }\n }\n\n xTree = tree['*'];\n if (xTree) {\n //\n // If the listener tree will allow any match for this part,\n // then recursively explore all branches of the tree\n //\n searchListenerTree(handlers, type, xTree, i + 1, typeLength);\n }\n\n xxTree = tree['**'];\n if (xxTree) {\n if (i < typeLength) {\n if (xxTree._listeners) {\n // If we have a listener on a '**', it will catch all, so add its handler.\n searchListenerTree(handlers, type, xxTree, typeLength, typeLength);\n }\n\n // Build arrays of matching next branches and others.\n branches= ownKeys(xxTree);\n n= branches.length;\n while(n-->0){\n branch= branches[n];\n if (branch !== '_listeners') {\n if (branch === nextType) {\n // We know the next element will match, so jump twice.\n searchListenerTree(handlers, type, xxTree[branch], i + 2, typeLength);\n } else if (branch === currentType) {\n // Current node matches, move into the tree.\n searchListenerTree(handlers, type, xxTree[branch], i + 1, typeLength);\n } else {\n isolatedBranch = {};\n isolatedBranch[branch] = xxTree[branch];\n searchListenerTree(handlers, type, {'**': isolatedBranch}, i + 1, typeLength);\n }\n }\n }\n } else if (xxTree._listeners) {\n // We have reached the end and still on a '**'\n searchListenerTree(handlers, type, xxTree, typeLength, typeLength);\n } else if (xxTree['*'] && xxTree['*']._listeners) {\n searchListenerTree(handlers, type, xxTree['*'], typeLength, typeLength);\n }\n }\n\n return listeners;\n }\n\n function growListenerTree(type, listener, prepend) {\n var len = 0, j = 0, i, delimiter = this.delimiter, dl= delimiter.length, ns;\n\n if(typeof type==='string') {\n if ((i = type.indexOf(delimiter)) !== -1) {\n ns = new Array(5);\n do {\n ns[len++] = type.slice(j, i);\n j = i + dl;\n } while ((i = type.indexOf(delimiter, j)) !== -1);\n\n ns[len++] = type.slice(j);\n }else{\n ns= [type];\n len= 1;\n }\n }else{\n ns= type;\n len= type.length;\n }\n\n //\n // Looks for two consecutive '**', if so, don't add the event at all.\n //\n if (len > 1) {\n for (i = 0; i + 1 < len; i++) {\n if (ns[i] === '**' && ns[i + 1] === '**') {\n return;\n }\n }\n }\n\n\n\n var tree = this.listenerTree, name;\n\n for (i = 0; i < len; i++) {\n name = ns[i];\n\n tree = tree[name] || (tree[name] = {});\n\n if (i === len - 1) {\n if (!tree._listeners) {\n tree._listeners = listener;\n } else {\n if (typeof tree._listeners === 'function') {\n tree._listeners = [tree._listeners];\n }\n\n if (prepend) {\n tree._listeners.unshift(listener);\n } else {\n tree._listeners.push(listener);\n }\n\n if (\n !tree._listeners.warned &&\n this._maxListeners > 0 &&\n tree._listeners.length > this._maxListeners\n ) {\n tree._listeners.warned = true;\n logPossibleMemoryLeak.call(this, tree._listeners.length, name);\n }\n }\n return true;\n }\n }\n\n return true;\n }\n\n function collectTreeEvents(tree, events, root, asArray){\n var branches= ownKeys(tree);\n var i= branches.length;\n var branch, branchName, path;\n var hasListeners= tree['_listeners'];\n var isArrayPath;\n\n while(i-->0){\n branchName= branches[i];\n\n branch= tree[branchName];\n\n if(branchName==='_listeners'){\n path= root;\n }else {\n path = root ? root.concat(branchName) : [branchName];\n }\n\n isArrayPath= asArray || typeof branchName==='symbol';\n\n hasListeners && events.push(isArrayPath? path : path.join(this.delimiter));\n\n if(typeof branch==='object'){\n collectTreeEvents.call(this, branch, events, path, isArrayPath);\n }\n }\n\n return events;\n }\n\n function recursivelyGarbageCollect(root) {\n var keys = ownKeys(root);\n var i= keys.length;\n var obj, key, flag;\n while(i-->0){\n key = keys[i];\n obj = root[key];\n\n if(obj){\n flag= true;\n if(key !== '_listeners' && !recursivelyGarbageCollect(obj)){\n delete root[key];\n }\n }\n }\n\n return flag;\n }\n\n function Listener(emitter, event, listener){\n this.emitter= emitter;\n this.event= event;\n this.listener= listener;\n }\n\n Listener.prototype.off= function(){\n this.emitter.off(this.event, this.listener);\n return this;\n };\n\n function setupListener(event, listener, options){\n if (options === true) {\n promisify = true;\n } else if (options === false) {\n async = true;\n } else {\n if (!options || typeof options !== 'object') {\n throw TypeError('options should be an object or true');\n }\n var async = options.async;\n var promisify = options.promisify;\n var nextTick = options.nextTick;\n var objectify = options.objectify;\n }\n\n if (async || nextTick || promisify) {\n var _listener = listener;\n var _origin = listener._origin || listener;\n\n if (nextTick && !nextTickSupported) {\n throw Error('process.nextTick is not supported');\n }\n\n if (promisify === undefined) {\n promisify = listener.constructor.name === 'AsyncFunction';\n }\n\n listener = function () {\n var args = arguments;\n var context = this;\n var event = this.event;\n\n return promisify ? (nextTick ? Promise.resolve() : new Promise(function (resolve) {\n _setImmediate(resolve);\n }).then(function () {\n context.event = event;\n return _listener.apply(context, args)\n })) : (nextTick ? process.nextTick : _setImmediate)(function () {\n context.event = event;\n _listener.apply(context, args)\n });\n };\n\n listener._async = true;\n listener._origin = _origin;\n }\n\n return [listener, objectify? new Listener(this, event, listener): this];\n }\n\n function EventEmitter(conf) {\n this._events = {};\n this._newListener = false;\n this._removeListener = false;\n this.verboseMemoryLeak = false;\n configure.call(this, conf);\n }\n\n EventEmitter.EventEmitter2 = EventEmitter; // backwards compatibility for exporting EventEmitter property\n\n EventEmitter.prototype.listenTo= function(target, events, options){\n if(typeof target!=='object'){\n throw TypeError('target musts be an object');\n }\n\n var emitter= this;\n\n options = resolveOptions(options, {\n on: undefined,\n off: undefined,\n reducers: undefined\n }, {\n on: functionReducer,\n off: functionReducer,\n reducers: objectFunctionReducer\n });\n\n function listen(events){\n if(typeof events!=='object'){\n throw TypeError('events must be an object');\n }\n\n var reducers= options.reducers;\n var index= findTargetIndex.call(emitter, target);\n var observer;\n\n if(index===-1){\n observer= new TargetObserver(emitter, target, options);\n }else{\n observer= emitter._observers[index];\n }\n\n var keys= ownKeys(events);\n var len= keys.length;\n var event;\n var isSingleReducer= typeof reducers==='function';\n\n for(var i=0; i<len; i++){\n event= keys[i];\n observer.subscribe(\n event,\n events[event] || event,\n isSingleReducer ? reducers : reducers && reducers[event]\n );\n }\n }\n\n isArray(events)?\n listen(toObject(events)) :\n (typeof events==='string'? listen(toObject(events.split(/\\s+/))): listen(events));\n\n return this;\n };\n\n EventEmitter.prototype.stopListeningTo = function (target, event) {\n var observers = this._observers;\n\n if(!observers){\n return false;\n }\n\n var i = observers.length;\n var observer;\n var matched= false;\n\n if(target && typeof target!=='object'){\n throw TypeError('target should be an object');\n }\n\n while (i-- > 0) {\n observer = observers[i];\n if (!target || observer._target === target) {\n observer.unsubscribe(event);\n matched= true;\n }\n }\n\n return matched;\n };\n\n // By default EventEmitters will print a warning if more than\n // 10 listeners are added to it. This is a useful default which\n // helps finding memory leaks.\n //\n // Obviously not all Emitters should be limited to 10. This function allows\n // that to be increased. Set to zero for unlimited.\n\n EventEmitter.prototype.delimiter = '.';\n\n EventEmitter.prototype.setMaxListeners = function(n) {\n if (n !== undefined) {\n this._maxListeners = n;\n if (!this._conf) this._conf = {};\n this._conf.maxListeners = n;\n }\n };\n\n EventEmitter.prototype.getMaxListeners = function() {\n return this._maxListeners;\n };\n\n EventEmitter.prototype.event = '';\n\n EventEmitter.prototype.once = function(event, fn, options) {\n return this._once(event, fn, false, options);\n };\n\n EventEmitter.prototype.prependOnceListener = function(event, fn, options) {\n return this._once(event, fn, true, options);\n };\n\n EventEmitter.prototype._once = function(event, fn, prepend, options) {\n return this._many(event, 1, fn, prepend, options);\n };\n\n EventEmitter.prototype.many = function(event, ttl, fn, options) {\n return this._many(event, ttl, fn, false, options);\n };\n\n EventEmitter.prototype.prependMany = function(event, ttl, fn, options) {\n return this._many(event, ttl, fn, true, options);\n };\n\n EventEmitter.prototype._many = function(event, ttl, fn, prepend, options) {\n var self = this;\n\n if (typeof fn !== 'function') {\n throw new Error('many only accepts instances of Function');\n }\n\n function listener() {\n if (--ttl === 0) {\n self.off(event, listener);\n }\n return fn.apply(this, arguments);\n }\n\n listener._origin = fn;\n\n return this._on(event, listener, prepend, options);\n };\n\n EventEmitter.prototype.emit = function() {\n if (!this._events && !this._all) {\n return false;\n }\n\n this._events || init.call(this);\n\n var type = arguments[0], ns, wildcard= this.wildcard;\n var args,l,i,j, containsSymbol;\n\n if (type === 'newListener' && !this._newListener) {\n if (!this._events.newListener) {\n return false;\n }\n }\n\n if (wildcard) {\n ns= type;\n if(type!=='newListener' && type!=='removeListener'){\n if (typeof type === 'object') {\n l = type.length;\n if (symbolsSupported) {\n for (i = 0; i < l; i++) {\n if (typeof type[i] === 'symbol') {\n containsSymbol = true;\n break;\n }\n }\n }\n if (!containsSymbol) {\n type = type.join(this.delimiter);\n }\n }\n }\n }\n\n var al = arguments.length;\n var handler;\n\n if (this._all && this._all.length) {\n handler = this._all.slice();\n\n for (i = 0, l = handler.length; i < l; i++) {\n this.event = type;\n switch (al) {\n case 1:\n handler[i].call(this, type);\n break;\n case 2:\n handler[i].call(this, type, arguments[1]);\n break;\n case 3:\n handler[i].call(this, type, arguments[1], arguments[2]);\n break;\n default:\n handler[i].apply(this, arguments);\n }\n }\n }\n\n if (wildcard) {\n handler = [];\n searchListenerTree.call(this, handler, ns, this.listenerTree, 0, l);\n } else {\n handler = this._events[type];\n if (typeof handler === 'function') {\n this.event = type;\n switch (al) {\n case 1:\n handler.call(this);\n break;\n case 2:\n handler.call(this, arguments[1]);\n break;\n case 3:\n handler.call(this, arguments[1], arguments[2]);\n break;\n default:\n args = new Array(al - 1);\n for (j = 1; j < al; j++) args[j - 1] = arguments[j];\n handler.apply(this, args);\n }\n return true;\n } else if (handler) {\n // need to make copy of handlers because list can change in the middle\n // of emit call\n handler = handler.slice();\n }\n }\n\n if (handler && handler.length) {\n if (al > 3) {\n args = new Array(al - 1);\n for (j = 1; j < al; j++) args[j - 1] = arguments[j];\n }\n for (i = 0, l = handler.length; i < l; i++) {\n this.event = type;\n switch (al) {\n case 1:\n handler[i].call(this);\n break;\n case 2:\n handler[i].call(this, arguments[1]);\n break;\n case 3:\n handler[i].call(this, arguments[1], arguments[2]);\n break;\n default:\n handler[i].apply(this, args);\n }\n }\n return true;\n } else if (!this.ignoreErrors && !this._all && type === 'error') {\n if (arguments[1] instanceof Error) {\n throw arguments[1]; // Unhandled 'error' event\n } else {\n throw new Error(\"Uncaught, unspecified 'error' event.\");\n }\n }\n\n return !!this._all;\n };\n\n EventEmitter.prototype.emitAsync = function() {\n if (!this._events && !this._all) {\n return false;\n }\n\n this._events || init.call(this);\n\n var type = arguments[0], wildcard= this.wildcard, ns, containsSymbol;\n var args,l,i,j;\n\n if (type === 'newListener' && !this._newListener) {\n if (!this._events.newListener) { return Promise.resolve([false]); }\n }\n\n if (wildcard) {\n ns= type;\n if(type!=='newListener' && type!=='removeListener'){\n if (typeof type === 'object') {\n l = type.length;\n if (symbolsSupported) {\n for (i = 0; i < l; i++) {\n if (typeof type[i] === 'symbol') {\n containsSymbol = true;\n break;\n }\n }\n }\n if (!containsSymbol) {\n type = type.join(this.delimiter);\n }\n }\n }\n }\n\n var promises= [];\n\n var al = arguments.length;\n var handler;\n\n if (this._all) {\n for (i = 0, l = this._all.length; i < l; i++) {\n this.event = type;\n switch (al) {\n case 1:\n promises.push(this._all[i].call(this, type));\n break;\n case 2:\n promises.push(this._all[i].call(this, type, arguments[1]));\n break;\n case 3:\n promises.push(this._all[i].call(this, type, arguments[1], arguments[2]));\n break;\n default:\n promises.push(this._all[i].apply(this, arguments));\n }\n }\n }\n\n if (wildcard) {\n handler = [];\n searchListenerTree.call(this, handler, ns, this.listenerTree, 0);\n } else {\n handler = this._events[type];\n }\n\n if (typeof handler === 'function') {\n this.event = type;\n switch (al) {\n case 1:\n promises.push(handler.call(this));\n break;\n case 2:\n promises.push(handler.call(this, arguments[1]));\n break;\n case 3:\n promises.push(handler.call(this, arguments[1], arguments[2]));\n break;\n default:\n args = new Array(al - 1);\n for (j = 1; j < al; j++) args[j - 1] = arguments[j];\n promises.push(handler.apply(this, args));\n }\n } else if (handler && handler.length) {\n handler = handler.slice();\n if (al > 3) {\n args = new Array(al - 1);\n for (j = 1; j < al; j++) args[j - 1] = arguments[j];\n }\n for (i = 0, l = handler.length; i < l; i++) {\n this.event = type;\n switch (al) {\n case 1:\n promises.push(handler[i].call(this));\n break;\n case 2:\n promises.push(handler[i].call(this, arguments[1]));\n break;\n case 3:\n promises.push(handler[i].call(this, arguments[1], arguments[2]));\n break;\n default:\n promises.push(handler[i].apply(this, args));\n }\n }\n } else if (!this.ignoreErrors && !this._all && type === 'error') {\n if (arguments[1] instanceof Error) {\n return Promise.reject(arguments[1]); // Unhandled 'error' event\n } else {\n return Promise.reject(\"Uncaught, unspecified 'error' event.\");\n }\n }\n\n return Promise.all(promises);\n };\n\n EventEmitter.prototype.on = function(type, listener, options) {\n return this._on(type, listener, false, options);\n };\n\n EventEmitter.prototype.prependListener = function(type, listener, options) {\n return this._on(type, listener, true, options);\n };\n\n EventEmitter.prototype.onAny = function(fn) {\n return this._onAny(fn, false);\n };\n\n EventEmitter.prototype.prependAny = function(fn) {\n return this._onAny(fn, true);\n };\n\n EventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n EventEmitter.prototype._onAny = function(fn, prepend){\n if (typeof fn !== 'function') {\n throw new Error('onAny only accepts instances of Function');\n }\n\n if (!this._all) {\n this._all = [];\n }\n\n // Add the function to the event listener collection.\n if(prepend){\n this._all.unshift(fn);\n }else{\n this._all.push(fn);\n }\n\n return this;\n };\n\n EventEmitter.prototype._on = function(type, listener, prepend, options) {\n if (typeof type === 'function') {\n this._onAny(type, listener);\n return this;\n }\n\n if (typeof listener !== 'function') {\n throw new Error('on only accepts instances of Function');\n }\n this._events || init.call(this);\n\n var returnValue= this, temp;\n\n if (options !== undefined) {\n temp = setupListener.call(this, type, listener, options);\n listener = temp[0];\n returnValue = temp[1];\n }\n\n // To avoid recursion in the case that type == \"newListeners\"! Before\n // adding it to the listeners, first emit \"newListeners\".\n if (this._newListener) {\n this.emit('newListener', type, listener);\n }\n\n if (this.wildcard) {\n growListenerTree.call(this, type, listener, prepend);\n return returnValue;\n }\n\n if (!this._events[type]) {\n // Optimize the case of one listener. Don't need the extra array object.\n this._events[type] = listener;\n } else {\n if (typeof this._events[type] === 'function') {\n // Change to array.\n this._events[type] = [this._events[type]];\n }\n\n // If we've already got an array, just add\n if(prepend){\n this._events[type].unshift(listener);\n }else{\n this._events[type].push(listener);\n }\n\n // Check for listener leak\n if (\n !this._events[type].warned &&\n this._maxListeners > 0 &&\n this._events[type].length > this._maxListeners\n ) {\n this._events[type].warned = true;\n logPossibleMemoryLeak.call(this, this._events[type].length, type);\n }\n }\n\n return returnValue;\n };\n\n EventEmitter.prototype.off = function(type, listener) {\n if (typeof listener !== 'function') {\n throw new Error('removeListener only takes instances of Function');\n }\n\n var handlers,leafs=[];\n\n if(this.wildcard) {\n var ns = typeof type === 'string' ? type.split(this.delimiter) : type.slice();\n leafs = searchListenerTree.call(this, null, ns, this.listenerTree, 0);\n if(!leafs) return this;\n } else {\n // does not use listeners(), so no side effect of creating _events[type]\n if (!this._events[type]) return this;\n handlers = this._events[type];\n leafs.push({_listeners:handlers});\n }\n\n for (var iLeaf=0; iLeaf<leafs.length; iLeaf++) {\n var leaf = leafs[iLeaf];\n handlers = leaf._listeners;\n if (isArray(handlers)) {\n\n var position = -1;\n\n for (var i = 0, length = handlers.length; i < length; i++) {\n if (handlers[i] === listener ||\n (handlers[i].listener && handlers[i].listener === listener) ||\n (handlers[i]._origin && handlers[i]._origin === listener)) {\n position = i;\n break;\n }\n }\n\n if (position < 0) {\n continue;\n }\n\n if(this.wildcard) {\n leaf._listeners.splice(position, 1);\n }\n else {\n this._events[type].splice(position, 1);\n }\n\n if (handlers.length === 0) {\n if(this.wildcard) {\n delete leaf._listeners;\n }\n else {\n delete this._events[type];\n }\n }\n if (this._removeListener)\n this.emit(\"removeListener\", type, listener);\n\n return this;\n }\n else if (handlers === listener ||\n (handlers.listener && handlers.listener === listener) ||\n (handlers._origin && handlers._origin === listener)) {\n if(this.wildcard) {\n delete leaf._listeners;\n }\n else {\n delete this._events[type];\n }\n if (this._removeListener)\n this.emit(\"removeListener\", type, listener);\n }\n }\n\n this.listenerTree && recursivelyGarbageCollect(this.listenerTree);\n\n return this;\n };\n\n EventEmitter.prototype.offAny = function(fn) {\n var i = 0, l = 0, fns;\n if (fn && this._all && this._all.length > 0) {\n fns = this._all;\n for(i = 0, l = fns.length; i < l; i++) {\n if(fn === fns[i]) {\n fns.splice(i, 1);\n if (this._removeListener)\n this.emit(\"removeListenerAny\", fn);\n return this;\n }\n }\n } else {\n fns = this._all;\n if (this._removeListener) {\n for(i = 0, l = fns.length; i < l; i++)\n this.emit(\"removeListenerAny\", fns[i]);\n }\n this._all = [];\n }\n return this;\n };\n\n EventEmitter.prototype.removeListener = EventEmitter.prototype.off;\n\n EventEmitter.prototype.removeAllListeners = function (type) {\n if (type === undefined) {\n !this._events || init.call(this);\n return this;\n }\n\n if (this.wildcard) {\n var leafs = searchListenerTree.call(this, null, type, this.listenerTree, 0), leaf, i;\n if (!leafs) return this;\n for (i = 0; i < leafs.length; i++) {\n leaf = leafs[i];\n leaf._listeners = null;\n }\n this.listenerTree && recursivelyGarbageCollect(this.listenerTree);\n } else if (this._events) {\n this._events[type] = null;\n }\n return this;\n };\n\n EventEmitter.prototype.listeners = function (type) {\n var _events = this._events;\n var keys, listeners, allListeners;\n var i;\n var listenerTree;\n\n if (type === undefined) {\n if (this.wildcard) {\n throw Error('event name required for wildcard emitter');\n }\n\n if (!_events) {\n return [];\n }\n\n keys = ownKeys(_events);\n i = keys.length;\n allListeners = [];\n while (i-- > 0) {\n listeners = _events[keys[i]];\n if (typeof listeners === 'function') {\n allListeners.push(listeners);\n } else {\n allListeners.push.apply(allListeners, listeners);\n }\n }\n return allListeners;\n } else {\n if (this.wildcard) {\n listenerTree= this.listenerTree;\n if(!listenerTree) return [];\n var handlers = [];\n var ns = typeof type === 'string' ? type.split(this.delimiter) : type.slice();\n searchListenerTree.call(this, handlers, ns, listenerTree, 0);\n return handlers;\n }\n\n if (!_events) {\n return [];\n }\n\n listeners = _events[type];\n\n if (!listeners) {\n return [];\n }\n return typeof listeners === 'function' ? [listeners] : listeners;\n }\n };\n\n EventEmitter.prototype.eventNames = function(nsAsArray){\n var _events= this._events;\n return this.wildcard? collectTreeEvents.call(this, this.listenerTree, [], null, nsAsArray) : (_events? ownKeys(_events) : []);\n };\n\n EventEmitter.prototype.listenerCount = function(type) {\n return this.listeners(type).length;\n };\n\n EventEmitter.prototype.hasListeners = function (type) {\n if (this.wildcard) {\n var handlers = [];\n var ns = typeof type === 'string' ? type.split(this.delimiter) : type.slice();\n searchListenerTree.call(this, handlers, ns, this.listenerTree, 0);\n return handlers.length > 0;\n }\n\n var _events = this._events;\n var _all = this._all;\n\n return !!(_all && _all.length || _events && (type === undefined ? ownKeys(_events).length : _events[type]));\n };\n\n EventEmitter.prototype.listenersAny = function() {\n\n if(this._all) {\n return this._all;\n }\n else {\n return [];\n }\n\n };\n\n EventEmitter.prototype.waitFor = function (event, options) {\n var self = this;\n var type = typeof options;\n if (type === 'number') {\n options = {timeout: options};\n } else if (type === 'function') {\n options = {filter: options};\n }\n\n options= resolveOptions(options, {\n timeout: 0,\n filter: undefined,\n handleError: false,\n Promise: Promise,\n overload: false\n }, {\n filter: functionReducer,\n Promise: constructorReducer\n });\n\n return makeCancelablePromise(options.Promise, function (resolve, reject, onCancel) {\n function listener() {\n var filter= options.filter;\n if (filter && !filter.apply(self, arguments)) {\n return;\n }\n self.off(event, listener);\n if (options.handleError) {\n var err = arguments[0];\n err ? reject(err) : resolve(toArray.apply(null, arguments).slice(1));\n } else {\n resolve(toArray.apply(null, arguments));\n }\n }\n\n onCancel(function(){\n self.off(event, listener);\n });\n\n self._on(event, listener, false);\n }, {\n timeout: options.timeout,\n overload: options.overload\n })\n };\n\n function once(emitter, name, options) {\n options= resolveOptions(options, {\n Promise: Promise,\n timeout: 0,\n overload: false\n }, {\n Promise: constructorReducer\n });\n\n var _Promise= options.Promise;\n\n return makeCancelablePromise(_Promise, function(resolve, reject, onCancel){\n var handler;\n if (typeof emitter.addEventListener === 'function') {\n handler= function () {\n resolve(toArray.apply(null, arguments));\n };\n\n onCancel(function(){\n emitter.removeEventListener(name, handler);\n });\n\n emitter.addEventListener(\n name,\n handler,\n {once: true}\n );\n return;\n }\n\n var eventListener = function(){\n errorListener && emitter.removeListener('error', errorListener);\n resolve(toArray.apply(null, arguments));\n };\n\n var errorListener;\n\n if (name !== 'error') {\n errorListener = function (err){\n emitter.removeListener(name, eventListener);\n reject(err);\n };\n\n emitter.once('error', errorListener);\n }\n\n onCancel(function(){\n errorListener && emitter.removeListener('error', errorListener);\n emitter.removeListener(name, eventListener);\n });\n\n emitter.once(name, eventListener);\n }, {\n timeout: options.timeout,\n overload: options.overload\n });\n }\n\n var prototype= EventEmitter.prototype;\n\n Object.defineProperties(EventEmitter, {\n defaultMaxListeners: {\n get: function () {\n return prototype._maxListeners;\n },\n set: function (n) {\n if (typeof n !== 'number' || n < 0 || Number.isNaN(n)) {\n throw TypeError('n must be a non-negative number')\n }\n prototype._maxListeners = n;\n },\n enumerable: true\n },\n once: {\n value: once,\n writable: true,\n configurable: true\n }\n });\n\n Object.defineProperties(prototype, {\n _maxListeners: {\n value: defaultMaxListeners,\n writable: true,\n configurable: true\n },\n _observers: {value: null, writable: true, configurable: true}\n });\n\n if (typeof define === 'function' && define.amd) {\n // AMD. Register as an anonymous module.\n define(function() {\n return EventEmitter;\n });\n } else if (typeof exports === 'object') {\n // CommonJS\n module.exports = EventEmitter;\n }\n else {\n // global for any kind of environment.\n var _global= new Function('','return this')();\n _global.EventEmitter2 = EventEmitter;\n }\n}();\n","module.exports = __WEBPACK_EXTERNAL_MODULE__414__;","module.exports = __WEBPACK_EXTERNAL_MODULE__546__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import {Store} from \"@tsed/core\";\n\nimport {EventEmitterStore} from \"../interfaces/EventEmitterStore.js\";\n\nexport function OnAny(): MethodDecorator {\n return (target: any, propertyKey: string) => {\n const store: EventEmitterStore = {\n onAny: {\n [propertyKey]: {}\n }\n };\n\n Store.from(target).merge(\"eventEmitter\", store);\n };\n}\n","import {Store} from \"@tsed/core\";\nimport {event, eventNS, OnOptions} from \"eventemitter2\";\n\nimport {EventEmitterStore} from \"../interfaces/EventEmitterStore.js\";\n\nexport function OnEvent(event: event | eventNS, options?: boolean | OnOptions): MethodDecorator {\n return (target: any, propertyKey: string) => {\n const store: EventEmitterStore = {\n onEvent: {\n [propertyKey]: {event, options}\n }\n };\n\n Store.from(target).merge(\"eventEmitter\", store);\n };\n}\n","/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n","import {Configuration, registerProvider} from \"@tsed/di\";\nimport type {ConstructorOptions} from \"eventemitter2\";\nimport eventEmitter2 from \"eventemitter2\";\n\nexport const EventEmitterService = eventEmitter2.EventEmitter2;\nexport type EventEmitterService = eventEmitter2.EventEmitter2;\n\nregisterProvider({\n token: eventEmitter2.EventEmitter2,\n deps: [Configuration],\n useFactory(settings: Configuration) {\n const opts = settings.get<ConstructorOptions & {enabled: boolean}>(\"eventEmitter\", {enabled: false});\n return opts.enabled ? new eventEmitter2.EventEmitter2(opts) : {};\n }\n});\n","import {Constant, Inject, InjectorService, LOGGER, Module, Provider} from \"@tsed/di\";\nimport type {ListenerFn} from \"eventemitter2\";\n\nimport {EventEmitterStore} from \"./interfaces/EventEmitterStore.js\";\nimport {EventEmitterService} from \"./services/EventEmitterFactory.js\";\n\n@Module()\nexport class EventEmitterModule {\n @Inject(LOGGER)\n protected logger: LOGGER;\n\n @Inject()\n protected injector: InjectorService;\n\n @Inject()\n protected eventEmitter: EventEmitterService;\n\n @Constant(\"eventEmitter.disableSummary\", false)\n private disableSummary: boolean;\n\n @Constant(\"eventEmitter.enabled\", false)\n private loadEventEmitter: boolean;\n\n $onInit() {\n if (this.loadEventEmitter) {\n const providers = this.injector.getProviders();\n providers.forEach((provider) => this.bindEventListeners(provider));\n }\n }\n\n $onReady() {\n if (this.loadEventEmitter) {\n if (!this.disableSummary) {\n this.printEvents();\n }\n this.logger.info(\"EventEmitter listening...\");\n } else {\n this.logger.info(\"EventEmitter disabled...\");\n }\n }\n\n public printEvents() {\n const list = this.eventEmitter.eventNames().map((eventName) => {\n const listenerCount = this.eventEmitter.listenerCount(eventName).toString();\n\n return {\n eventName,\n listenerCount\n };\n });\n\n this.logger.info(\"EventEmitter events mounted:\");\n\n const str = this.logger.drawTable(list, {\n padding: 1,\n header: {\n eventName: \"Event name\",\n listenerCount: \"Number of listener\"\n }\n });\n\n this.logger.info(\"\\n\" + str.trim());\n }\n\n private bindEventListeners(provider: Provider<any>) {\n this.bindOn(provider);\n this.bindOnAny(provider);\n }\n\n private getListener(provider: Provider<any>, propertyKey: string) {\n const instance = this.injector.get(provider.token);\n return instance[propertyKey].bind(instance) as ListenerFn;\n }\n\n private bindOn(provider: Provider) {\n const store = provider.store.get<EventEmitterStore | undefined>(\"eventEmitter\");\n\n Object.entries(store?.onEvent || {}).forEach(([propertyKey, {event, options}]) => {\n const listenerFn = this.getListener(provider, propertyKey);\n\n this.eventEmitter.on(event, listenerFn, options);\n });\n }\n\n private bindOnAny(provider: Provider) {\n const store = provider.store.get<EventEmitterStore | undefined>(\"eventEmitter\");\n\n Object.keys(store?.onAny || {}).forEach((propertyKey) => {\n const listenerFn = this.getListener(provider, propertyKey);\n\n this.eventEmitter.onAny(listenerFn);\n });\n }\n}\n"],"names":["root","factory","exports","module","require","define","amd","self","__WEBPACK_EXTERNAL_MODULE__414__","__WEBPACK_EXTERNAL_MODULE__546__","undefined","hasOwnProperty","Object","isArray","Array","obj","prototype","toString","call","nextTickSupported","process","nextTick","symbolsSupported","Symbol","reflectSupported","Reflect","_setImmediate","setImmediate","setTimeout","ownKeys","arr","getOwnPropertyNames","push","apply","getOwnPropertySymbols","keys","init","this","_events","_conf","configure","conf","delimiter","maxListeners","_maxListeners","wildcard","newListener","_newListener","removeListener","_removeListener","verboseMemoryLeak","ignoreErrors","listenerTree","logPossibleMemoryLeak","count","eventName","errorMsg","emitWarning","e","Error","name","emitter","console","error","trace","toArray","a","b","c","n","arguments","length","toObject","values","len","valuesCount","i","TargetObserver","target","options","on","off","_emitter","_target","_listeners","_listenersCount","addEventListener","removeEventListener","addListener","TypeError","_on","_off","_observers","resolveOptions","schema","reducers","allowUnknown","computedOptions","assign","option","value","reducer","reject","reason","constructorReducer","makeTypeReducer","types","message","join","firstType","secondType","v","kind","subscribe","event","localEvent","observer","listeners","handler","args","eventObj","data","original","emit","concat","_onNewListener","_event","_onRemoveListener","hasListeners","unsubscribe","events","clearRefs","index","findTargetIndex","splice","functionReducer","objectFunctionReducer","makeCancelablePromise","Promise","executor","isCancelable","callbacks","subscriptionClosed","timer","promise","resolve","onCancel","cleanup","clearTimeout","timeout","overload","Number","isFinite","cancel","_resolve","_reject","err","cb","code","observers","searchListenerTree","handlers","type","tree","typeLength","ns","l","j","dl","indexOf","slice","branch","xTree","xxTree","isolatedBranch","endReached","branches","currentType","nextType","growListenerTree","listener","prepend","unshift","warned","collectTreeEvents","asArray","branchName","path","isArrayPath","recursivelyGarbageCollect","key","flag","Listener","setupListener","promisify","async","objectify","_listener","_origin","constructor","context","then","_async","EventEmitter","EventEmitter2","listenTo","listen","isSingleReducer","split","stopListeningTo","matched","setMaxListeners","getMaxListeners","once","fn","_once","prependOnceListener","_many","many","ttl","prependMany","_all","containsSymbol","al","emitAsync","promises","all","prependListener","onAny","_onAny","prependAny","temp","returnValue","leafs","iLeaf","leaf","position","offAny","fns","removeAllListeners","allListeners","eventNames","nsAsArray","listenerCount","listenersAny","waitFor","filter","handleError","defineProperties","defaultMaxListeners","get","set","isNaN","enumerable","errorListener","eventListener","writable","configurable","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getter","__esModule","d","definition","o","defineProperty","prop","r","toStringTag","OnAny","propertyKey","store","Store","from","merge","OnEvent","onEvent","__decorate","decorators","desc","getOwnPropertyDescriptor","decorate","__metadata","metadataKey","metadataValue","metadata","create","SuppressedError","EventEmitterService","registerProvider","token","deps","Configuration","useFactory","settings","opts","enabled","EventEmitterModule","$onInit","loadEventEmitter","injector","getProviders","forEach","provider","bindEventListeners","$onReady","disableSummary","printEvents","logger","info","list","eventEmitter","map","str","drawTable","padding","header","trim","bindOn","bindOnAny","getListener","instance","bind","entries","listenerFn","Inject","LOGGER","InjectorService","Constant","Module"],"sourceRoot":""}
@@ -1,8 +0,0 @@
1
- module.exports = require("@tsed/webpack-config").create({
2
- root: __dirname,
3
- name: "event-emitter",
4
- entry: {
5
- main: "./src/index.ts"
6
- },
7
- externals: ["@tsed/core", "@tsed/schema", "@tsed/di"]
8
- });