@arena-im/buzz-client 1.4.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/buzz-client.cjs.js +20 -23
- package/dist/buzz-client.cjs.js.map +1 -1
- package/dist/buzz-client.cjs.min.js +1 -1
- package/dist/buzz-client.cjs.min.js.map +1 -1
- package/dist/buzz-client.esm.js +20 -23
- package/dist/buzz-client.esm.js.map +1 -1
- package/dist/buzz-client.esm.min.js +1 -1
- package/dist/buzz-client.esm.min.js.map +1 -1
- package/dist/buzz-client.umd.js +20 -23
- package/dist/buzz-client.umd.js.map +1 -1
- package/dist/buzz-client.umd.min.js +1 -1
- package/dist/buzz-client.umd.min.js.map +1 -1
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/index.d.ts +0 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/token-manager.d.ts +1 -0
- package/dist/types/token-manager.d.ts.map +1 -1
- package/dist/types/utils/dom-events.d.ts +7 -0
- package/dist/types/utils/dom-events.d.ts.map +1 -1
- package/package.json +3 -2
- package/src/lib/config.ts +2 -6
- package/src/lib/index.ts +12 -19
- package/src/lib/token-manager.ts +6 -2
- package/src/lib/utils/dom-events.ts +21 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
let e;e=window.WebSocket;class t{constructor(e,t,s,n,i={}){this.onOpen=t,this.onMessage=s,this.onError=n,this.options=i,this.reconnectDelay=1e3,this.shouldReconnect=!0,this.isOpen=!1,this.pendingOpenResolvers=[],this.url=e,this.ws=this.createWebsocket(),this.connect()}createWebsocket(){return"undefined"==typeof window?new e(this.url,void 0,{headers:this.options.headers}):new e(this.url)}connect(){let e=!1;this.ws.onopen=()=>{console.debug("WebSocket connected"),this.reconnectDelay=1e3,this.isOpen=!0,this.pendingOpenResolvers.splice(0).forEach(e=>e()),this.onOpen()},this.ws.onmessage=e=>{"string"==typeof e.data?this.onMessage(e.data):console.error("binary messages are not supported")},this.ws.onclose=e=>{console.debug("WebSocket closed. Reason:",e.reason),this.isOpen=!1,this.shouldReconnect&&this.scheduleReconnect()},this.ws.onerror=t=>{e||(e=!0,console.error("WebSocket error:",t),this.ws.close(),this.isOpen=!1,this.onError())}}scheduleReconnect(){console.debug(`Reconnecting in ${this.reconnectDelay}ms...`),setTimeout(()=>{this.reconnectDelay=Math.min(2*this.reconnectDelay,1e4),this.ws=this.createWebsocket(),this.connect()},this.reconnectDelay)}send(t){if(this.ws.readyState!==e.OPEN)throw new Error(`Websocket connection not open: ${this.ws.readyState}`);try{this.ws.send(t)}catch(e){const t="Websocket connection not open: race condition";throw console.error(t),new Error(t)}}close(){this.shouldReconnect=!1,this.ws.close()}whenOpen(){return this.isOpen&&this.ws.readyState===e.OPEN?Promise.resolve():new Promise(e=>{this.pendingOpenResolvers.push(e)})}}class s{constructor(e,t,s){this.windowDuration=e,this.threshold=t,this.onError=s,this.requests=[],this.requestCount=0,this.status=0,this.windowStart=0}push(e){if(3===this.status)throw new Error("push to a destroyed queue");this.requests.push(e),1===this.status&&this.awake()}run(){0===this.status&&(console.debug("Throttled queue processing started"),this.awake())}destroy(){void 0!==this.waitTimer&&clearTimeout(this.waitTimer),console.debug("Throttled queue destroyed"),this.status=3}awake(){this.status=2,this.processNext()}processNext(){if(3===this.status)return;const e=Date.now();e-this.windowStart>this.windowDuration&&(this.windowStart=e,this.requestCount=0);const t=this.requests.shift();void 0!==t?(this.runRequest(t),this.requestCount++,this.requestCount!==this.threshold?setTimeout(()=>this.processNext(),0):this.waitNextWindow()):this.status=1}runRequest(e){try{e.run()}catch(t){this.onError(t,e)}}waitNextWindow(){console.warn("Throttling activated");const e=Math.max(0,this.windowStart+this.windowDuration-Date.now()+500);this.waitTimer=setTimeout(()=>{console.debug("Throttling deactivated"),this.processNext()},e)}}class n{constructor(e,t){this.siteId=e,this.identityBaseUrl=t,this.currentBuzzToken=null,this.currentIdToken=null,this.isExchanging=!1,this.pendingPromise=null,this.tokenChangeListeners=new Set}notify(e){this.tokenChangeListeners.forEach(t=>t(e))}async exchange(){var e;return this.isExchanging?null!==(e=this.pendingPromise)&&void 0!==e?e:Promise.resolve(null):(this.isExchanging=!0,this.pendingPromise=(async()=>{var e,t;try{if(this.currentIdToken){const t=await this.exchangeAuthenticated(this.currentIdToken);this.currentBuzzToken=null!==(e=t.access_token)&&void 0!==e?e:null}else{const e=(await this.getAnonymous()).access_token,s=await this.exchangeAuthenticated(e);this.currentBuzzToken=null!==(t=s.access_token)&&void 0!==t?t:null}}finally{this.isExchanging=!1,this.pendingPromise=null,this.notify(this.currentBuzzToken)}return this.currentBuzzToken})(),this.pendingPromise)}async exchangeAuthenticated(e){const t=`${this.identityBaseUrl}/exchange-token?siteId=${encodeURIComponent(this.siteId)}&accessToken=${encodeURIComponent(e)}`,s=await fetch(t,{method:"POST",credentials:"omit"});if(!s.ok)throw new Error(`exchangeAuthenticated failed: ${s.status}`);return await s.json()}async getAnonymous(){const e=`${this.identityBaseUrl}/anonymous-token`,t=await fetch(e,{method:"POST",credentials:"omit"});if(!t.ok)throw new Error(`getAnonymous failed: ${t.status}`);return await t.json()}async getTemporaryUserToken(e){var t;const s=`${this.identityBaseUrl}/temporary-user-token?username=${encodeURIComponent(e)}`,n=await fetch(s,{method:"POST",credentials:"omit"});if(!n.ok)throw new Error(`getTemporaryUserToken failed: ${n.status}`);const i=await n.text();let o=i;try{o=JSON.parse(i)}catch(e){throw new Error("getTemporaryUserToken failed: missing token")}if("string"==typeof o&&o.trim().length>0)return o;if(o&&"object"==typeof o){const e=null!==(t=o.token)&&void 0!==t?t:o.access_token;if(e&&e.length>0)return e}throw new Error("getTemporaryUserToken failed: missing token")}async getBuzzToken(){if(this.currentBuzzToken||await this.exchange(),!this.currentBuzzToken)throw new Error("Failed to acquire buzz token");return this.currentBuzzToken}async setIdToken(e){return this.currentIdToken=null!=e?e:null,this.exchange()}async setTemporaryUser(e){var t;const s=await this.getTemporaryUserToken(e);this.currentIdToken=s;const n=await this.exchangeAuthenticated(s);if(this.currentBuzzToken=null!==(t=n.access_token)&&void 0!==t?t:null,!this.currentBuzzToken)throw new Error("Failed to acquire buzz token from temporary user");return this.notify(this.currentBuzzToken),this.currentBuzzToken}onTokenChange(e){return this.tokenChangeListeners.add(e),()=>this.tokenChangeListeners.delete(e)}}class i{constructor(e,t){this.client=e,this.topic=t,this.listenerWrappers={},this.subscriptionPromise=this.client.subscribe(this.topic)}async emit(e,t){try{await this.subscriptionPromise;return await this.client.sendCommand(e,this.topic,t)}catch(e){throw e}}async on(e,t){await this.subscriptionPromise;const s=e=>{t(e)};this.listenerWrappers[e]||(this.listenerWrappers[e]=new Map),this.listenerWrappers[e].set(t,s),this.client.onEvent(this.topic,e,s)}async off(e,t){await this.subscriptionPromise;const s=this.listenerWrappers[e];if(s){if(t){const n=s.get(t);return n&&(this.client.offEvent(this.topic,e,n),s.delete(t)),void(0===s.size&&delete this.listenerWrappers[e])}for(const t of s.values())this.client.offEvent(this.topic,e,t);delete this.listenerWrappers[e]}}}const o="wss://buzz-prd.arena.im/ws",r="wss://buzz-dev.arena.im/ws",c="https://token-service-prd.arena.im",a="https://token-service-dev.arena.im",h={prod:{websocketUrl:o,identityUrl:c},dev:{websocketUrl:r,identityUrl:a}};var u;!function(e){e.ANONYMOUS="anonymous",e.GUEST="guest",e.PUBLIC="public",e.CUSTOM="custom"}(u||(u={}));class d{constructor({env:e,websocketUrl:t,namespace:i,siteId:o,token:r,options:c={}}){var a;this.ws=null,this.nextRequestId=0,this.pendingCommands={},this.eventListeners={},this.subscribedTopics=new Set,this.unsubscribeTokenChange=null,this.onQueueError=(e,t)=>{const s=t.requestId,n=e instanceof Error?e.message:`${e}`,i=this.pendingCommands[s];void 0!==i?this.rejectCommand(i,new w(n)):console.warn(`Request ID not found; request: ${JSON.stringify(t)}`)},this.onWebsocketOpen=()=>{this.queue.run(),console.log("onWebsocketOpen resubscribeAllTopics"),this.resubscribeAllTopics()},this.onWebsocketError=()=>{this.queue.destroy(),this.queue=new s(5e3,25,this.onQueueError);const e=new w("websocket connection error");Object.values(this.pendingCommands).forEach(t=>this.rejectCommand(t,e)),this.pendingCommands={}},this.onWebsocketMessage=e=>{const t=JSON.parse(e);if(t.eventName&&t.topic)return void this.dispatchEvent(t);if("rejected"===t.responseType&&"throttled"===t.reason&&console.error("Buzz server throttled this connection. Review client throttling settings"),"ack"===t.responseType)return;if(void 0===t.requestId)return void console.warn(`Missing request ID; message: ${JSON.stringify(t)}`);const s=`${t.requestId}`,n=this.pendingCommands[s];if(void 0===n)return void console.warn(`Request ID not found; message: ${JSON.stringify(t)}`);if("ok"===t.responseType||void 0===t.responseType)return clearTimeout(n.timeoutTimer),n.resolve(t),void delete this.pendingCommands[s];const i=new l(t.reason||"",t.responseType);this.rejectCommand(n,i)};const u="dev"===e||"prod"===e,d=function(e="prod"){return h[e]}(u?e:"prod");this.websocketUrl=u&&!t?d.websocketUrl:null!=t?t:d.websocketUrl;const p=null!==(a=c.identityUrl)&&void 0!==a?a:d.identityUrl;this.tokenManager=new n(o,p),this.tokenManager.setIdToken(r),this.queue=new s(5e3,25,this.onQueueError),this.namespace=i,this.options=c,this.setupIdTokenListener()}setupIdTokenListener(){"undefined"!=typeof window&&document.addEventListener("arena-auth-token-updated",e=>{const{idToken:t}=e.detail;this.setToken(t)})}async getWebsocketUrl(){const e=await this.tokenManager.getBuzzToken();return`${this.websocketUrl}?ns=${this.namespace}&token=${e}`}async ensureSocket(){return this.ws||(this.ws=await this.createSocket()),this.ws}async setToken(e){await this.tokenManager.setIdToken(e),this.ws&&this.ws.close(),this.ws=await this.createSocket(),await this.ws.whenOpen()}async setTemporaryUser(e){const t=await this.tokenManager.setTemporaryUser(e);return this.ws&&this.ws.close(),this.ws=await this.createSocket(),await this.ws.whenOpen(),t}async getToken(){return await this.tokenManager.getBuzzToken()}async createSocket(){return new t(await this.getWebsocketUrl(),this.onWebsocketOpen,this.onWebsocketMessage,this.onWebsocketError,this.options.websocket)}async subscribe(e){if(!this.subscribedTopics.has(e))try{await this.sendCommand("buzz:subscribe",e),this.subscribedTopics.add(e)}catch(t){if(t instanceof l&&("already subscribed"===t.message||"already_subscribed"===t.message))return void this.subscribedTopics.add(e);throw t}}async unsubscribe(e){try{await this.sendCommand("buzz:unsubscribe",e)}catch(e){if(!(e instanceof l)||"not subscribed"!==e.message&&"not_subscribed"!==e.message)throw e}finally{this.subscribedTopics.delete(e)}}topic(e){return new i(this,e)}async sendCommand(e,t,s){const n=""+this.nextRequestId++,i={requestId:n,type:e,topic:t,content:s},o=new Promise((e,t)=>{const s={requestId:n,run:()=>this.sendWithTimeout(i,s),resolve:e,reject:t};this.pendingCommands[n]=s,this.queue.push(s)});return this.ensureSocket(),o}onEvent(e,t,s){this.eventListeners[e]||(this.eventListeners[e]={}),this.eventListeners[e][t]||(this.eventListeners[e][t]=[]),this.eventListeners[e][t].push(s)}offEvent(e,t,s){const n=this.eventListeners[e];if(!n)return;const i=n[t];if(!i)return;const o=i.indexOf(s);-1!==o&&i.splice(o,1),0===i.length&&delete n[t],0===Object.keys(n).length&&delete this.eventListeners[e]}clearEventListeners(){this.eventListeners={}}async disconnect(){this.ws&&(this.ws.close(),this.ws=null),this.unsubscribeTokenChange&&(this.unsubscribeTokenChange(),this.unsubscribeTokenChange=null),this.queue.destroy(),this.pendingCommands={},this.eventListeners={},this.subscribedTopics.clear()}async sendWithTimeout(e,t){const s=await this.ensureSocket();"function"==typeof s.whenOpen&&await s.whenOpen(),s.send(JSON.stringify(e)),t.timeoutTimer=setTimeout(()=>{this.rejectCommand(t,new p)},this.options.commandTimeout||1e4)}dispatchEvent(e){this.eventListeners[e.topic]&&this.eventListeners[e.topic][e.eventName]&&this.eventListeners[e.topic][e.eventName].forEach(t=>t(e))}async resubscribeAllTopics(){if(console.log("resubscribeAllTopics total topics",this.subscribedTopics.size),console.log("resubscribeAllTopics topics",this.subscribedTopics),0===this.subscribedTopics.size)return;const e=Array.from(this.subscribedTopics);for(const t of e)try{await this.sendCommand("buzz:subscribe",t),console.log("resubscribeAllTopics subscribed to topic",t)}catch(e){if(e instanceof l&&("already subscribed"===e.message||"already_subscribed"===e.message))continue;this.subscribedTopics.delete(t)}}rejectCommand(e,t){clearTimeout(e.timeoutTimer),e.reject(t),delete this.pendingCommands[e.requestId]}}class l extends Error{constructor(e,t){super(e),this.errorType=t,this.name="CommandErrorResponse",Object.setPrototypeOf(this,new.target.prototype)}}class p extends Error{constructor(){super("timeout"),this.name="CommandTimeoutError",Object.setPrototypeOf(this,new.target.prototype)}}class w extends Error{constructor(e){super(e),this.name="WebsocketError",Object.setPrototypeOf(this,new.target.prototype)}}export{d as BuzzClient,l as CommandErrorResponse,p as CommandTimeoutError,w as WebsocketError};
|
|
1
|
+
let e;e=window.WebSocket;class t{constructor(e,t,s,n,i={}){this.onOpen=t,this.onMessage=s,this.onError=n,this.options=i,this.reconnectDelay=1e3,this.shouldReconnect=!0,this.isOpen=!1,this.pendingOpenResolvers=[],this.url=e,this.ws=this.createWebsocket(),this.connect()}createWebsocket(){return"undefined"==typeof window?new e(this.url,void 0,{headers:this.options.headers}):new e(this.url)}connect(){let e=!1;this.ws.onopen=()=>{console.debug("WebSocket connected"),this.reconnectDelay=1e3,this.isOpen=!0,this.pendingOpenResolvers.splice(0).forEach(e=>e()),this.onOpen()},this.ws.onmessage=e=>{"string"==typeof e.data?this.onMessage(e.data):console.error("binary messages are not supported")},this.ws.onclose=e=>{console.debug("WebSocket closed. Reason:",e.reason),this.isOpen=!1,this.shouldReconnect&&this.scheduleReconnect()},this.ws.onerror=t=>{e||(e=!0,console.error("WebSocket error:",t),this.ws.close(),this.isOpen=!1,this.onError())}}scheduleReconnect(){console.debug(`Reconnecting in ${this.reconnectDelay}ms...`),setTimeout(()=>{this.reconnectDelay=Math.min(2*this.reconnectDelay,1e4),this.ws=this.createWebsocket(),this.connect()},this.reconnectDelay)}send(t){if(this.ws.readyState!==e.OPEN)throw new Error(`Websocket connection not open: ${this.ws.readyState}`);try{this.ws.send(t)}catch(e){const t="Websocket connection not open: race condition";throw console.error(t),new Error(t)}}close(){this.shouldReconnect=!1,this.ws.close()}whenOpen(){return this.isOpen&&this.ws.readyState===e.OPEN?Promise.resolve():new Promise(e=>{this.pendingOpenResolvers.push(e)})}}class s{constructor(e,t,s){this.windowDuration=e,this.threshold=t,this.onError=s,this.requests=[],this.requestCount=0,this.status=0,this.windowStart=0}push(e){if(3===this.status)throw new Error("push to a destroyed queue");this.requests.push(e),1===this.status&&this.awake()}run(){0===this.status&&(console.debug("Throttled queue processing started"),this.awake())}destroy(){void 0!==this.waitTimer&&clearTimeout(this.waitTimer),console.debug("Throttled queue destroyed"),this.status=3}awake(){this.status=2,this.processNext()}processNext(){if(3===this.status)return;const e=Date.now();e-this.windowStart>this.windowDuration&&(this.windowStart=e,this.requestCount=0);const t=this.requests.shift();void 0!==t?(this.runRequest(t),this.requestCount++,this.requestCount!==this.threshold?setTimeout(()=>this.processNext(),0):this.waitNextWindow()):this.status=1}runRequest(e){try{e.run()}catch(t){this.onError(t,e)}}waitNextWindow(){console.warn("Throttling activated");const e=Math.max(0,this.windowStart+this.windowDuration-Date.now()+500);this.waitTimer=setTimeout(()=>{console.debug("Throttling deactivated"),this.processNext()},e)}}class n{constructor(e,t){this.siteId=e,this.identityBaseUrl=t,this.currentBuzzToken=null,this.currentIdToken=null,this.isExchanging=!1,this.pendingPromise=null,this.tokenChangeListeners=new Set}notify(e){this.tokenChangeListeners.forEach(t=>t(e))}async exchange(){var e;return this.isExchanging?null!==(e=this.pendingPromise)&&void 0!==e?e:Promise.resolve(null):(this.isExchanging=!0,this.pendingPromise=(async()=>{var e,t;try{if(this.currentIdToken){const t=await this.exchangeAuthenticated(this.currentIdToken);this.currentBuzzToken=null!==(e=t.access_token)&&void 0!==e?e:null}else{const e=(await this.getAnonymous()).access_token,s=await this.exchangeAuthenticated(e);this.currentBuzzToken=null!==(t=s.access_token)&&void 0!==t?t:null}}finally{this.isExchanging=!1,this.pendingPromise=null,this.notify(this.currentBuzzToken)}return this.currentBuzzToken})(),this.pendingPromise)}async exchangeAuthenticated(e){const t=`${this.identityBaseUrl}/exchange-token?siteId=${encodeURIComponent(this.siteId)}&accessToken=${encodeURIComponent(e)}`,s=await fetch(t,{method:"POST",credentials:"omit"});if(!s.ok)throw new Error(`exchangeAuthenticated failed: ${s.status}`);return await s.json()}async getAnonymous(){const e=`${this.identityBaseUrl}/anonymous-token`,t=await fetch(e,{method:"POST",credentials:"omit"});if(!t.ok)throw new Error(`getAnonymous failed: ${t.status}`);return await t.json()}async getTemporaryUserToken(e){var t;const s=`${this.identityBaseUrl}/temporary-user-token?username=${encodeURIComponent(e)}`,n=await fetch(s,{method:"POST",credentials:"omit"});if(!n.ok)throw new Error(`getTemporaryUserToken failed: ${n.status}`);const i=await n.text();let o=i;try{o=JSON.parse(i)}catch(e){throw new Error("getTemporaryUserToken failed: missing token")}if("string"==typeof o&&o.trim().length>0)return o.trim();if(o&&"object"==typeof o){const e=null!==(t=o.token)&&void 0!==t?t:o.access_token;if(e&&e.length>0)return e.trim()}throw new Error("getTemporaryUserToken failed: missing token")}async getBuzzToken(){if(this.currentBuzzToken||await this.exchange(),!this.currentBuzzToken)throw new Error("Failed to acquire buzz token");return this.currentBuzzToken}async setIdToken(e){return this.currentIdToken=null!=e?e:null,this.exchange()}getIdToken(){var e;return null!==(e=this.currentIdToken)&&void 0!==e?e:null}async setTemporaryUser(e){var t;const s=await this.getTemporaryUserToken(e);this.currentIdToken=s;const n=await this.exchangeAuthenticated(s);if(this.currentBuzzToken=null!==(t=n.access_token)&&void 0!==t?t:null,!this.currentBuzzToken)throw new Error("Failed to acquire buzz token from temporary user");return this.notify(this.currentBuzzToken),this.currentBuzzToken}onTokenChange(e){return this.tokenChangeListeners.add(e),()=>this.tokenChangeListeners.delete(e)}}class i{constructor(e,t){this.client=e,this.topic=t,this.listenerWrappers={},this.subscriptionPromise=this.client.subscribe(this.topic)}async emit(e,t){try{await this.subscriptionPromise;return await this.client.sendCommand(e,this.topic,t)}catch(e){throw e}}async on(e,t){await this.subscriptionPromise;const s=e=>{t(e)};this.listenerWrappers[e]||(this.listenerWrappers[e]=new Map),this.listenerWrappers[e].set(t,s),this.client.onEvent(this.topic,e,s)}async off(e,t){await this.subscriptionPromise;const s=this.listenerWrappers[e];if(s){if(t){const n=s.get(t);return n&&(this.client.offEvent(this.topic,e,n),s.delete(t)),void(0===s.size&&delete this.listenerWrappers[e])}for(const t of s.values())this.client.offEvent(this.topic,e,t);delete this.listenerWrappers[e]}}}const o="wss://buzz-prd.arena.im/ws",r="wss://buzz-dev.arena.im/ws",c="https://token-service-prd.arena.im",a="https://token-service-dev.arena.im",h={prod:{websocketUrl:o,identityUrl:c},dev:{websocketUrl:r,identityUrl:a}};var u;!function(e){e.ANONYMOUS="anonymous",e.GUEST="guest",e.PUBLIC="public",e.CUSTOM="custom"}(u||(u={}));class d{constructor({env:e,websocketUrl:t,namespace:i,siteId:o,token:r,options:c={}}){var a;this.ws=null,this.nextRequestId=0,this.pendingCommands={},this.eventListeners={},this.subscribedTopics=new Set,this.onQueueError=(e,t)=>{const s=t.requestId,n=e instanceof Error?e.message:`${e}`,i=this.pendingCommands[s];void 0!==i?this.rejectCommand(i,new w(n)):console.warn(`Request ID not found; request: ${JSON.stringify(t)}`)},this.onWebsocketOpen=()=>{this.queue.run(),console.log("onWebsocketOpen resubscribeAllTopics"),this.resubscribeAllTopics()},this.onWebsocketError=()=>{this.queue.destroy(),this.queue=new s(5e3,25,this.onQueueError);const e=new w("websocket connection error");Object.values(this.pendingCommands).forEach(t=>this.rejectCommand(t,e)),this.pendingCommands={}},this.onWebsocketMessage=e=>{const t=JSON.parse(e);if(t.eventName&&t.topic)return void this.dispatchEvent(t);if("rejected"===t.responseType&&"throttled"===t.reason&&console.error("Buzz server throttled this connection. Review client throttling settings"),"ack"===t.responseType)return;if(void 0===t.requestId)return void console.warn(`Missing request ID; message: ${JSON.stringify(t)}`);const s=`${t.requestId}`,n=this.pendingCommands[s];if(void 0===n)return void console.warn(`Request ID not found; message: ${JSON.stringify(t)}`);if("ok"===t.responseType||void 0===t.responseType)return clearTimeout(n.timeoutTimer),n.resolve(t),void delete this.pendingCommands[s];const i=new l(t.reason||"",t.responseType);this.rejectCommand(n,i)};const u="dev"===e||"prod"===e,d=function(e="prod"){return h[e]}(u?e:"prod");this.websocketUrl=u&&!t?d.websocketUrl:null!=t?t:d.websocketUrl;const p=null!==(a=c.identityUrl)&&void 0!==a?a:d.identityUrl;this.tokenManager=new n(o,p),this.tokenManager.setIdToken(r),this.queue=new s(5e3,25,this.onQueueError),this.namespace=i,this.options=c}async getWebsocketUrl(){const e=await this.tokenManager.getBuzzToken();return`${this.websocketUrl}?ns=${this.namespace}&token=${e}`}async ensureSocket(){return this.ws||(this.ws=await this.createSocket()),this.ws}async setToken(e){await this.tokenManager.setIdToken(e),this.ws&&this.ws.close(),this.ws=await this.createSocket(),await this.ws.whenOpen()}async setTemporaryUser(e){const t=await this.tokenManager.setTemporaryUser(e),s=this.tokenManager.getIdToken();var n,i;return s&&(n=u.GUEST,i={idToken:s},"undefined"!=typeof document&&document.dispatchEvent(new CustomEvent("arena-auth-token-updated",{detail:Object.assign(Object.assign({},i),{type:n})}))),this.ws&&this.ws.close(),this.ws=await this.createSocket(),await this.ws.whenOpen(),t}async getToken(){return await this.tokenManager.getBuzzToken()}async createSocket(){return new t(await this.getWebsocketUrl(),this.onWebsocketOpen,this.onWebsocketMessage,this.onWebsocketError,this.options.websocket)}async subscribe(e){if(!this.subscribedTopics.has(e))try{await this.sendCommand("buzz:subscribe",e),this.subscribedTopics.add(e)}catch(t){if(t instanceof l&&("already subscribed"===t.message||"already_subscribed"===t.message))return void this.subscribedTopics.add(e);throw t}}async unsubscribe(e){try{await this.sendCommand("buzz:unsubscribe",e)}catch(e){if(!(e instanceof l)||"not subscribed"!==e.message&&"not_subscribed"!==e.message)throw e}finally{this.subscribedTopics.delete(e)}}topic(e){return new i(this,e)}async sendCommand(e,t,s){const n=""+this.nextRequestId++,i={requestId:n,type:e,topic:t,content:s},o=new Promise((e,t)=>{const s={requestId:n,run:()=>this.sendWithTimeout(i,s),resolve:e,reject:t};this.pendingCommands[n]=s,this.queue.push(s)});return this.ensureSocket(),o}onEvent(e,t,s){this.eventListeners[e]||(this.eventListeners[e]={}),this.eventListeners[e][t]||(this.eventListeners[e][t]=[]),this.eventListeners[e][t].push(s)}offEvent(e,t,s){const n=this.eventListeners[e];if(!n)return;const i=n[t];if(!i)return;const o=i.indexOf(s);-1!==o&&i.splice(o,1),0===i.length&&delete n[t],0===Object.keys(n).length&&delete this.eventListeners[e]}clearEventListeners(){this.eventListeners={}}async disconnect(){this.ws&&(this.ws.close(),this.ws=null),this.queue.destroy(),this.pendingCommands={},this.eventListeners={},this.subscribedTopics.clear()}async sendWithTimeout(e,t){const s=await this.ensureSocket();"function"==typeof s.whenOpen&&await s.whenOpen(),s.send(JSON.stringify(e)),t.timeoutTimer=setTimeout(()=>{this.rejectCommand(t,new p)},this.options.commandTimeout||1e4)}dispatchEvent(e){this.eventListeners[e.topic]&&this.eventListeners[e.topic][e.eventName]&&this.eventListeners[e.topic][e.eventName].forEach(t=>t(e))}async resubscribeAllTopics(){if(console.log("resubscribeAllTopics total topics",this.subscribedTopics.size),console.log("resubscribeAllTopics topics",this.subscribedTopics),0===this.subscribedTopics.size)return;const e=Array.from(this.subscribedTopics);for(const t of e)try{await this.sendCommand("buzz:subscribe",t),console.log("resubscribeAllTopics subscribed to topic",t)}catch(e){if(e instanceof l&&("already subscribed"===e.message||"already_subscribed"===e.message))continue;this.subscribedTopics.delete(t)}}rejectCommand(e,t){clearTimeout(e.timeoutTimer),e.reject(t),delete this.pendingCommands[e.requestId]}}class l extends Error{constructor(e,t){super(e),this.errorType=t,this.name="CommandErrorResponse",Object.setPrototypeOf(this,new.target.prototype)}}class p extends Error{constructor(){super("timeout"),this.name="CommandTimeoutError",Object.setPrototypeOf(this,new.target.prototype)}}class w extends Error{constructor(e){super(e),this.name="WebsocketError",Object.setPrototypeOf(this,new.target.prototype)}}export{d as BuzzClient,l as CommandErrorResponse,p as CommandTimeoutError,w as WebsocketError};
|
|
2
2
|
//# sourceMappingURL=buzz-client.esm.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buzz-client.esm.min.js","sources":["../src/src/lib/fault_tolerant_websocket.ts","../src/src/lib/throttled_queue.ts","../src/src/lib/token-manager.ts","../src/src/lib/topic.ts","../src/src/lib/config.ts","../src/src/lib/utils/dom-events.ts","../src/src/lib/index.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":["WSImpl","window","WebSocket","FaultTolerantWebSocket","constructor","url","onOpen","onMessage","onError","options","this","reconnectDelay","shouldReconnect","isOpen","pendingOpenResolvers","ws","createWebsocket","connect","undefined","headers","errored","onopen","console","debug","splice","forEach","resolve","onmessage","event","data","error","onclose","reason","scheduleReconnect","onerror","close","setTimeout","Math","min","send","readyState","OPEN","Error","errorMessage","whenOpen","Promise","push","ThrottledQueue","windowDuration","threshold","requests","requestCount","status","windowStart","request","awake","run","destroy","waitTimer","clearTimeout","processNext","now","Date","next","shift","runRequest","waitNextWindow","warn","wait","max","TokenManager","siteId","identityBaseUrl","currentBuzzToken","currentIdToken","isExchanging","pendingPromise","tokenChangeListeners","Set","notify","token","l","exchange","_a","exchangeAuthenticated","access_token","authToken","getAnonymous","exchanged","_b","idToken","encodeURIComponent","res","fetch","method","credentials","ok","json","getTemporaryUserToken","username","body","text","parsed","JSON","parse","trim","length","maybeToken","getBuzzToken","setIdToken","setTemporaryUser","tempToken","onTokenChange","cb","add","delete","Topic","client","topic","listenerWrappers","subscriptionPromise","subscribe","emit","eventName","content","sendCommand","on","callback","wrapper","Map","set","onEvent","off","wrapperMap","get","offEvent","size","values","BUZZ_WEBSOCKET_URL","BUZZ_WEBSOCKET_URL_DEV","IDENTITY_SERVICE_URL","IDENTITY_SERVICE_URL_DEV","DEFAULTS","prod","websocketUrl","identityUrl","dev","TokenType","BuzzClient","env","namespace","nextRequestId","pendingCommands","eventListeners","subscribedTopics","unsubscribeTokenChange","onQueueError","requestId","message","command","rejectCommand","WebsocketError","stringify","onWebsocketOpen","queue","log","resubscribeAllTopics","onWebsocketError","Object","onWebsocketMessage","rawMessage","dispatchEvent","responseType","timeoutTimer","CommandErrorResponse","isEnv","envConfig","resolveBuzzConfig","tokenManager","setupIdTokenListener","document","addEventListener","detail","setToken","getWebsocketUrl","ensureSocket","createSocket","buzzToken","getToken","websocket","has","err","unsubscribe","type","payload","result","reject","sendWithTimeout","topicRegistry","callbacks","index","indexOf","keys","clearEventListeners","disconnect","clear","CommandTimeoutError","commandTimeout","topics","Array","from","errorType","super","name","setPrototypeOf","prototype"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"buzz-client.esm.min.js","sources":["../src/src/lib/fault_tolerant_websocket.ts","../src/src/lib/throttled_queue.ts","../src/src/lib/token-manager.ts","../src/src/lib/topic.ts","../src/src/lib/config.ts","../src/src/lib/utils/dom-events.ts","../src/src/lib/index.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":["WSImpl","window","WebSocket","FaultTolerantWebSocket","constructor","url","onOpen","onMessage","onError","options","this","reconnectDelay","shouldReconnect","isOpen","pendingOpenResolvers","ws","createWebsocket","connect","undefined","headers","errored","onopen","console","debug","splice","forEach","resolve","onmessage","event","data","error","onclose","reason","scheduleReconnect","onerror","close","setTimeout","Math","min","send","readyState","OPEN","Error","errorMessage","whenOpen","Promise","push","ThrottledQueue","windowDuration","threshold","requests","requestCount","status","windowStart","request","awake","run","destroy","waitTimer","clearTimeout","processNext","now","Date","next","shift","runRequest","waitNextWindow","warn","wait","max","TokenManager","siteId","identityBaseUrl","currentBuzzToken","currentIdToken","isExchanging","pendingPromise","tokenChangeListeners","Set","notify","token","l","exchange","_a","exchangeAuthenticated","access_token","authToken","getAnonymous","exchanged","_b","idToken","encodeURIComponent","res","fetch","method","credentials","ok","json","getTemporaryUserToken","username","body","text","parsed","JSON","parse","trim","length","maybeToken","getBuzzToken","setIdToken","getIdToken","setTemporaryUser","tempToken","onTokenChange","cb","add","delete","Topic","client","topic","listenerWrappers","subscriptionPromise","subscribe","emit","eventName","content","sendCommand","on","callback","wrapper","Map","set","onEvent","off","wrapperMap","get","offEvent","size","values","BUZZ_WEBSOCKET_URL","BUZZ_WEBSOCKET_URL_DEV","IDENTITY_SERVICE_URL","IDENTITY_SERVICE_URL_DEV","DEFAULTS","prod","websocketUrl","identityUrl","dev","TokenType","BuzzClient","env","namespace","nextRequestId","pendingCommands","eventListeners","subscribedTopics","onQueueError","requestId","message","command","rejectCommand","WebsocketError","stringify","onWebsocketOpen","queue","log","resubscribeAllTopics","onWebsocketError","Object","onWebsocketMessage","rawMessage","dispatchEvent","responseType","timeoutTimer","CommandErrorResponse","isEnv","envConfig","resolveBuzzConfig","tokenManager","getWebsocketUrl","ensureSocket","createSocket","setToken","buzzToken","type","params","GUEST","document","CustomEvent","detail","assign","getToken","websocket","has","err","unsubscribe","payload","result","reject","sendWithTimeout","topicRegistry","callbacks","index","indexOf","keys","clearEventListeners","disconnect","clear","CommandTimeoutError","commandTimeout","topics","Array","from","errorType","super","name","setPrototypeOf","prototype"],"mappings":"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"}
|
package/dist/buzz-client.umd.js
CHANGED
|
@@ -260,12 +260,12 @@
|
|
|
260
260
|
throw new Error("getTemporaryUserToken failed: missing token");
|
|
261
261
|
}
|
|
262
262
|
if (typeof parsed === "string" && parsed.trim().length > 0) {
|
|
263
|
-
return parsed;
|
|
263
|
+
return parsed.trim();
|
|
264
264
|
}
|
|
265
265
|
if (parsed && typeof parsed === "object") {
|
|
266
266
|
const maybeToken = (_a = parsed.token) !== null && _a !== void 0 ? _a : parsed.access_token;
|
|
267
267
|
if (maybeToken && maybeToken.length > 0)
|
|
268
|
-
return maybeToken;
|
|
268
|
+
return maybeToken.trim();
|
|
269
269
|
}
|
|
270
270
|
throw new Error("getTemporaryUserToken failed: missing token");
|
|
271
271
|
}
|
|
@@ -281,6 +281,10 @@
|
|
|
281
281
|
this.currentIdToken = idToken !== null && idToken !== void 0 ? idToken : null;
|
|
282
282
|
return this.exchange();
|
|
283
283
|
}
|
|
284
|
+
getIdToken() {
|
|
285
|
+
var _a;
|
|
286
|
+
return (_a = this.currentIdToken) !== null && _a !== void 0 ? _a : null;
|
|
287
|
+
}
|
|
284
288
|
async setTemporaryUser(username) {
|
|
285
289
|
var _a;
|
|
286
290
|
const tempToken = await this.getTemporaryUserToken(username);
|
|
@@ -366,14 +370,10 @@
|
|
|
366
370
|
dev: {
|
|
367
371
|
websocketUrl: BUZZ_WEBSOCKET_URL_DEV.length > 0
|
|
368
372
|
? BUZZ_WEBSOCKET_URL_DEV
|
|
369
|
-
:
|
|
370
|
-
? BUZZ_WEBSOCKET_URL
|
|
371
|
-
: "wss://buzz-prd.arena.im/ws",
|
|
373
|
+
: "wss://buzz-dev.arena.im/ws",
|
|
372
374
|
identityUrl: IDENTITY_SERVICE_URL_DEV.length > 0
|
|
373
375
|
? IDENTITY_SERVICE_URL_DEV
|
|
374
|
-
:
|
|
375
|
-
? IDENTITY_SERVICE_URL
|
|
376
|
-
: "https://token-service-prd.arena.im",
|
|
376
|
+
: "https://token-service-dev.arena.im",
|
|
377
377
|
},
|
|
378
378
|
};
|
|
379
379
|
function resolveBuzzConfig(env = "prod") {
|
|
@@ -388,6 +388,14 @@
|
|
|
388
388
|
TokenType["PUBLIC"] = "public";
|
|
389
389
|
TokenType["CUSTOM"] = "custom";
|
|
390
390
|
})(TokenType || (TokenType = {}));
|
|
391
|
+
function dispatchTokenUpdatedEvent(type, params) {
|
|
392
|
+
if (typeof document === "undefined") {
|
|
393
|
+
return;
|
|
394
|
+
}
|
|
395
|
+
document.dispatchEvent(new CustomEvent(TOKEN_UPDATED_EVENT, {
|
|
396
|
+
detail: Object.assign(Object.assign({}, params), { type }),
|
|
397
|
+
}));
|
|
398
|
+
}
|
|
391
399
|
|
|
392
400
|
// These should match buzz' throttling constants
|
|
393
401
|
const throttleWindowDuration = 5000;
|
|
@@ -401,7 +409,6 @@
|
|
|
401
409
|
this.pendingCommands = {};
|
|
402
410
|
this.eventListeners = {};
|
|
403
411
|
this.subscribedTopics = new Set();
|
|
404
|
-
this.unsubscribeTokenChange = null;
|
|
405
412
|
// Defined with arrow for correct `this` binding
|
|
406
413
|
this.onQueueError = (error, request) => {
|
|
407
414
|
const requestId = request.requestId;
|
|
@@ -480,16 +487,6 @@
|
|
|
480
487
|
this.queue = new ThrottledQueue(throttleWindowDuration, throttleWindowThreshold, this.onQueueError);
|
|
481
488
|
this.namespace = namespace;
|
|
482
489
|
this.options = options;
|
|
483
|
-
this.setupIdTokenListener();
|
|
484
|
-
}
|
|
485
|
-
setupIdTokenListener() {
|
|
486
|
-
// Only listen to browser events if running in a browser environment
|
|
487
|
-
if (typeof window !== "undefined") {
|
|
488
|
-
document.addEventListener(TOKEN_UPDATED_EVENT, ((event) => {
|
|
489
|
-
const { idToken } = event.detail;
|
|
490
|
-
this.setToken(idToken);
|
|
491
|
-
}));
|
|
492
|
-
}
|
|
493
490
|
}
|
|
494
491
|
async getWebsocketUrl() {
|
|
495
492
|
const token = await this.tokenManager.getBuzzToken();
|
|
@@ -510,6 +507,10 @@
|
|
|
510
507
|
}
|
|
511
508
|
async setTemporaryUser(username) {
|
|
512
509
|
const buzzToken = await this.tokenManager.setTemporaryUser(username);
|
|
510
|
+
const idToken = this.tokenManager.getIdToken();
|
|
511
|
+
if (idToken) {
|
|
512
|
+
dispatchTokenUpdatedEvent(TokenType.GUEST, { idToken });
|
|
513
|
+
}
|
|
513
514
|
if (this.ws)
|
|
514
515
|
this.ws.close();
|
|
515
516
|
this.ws = await this.createSocket();
|
|
@@ -615,10 +616,6 @@
|
|
|
615
616
|
this.ws.close();
|
|
616
617
|
this.ws = null;
|
|
617
618
|
}
|
|
618
|
-
if (this.unsubscribeTokenChange) {
|
|
619
|
-
this.unsubscribeTokenChange();
|
|
620
|
-
this.unsubscribeTokenChange = null;
|
|
621
|
-
}
|
|
622
619
|
this.queue.destroy();
|
|
623
620
|
this.pendingCommands = {};
|
|
624
621
|
this.eventListeners = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buzz-client.umd.js","sources":["../src/src/lib/fault_tolerant_websocket.ts","../src/src/lib/throttled_queue.ts","../src/src/lib/token-manager.ts","../src/src/lib/topic.ts","../src/src/lib/config.ts","../src/src/lib/utils/dom-events.ts","../src/src/lib/index.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"buzz-client.umd.js","sources":["../src/src/lib/fault_tolerant_websocket.ts","../src/src/lib/throttled_queue.ts","../src/src/lib/token-manager.ts","../src/src/lib/topic.ts","../src/src/lib/config.ts","../src/src/lib/utils/dom-events.ts","../src/src/lib/index.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).BuzzClient={})}(this,function(e){"use strict";let t;t=window.WebSocket;class s{constructor(e,t,s,n,i={}){this.onOpen=t,this.onMessage=s,this.onError=n,this.options=i,this.reconnectDelay=1e3,this.shouldReconnect=!0,this.isOpen=!1,this.pendingOpenResolvers=[],this.url=e,this.ws=this.createWebsocket(),this.connect()}createWebsocket(){return"undefined"==typeof window?new t(this.url,void 0,{headers:this.options.headers}):new t(this.url)}connect(){let e=!1;this.ws.onopen=()=>{console.debug("WebSocket connected"),this.reconnectDelay=1e3,this.isOpen=!0,this.pendingOpenResolvers.splice(0).forEach(e=>e()),this.onOpen()},this.ws.onmessage=e=>{"string"==typeof e.data?this.onMessage(e.data):console.error("binary messages are not supported")},this.ws.onclose=e=>{console.debug("WebSocket closed. Reason:",e.reason),this.isOpen=!1,this.shouldReconnect&&this.scheduleReconnect()},this.ws.onerror=t=>{e||(e=!0,console.error("WebSocket error:",t),this.ws.close(),this.isOpen=!1,this.onError())}}scheduleReconnect(){console.debug(`Reconnecting in ${this.reconnectDelay}ms...`),setTimeout(()=>{this.reconnectDelay=Math.min(2*this.reconnectDelay,1e4),this.ws=this.createWebsocket(),this.connect()},this.reconnectDelay)}send(e){if(this.ws.readyState!==t.OPEN)throw new Error(`Websocket connection not open: ${this.ws.readyState}`);try{this.ws.send(e)}catch(e){const t="Websocket connection not open: race condition";throw console.error(t),new Error(t)}}close(){this.shouldReconnect=!1,this.ws.close()}whenOpen(){return this.isOpen&&this.ws.readyState===t.OPEN?Promise.resolve():new Promise(e=>{this.pendingOpenResolvers.push(e)})}}class n{constructor(e,t,s){this.windowDuration=e,this.threshold=t,this.onError=s,this.requests=[],this.requestCount=0,this.status=0,this.windowStart=0}push(e){if(3===this.status)throw new Error("push to a destroyed queue");this.requests.push(e),1===this.status&&this.awake()}run(){0===this.status&&(console.debug("Throttled queue processing started"),this.awake())}destroy(){void 0!==this.waitTimer&&clearTimeout(this.waitTimer),console.debug("Throttled queue destroyed"),this.status=3}awake(){this.status=2,this.processNext()}processNext(){if(3===this.status)return;const e=Date.now();e-this.windowStart>this.windowDuration&&(this.windowStart=e,this.requestCount=0);const t=this.requests.shift();void 0!==t?(this.runRequest(t),this.requestCount++,this.requestCount!==this.threshold?setTimeout(()=>this.processNext(),0):this.waitNextWindow()):this.status=1}runRequest(e){try{e.run()}catch(t){this.onError(t,e)}}waitNextWindow(){console.warn("Throttling activated");const e=Math.max(0,this.windowStart+this.windowDuration-Date.now()+500);this.waitTimer=setTimeout(()=>{console.debug("Throttling deactivated"),this.processNext()},e)}}class i{constructor(e,t){this.siteId=e,this.identityBaseUrl=t,this.currentBuzzToken=null,this.currentIdToken=null,this.isExchanging=!1,this.pendingPromise=null,this.tokenChangeListeners=new Set}notify(e){this.tokenChangeListeners.forEach(t=>t(e))}async exchange(){var e;return this.isExchanging?null!==(e=this.pendingPromise)&&void 0!==e?e:Promise.resolve(null):(this.isExchanging=!0,this.pendingPromise=(async()=>{var e,t;try{if(this.currentIdToken){const t=await this.exchangeAuthenticated(this.currentIdToken);this.currentBuzzToken=null!==(e=t.access_token)&&void 0!==e?e:null}else{const e=(await this.getAnonymous()).access_token,s=await this.exchangeAuthenticated(e);this.currentBuzzToken=null!==(t=s.access_token)&&void 0!==t?t:null}}finally{this.isExchanging=!1,this.pendingPromise=null,this.notify(this.currentBuzzToken)}return this.currentBuzzToken})(),this.pendingPromise)}async exchangeAuthenticated(e){const t=`${this.identityBaseUrl}/exchange-token?siteId=${encodeURIComponent(this.siteId)}&accessToken=${encodeURIComponent(e)}`,s=await fetch(t,{method:"POST",credentials:"omit"});if(!s.ok)throw new Error(`exchangeAuthenticated failed: ${s.status}`);return await s.json()}async getAnonymous(){const e=`${this.identityBaseUrl}/anonymous-token`,t=await fetch(e,{method:"POST",credentials:"omit"});if(!t.ok)throw new Error(`getAnonymous failed: ${t.status}`);return await t.json()}async getTemporaryUserToken(e){var t;const s=`${this.identityBaseUrl}/temporary-user-token?username=${encodeURIComponent(e)}`,n=await fetch(s,{method:"POST",credentials:"omit"});if(!n.ok)throw new Error(`getTemporaryUserToken failed: ${n.status}`);const i=await n.text();let o=i;try{o=JSON.parse(i)}catch(e){throw new Error("getTemporaryUserToken failed: missing token")}if("string"==typeof o&&o.trim().length>0)return o;if(o&&"object"==typeof o){const e=null!==(t=o.token)&&void 0!==t?t:o.access_token;if(e&&e.length>0)return e}throw new Error("getTemporaryUserToken failed: missing token")}async getBuzzToken(){if(this.currentBuzzToken||await this.exchange(),!this.currentBuzzToken)throw new Error("Failed to acquire buzz token");return this.currentBuzzToken}async setIdToken(e){return this.currentIdToken=null!=e?e:null,this.exchange()}async setTemporaryUser(e){var t;const s=await this.getTemporaryUserToken(e);this.currentIdToken=s;const n=await this.exchangeAuthenticated(s);if(this.currentBuzzToken=null!==(t=n.access_token)&&void 0!==t?t:null,!this.currentBuzzToken)throw new Error("Failed to acquire buzz token from temporary user");return this.notify(this.currentBuzzToken),this.currentBuzzToken}onTokenChange(e){return this.tokenChangeListeners.add(e),()=>this.tokenChangeListeners.delete(e)}}class o{constructor(e,t){this.client=e,this.topic=t,this.listenerWrappers={},this.subscriptionPromise=this.client.subscribe(this.topic)}async emit(e,t){try{await this.subscriptionPromise;return await this.client.sendCommand(e,this.topic,t)}catch(e){throw e}}async on(e,t){await this.subscriptionPromise;const s=e=>{t(e)};this.listenerWrappers[e]||(this.listenerWrappers[e]=new Map),this.listenerWrappers[e].set(t,s),this.client.onEvent(this.topic,e,s)}async off(e,t){await this.subscriptionPromise;const s=this.listenerWrappers[e];if(s){if(t){const n=s.get(t);return n&&(this.client.offEvent(this.topic,e,n),s.delete(t)),void(0===s.size&&delete this.listenerWrappers[e])}for(const t of s.values())this.client.offEvent(this.topic,e,t);delete this.listenerWrappers[e]}}}const r="wss://buzz-prd.arena.im/ws",c="wss://buzz-dev.arena.im/ws",a="https://token-service-prd.arena.im",h="https://token-service-dev.arena.im",u={prod:{websocketUrl:r,identityUrl:a},dev:{websocketUrl:c,identityUrl:h}};var d;!function(e){e.ANONYMOUS="anonymous",e.GUEST="guest",e.PUBLIC="public",e.CUSTOM="custom"}(d||(d={}));class l extends Error{constructor(e,t){super(e),this.errorType=t,this.name="CommandErrorResponse",Object.setPrototypeOf(this,new.target.prototype)}}class p extends Error{constructor(){super("timeout"),this.name="CommandTimeoutError",Object.setPrototypeOf(this,new.target.prototype)}}class w extends Error{constructor(e){super(e),this.name="WebsocketError",Object.setPrototypeOf(this,new.target.prototype)}}e.BuzzClient=class{constructor({env:e,websocketUrl:t,namespace:s,siteId:o,token:r,options:c={}}){var a;this.ws=null,this.nextRequestId=0,this.pendingCommands={},this.eventListeners={},this.subscribedTopics=new Set,this.unsubscribeTokenChange=null,this.onQueueError=(e,t)=>{const s=t.requestId,n=e instanceof Error?e.message:`${e}`,i=this.pendingCommands[s];void 0!==i?this.rejectCommand(i,new w(n)):console.warn(`Request ID not found; request: ${JSON.stringify(t)}`)},this.onWebsocketOpen=()=>{this.queue.run(),console.log("onWebsocketOpen resubscribeAllTopics"),this.resubscribeAllTopics()},this.onWebsocketError=()=>{this.queue.destroy(),this.queue=new n(5e3,25,this.onQueueError);const e=new w("websocket connection error");Object.values(this.pendingCommands).forEach(t=>this.rejectCommand(t,e)),this.pendingCommands={}},this.onWebsocketMessage=e=>{const t=JSON.parse(e);if(t.eventName&&t.topic)return void this.dispatchEvent(t);if("rejected"===t.responseType&&"throttled"===t.reason&&console.error("Buzz server throttled this connection. Review client throttling settings"),"ack"===t.responseType)return;if(void 0===t.requestId)return void console.warn(`Missing request ID; message: ${JSON.stringify(t)}`);const s=`${t.requestId}`,n=this.pendingCommands[s];if(void 0===n)return void console.warn(`Request ID not found; message: ${JSON.stringify(t)}`);if("ok"===t.responseType||void 0===t.responseType)return clearTimeout(n.timeoutTimer),n.resolve(t),void delete this.pendingCommands[s];const i=new l(t.reason||"",t.responseType);this.rejectCommand(n,i)};const h="dev"===e||"prod"===e,d=function(e="prod"){return u[e]}(h?e:"prod");this.websocketUrl=h&&!t?d.websocketUrl:null!=t?t:d.websocketUrl;const p=null!==(a=c.identityUrl)&&void 0!==a?a:d.identityUrl;this.tokenManager=new i(o,p),this.tokenManager.setIdToken(r),this.queue=new n(5e3,25,this.onQueueError),this.namespace=s,this.options=c,this.setupIdTokenListener()}setupIdTokenListener(){"undefined"!=typeof window&&document.addEventListener("arena-auth-token-updated",e=>{const{idToken:t}=e.detail;this.setToken(t)})}async getWebsocketUrl(){const e=await this.tokenManager.getBuzzToken();return`${this.websocketUrl}?ns=${this.namespace}&token=${e}`}async ensureSocket(){return this.ws||(this.ws=await this.createSocket()),this.ws}async setToken(e){await this.tokenManager.setIdToken(e),this.ws&&this.ws.close(),this.ws=await this.createSocket(),await this.ws.whenOpen()}async setTemporaryUser(e){const t=await this.tokenManager.setTemporaryUser(e);return this.ws&&this.ws.close(),this.ws=await this.createSocket(),await this.ws.whenOpen(),t}async getToken(){return await this.tokenManager.getBuzzToken()}async createSocket(){return new s(await this.getWebsocketUrl(),this.onWebsocketOpen,this.onWebsocketMessage,this.onWebsocketError,this.options.websocket)}async subscribe(e){if(!this.subscribedTopics.has(e))try{await this.sendCommand("buzz:subscribe",e),this.subscribedTopics.add(e)}catch(t){if(t instanceof l&&("already subscribed"===t.message||"already_subscribed"===t.message))return void this.subscribedTopics.add(e);throw t}}async unsubscribe(e){try{await this.sendCommand("buzz:unsubscribe",e)}catch(e){if(!(e instanceof l)||"not subscribed"!==e.message&&"not_subscribed"!==e.message)throw e}finally{this.subscribedTopics.delete(e)}}topic(e){return new o(this,e)}async sendCommand(e,t,s){const n=""+this.nextRequestId++,i={requestId:n,type:e,topic:t,content:s},o=new Promise((e,t)=>{const s={requestId:n,run:()=>this.sendWithTimeout(i,s),resolve:e,reject:t};this.pendingCommands[n]=s,this.queue.push(s)});return this.ensureSocket(),o}onEvent(e,t,s){this.eventListeners[e]||(this.eventListeners[e]={}),this.eventListeners[e][t]||(this.eventListeners[e][t]=[]),this.eventListeners[e][t].push(s)}offEvent(e,t,s){const n=this.eventListeners[e];if(!n)return;const i=n[t];if(!i)return;const o=i.indexOf(s);-1!==o&&i.splice(o,1),0===i.length&&delete n[t],0===Object.keys(n).length&&delete this.eventListeners[e]}clearEventListeners(){this.eventListeners={}}async disconnect(){this.ws&&(this.ws.close(),this.ws=null),this.unsubscribeTokenChange&&(this.unsubscribeTokenChange(),this.unsubscribeTokenChange=null),this.queue.destroy(),this.pendingCommands={},this.eventListeners={},this.subscribedTopics.clear()}async sendWithTimeout(e,t){const s=await this.ensureSocket();"function"==typeof s.whenOpen&&await s.whenOpen(),s.send(JSON.stringify(e)),t.timeoutTimer=setTimeout(()=>{this.rejectCommand(t,new p)},this.options.commandTimeout||1e4)}dispatchEvent(e){this.eventListeners[e.topic]&&this.eventListeners[e.topic][e.eventName]&&this.eventListeners[e.topic][e.eventName].forEach(t=>t(e))}async resubscribeAllTopics(){if(console.log("resubscribeAllTopics total topics",this.subscribedTopics.size),console.log("resubscribeAllTopics topics",this.subscribedTopics),0===this.subscribedTopics.size)return;const e=Array.from(this.subscribedTopics);for(const t of e)try{await this.sendCommand("buzz:subscribe",t),console.log("resubscribeAllTopics subscribed to topic",t)}catch(e){if(e instanceof l&&("already subscribed"===e.message||"already_subscribed"===e.message))continue;this.subscribedTopics.delete(t)}}rejectCommand(e,t){clearTimeout(e.timeoutTimer),e.reject(t),delete this.pendingCommands[e.requestId]}},e.CommandErrorResponse=l,e.CommandTimeoutError=p,e.WebsocketError=w,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).BuzzClient={})}(this,function(e){"use strict";let t;t=window.WebSocket;class s{constructor(e,t,s,n,i={}){this.onOpen=t,this.onMessage=s,this.onError=n,this.options=i,this.reconnectDelay=1e3,this.shouldReconnect=!0,this.isOpen=!1,this.pendingOpenResolvers=[],this.url=e,this.ws=this.createWebsocket(),this.connect()}createWebsocket(){return"undefined"==typeof window?new t(this.url,void 0,{headers:this.options.headers}):new t(this.url)}connect(){let e=!1;this.ws.onopen=()=>{console.debug("WebSocket connected"),this.reconnectDelay=1e3,this.isOpen=!0,this.pendingOpenResolvers.splice(0).forEach(e=>e()),this.onOpen()},this.ws.onmessage=e=>{"string"==typeof e.data?this.onMessage(e.data):console.error("binary messages are not supported")},this.ws.onclose=e=>{console.debug("WebSocket closed. Reason:",e.reason),this.isOpen=!1,this.shouldReconnect&&this.scheduleReconnect()},this.ws.onerror=t=>{e||(e=!0,console.error("WebSocket error:",t),this.ws.close(),this.isOpen=!1,this.onError())}}scheduleReconnect(){console.debug(`Reconnecting in ${this.reconnectDelay}ms...`),setTimeout(()=>{this.reconnectDelay=Math.min(2*this.reconnectDelay,1e4),this.ws=this.createWebsocket(),this.connect()},this.reconnectDelay)}send(e){if(this.ws.readyState!==t.OPEN)throw new Error(`Websocket connection not open: ${this.ws.readyState}`);try{this.ws.send(e)}catch(e){const t="Websocket connection not open: race condition";throw console.error(t),new Error(t)}}close(){this.shouldReconnect=!1,this.ws.close()}whenOpen(){return this.isOpen&&this.ws.readyState===t.OPEN?Promise.resolve():new Promise(e=>{this.pendingOpenResolvers.push(e)})}}class n{constructor(e,t,s){this.windowDuration=e,this.threshold=t,this.onError=s,this.requests=[],this.requestCount=0,this.status=0,this.windowStart=0}push(e){if(3===this.status)throw new Error("push to a destroyed queue");this.requests.push(e),1===this.status&&this.awake()}run(){0===this.status&&(console.debug("Throttled queue processing started"),this.awake())}destroy(){void 0!==this.waitTimer&&clearTimeout(this.waitTimer),console.debug("Throttled queue destroyed"),this.status=3}awake(){this.status=2,this.processNext()}processNext(){if(3===this.status)return;const e=Date.now();e-this.windowStart>this.windowDuration&&(this.windowStart=e,this.requestCount=0);const t=this.requests.shift();void 0!==t?(this.runRequest(t),this.requestCount++,this.requestCount!==this.threshold?setTimeout(()=>this.processNext(),0):this.waitNextWindow()):this.status=1}runRequest(e){try{e.run()}catch(t){this.onError(t,e)}}waitNextWindow(){console.warn("Throttling activated");const e=Math.max(0,this.windowStart+this.windowDuration-Date.now()+500);this.waitTimer=setTimeout(()=>{console.debug("Throttling deactivated"),this.processNext()},e)}}class i{constructor(e,t){this.siteId=e,this.identityBaseUrl=t,this.currentBuzzToken=null,this.currentIdToken=null,this.isExchanging=!1,this.pendingPromise=null,this.tokenChangeListeners=new Set}notify(e){this.tokenChangeListeners.forEach(t=>t(e))}async exchange(){var e;return this.isExchanging?null!==(e=this.pendingPromise)&&void 0!==e?e:Promise.resolve(null):(this.isExchanging=!0,this.pendingPromise=(async()=>{var e,t;try{if(this.currentIdToken){const t=await this.exchangeAuthenticated(this.currentIdToken);this.currentBuzzToken=null!==(e=t.access_token)&&void 0!==e?e:null}else{const e=(await this.getAnonymous()).access_token,s=await this.exchangeAuthenticated(e);this.currentBuzzToken=null!==(t=s.access_token)&&void 0!==t?t:null}}finally{this.isExchanging=!1,this.pendingPromise=null,this.notify(this.currentBuzzToken)}return this.currentBuzzToken})(),this.pendingPromise)}async exchangeAuthenticated(e){const t=`${this.identityBaseUrl}/exchange-token?siteId=${encodeURIComponent(this.siteId)}&accessToken=${encodeURIComponent(e)}`,s=await fetch(t,{method:"POST",credentials:"omit"});if(!s.ok)throw new Error(`exchangeAuthenticated failed: ${s.status}`);return await s.json()}async getAnonymous(){const e=`${this.identityBaseUrl}/anonymous-token`,t=await fetch(e,{method:"POST",credentials:"omit"});if(!t.ok)throw new Error(`getAnonymous failed: ${t.status}`);return await t.json()}async getTemporaryUserToken(e){var t;const s=`${this.identityBaseUrl}/temporary-user-token?username=${encodeURIComponent(e)}`,n=await fetch(s,{method:"POST",credentials:"omit"});if(!n.ok)throw new Error(`getTemporaryUserToken failed: ${n.status}`);const i=await n.text();let o=i;try{o=JSON.parse(i)}catch(e){throw new Error("getTemporaryUserToken failed: missing token")}if("string"==typeof o&&o.trim().length>0)return o.trim();if(o&&"object"==typeof o){const e=null!==(t=o.token)&&void 0!==t?t:o.access_token;if(e&&e.length>0)return e.trim()}throw new Error("getTemporaryUserToken failed: missing token")}async getBuzzToken(){if(this.currentBuzzToken||await this.exchange(),!this.currentBuzzToken)throw new Error("Failed to acquire buzz token");return this.currentBuzzToken}async setIdToken(e){return this.currentIdToken=null!=e?e:null,this.exchange()}getIdToken(){var e;return null!==(e=this.currentIdToken)&&void 0!==e?e:null}async setTemporaryUser(e){var t;const s=await this.getTemporaryUserToken(e);this.currentIdToken=s;const n=await this.exchangeAuthenticated(s);if(this.currentBuzzToken=null!==(t=n.access_token)&&void 0!==t?t:null,!this.currentBuzzToken)throw new Error("Failed to acquire buzz token from temporary user");return this.notify(this.currentBuzzToken),this.currentBuzzToken}onTokenChange(e){return this.tokenChangeListeners.add(e),()=>this.tokenChangeListeners.delete(e)}}class o{constructor(e,t){this.client=e,this.topic=t,this.listenerWrappers={},this.subscriptionPromise=this.client.subscribe(this.topic)}async emit(e,t){try{await this.subscriptionPromise;return await this.client.sendCommand(e,this.topic,t)}catch(e){throw e}}async on(e,t){await this.subscriptionPromise;const s=e=>{t(e)};this.listenerWrappers[e]||(this.listenerWrappers[e]=new Map),this.listenerWrappers[e].set(t,s),this.client.onEvent(this.topic,e,s)}async off(e,t){await this.subscriptionPromise;const s=this.listenerWrappers[e];if(s){if(t){const n=s.get(t);return n&&(this.client.offEvent(this.topic,e,n),s.delete(t)),void(0===s.size&&delete this.listenerWrappers[e])}for(const t of s.values())this.client.offEvent(this.topic,e,t);delete this.listenerWrappers[e]}}}const r="wss://buzz-prd.arena.im/ws",c="wss://buzz-dev.arena.im/ws",a="https://token-service-prd.arena.im",h="https://token-service-dev.arena.im",u={prod:{websocketUrl:r,identityUrl:a},dev:{websocketUrl:c,identityUrl:h}};var d;!function(e){e.ANONYMOUS="anonymous",e.GUEST="guest",e.PUBLIC="public",e.CUSTOM="custom"}(d||(d={}));class l extends Error{constructor(e,t){super(e),this.errorType=t,this.name="CommandErrorResponse",Object.setPrototypeOf(this,new.target.prototype)}}class p extends Error{constructor(){super("timeout"),this.name="CommandTimeoutError",Object.setPrototypeOf(this,new.target.prototype)}}class w extends Error{constructor(e){super(e),this.name="WebsocketError",Object.setPrototypeOf(this,new.target.prototype)}}e.BuzzClient=class{constructor({env:e,websocketUrl:t,namespace:s,siteId:o,token:r,options:c={}}){var a;this.ws=null,this.nextRequestId=0,this.pendingCommands={},this.eventListeners={},this.subscribedTopics=new Set,this.onQueueError=(e,t)=>{const s=t.requestId,n=e instanceof Error?e.message:`${e}`,i=this.pendingCommands[s];void 0!==i?this.rejectCommand(i,new w(n)):console.warn(`Request ID not found; request: ${JSON.stringify(t)}`)},this.onWebsocketOpen=()=>{this.queue.run(),console.log("onWebsocketOpen resubscribeAllTopics"),this.resubscribeAllTopics()},this.onWebsocketError=()=>{this.queue.destroy(),this.queue=new n(5e3,25,this.onQueueError);const e=new w("websocket connection error");Object.values(this.pendingCommands).forEach(t=>this.rejectCommand(t,e)),this.pendingCommands={}},this.onWebsocketMessage=e=>{const t=JSON.parse(e);if(t.eventName&&t.topic)return void this.dispatchEvent(t);if("rejected"===t.responseType&&"throttled"===t.reason&&console.error("Buzz server throttled this connection. Review client throttling settings"),"ack"===t.responseType)return;if(void 0===t.requestId)return void console.warn(`Missing request ID; message: ${JSON.stringify(t)}`);const s=`${t.requestId}`,n=this.pendingCommands[s];if(void 0===n)return void console.warn(`Request ID not found; message: ${JSON.stringify(t)}`);if("ok"===t.responseType||void 0===t.responseType)return clearTimeout(n.timeoutTimer),n.resolve(t),void delete this.pendingCommands[s];const i=new l(t.reason||"",t.responseType);this.rejectCommand(n,i)};const h="dev"===e||"prod"===e,d=function(e="prod"){return u[e]}(h?e:"prod");this.websocketUrl=h&&!t?d.websocketUrl:null!=t?t:d.websocketUrl;const p=null!==(a=c.identityUrl)&&void 0!==a?a:d.identityUrl;this.tokenManager=new i(o,p),this.tokenManager.setIdToken(r),this.queue=new n(5e3,25,this.onQueueError),this.namespace=s,this.options=c}async getWebsocketUrl(){const e=await this.tokenManager.getBuzzToken();return`${this.websocketUrl}?ns=${this.namespace}&token=${e}`}async ensureSocket(){return this.ws||(this.ws=await this.createSocket()),this.ws}async setToken(e){await this.tokenManager.setIdToken(e),this.ws&&this.ws.close(),this.ws=await this.createSocket(),await this.ws.whenOpen()}async setTemporaryUser(e){const t=await this.tokenManager.setTemporaryUser(e),s=this.tokenManager.getIdToken();var n,i;return s&&(n=d.GUEST,i={idToken:s},"undefined"!=typeof document&&document.dispatchEvent(new CustomEvent("arena-auth-token-updated",{detail:Object.assign(Object.assign({},i),{type:n})}))),this.ws&&this.ws.close(),this.ws=await this.createSocket(),await this.ws.whenOpen(),t}async getToken(){return await this.tokenManager.getBuzzToken()}async createSocket(){return new s(await this.getWebsocketUrl(),this.onWebsocketOpen,this.onWebsocketMessage,this.onWebsocketError,this.options.websocket)}async subscribe(e){if(!this.subscribedTopics.has(e))try{await this.sendCommand("buzz:subscribe",e),this.subscribedTopics.add(e)}catch(t){if(t instanceof l&&("already subscribed"===t.message||"already_subscribed"===t.message))return void this.subscribedTopics.add(e);throw t}}async unsubscribe(e){try{await this.sendCommand("buzz:unsubscribe",e)}catch(e){if(!(e instanceof l)||"not subscribed"!==e.message&&"not_subscribed"!==e.message)throw e}finally{this.subscribedTopics.delete(e)}}topic(e){return new o(this,e)}async sendCommand(e,t,s){const n=""+this.nextRequestId++,i={requestId:n,type:e,topic:t,content:s},o=new Promise((e,t)=>{const s={requestId:n,run:()=>this.sendWithTimeout(i,s),resolve:e,reject:t};this.pendingCommands[n]=s,this.queue.push(s)});return this.ensureSocket(),o}onEvent(e,t,s){this.eventListeners[e]||(this.eventListeners[e]={}),this.eventListeners[e][t]||(this.eventListeners[e][t]=[]),this.eventListeners[e][t].push(s)}offEvent(e,t,s){const n=this.eventListeners[e];if(!n)return;const i=n[t];if(!i)return;const o=i.indexOf(s);-1!==o&&i.splice(o,1),0===i.length&&delete n[t],0===Object.keys(n).length&&delete this.eventListeners[e]}clearEventListeners(){this.eventListeners={}}async disconnect(){this.ws&&(this.ws.close(),this.ws=null),this.queue.destroy(),this.pendingCommands={},this.eventListeners={},this.subscribedTopics.clear()}async sendWithTimeout(e,t){const s=await this.ensureSocket();"function"==typeof s.whenOpen&&await s.whenOpen(),s.send(JSON.stringify(e)),t.timeoutTimer=setTimeout(()=>{this.rejectCommand(t,new p)},this.options.commandTimeout||1e4)}dispatchEvent(e){this.eventListeners[e.topic]&&this.eventListeners[e.topic][e.eventName]&&this.eventListeners[e.topic][e.eventName].forEach(t=>t(e))}async resubscribeAllTopics(){if(console.log("resubscribeAllTopics total topics",this.subscribedTopics.size),console.log("resubscribeAllTopics topics",this.subscribedTopics),0===this.subscribedTopics.size)return;const e=Array.from(this.subscribedTopics);for(const t of e)try{await this.sendCommand("buzz:subscribe",t),console.log("resubscribeAllTopics subscribed to topic",t)}catch(e){if(e instanceof l&&("already subscribed"===e.message||"already_subscribed"===e.message))continue;this.subscribedTopics.delete(t)}}rejectCommand(e,t){clearTimeout(e.timeoutTimer),e.reject(t),delete this.pendingCommands[e.requestId]}},e.CommandErrorResponse=l,e.CommandTimeoutError=p,e.WebsocketError=w,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
2
2
|
//# sourceMappingURL=buzz-client.umd.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buzz-client.umd.min.js","sources":["../src/src/lib/fault_tolerant_websocket.ts","../src/src/lib/throttled_queue.ts","../src/src/lib/token-manager.ts","../src/src/lib/topic.ts","../src/src/lib/config.ts","../src/src/lib/utils/dom-events.ts","../src/src/lib/index.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":["WSImpl","window","WebSocket","FaultTolerantWebSocket","constructor","url","onOpen","onMessage","onError","options","this","reconnectDelay","shouldReconnect","isOpen","pendingOpenResolvers","ws","createWebsocket","connect","undefined","headers","errored","onopen","console","debug","splice","forEach","resolve","onmessage","event","data","error","onclose","reason","scheduleReconnect","onerror","close","setTimeout","Math","min","send","readyState","OPEN","Error","errorMessage","whenOpen","Promise","push","ThrottledQueue","windowDuration","threshold","requests","requestCount","status","windowStart","request","awake","run","destroy","waitTimer","clearTimeout","processNext","now","Date","next","shift","runRequest","waitNextWindow","warn","wait","max","TokenManager","siteId","identityBaseUrl","currentBuzzToken","currentIdToken","isExchanging","pendingPromise","tokenChangeListeners","Set","notify","token","l","exchange","_a","exchangeAuthenticated","access_token","authToken","getAnonymous","exchanged","_b","idToken","encodeURIComponent","res","fetch","method","credentials","ok","json","getTemporaryUserToken","username","body","text","parsed","JSON","parse","trim","length","maybeToken","getBuzzToken","setIdToken","setTemporaryUser","tempToken","onTokenChange","cb","add","delete","Topic","client","topic","listenerWrappers","subscriptionPromise","subscribe","emit","eventName","content","sendCommand","on","callback","wrapper","Map","set","onEvent","off","wrapperMap","get","offEvent","size","values","BUZZ_WEBSOCKET_URL","BUZZ_WEBSOCKET_URL_DEV","IDENTITY_SERVICE_URL","IDENTITY_SERVICE_URL_DEV","DEFAULTS","prod","websocketUrl","identityUrl","dev","TokenType","CommandErrorResponse","message","errorType","super","name","Object","setPrototypeOf","prototype","CommandTimeoutError","WebsocketError","env","namespace","nextRequestId","pendingCommands","eventListeners","subscribedTopics","unsubscribeTokenChange","onQueueError","requestId","command","rejectCommand","stringify","onWebsocketOpen","queue","log","resubscribeAllTopics","onWebsocketError","onWebsocketMessage","rawMessage","dispatchEvent","responseType","timeoutTimer","isEnv","envConfig","resolveBuzzConfig","tokenManager","setupIdTokenListener","document","addEventListener","detail","setToken","getWebsocketUrl","ensureSocket","createSocket","buzzToken","getToken","websocket","has","err","unsubscribe","type","payload","result","reject","sendWithTimeout","topicRegistry","callbacks","index","indexOf","keys","clearEventListeners","disconnect","clear","commandTimeout","topics","Array","from"],"mappings":"iPAQA,IAAIA,EAQFA,EAASC,OAAOC,gBAgBLC,EAQX,WAAAC,CACEC,EACQC,EACAC,EACAC,EACAC,EAA4B,IAH5BC,KAAMJ,OAANA,EACAI,KAASH,UAATA,EACAG,KAAOF,QAAPA,EACAE,KAAOD,QAAPA,EAVFC,KAAcC,eAfG,IAgBjBD,KAAeE,iBAAG,EAClBF,KAAMG,QAAG,EACTH,KAAoBI,qBAAsB,GAShDJ,KAAKL,IAAMA,EACXK,KAAKK,GAAKL,KAAKM,kBACfN,KAAKO,SACP,CAEQ,eAAAD,GACN,MAAsB,oBAAXf,OAEF,IAAKD,EAAeU,KAAKL,SAAKa,EAAW,CAC9CC,QAAST,KAAKD,QAAQU,UAIjB,IAAInB,EAAOU,KAAKL,IAE3B,CAEQ,OAAAY,GACN,IAAIG,GAAU,EAEdV,KAAKK,GAAGM,OAAS,KACfC,QAAQC,MAAM,uBACdb,KAAKC,eAjDgB,IAkDrBD,KAAKG,QAAS,EAEdH,KAAKI,qBAAqBU,OAAO,GAAGC,QAASC,GAAYA,KACzDhB,KAAKJ,UAGPI,KAAKK,GAAGY,UAAaC,IACO,iBAAfA,EAAMC,KAKjBnB,KAAKH,UAAUqB,EAAMC,MAJnBP,QAAQQ,MAAM,sCAOlBpB,KAAKK,GAAGgB,QAAWH,IACjBN,QAAQC,MAAM,4BAA6BK,EAAMI,QACjDtB,KAAKG,QAAS,EACVH,KAAKE,iBAAiBF,KAAKuB,qBAGjCvB,KAAKK,GAAGmB,QAAWN,IACbR,IAGJA,GAAU,EACVE,QAAQQ,MAAM,mBAAoBF,GAClClB,KAAKK,GAAGoB,QACRzB,KAAKG,QAAS,EACdH,KAAKF,WAET,CAEQ,iBAAAyB,GACNX,QAAQC,MAAM,mBAAmBb,KAAKC,uBACtCyB,WAAW,KACT1B,KAAKC,eAAiB0B,KAAKC,IApFJ,EAqFrB5B,KAAKC,eAtFa,KAyFpBD,KAAKK,GAAKL,KAAKM,kBACfN,KAAKO,WACJP,KAAKC,eACV,CAEO,IAAA4B,CAAKV,GACV,GAAInB,KAAKK,GAAGyB,aAAexC,EAAOyC,KAChC,MAAM,IAAIC,MAAM,kCAAkChC,KAAKK,GAAGyB,cAG5D,IACE9B,KAAKK,GAAGwB,KAAKV,EACf,CAAE,MAAOC,GACP,MAAMa,EAAe,gDAErB,MADArB,QAAQQ,MAAMa,GACR,IAAID,MAAMC,EAClB,CACF,CAEO,KAAAR,GACLzB,KAAKE,iBAAkB,EACvBF,KAAKK,GAAGoB,OACV,CAEO,QAAAS,GACL,OAAIlC,KAAKG,QAAUH,KAAKK,GAAGyB,aAAexC,EAAOyC,KACxCI,QAAQnB,UAEV,IAAImB,QAASnB,IAClBhB,KAAKI,qBAAqBgC,KAAKpB,IAEnC,QClGWqB,EAOX,WAAA3C,CACU4C,EACAC,EACAzC,GAFAE,KAAcsC,eAAdA,EACAtC,KAASuC,UAATA,EACAvC,KAAOF,QAAPA,EATVE,KAAQwC,SAAc,GACtBxC,KAAYyC,aAAW,EAEvBzC,KAAA0C,OAA+B,EAC/B1C,KAAW2C,YAAW,CAMlB,CAEJ,IAAAP,CAAKQ,GACH,GAAe,IAAX5C,KAAK0C,OACP,MAAM,IAAIV,MAAM,6BAGlBhC,KAAKwC,SAASJ,KAAKQ,GACJ,IAAX5C,KAAK0C,QACP1C,KAAK6C,OAER,CAED,GAAAC,GACiB,IAAX9C,KAAK0C,SAGT9B,QAAQC,MAAM,sCACdb,KAAK6C,QACN,CAED,OAAAE,QACyBvC,IAAnBR,KAAKgD,WACPC,aAAajD,KAAKgD,WAEpBpC,QAAQC,MAAM,6BACdb,KAAK0C,OAAM,CACZ,CAEO,KAAAG,GACN7C,KAAK0C,OAAM,EACX1C,KAAKkD,aACN,CAEO,WAAAA,GACN,GAAe,IAAXlD,KAAK0C,OACP,OAGF,MAAMS,EAAMC,KAAKD,MACbA,EAAMnD,KAAK2C,YAAc3C,KAAKsC,iBAChCtC,KAAK2C,YAAcQ,EACnBnD,KAAKyC,aAAe,GAGtB,MAAMY,EAAOrD,KAAKwC,SAASc,aACd9C,IAAT6C,GAKJrD,KAAKuD,WAAWF,GAChBrD,KAAKyC,eACDzC,KAAKyC,eAAiBzC,KAAKuC,UAM/Bb,WAAW,IAAM1B,KAAKkD,cAAe,GALnClD,KAAKwD,kBAPLxD,KAAK0C,OAAM,CAad,CAEO,UAAAa,CAAWX,GACjB,IACEA,EAAQE,KACT,CAAC,MAAO1B,GACPpB,KAAKF,QAAQsB,EAAOwB,EACrB,CACF,CAEO,cAAAY,GACN5C,QAAQ6C,KAAK,wBACb,MAAMC,EAAO/B,KAAKgC,IAChB,EACA3D,KAAK2C,YAAc3C,KAAKsC,eAAiBc,KAAKD,MAxHxB,KA0HxBnD,KAAKgD,UAAYtB,WAAW,KAC1Bd,QAAQC,MAAM,0BACdb,KAAKkD,eACJQ,EACJ,QCtIUE,EAOX,WAAAlE,CACmBmE,EACAC,GADA9D,KAAM6D,OAANA,EACA7D,KAAe8D,gBAAfA,EARX9D,KAAgB+D,iBAAkB,KAClC/D,KAAcgE,eAA8B,KAC5ChE,KAAYiE,cAAG,EACfjE,KAAckE,eAAkC,KAChDlE,KAAAmE,qBAAuB,IAAIC,GAK/B,CAEI,MAAAC,CAAOC,GACbtE,KAAKmE,qBAAqBpD,QAASwD,GAAMA,EAAED,GAC5C,CAEO,cAAME,SACZ,OAAIxE,KAAKiE,aAAwC,QAAnBQ,EAAAzE,KAAKkE,sBAAc,IAAAO,EAAAA,EAAItC,QAAQnB,QAAQ,OACrEhB,KAAKiE,cAAe,EACpBjE,KAAKkE,eAAiB,mBACpB,IACE,GAAIlE,KAAKgE,eAAgB,CACvB,MAAM7C,QAAanB,KAAK0E,sBAAsB1E,KAAKgE,gBACnDhE,KAAK+D,iBAAwC,QAArBU,EAAAtD,EAAKwD,oBAAgB,IAAAF,EAAAA,EAAA,IAC9C,KAAM,CACL,MACMG,SADa5E,KAAK6E,gBACDF,aACjBG,QAAkB9E,KAAK0E,sBAAsBE,GACnD5E,KAAK+D,iBAA6C,QAA1BgB,EAAAD,EAAUH,oBAAgB,IAAAI,EAAAA,EAAA,IACnD,CACF,CAAS,QACR/E,KAAKiE,cAAe,EACpBjE,KAAKkE,eAAiB,KACtBlE,KAAKqE,OAAOrE,KAAK+D,iBAClB,CACD,OAAO/D,KAAK+D,gBACb,EAjBqB,GAkBf/D,KAAKkE,eACb,CAEO,2BAAMQ,CACZM,GAEA,MAAMrF,EAAM,GACVK,KAAK8D,yCACmBmB,mBACxBjF,KAAK6D,uBACUoB,mBAAmBD,KAC9BE,QAAYC,MAAMxF,EAAK,CAAEyF,OAAQ,OAAQC,YAAa,SAC5D,IAAKH,EAAII,GAAI,MAAM,IAAItD,MAAM,iCAAiCkD,EAAIxC,UAClE,aAAcwC,EAAIK,MACnB,CAEO,kBAAMV,GACZ,MAAMlF,EAAM,GAAGK,KAAK8D,kCACdoB,QAAYC,MAAMxF,EAAK,CAAEyF,OAAQ,OAAQC,YAAa,SAC5D,IAAKH,EAAII,GAAI,MAAM,IAAItD,MAAM,wBAAwBkD,EAAIxC,UACzD,aAAcwC,EAAIK,MACnB,CAEO,2BAAMC,CAAsBC,SAClC,MAAM9F,EAAM,GAAGK,KAAK8D,iDAAiDmB,mBACnEQ,KAEIP,QAAYC,MAAMxF,EAAK,CAAEyF,OAAQ,OAAQC,YAAa,SAC5D,IAAKH,EAAII,GAAI,MAAM,IAAItD,MAAM,iCAAiCkD,EAAIxC,UAClE,MAAMgD,QAAaR,EAAIS,OACvB,IAAIC,EAAkBF,EACtB,IACEE,EAASC,KAAKC,MAAMJ,EACrB,CAAC,MAAAX,GACA,MAAM,IAAI/C,MAAM,8CACjB,CACD,GAAsB,iBAAX4D,GAAuBA,EAAOG,OAAOC,OAAS,EACvD,OAAOJ,EAET,GAAIA,GAA4B,iBAAXA,EAAqB,CACxC,MAAMK,EAEH,QADDxB,EAACmB,EAA8BtB,aAC9B,IAAAG,EAAAA,EAAAmB,EAAqCjB,aACxC,GAAIsB,GAAcA,EAAWD,OAAS,EAAG,OAAOC,CACjD,CACD,MAAM,IAAIjE,MAAM,8CACjB,CAEM,kBAAMkE,GAEX,GADKlG,KAAK+D,wBAAwB/D,KAAKwE,YAClCxE,KAAK+D,iBAAkB,MAAM,IAAI/B,MAAM,gCAC5C,OAAOhC,KAAK+D,gBACb,CAEM,gBAAMoC,CAAWnB,GAGtB,OADAhF,KAAKgE,eAAiBgB,QAAAA,EAAW,KAC1BhF,KAAKwE,UACb,CAEM,sBAAM4B,CAAiBX,SAC5B,MAAMY,QAAkBrG,KAAKwF,sBAAsBC,GACnDzF,KAAKgE,eAAiBqC,EACtB,MAAMvB,QAAkB9E,KAAK0E,sBAAsB2B,GAEnD,GADArG,KAAK+D,iBAA6C,QAA1BU,EAAAK,EAAUH,oBAAgB,IAAAF,EAAAA,EAAA,MAC7CzE,KAAK+D,iBACR,MAAM,IAAI/B,MAAM,oDAGlB,OADAhC,KAAKqE,OAAOrE,KAAK+D,kBACV/D,KAAK+D,gBACb,CAEM,aAAAuC,CAAcC,GAEnB,OADAvG,KAAKmE,qBAAqBqC,IAAID,GACvB,IAAMvG,KAAKmE,qBAAqBsC,OAAOF,EAC/C,QCxGUG,EAOX,WAAAhH,CAAoBiH,EAA4BC,GAA5B5G,KAAM2G,OAANA,EAA4B3G,KAAK4G,MAALA,EALxC5G,KAAgB6G,iBAGpB,GAGF7G,KAAK8G,oBAAsB9G,KAAK2G,OAAOI,UAAU/G,KAAK4G,MACvD,CAEM,UAAMI,CAAQC,EAAmBC,GACtC,UACQlH,KAAK8G,oBAMX,aALqB9G,KAAK2G,OAAOQ,YAC/BF,EACAjH,KAAK4G,MACLM,EAGH,CAAC,MAAO9F,GACP,MAAMA,CACP,CACF,CAEM,QAAMgG,CAAMH,EAAmBI,SAC9BrH,KAAK8G,oBACX,MAAMQ,EAAWpG,IACfmG,EAASnG,IAGNlB,KAAK6G,iBAAiBI,KACzBjH,KAAK6G,iBAAiBI,GAAa,IAAIM,KAEzCvH,KAAK6G,iBAAiBI,GAAWO,IAC/BH,EACAC,GAGFtH,KAAK2G,OAAOc,QAAQzH,KAAK4G,MAAOK,EAAWK,EAC5C,CAEM,SAAMI,CAAOT,EAAmBI,SAC/BrH,KAAK8G,oBAEX,MAAMa,EAAa3H,KAAK6G,iBAAiBI,GACzC,GAAKU,EAAL,CAEA,GAAIN,EAAU,CACZ,MAAMC,EAAUK,EAAWC,IAAIP,GAQ/B,OAPIC,IACFtH,KAAK2G,OAAOkB,SAAS7H,KAAK4G,MAAOK,EAAWK,GAC5CK,EAAWlB,OAAOY,SAEI,IAApBM,EAAWG,aACN9H,KAAK6G,iBAAiBI,GAGhC,CAED,IAAK,MAAMK,KAAWK,EAAWI,SAC/B/H,KAAK2G,OAAOkB,SAAS7H,KAAK4G,MAAOK,EAAWK,UAEvCtH,KAAK6G,iBAAiBI,EAjBL,CAkBzB,ECjEH,MAAMe,EAAqB,6BACrBC,EAAyB,6BACzBC,EAAuB,qCACvBC,EAA2B,qCAE3BC,EAA2D,CAC/DC,KAAM,CACJC,aAEMN,EAENO,YAEML,GAGRM,IAAK,CACHF,aAEML,EAINM,YAEMJ,IC9BV,IAAYM,GAAZ,SAAYA,GACVA,EAAA,UAAA,YACAA,EAAA,MAAA,QACAA,EAAA,OAAA,SACAA,EAAA,OAAA,QACD,CALD,CAAYA,IAAAA,EAKX,CAAA,IC4ZK,MAAOC,UAA6B1G,MACxC,WAAAtC,CACEiJ,EACOC,GAEPC,MAAMF,GAFC3I,KAAS4I,UAATA,EAGP5I,KAAK8I,KAAO,uBAGZC,OAAOC,eAAehJ,gBAAiBiJ,UACxC,EAGG,MAAOC,UAA4BlH,MACvC,WAAAtC,GACEmJ,MAAM,WACN7I,KAAK8I,KAAO,sBAGZC,OAAOC,eAAehJ,gBAAiBiJ,UACxC,EAGG,MAAOE,UAAuBnH,MAClC,WAAAtC,CAAYiJ,GACVE,MAAMF,GACN3I,KAAK8I,KAAO,iBAGZC,OAAOC,eAAehJ,gBAAiBiJ,UACxC,qBAhYD,WAAAvJ,EAAY0J,IACVA,EAAGd,aACHA,EAAYe,UACZA,EAASxF,OACTA,EAAMS,MACNA,EAAKvE,QACLA,EAAU,CAAA,UAlBZC,KAAEK,GAAkC,KACpCL,KAAasJ,cAAG,EAChBtJ,KAAeuJ,gBAAiC,GAChDvJ,KAAcwJ,eAA0C,GAEhDxJ,KAAAyJ,iBAAmB,IAAIrF,IACvBpE,KAAsB0J,uBAAwB,KAgP9C1J,KAAA2J,aAAe,CAACvI,EAAgBwB,KACtC,MAAMgH,EAAahH,EAA6BgH,UAC1C3H,EAAeb,aAAiBY,MAAQZ,EAAMuH,QAAU,GAAGvH,IAC3DyI,EAAU7J,KAAKuJ,gBAAgBK,QACrBpJ,IAAZqJ,EAKJ7J,KAAK8J,cAAcD,EAAS,IAAIV,EAAelH,IAJ7CrB,QAAQ6C,KAAK,kCAAkCoC,KAAKkE,UAAUnH,OAQ1D5C,KAAegK,gBAAG,KACxBhK,KAAKiK,MAAMnH,MACXlC,QAAQsJ,IAAI,wCACPlK,KAAKmK,wBA6BJnK,KAAgBoK,iBAAG,KAEzBpK,KAAKiK,MAAMlH,UACX/C,KAAKiK,MAAQ,IAAI5H,EA/UU,IACC,GAiV1BrC,KAAK2J,cAGP,MAAMvI,EAAQ,IAAI+H,EAAe,8BACjCJ,OAAOhB,OAAO/H,KAAKuJ,iBAAiBxI,QAAS8I,GAC3C7J,KAAK8J,cAAcD,EAASzI,IAE9BpB,KAAKuJ,gBAAkB,IAIjBvJ,KAAAqK,mBAAsBC,IAC5B,MAAM3B,EAAU9C,KAAKC,MAAMwE,GAE3B,GAAI3B,EAAQ1B,WAAa0B,EAAQ/B,MAE/B,YADA5G,KAAKuK,cAAc5B,GAerB,GAP6B,aAAzBA,EAAQ6B,cAAkD,cAAnB7B,EAAQrH,QACjDV,QAAQQ,MACN,4EAKyB,QAAzBuH,EAAQ6B,aACV,OAGF,QAA0BhK,IAAtBmI,EAAQiB,UAEV,YADAhJ,QAAQ6C,KAAK,gCAAgCoC,KAAKkE,UAAUpB,MAI9D,MAAMiB,EAAY,GAAGjB,EAAQiB,YACvBC,EAAU7J,KAAKuJ,gBAAgBK,GACrC,QAAgBpJ,IAAZqJ,EAEF,YADAjJ,QAAQ6C,KAAK,kCAAkCoC,KAAKkE,UAAUpB,MAMhE,GAA6B,OAAzBA,EAAQ6B,mBAAkDhK,IAAzBmI,EAAQ6B,aAI3C,OAHAvH,aAAa4G,EAAQY,cACrBZ,EAAQ7I,QAAQ2H,eACT3I,KAAKuJ,gBAAgBK,GAI9B,MAAMxI,EAAQ,IAAIsH,EAChBC,EAAQrH,QAAU,GAClBqH,EAAQ6B,cAEVxK,KAAK8J,cAAcD,EAASzI,IAzU5B,MAAMsJ,EAAgB,QAARtB,GAAyB,SAARA,EACzBuB,EF1CM,SACdvB,EAAuB,QAEvB,OAAOhB,EAASgB,EAClB,CEsCsBwB,CAAkBF,EAAQtB,EAAM,QAElDpJ,KAAKsI,aACHoC,IAAUpC,EACNqC,EAAUrC,aACTA,QAAAA,EAAgBqC,EAAUrC,aAEjC,MAAMC,EAAqC,QAAvB9D,EAAA1E,EAAQwI,mBAAe,IAAA9D,EAAAA,EAAAkG,EAAUpC,YACrDvI,KAAK6K,aAAe,IAAIjH,EAAaC,EAAQ0E,GAC7CvI,KAAK6K,aAAa1E,WAAW7B,GAE7BtE,KAAKiK,MAAQ,IAAI5H,EAhFU,IACC,GAkF1BrC,KAAK2J,cAGP3J,KAAKqJ,UAAYA,EACjBrJ,KAAKD,QAAUA,EACfC,KAAK8K,sBACN,CAEO,oBAAAA,GAEgB,oBAAXvL,QACTwL,SAASC,iBD1GoB,2BC2G3B9J,IAEA,MAAM8D,QAAEA,GAAY9D,EAAM+J,OAC1BjL,KAAKkL,SAASlG,EACf,EAEJ,CAEO,qBAAMmG,GACZ,MAAM7G,QAActE,KAAK6K,aAAa3E,eACtC,MAAO,GAAGlG,KAAKsI,mBAAmBtI,KAAKqJ,mBAAmB/E,GAC3D,CAEO,kBAAM8G,GAIZ,OAHKpL,KAAKK,KACRL,KAAKK,SAAWL,KAAKqL,gBAEhBrL,KAAKK,EACb,CAED,cAAM6K,CAAS5G,SACPtE,KAAK6K,aAAa1E,WAAW7B,GAC/BtE,KAAKK,IAAIL,KAAKK,GAAGoB,QACrBzB,KAAKK,SAAWL,KAAKqL,qBACfrL,KAAKK,GAAG6B,UACf,CAED,sBAAMkE,CAAiBX,GACrB,MAAM6F,QAAkBtL,KAAK6K,aAAazE,iBAAiBX,GAI3D,OAHIzF,KAAKK,IAAIL,KAAKK,GAAGoB,QACrBzB,KAAKK,SAAWL,KAAKqL,qBACfrL,KAAKK,GAAG6B,WACPoJ,CACR,CAED,cAAMC,GACJ,aAAavL,KAAK6K,aAAa3E,cAChC,CAEO,kBAAMmF,GACZ,OAAO,IAAI5L,QACHO,KAAKmL,kBACXnL,KAAKgK,gBACLhK,KAAKqK,mBACLrK,KAAKoK,iBACLpK,KAAKD,QAAQyL,UAEhB,CAED,eAAMzE,CAAUH,GACd,IAAI5G,KAAKyJ,iBAAiBgC,IAAI7E,GAC9B,UACQ5G,KAAKmH,YAAY,iBAAkBP,GACzC5G,KAAKyJ,iBAAiBjD,IAAII,EAC3B,CAAC,MAAO8E,GACP,GACEA,aAAehD,IACE,uBAAhBgD,EAAI/C,SACa,uBAAhB+C,EAAI/C,SAGN,YADA3I,KAAKyJ,iBAAiBjD,IAAII,GAG5B,MAAM8E,CACP,CACF,CAED,iBAAMC,CAAY/E,GAChB,UACQ5G,KAAKmH,YAAY,mBAAoBP,EAC5C,CAAC,MAAO8E,GACP,KACEA,aAAehD,IACE,mBAAhBgD,EAAI/C,SAAgD,mBAAhB+C,EAAI/C,QAGzC,MAAM+C,CAET,CAAS,QACR1L,KAAKyJ,iBAAiBhD,OAAOG,EAC9B,CACF,CAED,KAAAA,CAAMA,GACJ,OAAO,IAAIF,EAAM1G,KAAM4G,EACxB,CAED,iBAAMO,CACJyE,EACAhF,EACAM,GAEA,MAAM0C,EAAY,GAAG5J,KAAKsJ,gBACpBuC,EAAU,CACdjC,YACAgC,OACAhF,QACAM,WAGI4E,EAAS,IAAI3J,QAA4B,CAACnB,EAAS+K,KACvD,MAAMlC,EAAsB,CAC1BD,YACA9G,IAAK,IAAM9C,KAAKgM,gBAAgBH,EAAShC,GACzC7I,UACA+K,UAEF/L,KAAKuJ,gBAAgBK,GAAaC,EAClC7J,KAAKiK,MAAM7H,KAAKyH,KAOlB,OAFK7J,KAAKoL,eAEHU,CACR,CAED,OAAArE,CAAQb,EAAeK,EAAmBI,GACnCrH,KAAKwJ,eAAe5C,KACvB5G,KAAKwJ,eAAe5C,GAAS,IAG1B5G,KAAKwJ,eAAe5C,GAAOK,KAC9BjH,KAAKwJ,eAAe5C,GAAOK,GAAa,IAG1CjH,KAAKwJ,eAAe5C,GAAOK,GAAW7E,KAAKiF,EAC5C,CAED,QAAAQ,CAASjB,EAAeK,EAAmBI,GACzC,MAAM4E,EAAgBjM,KAAKwJ,eAAe5C,GAC1C,IAAKqF,EAAe,OACpB,MAAMC,EAAYD,EAAchF,GAChC,IAAKiF,EAAW,OAChB,MAAMC,EAAQD,EAAUE,QAAQ/E,IACjB,IAAX8E,GACFD,EAAUpL,OAAOqL,EAAO,GAED,IAArBD,EAAUlG,eACLiG,EAAchF,GAEmB,IAAtC8B,OAAOsD,KAAKJ,GAAejG,eACtBhG,KAAKwJ,eAAe5C,EAE9B,CAED,mBAAA0F,GACEtM,KAAKwJ,eAAiB,EACvB,CAED,gBAAM+C,GACAvM,KAAKK,KACPL,KAAKK,GAAGoB,QACRzB,KAAKK,GAAK,MAERL,KAAK0J,yBACP1J,KAAK0J,yBACL1J,KAAK0J,uBAAyB,MAEhC1J,KAAKiK,MAAMlH,UACX/C,KAAKuJ,gBAAkB,GACvBvJ,KAAKwJ,eAAiB,GACtBxJ,KAAKyJ,iBAAiB+C,OACvB,CAEO,qBAAMR,CAAmBH,EAAkBhC,GACjD,MAAMxJ,QAAWL,KAAKoL,eAEc,mBAAxB/K,EAAW6B,gBACd7B,EAAW6B,WAEpB7B,EAAGwB,KAAKgE,KAAKkE,UAAU8B,IACvBhC,EAAQY,aAAe/I,WAAW,KAChC1B,KAAK8J,cAAcD,EAAS,IAAIX,IAC/BlJ,KAAKD,QAAQ0M,gBA3QU,IA4Q3B,CAEO,aAAAlC,CAAcrJ,GAEjBlB,KAAKwJ,eAAetI,EAAM0F,QAC1B5G,KAAKwJ,eAAetI,EAAM0F,OAAO1F,EAAM+F,YAK1CjH,KAAKwJ,eAAetI,EAAM0F,OAAO1F,EAAM+F,WAAWlG,QAASsG,GACzDA,EAASnG,GAEZ,CAsBO,0BAAMiJ,GAMZ,GALAvJ,QAAQsJ,IACN,oCACAlK,KAAKyJ,iBAAiB3B,MAExBlH,QAAQsJ,IAAI,8BAA+BlK,KAAKyJ,kBACb,IAA/BzJ,KAAKyJ,iBAAiB3B,KAAY,OACtC,MAAM4E,EAASC,MAAMC,KAAK5M,KAAKyJ,kBAC/B,IAAK,MAAM7C,KAAS8F,EAClB,UACQ1M,KAAKmH,YAAY,iBAAkBP,GACzChG,QAAQsJ,IAAI,2CAA4CtD,EACzD,CAAC,MAAO8E,GACP,GACEA,aAAehD,IACE,uBAAhBgD,EAAI/C,SACa,uBAAhB+C,EAAI/C,SAEN,SAEF3I,KAAKyJ,iBAAiBhD,OAAOG,EAC9B,CAEJ,CAuEO,aAAAkD,CAAcD,EAAuBzI,GAC3C6B,aAAa4G,EAAQY,cACrBZ,EAAQkC,OAAO3K,UACRpB,KAAKuJ,gBAAgBM,EAAQD,UACrC"}
|
|
1
|
+
{"version":3,"file":"buzz-client.umd.min.js","sources":["../src/src/lib/fault_tolerant_websocket.ts","../src/src/lib/throttled_queue.ts","../src/src/lib/token-manager.ts","../src/src/lib/topic.ts","../src/src/lib/config.ts","../src/src/lib/utils/dom-events.ts","../src/src/lib/index.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":["WSImpl","window","WebSocket","FaultTolerantWebSocket","constructor","url","onOpen","onMessage","onError","options","this","reconnectDelay","shouldReconnect","isOpen","pendingOpenResolvers","ws","createWebsocket","connect","undefined","headers","errored","onopen","console","debug","splice","forEach","resolve","onmessage","event","data","error","onclose","reason","scheduleReconnect","onerror","close","setTimeout","Math","min","send","readyState","OPEN","Error","errorMessage","whenOpen","Promise","push","ThrottledQueue","windowDuration","threshold","requests","requestCount","status","windowStart","request","awake","run","destroy","waitTimer","clearTimeout","processNext","now","Date","next","shift","runRequest","waitNextWindow","warn","wait","max","TokenManager","siteId","identityBaseUrl","currentBuzzToken","currentIdToken","isExchanging","pendingPromise","tokenChangeListeners","Set","notify","token","l","exchange","_a","exchangeAuthenticated","access_token","authToken","getAnonymous","exchanged","_b","idToken","encodeURIComponent","res","fetch","method","credentials","ok","json","getTemporaryUserToken","username","body","text","parsed","JSON","parse","trim","length","maybeToken","getBuzzToken","setIdToken","getIdToken","setTemporaryUser","tempToken","onTokenChange","cb","add","delete","Topic","client","topic","listenerWrappers","subscriptionPromise","subscribe","emit","eventName","content","sendCommand","on","callback","wrapper","Map","set","onEvent","off","wrapperMap","get","offEvent","size","values","BUZZ_WEBSOCKET_URL","BUZZ_WEBSOCKET_URL_DEV","IDENTITY_SERVICE_URL","IDENTITY_SERVICE_URL_DEV","DEFAULTS","prod","websocketUrl","identityUrl","dev","TokenType","CommandErrorResponse","message","errorType","super","name","Object","setPrototypeOf","prototype","CommandTimeoutError","WebsocketError","env","namespace","nextRequestId","pendingCommands","eventListeners","subscribedTopics","onQueueError","requestId","command","rejectCommand","stringify","onWebsocketOpen","queue","log","resubscribeAllTopics","onWebsocketError","onWebsocketMessage","rawMessage","dispatchEvent","responseType","timeoutTimer","isEnv","envConfig","resolveBuzzConfig","tokenManager","getWebsocketUrl","ensureSocket","createSocket","setToken","buzzToken","type","params","GUEST","document","CustomEvent","detail","assign","getToken","websocket","has","err","unsubscribe","payload","result","reject","sendWithTimeout","topicRegistry","callbacks","index","indexOf","keys","clearEventListeners","disconnect","clear","commandTimeout","topics","Array","from"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,KAAK,CAAC;AAE7C,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,KAAK,CAAC;AAE7C,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AA8BD,wBAAgB,iBAAiB,CAC/B,GAAG,GAAE,eAAwB,GAC5B,qBAAqB,CAEvB"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -36,7 +36,6 @@ export declare class BuzzClient {
|
|
|
36
36
|
eventListeners: Record<string, EventCallbackRegistry>;
|
|
37
37
|
queue: ThrottledQueue;
|
|
38
38
|
private subscribedTopics;
|
|
39
|
-
private unsubscribeTokenChange;
|
|
40
39
|
private readonly websocketUrl;
|
|
41
40
|
private readonly tokenManager;
|
|
42
41
|
private readonly namespace;
|
|
@@ -49,7 +48,6 @@ export declare class BuzzClient {
|
|
|
49
48
|
token: string | null;
|
|
50
49
|
options?: ClientOptions;
|
|
51
50
|
});
|
|
52
|
-
private setupIdTokenListener;
|
|
53
51
|
private getWebsocketUrl;
|
|
54
52
|
private ensureSocket;
|
|
55
53
|
setToken(token: string | null): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,eAAe,EAAqB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ export declare class TokenManager {
|
|
|
14
14
|
private getTemporaryUserToken;
|
|
15
15
|
getBuzzToken(): Promise<string>;
|
|
16
16
|
setIdToken(idToken?: string | null): Promise<string | null>;
|
|
17
|
+
getIdToken(): string | null;
|
|
17
18
|
setTemporaryUser(username: string): Promise<string>;
|
|
18
19
|
onTokenChange(cb: (token: string | null) => void): () => void;
|
|
19
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-manager.d.ts","sourceRoot":"","sources":["../../src/lib/token-manager.ts"],"names":[],"mappings":"AAAA,qBAAa,YAAY;IAQrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,eAAe;IARlC,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,cAAc,CAAmC;IACzD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,cAAc,CAAuC;IAC7D,OAAO,CAAC,oBAAoB,CAA6C;gBAGtD,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM;IAG1C,OAAO,CAAC,MAAM;YAIA,QAAQ;YAwBR,qBAAqB;YAarB,YAAY;YAOZ,qBAAqB;IAyBtB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAM/B,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"token-manager.d.ts","sourceRoot":"","sources":["../../src/lib/token-manager.ts"],"names":[],"mappings":"AAAA,qBAAa,YAAY;IAQrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,eAAe;IARlC,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,cAAc,CAAmC;IACzD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,cAAc,CAAuC;IAC7D,OAAO,CAAC,oBAAoB,CAA6C;gBAGtD,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM;IAG1C,OAAO,CAAC,MAAM;YAIA,QAAQ;YAwBR,qBAAqB;YAarB,YAAY;YAOZ,qBAAqB;IAyBtB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAM/B,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAMjE,UAAU,IAAI,MAAM,GAAG,IAAI;IAIrB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAYzD,aAAa,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,MAAM,IAAI;CAIrE"}
|
|
@@ -13,4 +13,11 @@ export interface TokenUpdateEvent {
|
|
|
13
13
|
source?: string;
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
|
+
interface TokenEventParams {
|
|
17
|
+
idToken: string | null;
|
|
18
|
+
refreshToken?: string | null;
|
|
19
|
+
source?: string;
|
|
20
|
+
}
|
|
21
|
+
export declare function dispatchTokenUpdatedEvent(type: TokenType, params: TokenEventParams): void;
|
|
22
|
+
export {};
|
|
16
23
|
//# sourceMappingURL=dom-events.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dom-events.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/dom-events.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAE9D,oBAAY,SAAS;IACnB,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC7B,IAAI,EAAE,SAAS,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH"}
|
|
1
|
+
{"version":3,"file":"dom-events.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/dom-events.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAE9D,oBAAY,SAAS;IACnB,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC7B,IAAI,EAAE,SAAS,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,UAAU,gBAAgB;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,gBAAgB,QAWzB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@arena-im/buzz-client",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0",
|
|
4
4
|
"main": "dist/buzz-client.cjs.js",
|
|
5
5
|
"module": "dist/buzz-client.esm.js",
|
|
6
6
|
"types": "dist/types/index.d.ts",
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
"scripts": {
|
|
10
10
|
"build": "rollup -c",
|
|
11
11
|
"build:watch": "rollup -c -w",
|
|
12
|
-
"test": "
|
|
12
|
+
"test": "tsx --test --experimental-test-coverage --test-concurrency=1 test/**/*.test.ts",
|
|
13
|
+
"test:unit": "tsx --test --test-concurrency=1 test/**/*.test.ts",
|
|
13
14
|
"example:chat": "__IS_NODE__=true tsx examples/chat/index.ts",
|
|
14
15
|
"example:comments": "__IS_NODE__=true tsx examples/comments/index.ts",
|
|
15
16
|
"semver": "semantic-release"
|