New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@pubkeeper/client

Package Overview
Dependencies
Maintainers
2
Versions
35
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@pubkeeper/client - npm Package Compare versions

Comparing version 4.0.0-rc.0 to 4.0.0-rc.1

__test__/client_protocol.test.ts

2

dist/index.js

@@ -1,2 +0,2 @@

module.exports=function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=16)}([function(e,t){e.exports=require("@babel/runtime/helpers/assertThisInitialized")},function(e,t){e.exports=require("@babel/runtime/helpers/defineProperty")},function(e,t){e.exports=require("@babel/runtime/helpers/classCallCheck")},function(e,t){e.exports=require("@babel/runtime/helpers/createClass")},function(e,t){e.exports=require("@babel/runtime/helpers/slicedToArray")},function(e,t){e.exports=require("@babel/runtime/helpers/toConsumableArray")},function(e,t){e.exports=require("@babel/runtime/helpers/objectSpread")},function(e,t){e.exports=require("@pubkeeper/crypto-none")},function(e,t){e.exports=require("@babel/runtime/helpers/typeof")},function(e,t){e.exports=require("@babel/runtime/helpers/objectWithoutProperties")},function(e,t){e.exports=require("@babel/runtime/helpers/possibleConstructorReturn")},function(e,t){e.exports=require("@babel/runtime/helpers/getPrototypeOf")},function(e,t){e.exports=require("@babel/runtime/helpers/inherits")},function(e,t){e.exports=require("eventemitter3")},function(e,t){e.exports=require("debug")},function(e,t){e.exports=require("@pubkeeper/default-cipher-helpers")},function(e,t,r){"use strict";r.r(t);var n=r(4),o=r.n(n),i=r(6),a=r.n(i),c=r(9),l=r.n(c),u=r(2),s=r.n(u),f=r(3),p=r.n(f),h=r(10),v=r.n(h),y=r(11),d=r.n(y),b=r(12),m=r.n(b),w=r(0),g=r.n(w),k=r(1),E=r.n(k),S=r(5),x=r.n(S),M=r(13),A=r.n(M),C=r(14),P=r.n(C),q=function(e,t,r){return Math.max(e,Math.min(t,r))},O=r(7),T=r(15),L=new Map([Object(T.setDefault)(O.PubkeeperNoneCrypto),O.PubkeeperNoneCrypto]),j="connecting",N="connected",D="reconnecting",B="disconnected",R="dead",W=r(8),_=r.n(W);function z(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.options,n=void 0===r?{}:r,i=t.callback,c=void 0===i?void 0:i;if(0===e.length)return[n,c];if(1===e.length){var l=o()(e,1)[0];return"function"==typeof l?[n,l]:"object"===_()(l)?[a()({},n,l),c]:[n,c]}var u=e.slice(0,2),s=o()(u,2),f=s[0],p=s[1];return"object"!==_()(f)?[n,c]:"function"!=typeof p?[n,c]:[a()({},n,f),p]}var I=Symbol("fallbackImplementation");function G(e,t){var r="".concat(e?"DEPRECATED":"OBSOLETE",": ").concat(t);if(!e)throw new Error(r);console.error(r)}function J(e,t){return G(!!this[I],e),this[I]?this[I][t]:void 0}function F(e,t){var r;G(!!this[I],e);for(var n=arguments.length,o=new Array(n>2?n-2:0),i=2;i<n;i++)o[i-2]=arguments[i];return this[I]?(r=this[I])[t].apply(r,o):void 0}var H="use 'matcher' callback to obtain a actual brewer implementation instead",K=function(){function e(){s()(this,e),E()(this,I,void 0)}return p()(e,[{key:"brew",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,H,"brew"].concat(t))}},{key:"brewText",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,H,"brewText"].concat(t))}},{key:"brewJSON",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,H,"brewJSON"].concat(t))}},{key:"on",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,H,"on"].concat(t))}},{key:"addEventListener",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,H,"addEventListener"].concat(t))}},{key:"off",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,H,"off"].concat(t))}},{key:"removeListener",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,H,"removeListener"].concat(t))}},{key:"once",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,H,"once"].concat(t))}},{key:"id",get:function(){return J.call(this,H,"id")}},{key:"brews",get:function(){return J.call(this,H,"brews")}},{key:"topic",get:function(){return J.call(this,H,"topic")}},{key:"size",get:function(){return J.call(this,H,"size")}},{key:"isMatched",get:function(){return J.call(this,H,"isMatched")}},{key:"config",get:function(){return J.call(this,H,"config")}}]),e}(),Q="use 'matcher' callback to obtain a actual patron implementation instead",U=function(){function e(){s()(this,e),E()(this,I,void 0)}return p()(e,[{key:"on",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,Q,"on"].concat(t))}},{key:"addEventListener",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,Q,"addEventListener"].concat(t))}},{key:"off",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,Q,"off"].concat(t))}},{key:"removeListener",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,Q,"removeListener"].concat(t))}},{key:"once",value:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return F.call.apply(F,[this,Q,"once"].concat(t))}},{key:"id",get:function(){return J.call(this,Q,"id")}},{key:"brews",get:function(){return J.call(this,Q,"brews")}},{key:"topic",get:function(){return J.call(this,Q,"topic")}},{key:"size",get:function(){return J.call(this,Q,"size")}},{key:"isMatched",get:function(){return J.call(this,Q,"isMatched")}}]),e}(),V=Symbol("protocol"),X=Symbol("protocolConfig"),Y=Symbol("server"),Z=Symbol("protocols"),$=Symbol("wsc"),ee=Symbol("attempt"),te=Symbol("maxRetries"),re=Symbol("maxTimeout"),ne=Symbol("retry"),oe=Symbol("brewers"),ie=Symbol("patrons"),ae=Symbol("status"),ce=Symbol("event:failed"),le=Symbol("event:ready"),ue=Symbol("onClose"),se=Symbol("onOpen"),fe=P()("pk:client:info");function pe(e){this[ae]=e,this.emit("statuschange",{target:this,status:e})}function he(){this[ee]+=1,fe("attempting connection"),pe.call(this,j);var e=x()(this[Z].keys()),t=new this.WebSocket(this[Y],e);t.binaryType="arraybuffer",t.addEventListener("open",this[se]),t.addEventListener("close",this[ue])}var ve=function(e){throw new Error(e)},ye=function(e){function t(e){var r;s()(this,t),r=v()(this,d()(t).call(this)),E()(g()(g()(r)),ee,0),E()(g()(g()(r)),ne,null),E()(g()(g()(r)),ae,B),E()(g()(g()(r)),$,null),E()(g()(g()(r)),oe,new Map),E()(g()(g()(r)),ie,new Map),E()(g()(g()(r)),se,function(e){var t=e.target;pe.call(g()(g()(r)),N),fe("connected"),r.emit("connected"),r[$]=t,r[V]&&(r[V].close(),r[V]=void 0);var n={ready:function(){r[ee]=0,r.emit(le)},fail:function(e,t){e instanceof Error?r.emit("error",e):"string"==typeof e&&r.emit("error",new Error(e)),r.disconnect("number"==typeof e?e:t)},error:function(e){r.emit("error",e)},send:function(){t.send.apply(t,arguments)}};if(r[Z].has(t.protocol)){var o=r[Z].get(t.protocol);r[V]=new o(r[X],n),r[oe].forEach(function(e,t){t[I]=r[V].addBrewer(t,e,!1)}),r[ie].forEach(function(e,t){t[I]=r[V].addPatron(t,e,!1)}),r[$].addEventListener("message",r[V].onMessage),r[V].open()}else r[$].close(4e3,"unacceptable protocol: '".concat(t.protocol,"'"))}),E()(g()(g()(r)),ue,function(e){var t=e.target,n=e.code;if(t.removeEventListener("open",r[se]),t.removeEventListener("close",r[ue]),r[V]&&t.removeEventListener("close",r[V].onMessage),r[$]=null,fe("closed"),r.emit("closed"),1e3===n)return r[ee]=0,pe.call(g()(g()(r)),B),r[V].close(),r[V]=void 0,void r.emit(ce);if(fe("disconnected with unexpected code(%i)",n),r[ee]>r[te])return fe("too many attempts, giving up"),r[ee]=0,pe.call(g()(g()(r)),R),void r.emit(ce);pe.call(g()(g()(r)),D);var o=r[ee]-1,i=Math.pow(2,o),a=Math.floor(q(0,r[re],100*(i+Math.random()*i)));fe("waiting ".concat(a,"ms")),r[ne]=setTimeout(function(){r[ne]=null,he.call(g()(g()(r)))},a)});var n=e.maxRetries,o=void 0===n?1/0:n,i=e.maxTimeout,c=void 0===i?1e4:i,u=e.server,f=void 0===u?ve('"server" key is required in config'):u,p=e.WebSocket,h=void 0===p?WebSocket:p,y=e.protocols,b=void 0===y?new Map:y,m=e.brews,w=void 0===m?[]:m,k=e.crypto,S=void 0===k?new Map:k,M=e.jwt,A=void 0===M?ve('"jwt" key is required in config'):M,C=l()(e,["maxRetries","maxTimeout","server","WebSocket","protocols","brews","crypto","jwt"]);return r.WebSocket=h,r[re]=c,r[te]=o,r[Z]=new Map(x()(b.entries())),r[Y]=f,r[X]=a()({jwt:A,crypto:new Map(x()(L.entries()).concat(x()(S.entries()))),brews:x()(w)},C),r}return m()(t,e),p()(t,[{key:"connect",value:function(){var e=this,t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).wait,r=void 0===t||t;if(null!==this[$]&&this[$].readyState<=1)return this;var n=r?new Promise(function(t,r){e.once(le,function(){e.removeListener(ce,r),t(e)}),e.once(ce,function(){e.removeListener(le,t),r(new Error("unable to connect"))})}):this;return he.call(this),n}},{key:"disconnect",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e3;null!==this[ne]&&(clearTimeout(this[ne]),this[ne]=null),this[V]&&(this[oe].forEach(function(t,r){return e[V].removeBrewer(r)}),this[ie].forEach(function(t,r){return e[V].removePatron(r)})),null!==this[$]&&this[$].close(t)}},{key:"addBrewer",value:function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];var i=z(r),a=o()(i,2),c=a[0],l=a[1],u=new K,s=[e,c,l];return this[oe].set(u,s),this[ae]===N&&(u[I]=this[V].addBrewer(u,s)),u}},{key:"removeBrewer",value:function(e){if(!this[oe].delete(e))throw new Error("brewer wasn't registered");this[ae]===N&&this[V].removeBrewer(e)}},{key:"addPatron",value:function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];var i=z(r),a=o()(i,2),c=a[0],l=a[1],u=new U,s=[e,c,l];return this[ie].set(u,s),this[ae]===N&&(u[I]=this[V].addPatron(u,s)),u}},{key:"removePatron",value:function(e){if(!this[ie].delete(e))throw new Error("patron wasn't registered");this[ae]===N&&this[V].removePatron(e)}},{key:"status",get:function(){return this[ae]}}]),t}(A.a);E()(ye,"CONNECTING",j),E()(ye,"CONNECTED",N),E()(ye,"RECONNECTING",D),E()(ye,"DISCONNECTED",B),E()(ye,"DEAD",R),r.d(t,"PubkeeperClient",function(){return ye})}]);
module.exports=function(t){var e={};function r(o){if(e[o])return e[o].exports;var n=e[o]={i:o,l:!1,exports:{}};return t[o].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=t,r.c=e,r.d=function(t,e,o){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)r.d(o,n,function(e){return t[e]}.bind(null,n));return o},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=0)}([function(t,e,r){"use strict";var o=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});var n=o(r(1));e.PubkeeperClient=n.default},function(t,e,r){"use strict";var o,n=this&&this.__extends||(o=function(t,e){return(o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),i=this&&this.__assign||function(){return(i=Object.assign||function(t){for(var e,r=1,o=arguments.length;r<o;r++)for(var n in e=arguments[r])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}).apply(this,arguments)},s=this&&this.__rest||function(t,e){var r={};for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.indexOf(o)<0&&(r[o]=t[o]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(t);n<o.length;n++)e.indexOf(o[n])<0&&(r[o[n]]=t[o[n]])}return r},u=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var o,n,i=r.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(t){n={error:t}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return s},a=this&&this.__spread||function(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(u(arguments[e]));return t},c=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});var l=c(r(2)),p=c(r(3)),f=c(r(4)),_=r(5),d=r(8),y=c(r(9)),v=Symbol("event:failed"),h=Symbol("event:ready"),b=l.default("pk:client:info"),m=function(t){throw new Error(t)},w=0,E=function(t){function e(e){var r=t.call(this)||this;r._attempt=0,r._retryID=null,r._status=d.Status.DISCONNECTED,r._wsc=null,r._brewers=new Map,r._patrons=new Map,r._onOpen=function(t){var e=t.target;r.setStatus(d.Status.CONNECTED),b("connected"),r.emit("connected"),r._wsc=e,r._protocol&&(r._protocol.close(),r._protocol=void 0);var o={error:function(t){r.emit("error",t)},fail:function(t,e){t instanceof Error?r.emit("error",t):"string"==typeof t&&r.emit("error",new Error(t)),r.disconnect("number"==typeof t?t:e)},ready:function(){r._attempt=0,r.emit(h)},send:function(t){e.send(t)}};if(r._protocols.has(e.protocol)){var n=r._protocols.get(e.protocol);r._protocol=new n(r._protocolConfig,o),r._brewers.forEach(function(t,e){r._protocol.addBrewer(e,t,!1)}),r._patrons.forEach(function(t,e){r._protocol.addPatron(e,t,!1)}),r._wsc.addEventListener("message",r._protocol.onMessage),r._protocol.open()}else r._wsc.close(4e3,"unacceptable protocol: '"+e.protocol+"'")},r._onClose=function(t){var e=t.target,o=t.code;if(e.removeEventListener("open",r._onOpen),e.removeEventListener("close",r._onClose),r._protocol&&e.removeEventListener("close",r._protocol.onMessage),r._wsc=null,b("closed"),r.emit("closed"),1e3===o)return r._attempt=0,r.setStatus(d.Status.DISCONNECTED),r._protocol.close(),r._protocol=void 0,void r.emit(v);if(b("disconnected with unexpected code(%i)",o),r._attempt>r._maxRetries)return b("too many attempts, giving up"),r._attempt=0,r.setStatus(d.Status.DEAD),void r.emit(v);r.setStatus(d.Status.RECONNECTING);var n=r._attempt-1,i=Math.pow(2,n),s=Math.floor(f.default(0,r._maxTimeout,100*(i+Math.random()*i)));b("waiting "+s+"ms"),r._retryID=setTimeout(function(){r._retryID=null,r.tryConnect()},s)};var o=e.maxRetries,n=void 0===o?1/0:o,u=e.maxTimeout,c=void 0===u?1e4:u,l=e.protocols,p=void 0===l?new Map:l,y=e.server,w=void 0===y?m('"server" key is required in config'):y,E=e.WebSocket,O=void 0===E?WebSocket||m('"webSocket" key is required in config'):E,C=e.brews,N=void 0===C?[]:C,S=e.crypto,g=void 0===S?new Map:S,D=e.jwt,T=void 0===D?m('"jwt" key is required in config'):D,j=s(e,["maxRetries","maxTimeout","protocols","server","WebSocket","brews","crypto","jwt"]);return r._webSocket=O,r._maxTimeout=c,r._maxRetries=n,r._protocols=new Map(a(p.entries())),r._server=w,r._protocolConfig=i({brews:a(N),crypto:new Map(a(_.builtinCrypto.entries(),g.entries())),jwt:T},j),r}return n(e,t),Object.defineProperty(e.prototype,"status",{get:function(){return this._status},enumerable:!0,configurable:!0}),e.prototype.connect=function(t){var e=this,r=(void 0===t?{}:t).wait,o=void 0===r||r;if(null!==this._wsc&&this._wsc.readyState<=1)return this;var n=o?new Promise(function(t,r){e.once(h,function(){e.removeListener(v,r),t(e)}),e.once(v,function(){e.removeListener(h,t),r(new Error("unable to connect"))})}):this;return this.tryConnect(),n},e.prototype.disconnect=function(t){var e=this;void 0===t&&(t=1e3),null!==this._retryID&&(clearTimeout(this._retryID),this._retryID=null),this._protocol&&(this._brewers.forEach(function(t,r){return e._protocol.removeBrewer(r)}),this._patrons.forEach(function(t,r){return e._protocol.removePatron(r)})),null!==this._wsc&&this._wsc.close(t)},e.prototype.addBrewer=function(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];var o=function(t){return Symbol("pk.brewer_"+w+++"["+t+"]")}(t),n=u(y.default(e),2),i=[t,n[0],n[1]];return this._brewers.set(o,i),this._status===d.Status.CONNECTED&&this._protocol.addBrewer(o,i),o},e.prototype.removeBrewer=function(t){if(!this._brewers.delete(t))throw new Error("brewer wasn't registered");this._status===d.Status.CONNECTED&&this._protocol.removeBrewer(t)},e.prototype.addPatron=function(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];var o=function(t){return Symbol("pk.patron_"+w+++"["+t+"]")}(t),n=u(y.default(e),2),i=[t,n[0],n[1]];return this._patrons.set(o,i),this._status===d.Status.CONNECTED&&this._protocol.addPatron(o,i),o},e.prototype.removePatron=function(t){if(!this._patrons.delete(t))throw new Error("patron wasn't registered");this._status===d.Status.CONNECTED&&this._protocol.removePatron(t)},e.prototype.setStatus=function(t){this._status=t,this.emit("statuschange",{target:this,status:t})},e.prototype.tryConnect=function(){this._attempt+=1,b("attempting connection"),this.setStatus(d.Status.CONNECTING);var t=a(this._protocols.keys()),e=new this._webSocket(this._server,t);e.binaryType="arraybuffer",e.addEventListener("open",this._onOpen),e.addEventListener("close",this._onClose)},e.CONNECTING=d.Status.CONNECTING,e.CONNECTED=d.Status.CONNECTED,e.RECONNECTING=d.Status.RECONNECTING,e.DISCONNECTED=d.Status.DISCONNECTED,e.DEAD=d.Status.DEAD,e}(p.default);e.default=E},function(t,e){t.exports=require("debug")},function(t,e){t.exports=require("eventemitter3")},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t,e,r){return Math.max(t,Math.min(e,r))}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=r(6),n=r(7);e.builtinCrypto=new Map([n.setDefault(o.PubkeeperNoneCrypto),o.PubkeeperNoneCrypto])},function(t,e){t.exports=require("@pubkeeper/crypto-none")},function(t,e){t.exports=require("@pubkeeper/default-cipher-helpers")},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.CONNECTING="connecting",t.CONNECTED="connected",t.RECONNECTING="reconnecting",t.DISCONNECTED="disconnected",t.DEAD="dead"}(e.Status||(e.Status={}))},function(t,e,r){"use strict";var o=this&&this.__assign||function(){return(o=Object.assign||function(t){for(var e,r=1,o=arguments.length;r<o;r++)for(var n in e=arguments[r])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}).apply(this,arguments)},n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var o,n,i=r.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(o=i.next()).done;)s.push(o.value)}catch(t){n={error:t}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return s};Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t,e){void 0===e&&(e={});var r=e.options,i=void 0===r?{}:r,s=e.callback;if(0===t.length)return[i,s];if(1===t.length){var u=n(t,1)[0];return"function"==typeof u?[i,u]:"object"==typeof u?[o({},i,u),s]:[i,s]}var a=n(t.slice(0,2),2),c=a[0],l=a[1];return"object"!=typeof c?[i,s]:"function"!=typeof l?[i,s]:[o({},i,c),l]}}]);
//# sourceMappingURL=index.js.map

@@ -1,1 +0,1807 @@

!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(window,function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=27)}([function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}},function(e,t){e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t,n){var r=n(16),o=n(17),i=n(18);e.exports=function(e,t){return r(e)||o(e,t)||i()}},function(e,t,n){var r=n(21),o=n(22),i=n(23);e.exports=function(e){return r(e)||o(e)||i()}},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function n(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}e.exports=function(e,t,r){return t&&n(e.prototype,t),r&&n(e,r),e}},function(e,t,n){var r=n(1);e.exports=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),o.forEach(function(t){r(e,t,n[t])})}return e}},function(e,t){function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(t){return"function"==typeof Symbol&&"symbol"===n(Symbol.iterator)?e.exports=r=function(e){return n(e)}:e.exports=r=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":n(e)},r(t)}e.exports=r},function(e,t,n){e.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=1)}([function(e,t){e.exports=n(3)},function(e,t,n){"use strict";n.r(t),n.d(t,"PubkeeperNoneCrypto",function(){return i});var r=n(0),o=n.n(r),i=["NONE",function(){return{get mode(){return"NONE"},get key(){return""},encrypt:function(e){return new Uint8Array(o()(e))},decrypt:function(e){return new Uint8Array(o()(e))}}}]}])},function(e,t,n){var r=n(19);e.exports=function(e,t){if(null==e)return{};var n,o,i=r(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(o=0;o<c.length;o++)n=c[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}},function(e,t,n){var r=n(7),o=n(0);e.exports=function(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?o(e):t}},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},n(t)}e.exports=n},function(e,t,n){var r=n(20);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)}},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty,o="~";function i(){}function c(e,t,n,r,i){if("function"!=typeof n)throw new TypeError("The listener must be a function");var c=new function(e,t,n){this.fn=e,this.context=t,this.once=n||!1}(n,r||e,i),u=o?o+t:t;return e._events[u]?e._events[u].fn?e._events[u]=[e._events[u],c]:e._events[u].push(c):(e._events[u]=c,e._eventsCount++),e}function u(e,t){0==--e._eventsCount?e._events=new i:delete e._events[t]}function s(){this._events=new i,this._eventsCount=0}Object.create&&(i.prototype=Object.create(null),(new i).__proto__||(o=!1)),s.prototype.eventNames=function(){var e,t,n=[];if(0===this._eventsCount)return n;for(t in e=this._events)r.call(e,t)&&n.push(o?t.slice(1):t);return Object.getOwnPropertySymbols?n.concat(Object.getOwnPropertySymbols(e)):n},s.prototype.listeners=function(e){var t=o?o+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var r=0,i=n.length,c=new Array(i);r<i;r++)c[r]=n[r].fn;return c},s.prototype.listenerCount=function(e){var t=o?o+e:e,n=this._events[t];return n?n.fn?1:n.length:0},s.prototype.emit=function(e,t,n,r,i,c){var u=o?o+e:e;if(!this._events[u])return!1;var s,a,l=this._events[u],f=arguments.length;if(l.fn){switch(l.once&&this.removeListener(e,l.fn,void 0,!0),f){case 1:return l.fn.call(l.context),!0;case 2:return l.fn.call(l.context,t),!0;case 3:return l.fn.call(l.context,t,n),!0;case 4:return l.fn.call(l.context,t,n,r),!0;case 5:return l.fn.call(l.context,t,n,r,i),!0;case 6:return l.fn.call(l.context,t,n,r,i,c),!0}for(a=1,s=new Array(f-1);a<f;a++)s[a-1]=arguments[a];l.fn.apply(l.context,s)}else{var p,y=l.length;for(a=0;a<y;a++)switch(l[a].once&&this.removeListener(e,l[a].fn,void 0,!0),f){case 1:l[a].fn.call(l[a].context);break;case 2:l[a].fn.call(l[a].context,t);break;case 3:l[a].fn.call(l[a].context,t,n);break;case 4:l[a].fn.call(l[a].context,t,n,r);break;default:if(!s)for(p=1,s=new Array(f-1);p<f;p++)s[p-1]=arguments[p];l[a].fn.apply(l[a].context,s)}}return!0},s.prototype.on=function(e,t,n){return c(this,e,t,n,!1)},s.prototype.once=function(e,t,n){return c(this,e,t,n,!0)},s.prototype.removeListener=function(e,t,n,r){var i=o?o+e:e;if(!this._events[i])return this;if(!t)return u(this,i),this;var c=this._events[i];if(c.fn)c.fn!==t||r&&!c.once||n&&c.context!==n||u(this,i);else{for(var s=0,a=[],l=c.length;s<l;s++)(c[s].fn!==t||r&&!c[s].once||n&&c[s].context!==n)&&a.push(c[s]);a.length?this._events[i]=1===a.length?a[0]:a:u(this,i)}return this},s.prototype.removeAllListeners=function(e){var t;return e?(t=o?o+e:e,this._events[t]&&u(this,t)):(this._events=new i,this._eventsCount=0),this},s.prototype.off=s.prototype.removeListener,s.prototype.addListener=s.prototype.on,s.prefixed=o,s.EventEmitter=s,e.exports=s},function(e,t,n){(function(r){t.log=function(...e){return"object"==typeof console&&console.log&&console.log(...e)},t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const n="color: "+this.color;t.splice(1,0,n,"color: inherit");let r=0,o=0;t[0].replace(/%[a-zA-Z%]/g,e=>{"%%"!==e&&"%c"===e&&(o=++r)}),t.splice(o,0,n)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){let e;try{e=t.storage.getItem("debug")}catch(e){}!e&&void 0!==r&&"env"in r&&(e=r.env.DEBUG);return e},t.useColors=function(){if("undefined"!=typeof window&&window.process&&("renderer"===window.process.type||window.process.__nwjs))return!0;if("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;return"undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},t.storage=function(){try{return localStorage}catch(e){}}(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],e.exports=n(25)(t);const{formatters:o}=e.exports;o.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}}).call(this,n(24))},function(e,t,n){e.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=1)}([function(e,t){e.exports=n(2)},function(e,t,n){"use strict";n.r(t),n.d(t,"DEFAULT_CIPHER",function(){return i}),n.d(t,"setDefault",function(){return c}),n.d(t,"getDefault",function(){return u});var r=n(0),o=n.n(r),i=Symbol.for("Pubkeeper.defaultCipher");function c(e){var t=o()(e,2)[1];return[i,t]}function u(e){return e.get(i)}}])},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){var n=[],r=!0,o=!1,i=void 0;try{for(var c,u=e[Symbol.iterator]();!(r=(c=u.next()).done)&&(n.push(c.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw i}}return n}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}},function(e,t){function n(t,r){return e.exports=n=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},n(t,r)}e.exports=n},function(e,t){e.exports=function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}},function(e,t){e.exports=function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}},function(e,t){var n,r,o=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function c(){throw new Error("clearTimeout has not been defined")}function u(e){if(n===setTimeout)return setTimeout(e,0);if((n===i||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:i}catch(e){n=i}try{r="function"==typeof clearTimeout?clearTimeout:c}catch(e){r=c}}();var s,a=[],l=!1,f=-1;function p(){l&&s&&(l=!1,s.length?a=s.concat(a):f=-1,a.length&&y())}function y(){if(!l){var e=u(p);l=!0;for(var t=a.length;t;){for(s=a,a=[];++f<t;)s&&s[f].run();f=-1,t=a.length}s=null,l=!1,function(e){if(r===clearTimeout)return clearTimeout(e);if((r===c||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(e);try{r(e)}catch(t){try{return r.call(null,e)}catch(t){return r.call(this,e)}}}(e)}}function h(e,t){this.fun=e,this.array=t}function d(){}o.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];a.push(new h(e,t)),1!==a.length||l||u(y)},h.prototype.run=function(){this.fun.apply(null,this.array)},o.title="browser",o.browser=!0,o.env={},o.argv=[],o.version="",o.versions={},o.on=d,o.addListener=d,o.once=d,o.off=d,o.removeListener=d,o.removeAllListeners=d,o.emit=d,o.prependListener=d,o.prependOnceListener=d,o.listeners=function(e){return[]},o.binding=function(e){throw new Error("process.binding is not supported")},o.cwd=function(){return"/"},o.chdir=function(e){throw new Error("process.chdir is not supported")},o.umask=function(){return 0}},function(e,t,n){e.exports=function(e){function t(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t|=0;return r.colors[Math.abs(t)%r.colors.length]}function r(e){let n;function c(...e){if(!c.enabled)return;const t=c,o=Number(new Date),i=o-(n||o);t.diff=i,t.prev=n,t.curr=o,n=o,e[0]=r.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let u=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,(n,o)=>{if("%%"===n)return n;u++;const i=r.formatters[o];if("function"==typeof i){const r=e[u];n=i.call(t,r),e.splice(u,1),u--}return n}),r.formatArgs.call(t,e),(t.log||r.log).apply(t,e)}return c.namespace=e,c.enabled=r.enabled(e),c.useColors=r.useColors(),c.color=t(e),c.destroy=o,c.extend=i,"function"==typeof r.init&&r.init(c),r.instances.push(c),c}function o(){const e=r.instances.indexOf(this);return-1!==e&&(r.instances.splice(e,1),!0)}function i(e,t){return r(this.namespace+(void 0===t?":":t)+e)}return r.debug=r,r.default=r,r.coerce=function(e){return e instanceof Error?e.stack||e.message:e},r.disable=function(){r.enable("")},r.enable=function(e){let t;r.save(e),r.names=[],r.skips=[];const n=("string"==typeof e?e:"").split(/[\s,]+/),o=n.length;for(t=0;t<o;t++)n[t]&&("-"===(e=n[t].replace(/\*/g,".*?"))[0]?r.skips.push(new RegExp("^"+e.substr(1)+"$")):r.names.push(new RegExp("^"+e+"$")));for(t=0;t<r.instances.length;t++){const e=r.instances[t];e.enabled=r.enabled(e.namespace)}},r.enabled=function(e){if("*"===e[e.length-1])return!0;let t,n;for(t=0,n=r.skips.length;t<n;t++)if(r.skips[t].test(e))return!1;for(t=0,n=r.names.length;t<n;t++)if(r.names[t].test(e))return!0;return!1},r.humanize=n(26),Object.keys(e).forEach(t=>{r[t]=e[t]}),r.instances=[],r.names=[],r.skips=[],r.formatters={},r.selectColor=t,r.enable(r.load()),r}},function(e,t){var n=1e3,r=60*n,o=60*r,i=24*o,c=7*i,u=365.25*i;function s(e,t,n,r){var o=t>=1.5*n;return Math.round(e/n)+" "+r+(o?"s":"")}e.exports=function(e,t){t=t||{};var a=typeof e;if("string"===a&&e.length>0)return function(e){if((e=String(e)).length>100)return;var t=/^((?:\d+)?\-?\d?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(!t)return;var s=parseFloat(t[1]);switch((t[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return s*u;case"weeks":case"week":case"w":return s*c;case"days":case"day":case"d":return s*i;case"hours":case"hour":case"hrs":case"hr":case"h":return s*o;case"minutes":case"minute":case"mins":case"min":case"m":return s*r;case"seconds":case"second":case"secs":case"sec":case"s":return s*n;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}(e);if("number"===a&&!1===isNaN(e))return t.long?function(e){var t=Math.abs(e);if(t>=i)return s(e,t,i,"day");if(t>=o)return s(e,t,o,"hour");if(t>=r)return s(e,t,r,"minute");if(t>=n)return s(e,t,n,"second");return e+" ms"}(e):function(e){var t=Math.abs(e);if(t>=i)return Math.round(e/i)+"d";if(t>=o)return Math.round(e/o)+"h";if(t>=r)return Math.round(e/r)+"m";if(t>=n)return Math.round(e/n)+"s";return e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},function(e,t,n){"use strict";n.r(t);var r=n(2),o=n.n(r),i=n(6),c=n.n(i),u=n(9),s=n.n(u),a=n(4),l=n.n(a),f=n(5),p=n.n(f),y=n(10),h=n.n(y),d=n(11),v=n.n(d),m=n(12),b=n.n(m),g=n(0),w=n.n(g),C=n(1),x=n.n(C),O=n(3),F=n.n(O),k=n(13),S=n.n(k),E=n(14),j=n.n(E),_=function(e,t,n){return Math.max(e,Math.min(t,n))},A=n(8),P=n(15),T=new Map([Object(P.setDefault)(A.PubkeeperNoneCrypto),A.PubkeeperNoneCrypto]),M="connecting",L="connected",N="reconnecting",D="disconnected",I="dead",R=n(7),z=n.n(R);function B(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.options,r=void 0===n?{}:n,i=t.callback,u=void 0===i?void 0:i;if(0===e.length)return[r,u];if(1===e.length){var s=o()(e,1)[0];return"function"==typeof s?[r,s]:"object"===z()(s)?[c()({},r,s),u]:[r,u]}var a=e.slice(0,2),l=o()(a,2),f=l[0],p=l[1];return"object"!==z()(f)?[r,u]:"function"!=typeof p?[r,u]:[c()({},r,f),p]}var W=Symbol("fallbackImplementation");function J(e,t){var n="".concat(e?"DEPRECATED":"OBSOLETE",": ").concat(t);if(!e)throw new Error(n);console.error(n)}function U(e,t){return J(!!this[W],e),this[W]?this[W][t]:void 0}function $(e,t){var n;J(!!this[W],e);for(var r=arguments.length,o=new Array(r>2?r-2:0),i=2;i<r;i++)o[i-2]=arguments[i];return this[W]?(n=this[W])[t].apply(n,o):void 0}var G="use 'matcher' callback to obtain a actual brewer implementation instead",q=function(){function e(){l()(this,e),x()(this,W,void 0)}return p()(e,[{key:"brew",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"brew"].concat(t))}},{key:"brewText",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"brewText"].concat(t))}},{key:"brewJSON",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"brewJSON"].concat(t))}},{key:"on",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"on"].concat(t))}},{key:"addEventListener",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"addEventListener"].concat(t))}},{key:"off",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"off"].concat(t))}},{key:"removeListener",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"removeListener"].concat(t))}},{key:"once",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"once"].concat(t))}},{key:"id",get:function(){return U.call(this,G,"id")}},{key:"brews",get:function(){return U.call(this,G,"brews")}},{key:"topic",get:function(){return U.call(this,G,"topic")}},{key:"size",get:function(){return U.call(this,G,"size")}},{key:"isMatched",get:function(){return U.call(this,G,"isMatched")}},{key:"config",get:function(){return U.call(this,G,"config")}}]),e}(),Z="use 'matcher' callback to obtain a actual patron implementation instead",H=function(){function e(){l()(this,e),x()(this,W,void 0)}return p()(e,[{key:"on",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,Z,"on"].concat(t))}},{key:"addEventListener",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,Z,"addEventListener"].concat(t))}},{key:"off",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,Z,"off"].concat(t))}},{key:"removeListener",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,Z,"removeListener"].concat(t))}},{key:"once",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,Z,"once"].concat(t))}},{key:"id",get:function(){return U.call(this,Z,"id")}},{key:"brews",get:function(){return U.call(this,Z,"brews")}},{key:"topic",get:function(){return U.call(this,Z,"topic")}},{key:"size",get:function(){return U.call(this,Z,"size")}},{key:"isMatched",get:function(){return U.call(this,Z,"isMatched")}}]),e}(),K=Symbol("protocol"),Q=Symbol("protocolConfig"),V=Symbol("server"),X=Symbol("protocols"),Y=Symbol("wsc"),ee=Symbol("attempt"),te=Symbol("maxRetries"),ne=Symbol("maxTimeout"),re=Symbol("retry"),oe=Symbol("brewers"),ie=Symbol("patrons"),ce=Symbol("status"),ue=Symbol("event:failed"),se=Symbol("event:ready"),ae=Symbol("onClose"),le=Symbol("onOpen"),fe=j()("pk:client:info");function pe(e){this[ce]=e,this.emit("statuschange",{target:this,status:e})}function ye(){this[ee]+=1,fe("attempting connection"),pe.call(this,M);var e=F()(this[X].keys()),t=new this.WebSocket(this[V],e);t.binaryType="arraybuffer",t.addEventListener("open",this[le]),t.addEventListener("close",this[ae])}var he=function(e){throw new Error(e)},de=function(e){function t(e){var n;l()(this,t),n=h()(this,v()(t).call(this)),x()(w()(w()(n)),ee,0),x()(w()(w()(n)),re,null),x()(w()(w()(n)),ce,D),x()(w()(w()(n)),Y,null),x()(w()(w()(n)),oe,new Map),x()(w()(w()(n)),ie,new Map),x()(w()(w()(n)),le,function(e){var t=e.target;pe.call(w()(w()(n)),L),fe("connected"),n.emit("connected"),n[Y]=t,n[K]&&(n[K].close(),n[K]=void 0);var r={ready:function(){n[ee]=0,n.emit(se)},fail:function(e,t){e instanceof Error?n.emit("error",e):"string"==typeof e&&n.emit("error",new Error(e)),n.disconnect("number"==typeof e?e:t)},error:function(e){n.emit("error",e)},send:function(){t.send.apply(t,arguments)}};if(n[X].has(t.protocol)){var o=n[X].get(t.protocol);n[K]=new o(n[Q],r),n[oe].forEach(function(e,t){t[W]=n[K].addBrewer(t,e,!1)}),n[ie].forEach(function(e,t){t[W]=n[K].addPatron(t,e,!1)}),n[Y].addEventListener("message",n[K].onMessage),n[K].open()}else n[Y].close(4e3,"unacceptable protocol: '".concat(t.protocol,"'"))}),x()(w()(w()(n)),ae,function(e){var t=e.target,r=e.code;if(t.removeEventListener("open",n[le]),t.removeEventListener("close",n[ae]),n[K]&&t.removeEventListener("close",n[K].onMessage),n[Y]=null,fe("closed"),n.emit("closed"),1e3===r)return n[ee]=0,pe.call(w()(w()(n)),D),n[K].close(),n[K]=void 0,void n.emit(ue);if(fe("disconnected with unexpected code(%i)",r),n[ee]>n[te])return fe("too many attempts, giving up"),n[ee]=0,pe.call(w()(w()(n)),I),void n.emit(ue);pe.call(w()(w()(n)),N);var o=n[ee]-1,i=Math.pow(2,o),c=Math.floor(_(0,n[ne],100*(i+Math.random()*i)));fe("waiting ".concat(c,"ms")),n[re]=setTimeout(function(){n[re]=null,ye.call(w()(w()(n)))},c)});var r=e.maxRetries,o=void 0===r?1/0:r,i=e.maxTimeout,u=void 0===i?1e4:i,a=e.server,f=void 0===a?he('"server" key is required in config'):a,p=e.WebSocket,y=void 0===p?WebSocket:p,d=e.protocols,m=void 0===d?new Map:d,b=e.brews,g=void 0===b?[]:b,C=e.crypto,O=void 0===C?new Map:C,k=e.jwt,S=void 0===k?he('"jwt" key is required in config'):k,E=s()(e,["maxRetries","maxTimeout","server","WebSocket","protocols","brews","crypto","jwt"]);return n.WebSocket=y,n[ne]=u,n[te]=o,n[X]=new Map(F()(m.entries())),n[V]=f,n[Q]=c()({jwt:S,crypto:new Map(F()(T.entries()).concat(F()(O.entries()))),brews:F()(g)},E),n}return b()(t,e),p()(t,[{key:"connect",value:function(){var e=this,t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).wait,n=void 0===t||t;if(null!==this[Y]&&this[Y].readyState<=1)return this;var r=n?new Promise(function(t,n){e.once(se,function(){e.removeListener(ue,n),t(e)}),e.once(ue,function(){e.removeListener(se,t),n(new Error("unable to connect"))})}):this;return ye.call(this),r}},{key:"disconnect",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e3;null!==this[re]&&(clearTimeout(this[re]),this[re]=null),this[K]&&(this[oe].forEach(function(t,n){return e[K].removeBrewer(n)}),this[ie].forEach(function(t,n){return e[K].removePatron(n)})),null!==this[Y]&&this[Y].close(t)}},{key:"addBrewer",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var i=B(n),c=o()(i,2),u=c[0],s=c[1],a=new q,l=[e,u,s];return this[oe].set(a,l),this[ce]===L&&(a[W]=this[K].addBrewer(a,l)),a}},{key:"removeBrewer",value:function(e){if(!this[oe].delete(e))throw new Error("brewer wasn't registered");this[ce]===L&&this[K].removeBrewer(e)}},{key:"addPatron",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var i=B(n),c=o()(i,2),u=c[0],s=c[1],a=new H,l=[e,u,s];return this[ie].set(a,l),this[ce]===L&&(a[W]=this[K].addPatron(a,l)),a}},{key:"removePatron",value:function(e){if(!this[ie].delete(e))throw new Error("patron wasn't registered");this[ce]===L&&this[K].removePatron(e)}},{key:"status",get:function(){return this[ce]}}]),t}(S.a);x()(de,"CONNECTING",M),x()(de,"CONNECTED",L),x()(de,"RECONNECTING",N),x()(de,"DISCONNECTED",D),x()(de,"DEAD",I),n.d(t,"PubkeeperClient",function(){return de})}])});
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else {
var a = factory();
for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
}
})(window, function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = "./index.ts");
/******/ })
/************************************************************************/
/******/ ({
/***/ "./index.ts":
/*!******************!*\
!*** ./index.ts ***!
\******************/
/*! exports provided: PubkeeperClient */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _src_client__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./src/client */ "./src/client.ts");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PubkeeperClient", function() { return _src_client__WEBPACK_IMPORTED_MODULE_0__["default"]; });
/***/ }),
/***/ "./node_modules/@pubkeeper/crypto-none/dist/index.js":
/*!***********************************************************!*\
!*** ./node_modules/@pubkeeper/crypto-none/dist/index.js ***!
\***********************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
module.exports = function (e) { var r = {}; function t(n) { if (r[n])
return r[n].exports; var o = r[n] = { i: n, l: !1, exports: {} }; return e[n].call(o.exports, o, o.exports, t), o.l = !0, o.exports; } return t.m = e, t.c = r, t.d = function (e, r, n) { t.o(e, r) || Object.defineProperty(e, r, { enumerable: !0, get: n }); }, t.r = function (e) { "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(e, "__esModule", { value: !0 }); }, t.t = function (e, r) { if (1 & r && (e = t(e)), 8 & r)
return e; if (4 & r && "object" == typeof e && e && e.__esModule)
return e; var n = Object.create(null); if (t.r(n), Object.defineProperty(n, "default", { enumerable: !0, value: e }), 2 & r && "string" != typeof e)
for (var o in e)
t.d(n, o, function (r) { return e[r]; }.bind(null, o)); return n; }, t.n = function (e) { var r = e && e.__esModule ? function () { return e.default; } : function () { return e; }; return t.d(r, "a", r), r; }, t.o = function (e, r) { return Object.prototype.hasOwnProperty.call(e, r); }, t.p = "", t(t.s = 0); }([function (e, r, t) {
"use strict";
var n = this && this.__read || function (e, r) { var t = "function" == typeof Symbol && e[Symbol.iterator]; if (!t)
return e; var n, o, u = t.call(e), i = []; try {
for (; (void 0 === r || r-- > 0) && !(n = u.next()).done;)
i.push(n.value);
}
catch (e) {
o = { error: e };
}
finally {
try {
n && !n.done && (t = u.return) && t.call(u);
}
finally {
if (o)
throw o.error;
}
} return i; }, o = this && this.__spread || function () { for (var e = [], r = 0; r < arguments.length; r++)
e = e.concat(n(arguments[r])); return e; };
Object.defineProperty(r, "__esModule", { value: !0 });
r.PubkeeperNoneCrypto = ["NONE", function () { return { get mode() { return "NONE"; }, get key() { return ""; }, encrypt: function (e) { return new Uint8Array(o(e)); }, decrypt: function (e) { return new Uint8Array(o(e)); } }; }];
}]);
/***/ }),
/***/ "./node_modules/@pubkeeper/default-cipher-helpers/dist/index.js":
/*!**********************************************************************!*\
!*** ./node_modules/@pubkeeper/default-cipher-helpers/dist/index.js ***!
\**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
module.exports = function (e) { var r = {}; function t(n) { if (r[n])
return r[n].exports; var o = r[n] = { i: n, l: !1, exports: {} }; return e[n].call(o.exports, o, o.exports, t), o.l = !0, o.exports; } return t.m = e, t.c = r, t.d = function (e, r, n) { t.o(e, r) || Object.defineProperty(e, r, { enumerable: !0, get: n }); }, t.r = function (e) { "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(e, "__esModule", { value: !0 }); }, t.t = function (e, r) { if (1 & r && (e = t(e)), 8 & r)
return e; if (4 & r && "object" == typeof e && e && e.__esModule)
return e; var n = Object.create(null); if (t.r(n), Object.defineProperty(n, "default", { enumerable: !0, value: e }), 2 & r && "string" != typeof e)
for (var o in e)
t.d(n, o, function (r) { return e[r]; }.bind(null, o)); return n; }, t.n = function (e) { var r = e && e.__esModule ? function () { return e.default; } : function () { return e; }; return t.d(r, "a", r), r; }, t.o = function (e, r) { return Object.prototype.hasOwnProperty.call(e, r); }, t.p = "", t(t.s = 0); }([function (e, r, t) {
"use strict";
var n = this && this.__read || function (e, r) { var t = "function" == typeof Symbol && e[Symbol.iterator]; if (!t)
return e; var n, o, u = t.call(e), l = []; try {
for (; (void 0 === r || r-- > 0) && !(n = u.next()).done;)
l.push(n.value);
}
catch (e) {
o = { error: e };
}
finally {
try {
n && !n.done && (t = u.return) && t.call(u);
}
finally {
if (o)
throw o.error;
}
} return l; };
Object.defineProperty(r, "__esModule", { value: !0 }), r.DEFAULT_CIPHER = Symbol.for("Pubkeeper.defaultCipher"), r.setDefault = function (e) { var t = n(e, 2)[1]; return [r.DEFAULT_CIPHER, t]; }, r.getDefault = function (e) { return e.get(r.DEFAULT_CIPHER); };
}]);
/***/ }),
/***/ "./node_modules/debug/src/browser.js":
/*!*******************************************!*\
!*** ./node_modules/debug/src/browser.js ***!
\*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(process) {/* eslint-env browser */
var __read = (this && this.__read) || function (o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
};
var __spread = (this && this.__spread) || function () {
for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
return ar;
};
/**
* This is the web browser implementation of `debug()`.
*/
exports.log = log;
exports.formatArgs = formatArgs;
exports.save = save;
exports.load = load;
exports.useColors = useColors;
exports.storage = localstorage();
/**
* Colors.
*/
exports.colors = [
'#0000CC',
'#0000FF',
'#0033CC',
'#0033FF',
'#0066CC',
'#0066FF',
'#0099CC',
'#0099FF',
'#00CC00',
'#00CC33',
'#00CC66',
'#00CC99',
'#00CCCC',
'#00CCFF',
'#3300CC',
'#3300FF',
'#3333CC',
'#3333FF',
'#3366CC',
'#3366FF',
'#3399CC',
'#3399FF',
'#33CC00',
'#33CC33',
'#33CC66',
'#33CC99',
'#33CCCC',
'#33CCFF',
'#6600CC',
'#6600FF',
'#6633CC',
'#6633FF',
'#66CC00',
'#66CC33',
'#9900CC',
'#9900FF',
'#9933CC',
'#9933FF',
'#99CC00',
'#99CC33',
'#CC0000',
'#CC0033',
'#CC0066',
'#CC0099',
'#CC00CC',
'#CC00FF',
'#CC3300',
'#CC3333',
'#CC3366',
'#CC3399',
'#CC33CC',
'#CC33FF',
'#CC6600',
'#CC6633',
'#CC9900',
'#CC9933',
'#CCCC00',
'#CCCC33',
'#FF0000',
'#FF0033',
'#FF0066',
'#FF0099',
'#FF00CC',
'#FF00FF',
'#FF3300',
'#FF3333',
'#FF3366',
'#FF3399',
'#FF33CC',
'#FF33FF',
'#FF6600',
'#FF6633',
'#FF9900',
'#FF9933',
'#FFCC00',
'#FFCC33'
];
/**
* Currently only WebKit-based Web Inspectors, Firefox >= v31,
* and the Firebug extension (any Firefox version) are known
* to support "%c" CSS customizations.
*
* TODO: add a `localStorage` variable to explicitly enable/disable colors
*/
// eslint-disable-next-line complexity
function useColors() {
// NB: In an Electron preload script, document will be defined but not fully
// initialized. Since we know we're in Chrome, we'll just detect this case
// explicitly
if (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {
return true;
}
// Internet Explorer and Edge do not support colors.
if (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) {
return false;
}
// Is webkit? http://stackoverflow.com/a/16459606/376773
// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632
return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||
// Is firebug? http://stackoverflow.com/a/398120/376773
(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||
// Is firefox >= v31?
// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||
// Double check webkit in userAgent just in case we are in a worker
(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/));
}
/**
* Colorize log arguments if enabled.
*
* @api public
*/
function formatArgs(args) {
args[0] = (this.useColors ? '%c' : '') +
this.namespace +
(this.useColors ? ' %c' : ' ') +
args[0] +
(this.useColors ? '%c ' : ' ') +
'+' + module.exports.humanize(this.diff);
if (!this.useColors) {
return;
}
var c = 'color: ' + this.color;
args.splice(1, 0, c, 'color: inherit');
// The final "%c" is somewhat tricky, because there could be other
// arguments passed either before or after the %c, so we need to
// figure out the correct index to insert the CSS into
var index = 0;
var lastC = 0;
args[0].replace(/%[a-zA-Z%]/g, function (match) {
if (match === '%%') {
return;
}
index++;
if (match === '%c') {
// We only are interested in the *last* %c
// (the user may have provided their own)
lastC = index;
}
});
args.splice(lastC, 0, c);
}
/**
* Invokes `console.log()` when available.
* No-op when `console.log` is not a "function".
*
* @api public
*/
function log() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
// This hackery is required for IE8/9, where
// the `console.log` function doesn't have 'apply'
return typeof console === 'object' &&
console.log && console.log.apply(console, __spread(args));
}
/**
* Save `namespaces`.
*
* @param {String} namespaces
* @api private
*/
function save(namespaces) {
try {
if (namespaces) {
exports.storage.setItem('debug', namespaces);
}
else {
exports.storage.removeItem('debug');
}
}
catch (error) {
// Swallow
// XXX (@Qix-) should we be logging these?
}
}
/**
* Load `namespaces`.
*
* @return {String} returns the previously persisted debug modes
* @api private
*/
function load() {
var r;
try {
r = exports.storage.getItem('debug');
}
catch (error) {
// Swallow
// XXX (@Qix-) should we be logging these?
}
// If debug isn't set in LS, and we're in Electron, try to load $DEBUG
if (!r && typeof process !== 'undefined' && 'env' in process) {
r = process.env.DEBUG;
}
return r;
}
/**
* Localstorage attempts to return the localstorage.
*
* This is necessary because safari throws
* when a user disables cookies/localstorage
* and you attempt to access it.
*
* @return {LocalStorage}
* @api private
*/
function localstorage() {
try {
// TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context
// The Browser also has localStorage in the global context.
return localStorage;
}
catch (error) {
// Swallow
// XXX (@Qix-) should we be logging these?
}
}
module.exports = __webpack_require__(/*! ./common */ "./node_modules/debug/src/common.js")(exports);
var formatters = module.exports.formatters;
/**
* Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
*/
formatters.j = function (v) {
try {
return JSON.stringify(v);
}
catch (error) {
return '[UnexpectedJSONParseError]: ' + error.message;
}
};
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../process/browser.js */ "./node_modules/process/browser.js")))
/***/ }),
/***/ "./node_modules/debug/src/common.js":
/*!******************************************!*\
!*** ./node_modules/debug/src/common.js ***!
\******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
/**
* This is the common logic for both the Node.js and web browser
* implementations of `debug()`.
*/
var __read = (this && this.__read) || function (o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
};
var __spread = (this && this.__spread) || function () {
for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
return ar;
};
function setup(env) {
createDebug.debug = createDebug;
createDebug.default = createDebug;
createDebug.coerce = coerce;
createDebug.disable = disable;
createDebug.enable = enable;
createDebug.enabled = enabled;
createDebug.humanize = __webpack_require__(/*! ms */ "./node_modules/ms/index.js");
Object.keys(env).forEach(function (key) {
createDebug[key] = env[key];
});
/**
* Active `debug` instances.
*/
createDebug.instances = [];
/**
* The currently active debug mode names, and names to skip.
*/
createDebug.names = [];
createDebug.skips = [];
/**
* Map of special "%n" handling functions, for the debug "format" argument.
*
* Valid key names are a single, lower or upper-case letter, i.e. "n" and "N".
*/
createDebug.formatters = {};
/**
* Selects a color for a debug namespace
* @param {String} namespace The namespace string for the for the debug instance to be colored
* @return {Number|String} An ANSI color code for the given namespace
* @api private
*/
function selectColor(namespace) {
var hash = 0;
for (var i = 0; i < namespace.length; i++) {
hash = ((hash << 5) - hash) + namespace.charCodeAt(i);
hash |= 0; // Convert to 32bit integer
}
return createDebug.colors[Math.abs(hash) % createDebug.colors.length];
}
createDebug.selectColor = selectColor;
/**
* Create a debugger with the given `namespace`.
*
* @param {String} namespace
* @return {Function}
* @api public
*/
function createDebug(namespace) {
var prevTime;
function debug() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
// Disabled?
if (!debug.enabled) {
return;
}
var self = debug;
// Set `diff` timestamp
var curr = Number(new Date());
var ms = curr - (prevTime || curr);
self.diff = ms;
self.prev = prevTime;
self.curr = curr;
prevTime = curr;
args[0] = createDebug.coerce(args[0]);
if (typeof args[0] !== 'string') {
// Anything else let's inspect with %O
args.unshift('%O');
}
// Apply any `formatters` transformations
var index = 0;
args[0] = args[0].replace(/%([a-zA-Z%])/g, function (match, format) {
// If we encounter an escaped % then don't increase the array index
if (match === '%%') {
return match;
}
index++;
var formatter = createDebug.formatters[format];
if (typeof formatter === 'function') {
var val = args[index];
match = formatter.call(self, val);
// Now we need to remove `args[index]` since it's inlined in the `format`
args.splice(index, 1);
index--;
}
return match;
});
// Apply env-specific formatting (colors, etc.)
createDebug.formatArgs.call(self, args);
var logFn = self.log || createDebug.log;
logFn.apply(self, args);
}
debug.namespace = namespace;
debug.enabled = createDebug.enabled(namespace);
debug.useColors = createDebug.useColors();
debug.color = selectColor(namespace);
debug.destroy = destroy;
debug.extend = extend;
// Debug.formatArgs = formatArgs;
// debug.rawLog = rawLog;
// env-specific initialization logic for debug instances
if (typeof createDebug.init === 'function') {
createDebug.init(debug);
}
createDebug.instances.push(debug);
return debug;
}
function destroy() {
var index = createDebug.instances.indexOf(this);
if (index !== -1) {
createDebug.instances.splice(index, 1);
return true;
}
return false;
}
function extend(namespace, delimiter) {
return createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);
}
/**
* Enables a debug mode by namespaces. This can include modes
* separated by a colon and wildcards.
*
* @param {String} namespaces
* @api public
*/
function enable(namespaces) {
createDebug.save(namespaces);
createDebug.names = [];
createDebug.skips = [];
var i;
var split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/);
var len = split.length;
for (i = 0; i < len; i++) {
if (!split[i]) {
// ignore empty strings
continue;
}
namespaces = split[i].replace(/\*/g, '.*?');
if (namespaces[0] === '-') {
createDebug.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));
}
else {
createDebug.names.push(new RegExp('^' + namespaces + '$'));
}
}
for (i = 0; i < createDebug.instances.length; i++) {
var instance = createDebug.instances[i];
instance.enabled = createDebug.enabled(instance.namespace);
}
}
/**
* Disable debug output.
*
* @return {String} namespaces
* @api public
*/
function disable() {
var namespaces = __spread(createDebug.names.map(toNamespace), createDebug.skips.map(toNamespace).map(function (namespace) { return '-' + namespace; })).join(',');
createDebug.enable('');
return namespaces;
}
/**
* Returns true if the given mode name is enabled, false otherwise.
*
* @param {String} name
* @return {Boolean}
* @api public
*/
function enabled(name) {
if (name[name.length - 1] === '*') {
return true;
}
var i;
var len;
for (i = 0, len = createDebug.skips.length; i < len; i++) {
if (createDebug.skips[i].test(name)) {
return false;
}
}
for (i = 0, len = createDebug.names.length; i < len; i++) {
if (createDebug.names[i].test(name)) {
return true;
}
}
return false;
}
/**
* Convert regexp to namespace
*
* @param {RegExp} regxep
* @return {String} namespace
* @api private
*/
function toNamespace(regexp) {
return regexp.toString()
.substring(2, regexp.toString().length - 2)
.replace(/\.\*\?$/, '*');
}
/**
* Coerce `val`.
*
* @param {Mixed} val
* @return {Mixed}
* @api private
*/
function coerce(val) {
if (val instanceof Error) {
return val.stack || val.message;
}
return val;
}
createDebug.enable(createDebug.load());
return createDebug;
}
module.exports = setup;
/***/ }),
/***/ "./node_modules/eventemitter3/index.js":
/*!*********************************************!*\
!*** ./node_modules/eventemitter3/index.js ***!
\*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var has = Object.prototype.hasOwnProperty, prefix = '~';
/**
* Constructor to create a storage for our `EE` objects.
* An `Events` instance is a plain object whose properties are event names.
*
* @constructor
* @private
*/
function Events() { }
//
// We try to not inherit from `Object.prototype`. In some engines creating an
// instance in this way is faster than calling `Object.create(null)` directly.
// If `Object.create(null)` is not supported we prefix the event names with a
// character to make sure that the built-in object properties are not
// overridden or used as an attack vector.
//
if (Object.create) {
Events.prototype = Object.create(null);
//
// This hack is needed because the `__proto__` property is still inherited in
// some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.
//
if (!new Events().__proto__)
prefix = false;
}
/**
* Representation of a single event listener.
*
* @param {Function} fn The listener function.
* @param {*} context The context to invoke the listener with.
* @param {Boolean} [once=false] Specify if the listener is a one-time listener.
* @constructor
* @private
*/
function EE(fn, context, once) {
this.fn = fn;
this.context = context;
this.once = once || false;
}
/**
* Add a listener for a given event.
*
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
* @param {(String|Symbol)} event The event name.
* @param {Function} fn The listener function.
* @param {*} context The context to invoke the listener with.
* @param {Boolean} once Specify if the listener is a one-time listener.
* @returns {EventEmitter}
* @private
*/
function addListener(emitter, event, fn, context, once) {
if (typeof fn !== 'function') {
throw new TypeError('The listener must be a function');
}
var listener = new EE(fn, context || emitter, once), evt = prefix ? prefix + event : event;
if (!emitter._events[evt])
emitter._events[evt] = listener, emitter._eventsCount++;
else if (!emitter._events[evt].fn)
emitter._events[evt].push(listener);
else
emitter._events[evt] = [emitter._events[evt], listener];
return emitter;
}
/**
* Clear event by name.
*
* @param {EventEmitter} emitter Reference to the `EventEmitter` instance.
* @param {(String|Symbol)} evt The Event name.
* @private
*/
function clearEvent(emitter, evt) {
if (--emitter._eventsCount === 0)
emitter._events = new Events();
else
delete emitter._events[evt];
}
/**
* Minimal `EventEmitter` interface that is molded against the Node.js
* `EventEmitter` interface.
*
* @constructor
* @public
*/
function EventEmitter() {
this._events = new Events();
this._eventsCount = 0;
}
/**
* Return an array listing the events for which the emitter has registered
* listeners.
*
* @returns {Array}
* @public
*/
EventEmitter.prototype.eventNames = function eventNames() {
var names = [], events, name;
if (this._eventsCount === 0)
return names;
for (name in (events = this._events)) {
if (has.call(events, name))
names.push(prefix ? name.slice(1) : name);
}
if (Object.getOwnPropertySymbols) {
return names.concat(Object.getOwnPropertySymbols(events));
}
return names;
};
/**
* Return the listeners registered for a given event.
*
* @param {(String|Symbol)} event The event name.
* @returns {Array} The registered listeners.
* @public
*/
EventEmitter.prototype.listeners = function listeners(event) {
var evt = prefix ? prefix + event : event, handlers = this._events[evt];
if (!handlers)
return [];
if (handlers.fn)
return [handlers.fn];
for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {
ee[i] = handlers[i].fn;
}
return ee;
};
/**
* Return the number of listeners listening to a given event.
*
* @param {(String|Symbol)} event The event name.
* @returns {Number} The number of listeners.
* @public
*/
EventEmitter.prototype.listenerCount = function listenerCount(event) {
var evt = prefix ? prefix + event : event, listeners = this._events[evt];
if (!listeners)
return 0;
if (listeners.fn)
return 1;
return listeners.length;
};
/**
* Calls each of the listeners registered for a given event.
*
* @param {(String|Symbol)} event The event name.
* @returns {Boolean} `true` if the event had listeners, else `false`.
* @public
*/
EventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {
var evt = prefix ? prefix + event : event;
if (!this._events[evt])
return false;
var listeners = this._events[evt], len = arguments.length, args, i;
if (listeners.fn) {
if (listeners.once)
this.removeListener(event, listeners.fn, undefined, true);
switch (len) {
case 1: return listeners.fn.call(listeners.context), true;
case 2: return listeners.fn.call(listeners.context, a1), true;
case 3: return listeners.fn.call(listeners.context, a1, a2), true;
case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;
case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;
case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;
}
for (i = 1, args = new Array(len - 1); i < len; i++) {
args[i - 1] = arguments[i];
}
listeners.fn.apply(listeners.context, args);
}
else {
var length = listeners.length, j;
for (i = 0; i < length; i++) {
if (listeners[i].once)
this.removeListener(event, listeners[i].fn, undefined, true);
switch (len) {
case 1:
listeners[i].fn.call(listeners[i].context);
break;
case 2:
listeners[i].fn.call(listeners[i].context, a1);
break;
case 3:
listeners[i].fn.call(listeners[i].context, a1, a2);
break;
case 4:
listeners[i].fn.call(listeners[i].context, a1, a2, a3);
break;
default:
if (!args)
for (j = 1, args = new Array(len - 1); j < len; j++) {
args[j - 1] = arguments[j];
}
listeners[i].fn.apply(listeners[i].context, args);
}
}
}
return true;
};
/**
* Add a listener for a given event.
*
* @param {(String|Symbol)} event The event name.
* @param {Function} fn The listener function.
* @param {*} [context=this] The context to invoke the listener with.
* @returns {EventEmitter} `this`.
* @public
*/
EventEmitter.prototype.on = function on(event, fn, context) {
return addListener(this, event, fn, context, false);
};
/**
* Add a one-time listener for a given event.
*
* @param {(String|Symbol)} event The event name.
* @param {Function} fn The listener function.
* @param {*} [context=this] The context to invoke the listener with.
* @returns {EventEmitter} `this`.
* @public
*/
EventEmitter.prototype.once = function once(event, fn, context) {
return addListener(this, event, fn, context, true);
};
/**
* Remove the listeners of a given event.
*
* @param {(String|Symbol)} event The event name.
* @param {Function} fn Only remove the listeners that match this function.
* @param {*} context Only remove the listeners that have this context.
* @param {Boolean} once Only remove one-time listeners.
* @returns {EventEmitter} `this`.
* @public
*/
EventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {
var evt = prefix ? prefix + event : event;
if (!this._events[evt])
return this;
if (!fn) {
clearEvent(this, evt);
return this;
}
var listeners = this._events[evt];
if (listeners.fn) {
if (listeners.fn === fn &&
(!once || listeners.once) &&
(!context || listeners.context === context)) {
clearEvent(this, evt);
}
}
else {
for (var i = 0, events = [], length = listeners.length; i < length; i++) {
if (listeners[i].fn !== fn ||
(once && !listeners[i].once) ||
(context && listeners[i].context !== context)) {
events.push(listeners[i]);
}
}
//
// Reset the array, or remove it completely if we have no more listeners.
//
if (events.length)
this._events[evt] = events.length === 1 ? events[0] : events;
else
clearEvent(this, evt);
}
return this;
};
/**
* Remove all listeners, or those of the specified event.
*
* @param {(String|Symbol)} [event] The event name.
* @returns {EventEmitter} `this`.
* @public
*/
EventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {
var evt;
if (event) {
evt = prefix ? prefix + event : event;
if (this._events[evt])
clearEvent(this, evt);
}
else {
this._events = new Events();
this._eventsCount = 0;
}
return this;
};
//
// Alias methods names because people roll like that.
//
EventEmitter.prototype.off = EventEmitter.prototype.removeListener;
EventEmitter.prototype.addListener = EventEmitter.prototype.on;
//
// Expose the prefix.
//
EventEmitter.prefixed = prefix;
//
// Allow `EventEmitter` to be imported as module namespace.
//
EventEmitter.EventEmitter = EventEmitter;
//
// Expose the module.
//
if (true) {
module.exports = EventEmitter;
}
/***/ }),
/***/ "./node_modules/ms/index.js":
/*!**********************************!*\
!*** ./node_modules/ms/index.js ***!
\**********************************/
/*! no static exports found */
/***/ (function(module, exports) {
/**
* Helpers.
*/
var s = 1000;
var m = s * 60;
var h = m * 60;
var d = h * 24;
var w = d * 7;
var y = d * 365.25;
/**
* Parse or format the given `val`.
*
* Options:
*
* - `long` verbose formatting [false]
*
* @param {String|Number} val
* @param {Object} [options]
* @throws {Error} throw an error if val is not a non-empty string or a number
* @return {String|Number}
* @api public
*/
module.exports = function (val, options) {
options = options || {};
var type = typeof val;
if (type === 'string' && val.length > 0) {
return parse(val);
}
else if (type === 'number' && isNaN(val) === false) {
return options.long ? fmtLong(val) : fmtShort(val);
}
throw new Error('val is not a non-empty string or a valid number. val=' +
JSON.stringify(val));
};
/**
* Parse the given `str` and return milliseconds.
*
* @param {String} str
* @return {Number}
* @api private
*/
function parse(str) {
str = String(str);
if (str.length > 100) {
return;
}
var match = /^((?:\d+)?\-?\d?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(str);
if (!match) {
return;
}
var n = parseFloat(match[1]);
var type = (match[2] || 'ms').toLowerCase();
switch (type) {
case 'years':
case 'year':
case 'yrs':
case 'yr':
case 'y':
return n * y;
case 'weeks':
case 'week':
case 'w':
return n * w;
case 'days':
case 'day':
case 'd':
return n * d;
case 'hours':
case 'hour':
case 'hrs':
case 'hr':
case 'h':
return n * h;
case 'minutes':
case 'minute':
case 'mins':
case 'min':
case 'm':
return n * m;
case 'seconds':
case 'second':
case 'secs':
case 'sec':
case 's':
return n * s;
case 'milliseconds':
case 'millisecond':
case 'msecs':
case 'msec':
case 'ms':
return n;
default:
return undefined;
}
}
/**
* Short format for `ms`.
*
* @param {Number} ms
* @return {String}
* @api private
*/
function fmtShort(ms) {
var msAbs = Math.abs(ms);
if (msAbs >= d) {
return Math.round(ms / d) + 'd';
}
if (msAbs >= h) {
return Math.round(ms / h) + 'h';
}
if (msAbs >= m) {
return Math.round(ms / m) + 'm';
}
if (msAbs >= s) {
return Math.round(ms / s) + 's';
}
return ms + 'ms';
}
/**
* Long format for `ms`.
*
* @param {Number} ms
* @return {String}
* @api private
*/
function fmtLong(ms) {
var msAbs = Math.abs(ms);
if (msAbs >= d) {
return plural(ms, msAbs, d, 'day');
}
if (msAbs >= h) {
return plural(ms, msAbs, h, 'hour');
}
if (msAbs >= m) {
return plural(ms, msAbs, m, 'minute');
}
if (msAbs >= s) {
return plural(ms, msAbs, s, 'second');
}
return ms + ' ms';
}
/**
* Pluralization helper.
*/
function plural(ms, msAbs, n, name) {
var isPlural = msAbs >= n * 1.5;
return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');
}
/***/ }),
/***/ "./node_modules/process/browser.js":
/*!*****************************************!*\
!*** ./node_modules/process/browser.js ***!
\*****************************************/
/*! no static exports found */
/***/ (function(module, exports) {
// shim for using process in browser
var process = module.exports = {};
// cached from whatever global is present so that test runners that stub it
// don't break things. But we need to wrap it in a try catch in case it is
// wrapped in strict mode code which doesn't define any globals. It's inside a
// function because try/catches deoptimize in certain engines.
var cachedSetTimeout;
var cachedClearTimeout;
function defaultSetTimout() {
throw new Error('setTimeout has not been defined');
}
function defaultClearTimeout() {
throw new Error('clearTimeout has not been defined');
}
(function () {
try {
if (typeof setTimeout === 'function') {
cachedSetTimeout = setTimeout;
}
else {
cachedSetTimeout = defaultSetTimout;
}
}
catch (e) {
cachedSetTimeout = defaultSetTimout;
}
try {
if (typeof clearTimeout === 'function') {
cachedClearTimeout = clearTimeout;
}
else {
cachedClearTimeout = defaultClearTimeout;
}
}
catch (e) {
cachedClearTimeout = defaultClearTimeout;
}
}());
function runTimeout(fun) {
if (cachedSetTimeout === setTimeout) {
//normal enviroments in sane situations
return setTimeout(fun, 0);
}
// if setTimeout wasn't available but was latter defined
if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
cachedSetTimeout = setTimeout;
return setTimeout(fun, 0);
}
try {
// when when somebody has screwed with setTimeout but no I.E. maddness
return cachedSetTimeout(fun, 0);
}
catch (e) {
try {
// When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
return cachedSetTimeout.call(null, fun, 0);
}
catch (e) {
// same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
return cachedSetTimeout.call(this, fun, 0);
}
}
}
function runClearTimeout(marker) {
if (cachedClearTimeout === clearTimeout) {
//normal enviroments in sane situations
return clearTimeout(marker);
}
// if clearTimeout wasn't available but was latter defined
if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
cachedClearTimeout = clearTimeout;
return clearTimeout(marker);
}
try {
// when when somebody has screwed with setTimeout but no I.E. maddness
return cachedClearTimeout(marker);
}
catch (e) {
try {
// When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
return cachedClearTimeout.call(null, marker);
}
catch (e) {
// same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
// Some versions of I.E. have different rules for clearTimeout vs setTimeout
return cachedClearTimeout.call(this, marker);
}
}
}
var queue = [];
var draining = false;
var currentQueue;
var queueIndex = -1;
function cleanUpNextTick() {
if (!draining || !currentQueue) {
return;
}
draining = false;
if (currentQueue.length) {
queue = currentQueue.concat(queue);
}
else {
queueIndex = -1;
}
if (queue.length) {
drainQueue();
}
}
function drainQueue() {
if (draining) {
return;
}
var timeout = runTimeout(cleanUpNextTick);
draining = true;
var len = queue.length;
while (len) {
currentQueue = queue;
queue = [];
while (++queueIndex < len) {
if (currentQueue) {
currentQueue[queueIndex].run();
}
}
queueIndex = -1;
len = queue.length;
}
currentQueue = null;
draining = false;
runClearTimeout(timeout);
}
process.nextTick = function (fun) {
var args = new Array(arguments.length - 1);
if (arguments.length > 1) {
for (var i = 1; i < arguments.length; i++) {
args[i - 1] = arguments[i];
}
}
queue.push(new Item(fun, args));
if (queue.length === 1 && !draining) {
runTimeout(drainQueue);
}
};
// v8 likes predictible objects
function Item(fun, array) {
this.fun = fun;
this.array = array;
}
Item.prototype.run = function () {
this.fun.apply(null, this.array);
};
process.title = 'browser';
process.browser = true;
process.env = {};
process.argv = [];
process.version = ''; // empty string to avoid regexp issues
process.versions = {};
function noop() { }
process.on = noop;
process.addListener = noop;
process.once = noop;
process.off = noop;
process.removeListener = noop;
process.removeAllListeners = noop;
process.emit = noop;
process.prependListener = noop;
process.prependOnceListener = noop;
process.listeners = function (name) { return []; };
process.binding = function (name) {
throw new Error('process.binding is not supported');
};
process.cwd = function () { return '/'; };
process.chdir = function (dir) {
throw new Error('process.chdir is not supported');
};
process.umask = function () { return 0; };
/***/ }),
/***/ "./src/client.ts":
/*!***********************!*\
!*** ./src/client.ts ***!
\***********************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var debug__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! debug */ "./node_modules/debug/src/browser.js");
/* harmony import */ var debug__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(debug__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var eventemitter3__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! eventemitter3 */ "./node_modules/eventemitter3/index.js");
/* harmony import */ var eventemitter3__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(eventemitter3__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _util_clamp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./util/clamp */ "./src/util/clamp.ts");
/* harmony import */ var _crypt__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./crypt */ "./src/crypt.ts");
/* harmony import */ var _statuses__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./statuses */ "./src/statuses.ts");
/* harmony import */ var _util_normalize_config__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./util/normalize-config */ "./src/util/normalize-config.ts");
var __extends = (undefined && undefined.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (undefined && undefined.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __rest = (undefined && undefined.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)
t[p[i]] = s[p[i]];
return t;
};
var __read = (undefined && undefined.__read) || function (o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
};
var __spread = (undefined && undefined.__spread) || function () {
for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
return ar;
};
// Internal Events
var DISCONNECTED = Symbol('event:failed');
var READY = Symbol('event:ready');
var info = debug__WEBPACK_IMPORTED_MODULE_0___default()('pk:client:info');
var isRequired = function (msg) { throw new Error(msg); };
var sentinelCount = 0;
var brewerSentinel = function (topic) { return Symbol("pk.brewer_" + sentinelCount++ + "[" + topic + "]"); };
var patronSentinel = function (topic) { return Symbol("pk.patron_" + sentinelCount++ + "[" + topic + "]"); };
var Client = /** @class */ (function (_super) {
__extends(Client, _super);
function Client(config) {
var _this = _super.call(this) || this;
_this._attempt = 0;
_this._retryID = null;
_this._status = _statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].DISCONNECTED;
_this._wsc = null;
_this._brewers = new Map();
_this._patrons = new Map();
_this._onOpen = function (e) {
var wsc = e.target;
_this.setStatus(_statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].CONNECTED);
info('connected');
_this.emit('connected');
_this._wsc = wsc;
if (_this._protocol) {
_this._protocol.close();
_this._protocol = undefined;
}
var actions = {
error: function (err) { _this.emit('error', err); },
fail: function (reason, code) {
if (reason instanceof Error) {
_this.emit('error', reason);
}
else if (typeof reason === 'string') {
_this.emit('error', new Error(reason));
}
_this.disconnect(typeof reason === 'number' ? reason : code);
},
ready: function () {
_this._attempt = 0;
_this.emit(READY);
},
send: function (args) { wsc.send(args); },
};
if (!_this._protocols.has(wsc.protocol)) {
_this._wsc.close(4000, "unacceptable protocol: '" + wsc.protocol + "'");
return;
}
var selectedProtocol = _this._protocols.get(wsc.protocol);
_this._protocol = new selectedProtocol(_this._protocolConfig, actions);
_this._brewers.forEach(function (args, token) {
_this._protocol.addBrewer(token, args, false);
});
_this._patrons.forEach(function (args, token) {
_this._protocol.addPatron(token, args, false);
});
_this._wsc.addEventListener('message', _this._protocol.onMessage);
_this._protocol.open();
};
_this._onClose = function (e) {
var wsc = e.target, code = e.code;
// cleanup
wsc.removeEventListener('open', _this._onOpen);
wsc.removeEventListener('close', _this._onClose);
if (_this._protocol) {
wsc.removeEventListener('close', _this._protocol.onMessage);
}
_this._wsc = null;
info('closed');
_this.emit('closed');
if (code === 1000) {
_this._attempt = 0;
_this.setStatus(_statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].DISCONNECTED);
_this._protocol.close();
_this._protocol = undefined;
_this.emit(DISCONNECTED);
return;
}
info('disconnected with unexpected code(%i)', code);
if (_this._attempt > _this._maxRetries) {
info('too many attempts, giving up');
_this._attempt = 0;
_this.setStatus(_statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].DEAD);
_this.emit(DISCONNECTED);
return;
}
_this.setStatus(_statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].RECONNECTING);
var shift = _this._attempt - 1;
var spread = Math.pow(2, shift);
var timeout = Math.floor(Object(_util_clamp__WEBPACK_IMPORTED_MODULE_2__["default"])(0, _this._maxTimeout, (spread + (Math.random() * spread)) * 100));
info("waiting " + timeout + "ms");
_this._retryID = setTimeout(function () {
_this._retryID = null;
_this.tryConnect();
}, timeout);
};
var
// Client Config
_a = config.maxRetries,
// Client Config
maxRetries = _a === void 0 ? Infinity : _a, _b = config.maxTimeout, maxTimeout = _b === void 0 ? 10000 : _b, _c = config.protocols, protocols = _c === void 0 ? new Map() : _c, _d = config.server, server = _d === void 0 ? isRequired('"server" key is required in config') : _d, _e = config.WebSocket, WS = _e === void 0 ? WebSocket || isRequired('"webSocket" key is required in config') : _e,
// Protocol Config
_f = config.brews,
// Protocol Config
brews = _f === void 0 ? [] : _f, _g = config.crypto, crypto = _g === void 0 ? new Map() : _g, _h = config.jwt, jwt = _h === void 0 ? isRequired('"jwt" key is required in config') : _h, rest = __rest(config, ["maxRetries", "maxTimeout", "protocols", "server", "WebSocket", "brews", "crypto", "jwt"]);
_this._webSocket = WS;
_this._maxTimeout = maxTimeout;
_this._maxRetries = maxRetries;
_this._protocols = new Map(__spread(protocols.entries()));
_this._server = server;
_this._protocolConfig = __assign({ brews: __spread(brews), crypto: new Map(__spread(_crypt__WEBPACK_IMPORTED_MODULE_3__["builtinCrypto"].entries(), crypto.entries())), jwt: jwt }, rest);
return _this;
}
Object.defineProperty(Client.prototype, "status", {
get: function () { return this._status; },
enumerable: true,
configurable: true
});
Client.prototype.connect = function (_a) {
var _this = this;
var _b = (_a === void 0 ? {} : _a).wait, wait = _b === void 0 ? true : _b;
if (this._wsc !== null && this._wsc.readyState <= 1) {
return this;
}
var result = wait ? new Promise(function (resolve, reject) {
_this.once(READY, function () {
_this.removeListener(DISCONNECTED, reject);
resolve(_this);
});
_this.once(DISCONNECTED, function () {
_this.removeListener(READY, resolve);
reject(new Error('unable to connect'));
});
}) : this;
this.tryConnect();
return result;
};
Client.prototype.disconnect = function (code) {
var _this = this;
if (code === void 0) { code = 1000; }
if (this._retryID !== null) {
clearTimeout(this._retryID);
this._retryID = null;
}
if (this._protocol) {
this._brewers.forEach(function (_, token) { return _this._protocol.removeBrewer(token); });
this._patrons.forEach(function (_, token) { return _this._protocol.removePatron(token); });
}
if (this._wsc !== null) {
this._wsc.close(code);
}
};
Client.prototype.addBrewer = function (topic) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
var token = brewerSentinel(topic);
var _a = __read(Object(_util_normalize_config__WEBPACK_IMPORTED_MODULE_5__["default"])(args), 2), options = _a[0], matched = _a[1];
var bArgs = [topic, options, matched];
this._brewers.set(token, bArgs);
if (this._status === _statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].CONNECTED) {
this._protocol.addBrewer(token, bArgs);
}
return token;
};
Client.prototype.removeBrewer = function (token) {
if (!this._brewers.delete(token)) {
throw new Error('brewer wasn\'t registered');
}
if (this._status === _statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].CONNECTED) {
this._protocol.removeBrewer(token);
}
};
Client.prototype.addPatron = function (topic) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
var token = patronSentinel(topic);
var _a = __read(Object(_util_normalize_config__WEBPACK_IMPORTED_MODULE_5__["default"])(args), 2), options = _a[0], matched = _a[1];
var pArgs = [topic, options, matched];
this._patrons.set(token, pArgs);
if (this._status === _statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].CONNECTED) {
this._protocol.addPatron(token, pArgs);
}
return token;
};
Client.prototype.removePatron = function (token) {
if (!this._patrons.delete(token)) {
throw new Error('patron wasn\'t registered');
}
if (this._status === _statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].CONNECTED) {
this._protocol.removePatron(token);
}
};
Client.prototype.setStatus = function (status) {
this._status = status;
this.emit('statuschange', { target: this, status: status });
};
Client.prototype.tryConnect = function () {
this._attempt += 1;
info('attempting connection');
this.setStatus(_statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].CONNECTING);
var protocols = __spread(this._protocols.keys());
var wsc = new this._webSocket(this._server, protocols);
wsc.binaryType = 'arraybuffer';
wsc.addEventListener('open', this._onOpen);
wsc.addEventListener('close', this._onClose);
};
Client.CONNECTING = _statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].CONNECTING;
Client.CONNECTED = _statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].CONNECTED;
Client.RECONNECTING = _statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].RECONNECTING;
Client.DISCONNECTED = _statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].DISCONNECTED;
Client.DEAD = _statuses__WEBPACK_IMPORTED_MODULE_4__["Status"].DEAD;
return Client;
}(eventemitter3__WEBPACK_IMPORTED_MODULE_1___default.a));
/* harmony default export */ __webpack_exports__["default"] = (Client);
/***/ }),
/***/ "./src/crypt.ts":
/*!**********************!*\
!*** ./src/crypt.ts ***!
\**********************/
/*! exports provided: builtinCrypto */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "builtinCrypto", function() { return builtinCrypto; });
/* harmony import */ var _pubkeeper_crypto_none__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @pubkeeper/crypto-none */ "./node_modules/@pubkeeper/crypto-none/dist/index.js");
/* harmony import */ var _pubkeeper_crypto_none__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_pubkeeper_crypto_none__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _pubkeeper_default_cipher_helpers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @pubkeeper/default-cipher-helpers */ "./node_modules/@pubkeeper/default-cipher-helpers/dist/index.js");
/* harmony import */ var _pubkeeper_default_cipher_helpers__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_pubkeeper_default_cipher_helpers__WEBPACK_IMPORTED_MODULE_1__);
var builtinCrypto = new Map([
Object(_pubkeeper_default_cipher_helpers__WEBPACK_IMPORTED_MODULE_1__["setDefault"])(_pubkeeper_crypto_none__WEBPACK_IMPORTED_MODULE_0__["PubkeeperNoneCrypto"]),
_pubkeeper_crypto_none__WEBPACK_IMPORTED_MODULE_0__["PubkeeperNoneCrypto"],
]);
/***/ }),
/***/ "./src/statuses.ts":
/*!*************************!*\
!*** ./src/statuses.ts ***!
\*************************/
/*! exports provided: Status */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Status", function() { return Status; });
var Status;
(function (Status) {
Status["CONNECTING"] = "connecting";
Status["CONNECTED"] = "connected";
Status["RECONNECTING"] = "reconnecting";
Status["DISCONNECTED"] = "disconnected";
Status["DEAD"] = "dead";
})(Status || (Status = {}));
/***/ }),
/***/ "./src/util/clamp.ts":
/*!***************************!*\
!*** ./src/util/clamp.ts ***!
\***************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony default export */ __webpack_exports__["default"] = (function (min, max, val) { return (Math.max(min, Math.min(max, val))); });
/***/ }),
/***/ "./src/util/normalize-config.ts":
/*!**************************************!*\
!*** ./src/util/normalize-config.ts ***!
\**************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return normalizeConfig; });
var __assign = (undefined && undefined.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __read = (undefined && undefined.__read) || function (o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
};
function normalizeConfig(args, defaults) {
if (defaults === void 0) { defaults = {}; }
var _a = defaults.options, defaultOptions = _a === void 0 ? {} : _a, defaultFn = defaults.callback;
if (args.length === 0) {
return [defaultOptions, defaultFn];
}
if (args.length === 1) {
var _b = __read(args, 1), ƒ1 = _b[0];
return (typeof ƒ1 === 'function') ? [defaultOptions, ƒ1]
: (typeof ƒ1 === 'object') ? [__assign({}, defaultOptions, ƒ1), defaultFn]
: [defaultOptions, defaultFn];
}
var _c = __read(args.slice(0, 2), 2), options = _c[0], ƒ2 = _c[1];
return (typeof options !== 'object') ? [defaultOptions, defaultFn]
: (typeof ƒ2 !== 'function') ? [defaultOptions, defaultFn]
: [__assign({}, defaultOptions, options), ƒ2];
}
/***/ })
/******/ });
});

@@ -1,1 +0,1 @@

!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(window,function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=27)}([function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}},function(e,t){e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t,n){var r=n(16),o=n(17),i=n(18);e.exports=function(e,t){return r(e)||o(e,t)||i()}},function(e,t,n){var r=n(21),o=n(22),i=n(23);e.exports=function(e){return r(e)||o(e)||i()}},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function n(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}e.exports=function(e,t,r){return t&&n(e.prototype,t),r&&n(e,r),e}},function(e,t,n){var r=n(1);e.exports=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),o.forEach(function(t){r(e,t,n[t])})}return e}},function(e,t){function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(t){return"function"==typeof Symbol&&"symbol"===n(Symbol.iterator)?e.exports=r=function(e){return n(e)}:e.exports=r=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":n(e)},r(t)}e.exports=r},function(e,t,n){e.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=1)}([function(e,t){e.exports=n(3)},function(e,t,n){"use strict";n.r(t),n.d(t,"PubkeeperNoneCrypto",function(){return i});var r=n(0),o=n.n(r),i=["NONE",function(){return{get mode(){return"NONE"},get key(){return""},encrypt:function(e){return new Uint8Array(o()(e))},decrypt:function(e){return new Uint8Array(o()(e))}}}]}])},function(e,t,n){var r=n(19);e.exports=function(e,t){if(null==e)return{};var n,o,i=r(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(o=0;o<c.length;o++)n=c[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}},function(e,t,n){var r=n(7),o=n(0);e.exports=function(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?o(e):t}},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},n(t)}e.exports=n},function(e,t,n){var r=n(20);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)}},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty,o="~";function i(){}function c(e,t,n,r,i){if("function"!=typeof n)throw new TypeError("The listener must be a function");var c=new function(e,t,n){this.fn=e,this.context=t,this.once=n||!1}(n,r||e,i),u=o?o+t:t;return e._events[u]?e._events[u].fn?e._events[u]=[e._events[u],c]:e._events[u].push(c):(e._events[u]=c,e._eventsCount++),e}function u(e,t){0==--e._eventsCount?e._events=new i:delete e._events[t]}function s(){this._events=new i,this._eventsCount=0}Object.create&&(i.prototype=Object.create(null),(new i).__proto__||(o=!1)),s.prototype.eventNames=function(){var e,t,n=[];if(0===this._eventsCount)return n;for(t in e=this._events)r.call(e,t)&&n.push(o?t.slice(1):t);return Object.getOwnPropertySymbols?n.concat(Object.getOwnPropertySymbols(e)):n},s.prototype.listeners=function(e){var t=o?o+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var r=0,i=n.length,c=new Array(i);r<i;r++)c[r]=n[r].fn;return c},s.prototype.listenerCount=function(e){var t=o?o+e:e,n=this._events[t];return n?n.fn?1:n.length:0},s.prototype.emit=function(e,t,n,r,i,c){var u=o?o+e:e;if(!this._events[u])return!1;var s,a,l=this._events[u],f=arguments.length;if(l.fn){switch(l.once&&this.removeListener(e,l.fn,void 0,!0),f){case 1:return l.fn.call(l.context),!0;case 2:return l.fn.call(l.context,t),!0;case 3:return l.fn.call(l.context,t,n),!0;case 4:return l.fn.call(l.context,t,n,r),!0;case 5:return l.fn.call(l.context,t,n,r,i),!0;case 6:return l.fn.call(l.context,t,n,r,i,c),!0}for(a=1,s=new Array(f-1);a<f;a++)s[a-1]=arguments[a];l.fn.apply(l.context,s)}else{var p,y=l.length;for(a=0;a<y;a++)switch(l[a].once&&this.removeListener(e,l[a].fn,void 0,!0),f){case 1:l[a].fn.call(l[a].context);break;case 2:l[a].fn.call(l[a].context,t);break;case 3:l[a].fn.call(l[a].context,t,n);break;case 4:l[a].fn.call(l[a].context,t,n,r);break;default:if(!s)for(p=1,s=new Array(f-1);p<f;p++)s[p-1]=arguments[p];l[a].fn.apply(l[a].context,s)}}return!0},s.prototype.on=function(e,t,n){return c(this,e,t,n,!1)},s.prototype.once=function(e,t,n){return c(this,e,t,n,!0)},s.prototype.removeListener=function(e,t,n,r){var i=o?o+e:e;if(!this._events[i])return this;if(!t)return u(this,i),this;var c=this._events[i];if(c.fn)c.fn!==t||r&&!c.once||n&&c.context!==n||u(this,i);else{for(var s=0,a=[],l=c.length;s<l;s++)(c[s].fn!==t||r&&!c[s].once||n&&c[s].context!==n)&&a.push(c[s]);a.length?this._events[i]=1===a.length?a[0]:a:u(this,i)}return this},s.prototype.removeAllListeners=function(e){var t;return e?(t=o?o+e:e,this._events[t]&&u(this,t)):(this._events=new i,this._eventsCount=0),this},s.prototype.off=s.prototype.removeListener,s.prototype.addListener=s.prototype.on,s.prefixed=o,s.EventEmitter=s,e.exports=s},function(e,t,n){(function(r){t.log=function(...e){return"object"==typeof console&&console.log&&console.log(...e)},t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const n="color: "+this.color;t.splice(1,0,n,"color: inherit");let r=0,o=0;t[0].replace(/%[a-zA-Z%]/g,e=>{"%%"!==e&&"%c"===e&&(o=++r)}),t.splice(o,0,n)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){let e;try{e=t.storage.getItem("debug")}catch(e){}!e&&void 0!==r&&"env"in r&&(e=r.env.DEBUG);return e},t.useColors=function(){if("undefined"!=typeof window&&window.process&&("renderer"===window.process.type||window.process.__nwjs))return!0;if("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;return"undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},t.storage=function(){try{return localStorage}catch(e){}}(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],e.exports=n(25)(t);const{formatters:o}=e.exports;o.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}}).call(this,n(24))},function(e,t,n){e.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=1)}([function(e,t){e.exports=n(2)},function(e,t,n){"use strict";n.r(t),n.d(t,"DEFAULT_CIPHER",function(){return i}),n.d(t,"setDefault",function(){return c}),n.d(t,"getDefault",function(){return u});var r=n(0),o=n.n(r),i=Symbol.for("Pubkeeper.defaultCipher");function c(e){var t=o()(e,2)[1];return[i,t]}function u(e){return e.get(i)}}])},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){var n=[],r=!0,o=!1,i=void 0;try{for(var c,u=e[Symbol.iterator]();!(r=(c=u.next()).done)&&(n.push(c.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw i}}return n}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}},function(e,t){function n(t,r){return e.exports=n=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},n(t,r)}e.exports=n},function(e,t){e.exports=function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}},function(e,t){e.exports=function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}},function(e,t){var n,r,o=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function c(){throw new Error("clearTimeout has not been defined")}function u(e){if(n===setTimeout)return setTimeout(e,0);if((n===i||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:i}catch(e){n=i}try{r="function"==typeof clearTimeout?clearTimeout:c}catch(e){r=c}}();var s,a=[],l=!1,f=-1;function p(){l&&s&&(l=!1,s.length?a=s.concat(a):f=-1,a.length&&y())}function y(){if(!l){var e=u(p);l=!0;for(var t=a.length;t;){for(s=a,a=[];++f<t;)s&&s[f].run();f=-1,t=a.length}s=null,l=!1,function(e){if(r===clearTimeout)return clearTimeout(e);if((r===c||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(e);try{r(e)}catch(t){try{return r.call(null,e)}catch(t){return r.call(this,e)}}}(e)}}function h(e,t){this.fun=e,this.array=t}function d(){}o.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];a.push(new h(e,t)),1!==a.length||l||u(y)},h.prototype.run=function(){this.fun.apply(null,this.array)},o.title="browser",o.browser=!0,o.env={},o.argv=[],o.version="",o.versions={},o.on=d,o.addListener=d,o.once=d,o.off=d,o.removeListener=d,o.removeAllListeners=d,o.emit=d,o.prependListener=d,o.prependOnceListener=d,o.listeners=function(e){return[]},o.binding=function(e){throw new Error("process.binding is not supported")},o.cwd=function(){return"/"},o.chdir=function(e){throw new Error("process.chdir is not supported")},o.umask=function(){return 0}},function(e,t,n){e.exports=function(e){function t(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t|=0;return r.colors[Math.abs(t)%r.colors.length]}function r(e){let n;function c(...e){if(!c.enabled)return;const t=c,o=Number(new Date),i=o-(n||o);t.diff=i,t.prev=n,t.curr=o,n=o,e[0]=r.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let u=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,(n,o)=>{if("%%"===n)return n;u++;const i=r.formatters[o];if("function"==typeof i){const r=e[u];n=i.call(t,r),e.splice(u,1),u--}return n}),r.formatArgs.call(t,e),(t.log||r.log).apply(t,e)}return c.namespace=e,c.enabled=r.enabled(e),c.useColors=r.useColors(),c.color=t(e),c.destroy=o,c.extend=i,"function"==typeof r.init&&r.init(c),r.instances.push(c),c}function o(){const e=r.instances.indexOf(this);return-1!==e&&(r.instances.splice(e,1),!0)}function i(e,t){return r(this.namespace+(void 0===t?":":t)+e)}return r.debug=r,r.default=r,r.coerce=function(e){return e instanceof Error?e.stack||e.message:e},r.disable=function(){r.enable("")},r.enable=function(e){let t;r.save(e),r.names=[],r.skips=[];const n=("string"==typeof e?e:"").split(/[\s,]+/),o=n.length;for(t=0;t<o;t++)n[t]&&("-"===(e=n[t].replace(/\*/g,".*?"))[0]?r.skips.push(new RegExp("^"+e.substr(1)+"$")):r.names.push(new RegExp("^"+e+"$")));for(t=0;t<r.instances.length;t++){const e=r.instances[t];e.enabled=r.enabled(e.namespace)}},r.enabled=function(e){if("*"===e[e.length-1])return!0;let t,n;for(t=0,n=r.skips.length;t<n;t++)if(r.skips[t].test(e))return!1;for(t=0,n=r.names.length;t<n;t++)if(r.names[t].test(e))return!0;return!1},r.humanize=n(26),Object.keys(e).forEach(t=>{r[t]=e[t]}),r.instances=[],r.names=[],r.skips=[],r.formatters={},r.selectColor=t,r.enable(r.load()),r}},function(e,t){var n=1e3,r=60*n,o=60*r,i=24*o,c=7*i,u=365.25*i;function s(e,t,n,r){var o=t>=1.5*n;return Math.round(e/n)+" "+r+(o?"s":"")}e.exports=function(e,t){t=t||{};var a=typeof e;if("string"===a&&e.length>0)return function(e){if((e=String(e)).length>100)return;var t=/^((?:\d+)?\-?\d?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(!t)return;var s=parseFloat(t[1]);switch((t[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return s*u;case"weeks":case"week":case"w":return s*c;case"days":case"day":case"d":return s*i;case"hours":case"hour":case"hrs":case"hr":case"h":return s*o;case"minutes":case"minute":case"mins":case"min":case"m":return s*r;case"seconds":case"second":case"secs":case"sec":case"s":return s*n;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}(e);if("number"===a&&!1===isNaN(e))return t.long?function(e){var t=Math.abs(e);if(t>=i)return s(e,t,i,"day");if(t>=o)return s(e,t,o,"hour");if(t>=r)return s(e,t,r,"minute");if(t>=n)return s(e,t,n,"second");return e+" ms"}(e):function(e){var t=Math.abs(e);if(t>=i)return Math.round(e/i)+"d";if(t>=o)return Math.round(e/o)+"h";if(t>=r)return Math.round(e/r)+"m";if(t>=n)return Math.round(e/n)+"s";return e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},function(e,t,n){"use strict";n.r(t);var r=n(2),o=n.n(r),i=n(6),c=n.n(i),u=n(9),s=n.n(u),a=n(4),l=n.n(a),f=n(5),p=n.n(f),y=n(10),h=n.n(y),d=n(11),v=n.n(d),m=n(12),b=n.n(m),g=n(0),w=n.n(g),C=n(1),x=n.n(C),O=n(3),F=n.n(O),k=n(13),S=n.n(k),E=n(14),j=n.n(E),_=function(e,t,n){return Math.max(e,Math.min(t,n))},A=n(8),P=n(15),T=new Map([Object(P.setDefault)(A.PubkeeperNoneCrypto),A.PubkeeperNoneCrypto]),M="connecting",L="connected",N="reconnecting",D="disconnected",I="dead",R=n(7),z=n.n(R);function B(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.options,r=void 0===n?{}:n,i=t.callback,u=void 0===i?void 0:i;if(0===e.length)return[r,u];if(1===e.length){var s=o()(e,1)[0];return"function"==typeof s?[r,s]:"object"===z()(s)?[c()({},r,s),u]:[r,u]}var a=e.slice(0,2),l=o()(a,2),f=l[0],p=l[1];return"object"!==z()(f)?[r,u]:"function"!=typeof p?[r,u]:[c()({},r,f),p]}var W=Symbol("fallbackImplementation");function J(e,t){var n="".concat(e?"DEPRECATED":"OBSOLETE",": ").concat(t);if(!e)throw new Error(n);console.error(n)}function U(e,t){return J(!!this[W],e),this[W]?this[W][t]:void 0}function $(e,t){var n;J(!!this[W],e);for(var r=arguments.length,o=new Array(r>2?r-2:0),i=2;i<r;i++)o[i-2]=arguments[i];return this[W]?(n=this[W])[t].apply(n,o):void 0}var G="use 'matcher' callback to obtain a actual brewer implementation instead",q=function(){function e(){l()(this,e),x()(this,W,void 0)}return p()(e,[{key:"brew",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"brew"].concat(t))}},{key:"brewText",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"brewText"].concat(t))}},{key:"brewJSON",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"brewJSON"].concat(t))}},{key:"on",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"on"].concat(t))}},{key:"addEventListener",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"addEventListener"].concat(t))}},{key:"off",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"off"].concat(t))}},{key:"removeListener",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"removeListener"].concat(t))}},{key:"once",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,G,"once"].concat(t))}},{key:"id",get:function(){return U.call(this,G,"id")}},{key:"brews",get:function(){return U.call(this,G,"brews")}},{key:"topic",get:function(){return U.call(this,G,"topic")}},{key:"size",get:function(){return U.call(this,G,"size")}},{key:"isMatched",get:function(){return U.call(this,G,"isMatched")}},{key:"config",get:function(){return U.call(this,G,"config")}}]),e}(),Z="use 'matcher' callback to obtain a actual patron implementation instead",H=function(){function e(){l()(this,e),x()(this,W,void 0)}return p()(e,[{key:"on",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,Z,"on"].concat(t))}},{key:"addEventListener",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,Z,"addEventListener"].concat(t))}},{key:"off",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,Z,"off"].concat(t))}},{key:"removeListener",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,Z,"removeListener"].concat(t))}},{key:"once",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return $.call.apply($,[this,Z,"once"].concat(t))}},{key:"id",get:function(){return U.call(this,Z,"id")}},{key:"brews",get:function(){return U.call(this,Z,"brews")}},{key:"topic",get:function(){return U.call(this,Z,"topic")}},{key:"size",get:function(){return U.call(this,Z,"size")}},{key:"isMatched",get:function(){return U.call(this,Z,"isMatched")}}]),e}(),K=Symbol("protocol"),Q=Symbol("protocolConfig"),V=Symbol("server"),X=Symbol("protocols"),Y=Symbol("wsc"),ee=Symbol("attempt"),te=Symbol("maxRetries"),ne=Symbol("maxTimeout"),re=Symbol("retry"),oe=Symbol("brewers"),ie=Symbol("patrons"),ce=Symbol("status"),ue=Symbol("event:failed"),se=Symbol("event:ready"),ae=Symbol("onClose"),le=Symbol("onOpen"),fe=j()("pk:client:info");function pe(e){this[ce]=e,this.emit("statuschange",{target:this,status:e})}function ye(){this[ee]+=1,fe("attempting connection"),pe.call(this,M);var e=F()(this[X].keys()),t=new this.WebSocket(this[V],e);t.binaryType="arraybuffer",t.addEventListener("open",this[le]),t.addEventListener("close",this[ae])}var he=function(e){throw new Error(e)},de=function(e){function t(e){var n;l()(this,t),n=h()(this,v()(t).call(this)),x()(w()(w()(n)),ee,0),x()(w()(w()(n)),re,null),x()(w()(w()(n)),ce,D),x()(w()(w()(n)),Y,null),x()(w()(w()(n)),oe,new Map),x()(w()(w()(n)),ie,new Map),x()(w()(w()(n)),le,function(e){var t=e.target;pe.call(w()(w()(n)),L),fe("connected"),n.emit("connected"),n[Y]=t,n[K]&&(n[K].close(),n[K]=void 0);var r={ready:function(){n[ee]=0,n.emit(se)},fail:function(e,t){e instanceof Error?n.emit("error",e):"string"==typeof e&&n.emit("error",new Error(e)),n.disconnect("number"==typeof e?e:t)},error:function(e){n.emit("error",e)},send:function(){t.send.apply(t,arguments)}};if(n[X].has(t.protocol)){var o=n[X].get(t.protocol);n[K]=new o(n[Q],r),n[oe].forEach(function(e,t){t[W]=n[K].addBrewer(t,e,!1)}),n[ie].forEach(function(e,t){t[W]=n[K].addPatron(t,e,!1)}),n[Y].addEventListener("message",n[K].onMessage),n[K].open()}else n[Y].close(4e3,"unacceptable protocol: '".concat(t.protocol,"'"))}),x()(w()(w()(n)),ae,function(e){var t=e.target,r=e.code;if(t.removeEventListener("open",n[le]),t.removeEventListener("close",n[ae]),n[K]&&t.removeEventListener("close",n[K].onMessage),n[Y]=null,fe("closed"),n.emit("closed"),1e3===r)return n[ee]=0,pe.call(w()(w()(n)),D),n[K].close(),n[K]=void 0,void n.emit(ue);if(fe("disconnected with unexpected code(%i)",r),n[ee]>n[te])return fe("too many attempts, giving up"),n[ee]=0,pe.call(w()(w()(n)),I),void n.emit(ue);pe.call(w()(w()(n)),N);var o=n[ee]-1,i=Math.pow(2,o),c=Math.floor(_(0,n[ne],100*(i+Math.random()*i)));fe("waiting ".concat(c,"ms")),n[re]=setTimeout(function(){n[re]=null,ye.call(w()(w()(n)))},c)});var r=e.maxRetries,o=void 0===r?1/0:r,i=e.maxTimeout,u=void 0===i?1e4:i,a=e.server,f=void 0===a?he('"server" key is required in config'):a,p=e.WebSocket,y=void 0===p?WebSocket:p,d=e.protocols,m=void 0===d?new Map:d,b=e.brews,g=void 0===b?[]:b,C=e.crypto,O=void 0===C?new Map:C,k=e.jwt,S=void 0===k?he('"jwt" key is required in config'):k,E=s()(e,["maxRetries","maxTimeout","server","WebSocket","protocols","brews","crypto","jwt"]);return n.WebSocket=y,n[ne]=u,n[te]=o,n[X]=new Map(F()(m.entries())),n[V]=f,n[Q]=c()({jwt:S,crypto:new Map(F()(T.entries()).concat(F()(O.entries()))),brews:F()(g)},E),n}return b()(t,e),p()(t,[{key:"connect",value:function(){var e=this,t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).wait,n=void 0===t||t;if(null!==this[Y]&&this[Y].readyState<=1)return this;var r=n?new Promise(function(t,n){e.once(se,function(){e.removeListener(ue,n),t(e)}),e.once(ue,function(){e.removeListener(se,t),n(new Error("unable to connect"))})}):this;return ye.call(this),r}},{key:"disconnect",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e3;null!==this[re]&&(clearTimeout(this[re]),this[re]=null),this[K]&&(this[oe].forEach(function(t,n){return e[K].removeBrewer(n)}),this[ie].forEach(function(t,n){return e[K].removePatron(n)})),null!==this[Y]&&this[Y].close(t)}},{key:"addBrewer",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var i=B(n),c=o()(i,2),u=c[0],s=c[1],a=new q,l=[e,u,s];return this[oe].set(a,l),this[ce]===L&&(a[W]=this[K].addBrewer(a,l)),a}},{key:"removeBrewer",value:function(e){if(!this[oe].delete(e))throw new Error("brewer wasn't registered");this[ce]===L&&this[K].removeBrewer(e)}},{key:"addPatron",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var i=B(n),c=o()(i,2),u=c[0],s=c[1],a=new H,l=[e,u,s];return this[ie].set(a,l),this[ce]===L&&(a[W]=this[K].addPatron(a,l)),a}},{key:"removePatron",value:function(e){if(!this[ie].delete(e))throw new Error("patron wasn't registered");this[ce]===L&&this[K].removePatron(e)}},{key:"status",get:function(){return this[ce]}}]),t}(S.a);x()(de,"CONNECTING",M),x()(de,"CONNECTED",L),x()(de,"RECONNECTING",N),x()(de,"DISCONNECTED",D),x()(de,"DEAD",I),n.d(t,"PubkeeperClient",function(){return de})}])});
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var r=t();for(var n in r)("object"==typeof exports?exports:e)[n]=r[n]}}(window,function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=7)}([function(e,t){e.exports=function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return s},o=this&&this.__spread||function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(n(arguments[t]));return e};Object.defineProperty(t,"__esModule",{value:!0}),t.PubkeeperNoneCrypto=["NONE",function(){return{get mode(){return"NONE"},get key(){return""},encrypt:function(e){return new Uint8Array(o(e))},decrypt:function(e){return new Uint8Array(o(e))}}}]}])},function(e,t,r){(function(n){var o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return s},i=this&&this.__spread||function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(o(arguments[t]));return e};t.log=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return"object"==typeof console&&console.log&&console.log.apply(console,i(e))},t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var n=0,o=0;t[0].replace(/%[a-zA-Z%]/g,function(e){"%%"!==e&&(n++,"%c"===e&&(o=n))}),t.splice(o,0,r)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){var e;try{e=t.storage.getItem("debug")}catch(e){}!e&&void 0!==n&&"env"in n&&(e=n.env.DEBUG);return e},t.useColors=function(){if("undefined"!=typeof window&&window.process&&("renderer"===window.process.type||window.process.__nwjs))return!0;if("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;return"undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},t.storage=function(){try{return localStorage}catch(e){}}(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],e.exports=r(5)(t),e.exports.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}}).call(this,r(4))},function(e,t,r){"use strict";var n=Object.prototype.hasOwnProperty,o="~";function i(){}function s(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function c(e,t,r,n,i){if("function"!=typeof r)throw new TypeError("The listener must be a function");var c=new s(r,n||e,i),a=o?o+t:t;return e._events[a]?e._events[a].fn?e._events[a]=[e._events[a],c]:e._events[a].push(c):(e._events[a]=c,e._eventsCount++),e}function a(e,t){0==--e._eventsCount?e._events=new i:delete e._events[t]}function u(){this._events=new i,this._eventsCount=0}Object.create&&(i.prototype=Object.create(null),(new i).__proto__||(o=!1)),u.prototype.eventNames=function(){var e,t,r=[];if(0===this._eventsCount)return r;for(t in e=this._events)n.call(e,t)&&r.push(o?t.slice(1):t);return Object.getOwnPropertySymbols?r.concat(Object.getOwnPropertySymbols(e)):r},u.prototype.listeners=function(e){var t=o?o+e:e,r=this._events[t];if(!r)return[];if(r.fn)return[r.fn];for(var n=0,i=r.length,s=new Array(i);n<i;n++)s[n]=r[n].fn;return s},u.prototype.listenerCount=function(e){var t=o?o+e:e,r=this._events[t];return r?r.fn?1:r.length:0},u.prototype.emit=function(e,t,r,n,i,s){var c=o?o+e:e;if(!this._events[c])return!1;var a,u,f=this._events[c],l=arguments.length;if(f.fn){switch(f.once&&this.removeListener(e,f.fn,void 0,!0),l){case 1:return f.fn.call(f.context),!0;case 2:return f.fn.call(f.context,t),!0;case 3:return f.fn.call(f.context,t,r),!0;case 4:return f.fn.call(f.context,t,r,n),!0;case 5:return f.fn.call(f.context,t,r,n,i),!0;case 6:return f.fn.call(f.context,t,r,n,i,s),!0}for(u=1,a=new Array(l-1);u<l;u++)a[u-1]=arguments[u];f.fn.apply(f.context,a)}else{var p,d=f.length;for(u=0;u<d;u++)switch(f[u].once&&this.removeListener(e,f[u].fn,void 0,!0),l){case 1:f[u].fn.call(f[u].context);break;case 2:f[u].fn.call(f[u].context,t);break;case 3:f[u].fn.call(f[u].context,t,r);break;case 4:f[u].fn.call(f[u].context,t,r,n);break;default:if(!a)for(p=1,a=new Array(l-1);p<l;p++)a[p-1]=arguments[p];f[u].fn.apply(f[u].context,a)}}return!0},u.prototype.on=function(e,t,r){return c(this,e,t,r,!1)},u.prototype.once=function(e,t,r){return c(this,e,t,r,!0)},u.prototype.removeListener=function(e,t,r,n){var i=o?o+e:e;if(!this._events[i])return this;if(!t)return a(this,i),this;var s=this._events[i];if(s.fn)s.fn!==t||n&&!s.once||r&&s.context!==r||a(this,i);else{for(var c=0,u=[],f=s.length;c<f;c++)(s[c].fn!==t||n&&!s[c].once||r&&s[c].context!==r)&&u.push(s[c]);u.length?this._events[i]=1===u.length?u[0]:u:a(this,i)}return this},u.prototype.removeAllListeners=function(e){var t;return e?(t=o?o+e:e,this._events[t]&&a(this,t)):(this._events=new i,this._eventsCount=0),this},u.prototype.off=u.prototype.removeListener,u.prototype.addListener=u.prototype.on,u.prefixed=o,u.EventEmitter=u,e.exports=u},function(e,t){e.exports=function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return s};Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_CIPHER=Symbol.for("Pubkeeper.defaultCipher"),t.setDefault=function(e){var r=n(e,2)[1];return[t.DEFAULT_CIPHER,r]},t.getDefault=function(e){return e.get(t.DEFAULT_CIPHER)}}])},function(e,t){var r,n,o=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function c(e){if(r===setTimeout)return setTimeout(e,0);if((r===i||!r)&&setTimeout)return r=setTimeout,setTimeout(e,0);try{return r(e,0)}catch(t){try{return r.call(null,e,0)}catch(t){return r.call(this,e,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:i}catch(e){r=i}try{n="function"==typeof clearTimeout?clearTimeout:s}catch(e){n=s}}();var a,u=[],f=!1,l=-1;function p(){f&&a&&(f=!1,a.length?u=a.concat(u):l=-1,u.length&&d())}function d(){if(!f){var e=c(p);f=!0;for(var t=u.length;t;){for(a=u,u=[];++l<t;)a&&a[l].run();l=-1,t=u.length}a=null,f=!1,function(e){if(n===clearTimeout)return clearTimeout(e);if((n===s||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(e);try{n(e)}catch(t){try{return n.call(null,e)}catch(t){return n.call(this,e)}}}(e)}}function h(e,t){this.fun=e,this.array=t}function v(){}o.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];u.push(new h(e,t)),1!==u.length||f||c(d)},h.prototype.run=function(){this.fun.apply(null,this.array)},o.title="browser",o.browser=!0,o.env={},o.argv=[],o.version="",o.versions={},o.on=v,o.addListener=v,o.once=v,o.off=v,o.removeListener=v,o.removeAllListeners=v,o.emit=v,o.prependListener=v,o.prependOnceListener=v,o.listeners=function(e){return[]},o.binding=function(e){throw new Error("process.binding is not supported")},o.cwd=function(){return"/"},o.chdir=function(e){throw new Error("process.chdir is not supported")},o.umask=function(){return 0}},function(e,t,r){var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return s},o=this&&this.__spread||function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(n(arguments[t]));return e};e.exports=function(e){function t(e){for(var t=0,r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r),t|=0;return n.colors[Math.abs(t)%n.colors.length]}function n(e){var r;function o(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];if(o.enabled){var i=o,s=Number(new Date),c=s-(r||s);i.diff=c,i.prev=r,i.curr=s,r=s,e[0]=n.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");var a=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,function(t,r){if("%%"===t)return t;a++;var o=n.formatters[r];if("function"==typeof o){var s=e[a];t=o.call(i,s),e.splice(a,1),a--}return t}),n.formatArgs.call(i,e),(i.log||n.log).apply(i,e)}}return o.namespace=e,o.enabled=n.enabled(e),o.useColors=n.useColors(),o.color=t(e),o.destroy=i,o.extend=s,"function"==typeof n.init&&n.init(o),n.instances.push(o),o}function i(){var e=n.instances.indexOf(this);return-1!==e&&(n.instances.splice(e,1),!0)}function s(e,t){return n(this.namespace+(void 0===t?":":t)+e)}function c(e){return e.toString().substring(2,e.toString().length-2).replace(/\.\*\?$/,"*")}return n.debug=n,n.default=n,n.coerce=function(e){return e instanceof Error?e.stack||e.message:e},n.disable=function(){var e=o(n.names.map(c),n.skips.map(c).map(function(e){return"-"+e})).join(",");return n.enable(""),e},n.enable=function(e){var t;n.save(e),n.names=[],n.skips=[];var r=("string"==typeof e?e:"").split(/[\s,]+/),o=r.length;for(t=0;t<o;t++)r[t]&&("-"===(e=r[t].replace(/\*/g,".*?"))[0]?n.skips.push(new RegExp("^"+e.substr(1)+"$")):n.names.push(new RegExp("^"+e+"$")));for(t=0;t<n.instances.length;t++){var i=n.instances[t];i.enabled=n.enabled(i.namespace)}},n.enabled=function(e){if("*"===e[e.length-1])return!0;var t,r;for(t=0,r=n.skips.length;t<r;t++)if(n.skips[t].test(e))return!1;for(t=0,r=n.names.length;t<r;t++)if(n.names[t].test(e))return!0;return!1},n.humanize=r(6),Object.keys(e).forEach(function(t){n[t]=e[t]}),n.instances=[],n.names=[],n.skips=[],n.formatters={},n.selectColor=t,n.enable(n.load()),n}},function(e,t){var r=1e3,n=60*r,o=60*n,i=24*o,s=7*i,c=365.25*i;function a(e,t,r,n){var o=t>=1.5*r;return Math.round(e/r)+" "+n+(o?"s":"")}e.exports=function(e,t){t=t||{};var u=typeof e;if("string"===u&&e.length>0)return function(e){if((e=String(e)).length>100)return;var t=/^((?:\d+)?\-?\d?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(!t)return;var a=parseFloat(t[1]);switch((t[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return a*c;case"weeks":case"week":case"w":return a*s;case"days":case"day":case"d":return a*i;case"hours":case"hour":case"hrs":case"hr":case"h":return a*o;case"minutes":case"minute":case"mins":case"min":case"m":return a*n;case"seconds":case"second":case"secs":case"sec":case"s":return a*r;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return a;default:return}}(e);if("number"===u&&!1===isNaN(e))return t.long?function(e){var t=Math.abs(e);if(t>=i)return a(e,t,i,"day");if(t>=o)return a(e,t,o,"hour");if(t>=n)return a(e,t,n,"minute");if(t>=r)return a(e,t,r,"second");return e+" ms"}(e):function(e){var t=Math.abs(e);if(t>=i)return Math.round(e/i)+"d";if(t>=o)return Math.round(e/o)+"h";if(t>=n)return Math.round(e/n)+"m";if(t>=r)return Math.round(e/r)+"s";return e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},function(e,t,r){"use strict";r.r(t);var n,o=r(1),i=r.n(o),s=r(2),c=r.n(s),a=function(e,t,r){return Math.max(e,Math.min(t,r))},u=r(0),f=r(3),l=new Map([Object(f.setDefault)(u.PubkeeperNoneCrypto),u.PubkeeperNoneCrypto]);!function(e){e.CONNECTING="connecting",e.CONNECTED="connected",e.RECONNECTING="reconnecting",e.DISCONNECTED="disconnected",e.DEAD="dead"}(n||(n={}));var p=function(){return(p=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},d=function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return s};function h(e,t){void 0===t&&(t={});var r=t.options,n=void 0===r?{}:r,o=t.callback;if(0===e.length)return[n,o];if(1===e.length){var i=d(e,1)[0];return"function"==typeof i?[n,i]:"object"==typeof i?[p({},n,i),o]:[n,o]}var s=d(e.slice(0,2),2),c=s[0],a=s[1];return"object"!=typeof c?[n,o]:"function"!=typeof a?[n,o]:[p({},n,c),a]}var v,y=(v=function(e,t){return(v=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}v(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),C=function(){return(C=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},m=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&(r[n[o]]=e[n[o]])}return r},_=function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return s},b=function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(_(arguments[t]));return e},g=Symbol("event:failed"),w=Symbol("event:ready"),E=i()("pk:client:info"),O=function(e){throw new Error(e)},F=0,x=function(e){function t(t){var r=e.call(this)||this;r._attempt=0,r._retryID=null,r._status=n.DISCONNECTED,r._wsc=null,r._brewers=new Map,r._patrons=new Map,r._onOpen=function(e){var t=e.target;r.setStatus(n.CONNECTED),E("connected"),r.emit("connected"),r._wsc=t,r._protocol&&(r._protocol.close(),r._protocol=void 0);var o={error:function(e){r.emit("error",e)},fail:function(e,t){e instanceof Error?r.emit("error",e):"string"==typeof e&&r.emit("error",new Error(e)),r.disconnect("number"==typeof e?e:t)},ready:function(){r._attempt=0,r.emit(w)},send:function(e){t.send(e)}};if(r._protocols.has(t.protocol)){var i=r._protocols.get(t.protocol);r._protocol=new i(r._protocolConfig,o),r._brewers.forEach(function(e,t){r._protocol.addBrewer(t,e,!1)}),r._patrons.forEach(function(e,t){r._protocol.addPatron(t,e,!1)}),r._wsc.addEventListener("message",r._protocol.onMessage),r._protocol.open()}else r._wsc.close(4e3,"unacceptable protocol: '"+t.protocol+"'")},r._onClose=function(e){var t=e.target,o=e.code;if(t.removeEventListener("open",r._onOpen),t.removeEventListener("close",r._onClose),r._protocol&&t.removeEventListener("close",r._protocol.onMessage),r._wsc=null,E("closed"),r.emit("closed"),1e3===o)return r._attempt=0,r.setStatus(n.DISCONNECTED),r._protocol.close(),r._protocol=void 0,void r.emit(g);if(E("disconnected with unexpected code(%i)",o),r._attempt>r._maxRetries)return E("too many attempts, giving up"),r._attempt=0,r.setStatus(n.DEAD),void r.emit(g);r.setStatus(n.RECONNECTING);var i=r._attempt-1,s=Math.pow(2,i),c=Math.floor(a(0,r._maxTimeout,100*(s+Math.random()*s)));E("waiting "+c+"ms"),r._retryID=setTimeout(function(){r._retryID=null,r.tryConnect()},c)};var o=t.maxRetries,i=void 0===o?1/0:o,s=t.maxTimeout,c=void 0===s?1e4:s,u=t.protocols,f=void 0===u?new Map:u,p=t.server,d=void 0===p?O('"server" key is required in config'):p,h=t.WebSocket,v=void 0===h?WebSocket||O('"webSocket" key is required in config'):h,y=t.brews,_=void 0===y?[]:y,F=t.crypto,x=void 0===F?new Map:F,N=t.jwt,S=void 0===N?O('"jwt" key is required in config'):N,T=m(t,["maxRetries","maxTimeout","protocols","server","WebSocket","brews","crypto","jwt"]);return r._webSocket=v,r._maxTimeout=c,r._maxRetries=i,r._protocols=new Map(b(f.entries())),r._server=d,r._protocolConfig=C({brews:b(_),crypto:new Map(b(l.entries(),x.entries())),jwt:S},T),r}return y(t,e),Object.defineProperty(t.prototype,"status",{get:function(){return this._status},enumerable:!0,configurable:!0}),t.prototype.connect=function(e){var t=this,r=(void 0===e?{}:e).wait,n=void 0===r||r;if(null!==this._wsc&&this._wsc.readyState<=1)return this;var o=n?new Promise(function(e,r){t.once(w,function(){t.removeListener(g,r),e(t)}),t.once(g,function(){t.removeListener(w,e),r(new Error("unable to connect"))})}):this;return this.tryConnect(),o},t.prototype.disconnect=function(e){var t=this;void 0===e&&(e=1e3),null!==this._retryID&&(clearTimeout(this._retryID),this._retryID=null),this._protocol&&(this._brewers.forEach(function(e,r){return t._protocol.removeBrewer(r)}),this._patrons.forEach(function(e,r){return t._protocol.removePatron(r)})),null!==this._wsc&&this._wsc.close(e)},t.prototype.addBrewer=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];var o=function(e){return Symbol("pk.brewer_"+F+++"["+e+"]")}(e),i=_(h(t),2),s=[e,i[0],i[1]];return this._brewers.set(o,s),this._status===n.CONNECTED&&this._protocol.addBrewer(o,s),o},t.prototype.removeBrewer=function(e){if(!this._brewers.delete(e))throw new Error("brewer wasn't registered");this._status===n.CONNECTED&&this._protocol.removeBrewer(e)},t.prototype.addPatron=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];var o=function(e){return Symbol("pk.patron_"+F+++"["+e+"]")}(e),i=_(h(t),2),s=[e,i[0],i[1]];return this._patrons.set(o,s),this._status===n.CONNECTED&&this._protocol.addPatron(o,s),o},t.prototype.removePatron=function(e){if(!this._patrons.delete(e))throw new Error("patron wasn't registered");this._status===n.CONNECTED&&this._protocol.removePatron(e)},t.prototype.setStatus=function(e){this._status=e,this.emit("statuschange",{target:this,status:e})},t.prototype.tryConnect=function(){this._attempt+=1,E("attempting connection"),this.setStatus(n.CONNECTING);var e=b(this._protocols.keys()),t=new this._webSocket(this._server,e);t.binaryType="arraybuffer",t.addEventListener("open",this._onOpen),t.addEventListener("close",this._onClose)},t.CONNECTING=n.CONNECTING,t.CONNECTED=n.CONNECTED,t.RECONNECTING=n.RECONNECTING,t.DISCONNECTED=n.DISCONNECTED,t.DEAD=n.DEAD,t}(c.a);r.d(t,"PubkeeperClient",function(){return x})}])});
{
"name": "@pubkeeper/client",
"version": "4.0.0-rc.0",
"version": "4.0.0-rc.1",
"description": "Pubkeeper javascript SDK",
"main": "dist/index.js",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
"scripts": {
"clean": "rimraf dist/",
"coverage": "nyc -r html -e \".ts\" -n \"index.ts\" -n \"src/**/*.ts\" -x \"__test__/**/*.test.ts\" mocha --opts __test__/.mocha.opts && nyc report",
"prebuild": "rimraf dist/",
"build": "webpack",
"lint": "eslint src/",
"test": "mocha --opts __test__/.mocha.opts",
"test:watch": "mocha -w --opts __test__/.mocha.opts",
"lint:test": "eslint __test__/",
"verify": "npm run lint"
"lint": "tslint -c tslint.json 'src/**/*.ts'",
"test": "mocha --opts __test__/.mocha.opts"
},

@@ -19,3 +19,10 @@ "repository": {

},
"author": "",
"author": "niolabs <info@niolabs.com> (https://niolabs.com)",
"contributors": [
"Aaron Ranard <aranard@n.io>",
"Ben Schnelle <bschnelle@n.io>",
"David Walker <dwalker@n.io>",
"J. Holmes <j@holmes.codes> (j.holmes.codes)",
"Matt Dodge <mdodge@n.io>"
],
"license": "UNLICENSED",

@@ -27,21 +34,16 @@ "bugs": {

"devDependencies": {
"@babel/core": "^7.1.0",
"@babel/plugin-proposal-class-properties": "^7.1.0",
"@babel/plugin-proposal-object-rest-spread": "^7.0.0",
"@babel/plugin-transform-runtime": "^7.1.0",
"@babel/preset-env": "^7.1.0",
"@babel/register": "^7.0.0",
"babel-eslint": "^9.0.0",
"babel-loader": "^8.0.2",
"@types/chai": "^4.1.7",
"@types/mocha": "^5.2.5",
"@types/sinon": "^7.0.3",
"awesome-typescript-loader": "^5.2.1",
"chai": "^4.1.2",
"chai-as-promised": "^7.1.1",
"eslint": "^5.6.0",
"eslint-config-airbnb-base": "^13.1.0",
"eslint-loader": "^2.1.0",
"eslint-plugin-import": "^2.14.0",
"mocha": "^5.2.0",
"mock-socket": "^8.0.2",
"nyc": "^13.1.0",
"rimraf": "^2.6.2",
"sinon": "^6.3.4",
"sinon-chai": "^3.2.0",
"ts-node": "^7.0.1",
"tslint": "^5.11.0",
"typescript": "^3.2.2",
"webpack": "^4.19.1",

@@ -52,5 +54,6 @@ "webpack-cli": "^3.1.0",

"dependencies": {
"@babel/runtime": "^7.0.0",
"@pubkeeper/crypto-none": "^1.0.1",
"@pubkeeper/default-cipher-helpers": "^1.0.3",
"@pubkeeper/crypto-none": "^2.0.0-rc.1",
"@pubkeeper/default-cipher-helpers": "^2.0.0-rc.0",
"@pubkeeper/types": "^1.0.0-rc.0",
"@types/debug": "^0.0.31",
"debug": "^4.0.1",

@@ -57,0 +60,0 @@ "eventemitter3": "^3.1.0",

@@ -171,40 +171,2 @@ # Pubkeeper Client

### Legacy/Deprecated API
The legacy (`<=2.0.0`) API is now deprecated/obsolete depending on how it is invoked. The objects returned by `client.addBrewer()` and `client.addPatron()` are place-holders/identifiers for the actual implementation that is resolved by the version of the protocol that gets negotiated with the server.
This means that trying to access a `brewer` or `patron` at the top-level _before_ you have established a connection to a Pubkeeper server will throw an exception:
```js
const client = new PubkeeperClient(config);
const p = client.addPatron('topic');
// OBSOLETE exception
p.on('message', (data) => { /* ... */ });
client.connect();
```
You _can_ still access the deprecated interface, as long as you wait until _after_ you have connected to the pubkeeper server:
```js
const client = new PubkeeperClient(config);
const p = client.addPatron('topic');
client.connect().then(() => {
// DEPRECATED warning
p.on('message', (data) => { /* ... */ });
});
```
However, this exhibit _undesirable behavior_ if the connection to the server is lost/reconnected. **Use at your own risk.**
The _correct_ way is to use the matcher callback, which will give you _actual_ implementation:
```js
const client = new PubkeeperClient(config);
client.addPatron('topic', (patron) => {
p.on('message', (data) => { /* ... */ });
return () => p.removeAllListeners();
});
client.connect();
```
# `PubkeeperClient` Class

@@ -211,0 +173,0 @@

const browser = require('./browser');
const webpack = require('webpack');

@@ -4,0 +3,0 @@ module.exports = {

const path = require('path');
module.exports = {
mode: 'production',
entry: './index.js',
mode: 'development',
target: 'web',
entry: './index.ts',
devtool: 'hidden-source-map',

@@ -15,14 +16,13 @@ output: {

{
enforce: 'pre',
test: /\.js$/,
exclude: /(node_modules)/,
loader: 'eslint-loader',
test: /\.[tj]sx?$/,
loader: "awesome-typescript-loader",
options: {
configFileName: "./targets/web.tsconfig.json",
},
},
{
test: /\.js$/,
exclude: /(node_modules)/,
loader: 'babel-loader',
},
],
]
},
resolve: {
extensions: ['.ts', '.tsx', '.js', '.jsx']
},
};
const path = require('path');
const webpack = require('webpack');
const nodeExternals = require('webpack-node-externals');
const { CheckerPlugin } = require('awesome-typescript-loader');

@@ -8,4 +8,7 @@ module.exports = {

target: 'node',
entry: './index.js',
entry: './index.ts',
devtool: 'source-map',
resolve: {
extensions: ['.ts', '.tsx', '.js', '.jsx']
},
externals: [nodeExternals()],

@@ -20,14 +23,13 @@ output: {

{
enforce: 'pre',
test: /\.js$/,
exclude: /(node_modules)/,
loader: 'eslint-loader',
test: /\.[tj]sx?$/,
loader: "awesome-typescript-loader",
options: {
configFileName: "./targets/node.tsconfig.json",
},
},
{
test: /\.js$/,
exclude: /(node_modules)/,
loader: 'babel-loader',
},
],
]
},
plugins: [
new CheckerPlugin()
],
};

@@ -5,2 +5,6 @@ const node = require('./targets/node');

module.exports = [node, browser, browserMinified];
module.exports = [
node,
browser,
browserMinified,
];

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc