stream-chat 6.7.2 → 6.9.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/browser.es.js +133 -39
- package/dist/browser.es.js.map +1 -1
- package/dist/browser.full-bundle.min.js +1 -1
- package/dist/browser.full-bundle.min.js.map +1 -1
- package/dist/browser.js +133 -39
- package/dist/browser.js.map +1 -1
- package/dist/index.es.js +133 -39
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +133 -39
- package/dist/index.js.map +1 -1
- package/dist/types/channel.d.ts +5 -0
- package/dist/types/channel.d.ts.map +1 -1
- package/dist/types/channel_state.d.ts +12 -2
- package/dist/types/channel_state.d.ts.map +1 -1
- package/dist/types/client.d.ts +7 -8
- package/dist/types/client.d.ts.map +1 -1
- package/dist/types/connection.d.ts +1 -0
- package/dist/types/connection.d.ts.map +1 -1
- package/dist/types/types.d.ts +29 -0
- package/dist/types/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/channel.ts +28 -2
- package/src/channel_state.ts +30 -3
- package/src/client.ts +28 -16
- package/src/connection.ts +4 -0
- package/src/types.ts +37 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e){"use strict";for(var t=function(e){for(var t,r=e.length,s=r%3,i=[],a=16383,c=0,u=r-s;c<u;c+=a)i.push(o(e,c,c+a>u?u:c+a));1===s?(t=e[r-1],i.push(n[t>>2]+n[t<<4&63]+"==")):2===s&&(t=(e[r-2]<<8)+e[r-1],i.push(n[t>>10]+n[t>>4&63]+n[t<<2&63]+"="));return i.join("")},n=[],r=[],s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=0,a=s.length;i<a;++i)n[i]=s[i],r[s.charCodeAt(i)]=i;function o(e,t,r){for(var s,i,a=[],o=t;o<r;o+=3)s=(e[o]<<16&16711680)+(e[o+1]<<8&65280)+(255&e[o+2]),a.push(n[(i=s)>>18&63]+n[i>>12&63]+n[i>>6&63]+n[63&i]);return a.join("")}function c(e){return"string"==typeof e}function u(e,t){return!!t&&c(e)}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63;var l=function(e){return t(new Uint8Array(function(e,t){var n=[];if(c(e)&&u(e,t)){for(var r=0,s=e.length;r<s;r++)if(e.charAt(r)){var i=t(e.charAt(r),r,e);n[r]=i}}else if(!c(e)&&!u(e,t))for(var a=0,o=e.length;a<o;a++)if(a in e){var l=t(e[a],a,e);n[a]=l}return n}(e,(function(e){return e.charCodeAt(0)}))))},h=function(e){var t,n,r,s={},i=String.fromCharCode,a=e.length,o=0,c=0,u="";for(t=0;t<64;t++)s["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(t)]=t;for(n=0;n<a;n++)for(o=(o<<6)+s[e.charAt(n)],c+=6;c>=8;)((r=o>>>(c-=8)&255)||n<a-2)&&(u+=i(r));return u};function d(){return(d=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function f(e){return(f="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 p(e,t){if(null==e)return{};var n,r,s=function(e,t){if(null==e)return{};var n,r,s={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(s[n]=e[n]);return s}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function g(e,t){if(e){if("string"==typeof e)return v(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?v(e,t):void 0}}function y(e){return function(e){if(Array.isArray(e))return v(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||g(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function m(e,t,n,r,s,i,a){try{var o=e[i](a),c=o.value}catch(e){return void n(e)}o.done?t(c):Promise.resolve(c).then(r,s)}function b(e){return function(){var t=this,n=arguments;return new Promise((function(r,s){var i=e.apply(t,n);function a(e){m(i,r,s,a,o,"next",e)}function o(e){m(i,r,s,a,o,"throw",e)}a(void 0)}))}}function w(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function k(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)}}function _(e,t,n){return t&&k(e.prototype,t),n&&k(e,n),e}function x(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var C="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};var S,U=(function(e){var t=function(e){var t,n=Object.prototype,r=n.hasOwnProperty,s="function"==typeof Symbol?Symbol:{},i=s.iterator||"@@iterator",a=s.asyncIterator||"@@asyncIterator",o=s.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function u(e,t,n,r){var s=t&&t.prototype instanceof g?t:g,i=Object.create(s.prototype),a=new O(r||[]);return i._invoke=function(e,t,n){var r=h;return function(s,i){if(r===f)throw new Error("Generator is already running");if(r===p){if("throw"===s)throw i;return T()}for(n.method=s,n.arg=i;;){var a=n.delegate;if(a){var o=S(a,n);if(o){if(o===v)continue;return o}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===h)throw r=p,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=f;var c=l(e,t,n);if("normal"===c.type){if(r=n.done?p:d,c.arg===v)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r=p,n.method="throw",n.arg=c.arg)}}}(e,n,a),i}function l(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var h="suspendedStart",d="suspendedYield",f="executing",p="completed",v={};function g(){}function y(){}function m(){}var b={};b[i]=function(){return this};var w=Object.getPrototypeOf,k=w&&w(w(E([])));k&&k!==n&&r.call(k,i)&&(b=k);var _=m.prototype=g.prototype=Object.create(b);function x(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function n(s,i,a,o){var c=l(e[s],e,i);if("throw"!==c.type){var u=c.arg,h=u.value;return h&&"object"==typeof h&&r.call(h,"__await")?t.resolve(h.__await).then((function(e){n("next",e,a,o)}),(function(e){n("throw",e,a,o)})):t.resolve(h).then((function(e){u.value=e,a(u)}),(function(e){return n("throw",e,a,o)}))}o(c.arg)}var s;this._invoke=function(e,r){function i(){return new t((function(t,s){n(e,r,t,s)}))}return s=s?s.then(i,i):i()}}function S(e,n){var r=e.iterator[n.method];if(r===t){if(n.delegate=null,"throw"===n.method){if(e.iterator.return&&(n.method="return",n.arg=t,S(e,n),"throw"===n.method))return v;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return v}var s=l(r,e.iterator,n.arg);if("throw"===s.type)return n.method="throw",n.arg=s.arg,n.delegate=null,v;var i=s.arg;return i?i.done?(n[e.resultName]=i.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,v):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,v)}function U(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function R(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function O(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(U,this),this.reset(!0)}function E(e){if(e){var n=e[i];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var s=-1,a=function n(){for(;++s<e.length;)if(r.call(e,s))return n.value=e[s],n.done=!1,n;return n.value=t,n.done=!0,n};return a.next=a}}return{next:T}}function T(){return{value:t,done:!0}}return y.prototype=_.constructor=m,m.constructor=y,y.displayName=c(m,o,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===y||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,m):(e.__proto__=m,c(e,o,"GeneratorFunction")),e.prototype=Object.create(_),e},e.awrap=function(e){return{__await:e}},x(C.prototype),C.prototype[a]=function(){return this},e.AsyncIterator=C,e.async=function(t,n,r,s,i){void 0===i&&(i=Promise);var a=new C(u(t,n,r,s),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},x(_),c(_,o,"Generator"),_[i]=function(){return this},_.toString=function(){return"[object Generator]"},e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},e.values=E,O.prototype={constructor:O,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(R),!e)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=t)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var n=this;function s(r,s){return o.type="throw",o.arg=e,n.next=r,s&&(n.method="next",n.arg=t),!!s}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],o=a.completion;if("root"===a.tryLoc)return s("end");if(a.tryLoc<=this.prev){var c=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(c&&u){if(this.prev<a.catchLoc)return s(a.catchLoc,!0);if(this.prev<a.finallyLoc)return s(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return s(a.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return s(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var s=this.tryEntries[n];if(s.tryLoc<=this.prev&&r.call(s,"finallyLoc")&&this.prev<s.finallyLoc){var i=s;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,v):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),v},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),R(n),v}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var s=r.arg;R(n)}return s}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:E(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),v}},e}(e.exports);try{regeneratorRuntime=t}catch(e){Function("r","regeneratorRuntime = r")(t)}}(S={exports:{}},S.exports),S.exports),R=function(e,t){return function(){for(var n=new Array(arguments.length),r=0;r<n.length;r++)n[r]=arguments[r];return e.apply(t,n)}},O=Object.prototype.toString;function E(e){return"[object Array]"===O.call(e)}function T(e){return void 0===e}function L(e){return null!==e&&"object"==typeof e}function M(e){if("[object Object]"!==O.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function I(e){return"[object Function]"===O.call(e)}function P(e,t){if(null!=e)if("object"!=typeof e&&(e=[e]),E(e))for(var n=0,r=e.length;n<r;n++)t.call(null,e[n],n,e);else for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.call(null,e[s],s,e)}var D={isArray:E,isArrayBuffer:function(e){return"[object ArrayBuffer]"===O.call(e)},isBuffer:function(e){return null!==e&&!T(e)&&null!==e.constructor&&!T(e.constructor)&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},isArrayBufferView:function(e){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&e.buffer instanceof ArrayBuffer},isString:function(e){return"string"==typeof e},isNumber:function(e){return"number"==typeof e},isObject:L,isPlainObject:M,isUndefined:T,isDate:function(e){return"[object Date]"===O.call(e)},isFile:function(e){return"[object File]"===O.call(e)},isBlob:function(e){return"[object Blob]"===O.call(e)},isFunction:I,isStream:function(e){return L(e)&&I(e.pipe)},isURLSearchParams:function(e){return"undefined"!=typeof URLSearchParams&&e instanceof URLSearchParams},isStandardBrowserEnv:function(){return("undefined"==typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!=typeof window&&"undefined"!=typeof document)},forEach:P,merge:function e(){var t={};function n(n,r){M(t[r])&&M(n)?t[r]=e(t[r],n):M(n)?t[r]=e({},n):E(n)?t[r]=n.slice():t[r]=n}for(var r=0,s=arguments.length;r<s;r++)P(arguments[r],n);return t},extend:function(e,t,n){return P(t,(function(t,r){e[r]=n&&"function"==typeof t?R(t,n):t})),e},trim:function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")},stripBOM:function(e){return 65279===e.charCodeAt(0)&&(e=e.slice(1)),e}};function A(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}var j=function(e,t,n){if(!t)return e;var r;if(n)r=n(t);else if(D.isURLSearchParams(t))r=t.toString();else{var s=[];D.forEach(t,(function(e,t){null!=e&&(D.isArray(e)?t+="[]":e=[e],D.forEach(e,(function(e){D.isDate(e)?e=e.toISOString():D.isObject(e)&&(e=JSON.stringify(e)),s.push(A(t)+"="+A(e))})))})),r=s.join("&")}if(r){var i=e.indexOf("#");-1!==i&&(e=e.slice(0,i)),e+=(-1===e.indexOf("?")?"?":"&")+r}return e};function F(){this.handlers=[]}F.prototype.use=function(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1},F.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},F.prototype.forEach=function(e){D.forEach(this.handlers,(function(t){null!==t&&e(t)}))};var N=F,q=function(e,t){D.forEach(e,(function(n,r){r!==t&&r.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[r])}))},W=function(e,t,n,r,s){return e.config=t,n&&(e.code=n),e.request=r,e.response=s,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}},e},B=function(e,t,n,r,s){var i=new Error(e);return W(i,t,n,r,s)},z=D.isStandardBrowserEnv()?{write:function(e,t,n,r,s,i){var a=[];a.push(e+"="+encodeURIComponent(t)),D.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),D.isString(r)&&a.push("path="+r),D.isString(s)&&a.push("domain="+s),!0===i&&a.push("secure"),document.cookie=a.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}},H=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"],J=D.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function r(e){var r=e;return t&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=r(window.location.href),function(t){var n=D.isString(t)?r(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return!0};function G(e){this.message=e}G.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},G.prototype.__CANCEL__=!0;var X=G,K=function(e){return new Promise((function(t,n){var r,s=e.data,i=e.headers,a=e.responseType;function o(){e.cancelToken&&e.cancelToken.unsubscribe(r),e.signal&&e.signal.removeEventListener("abort",r)}D.isFormData(s)&&delete i["Content-Type"];var c=new XMLHttpRequest;if(e.auth){var u=e.auth.username||"",l=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.Authorization="Basic "+btoa(u+":"+l)}var h,d,f=(h=e.baseURL,d=e.url,h&&!/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(d)?function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}(h,d):d);function p(){if(c){var r="getAllResponseHeaders"in c?function(e){var t,n,r,s={};return e?(D.forEach(e.split("\n"),(function(e){if(r=e.indexOf(":"),t=D.trim(e.substr(0,r)).toLowerCase(),n=D.trim(e.substr(r+1)),t){if(s[t]&&H.indexOf(t)>=0)return;s[t]="set-cookie"===t?(s[t]?s[t]:[]).concat([n]):s[t]?s[t]+", "+n:n}})),s):s}(c.getAllResponseHeaders()):null;!function(e,t,n){var r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(B("Request failed with status code "+n.status,n.config,null,n.request,n)):e(n)}((function(e){t(e),o()}),(function(e){n(e),o()}),{data:a&&"text"!==a&&"json"!==a?c.response:c.responseText,status:c.status,statusText:c.statusText,headers:r,config:e,request:c}),c=null}}if(c.open(e.method.toUpperCase(),j(f,e.params,e.paramsSerializer),!0),c.timeout=e.timeout,"onloadend"in c?c.onloadend=p:c.onreadystatechange=function(){c&&4===c.readyState&&(0!==c.status||c.responseURL&&0===c.responseURL.indexOf("file:"))&&setTimeout(p)},c.onabort=function(){c&&(n(B("Request aborted",e,"ECONNABORTED",c)),c=null)},c.onerror=function(){n(B("Network Error",e,null,c)),c=null},c.ontimeout=function(){var t="timeout of "+e.timeout+"ms exceeded",r=e.transitional||Z.transitional;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(B(t,e,r.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",c)),c=null},D.isStandardBrowserEnv()){var v=(e.withCredentials||J(f))&&e.xsrfCookieName?z.read(e.xsrfCookieName):void 0;v&&(i[e.xsrfHeaderName]=v)}"setRequestHeader"in c&&D.forEach(i,(function(e,t){void 0===s&&"content-type"===t.toLowerCase()?delete i[t]:c.setRequestHeader(t,e)})),D.isUndefined(e.withCredentials)||(c.withCredentials=!!e.withCredentials),a&&"json"!==a&&(c.responseType=e.responseType),"function"==typeof e.onDownloadProgress&&c.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&c.upload&&c.upload.addEventListener("progress",e.onUploadProgress),(e.cancelToken||e.signal)&&(r=function(e){c&&(n(!e||e&&e.type?new X("canceled"):e),c.abort(),c=null)},e.cancelToken&&e.cancelToken.subscribe(r),e.signal&&(e.signal.aborted?r():e.signal.addEventListener("abort",r))),s||(s=null),c.send(s)}))},V={"Content-Type":"application/x-www-form-urlencoded"};function $(e,t){!D.isUndefined(e)&&D.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var Q,Y={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:(("undefined"!=typeof XMLHttpRequest||"undefined"!=typeof process&&"[object process]"===Object.prototype.toString.call(process))&&(Q=K),Q),transformRequest:[function(e,t){return q(t,"Accept"),q(t,"Content-Type"),D.isFormData(e)||D.isArrayBuffer(e)||D.isBuffer(e)||D.isStream(e)||D.isFile(e)||D.isBlob(e)?e:D.isArrayBufferView(e)?e.buffer:D.isURLSearchParams(e)?($(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):D.isObject(e)||t&&"application/json"===t["Content-Type"]?($(t,"application/json"),function(e,t,n){if(D.isString(e))try{return(t||JSON.parse)(e),D.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){var t=this.transitional||Y.transitional,n=t&&t.silentJSONParsing,r=t&&t.forcedJSONParsing,s=!n&&"json"===this.responseType;if(s||r&&D.isString(e)&&e.length)try{return JSON.parse(e)}catch(e){if(s){if("SyntaxError"===e.name)throw W(e,this,"E_JSON_PARSE");throw e}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};D.forEach(["delete","get","head"],(function(e){Y.headers[e]={}})),D.forEach(["post","put","patch"],(function(e){Y.headers[e]=D.merge(V)}));var Z=Y,ee=function(e,t,n){var r=this||Z;return D.forEach(n,(function(n){e=n.call(r,e,t)})),e},te=function(e){return!(!e||!e.__CANCEL__)};function ne(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new X("canceled")}var re=function(e){return ne(e),e.headers=e.headers||{},e.data=ee.call(e,e.data,e.headers,e.transformRequest),e.headers=D.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),D.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]})),(e.adapter||Z.adapter)(e).then((function(t){return ne(e),t.data=ee.call(e,t.data,t.headers,e.transformResponse),t}),(function(t){return te(t)||(ne(e),t&&t.response&&(t.response.data=ee.call(e,t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))},se=function(e,t){t=t||{};var n={};function r(e,t){return D.isPlainObject(e)&&D.isPlainObject(t)?D.merge(e,t):D.isPlainObject(t)?D.merge({},t):D.isArray(t)?t.slice():t}function s(n){return D.isUndefined(t[n])?D.isUndefined(e[n])?void 0:r(void 0,e[n]):r(e[n],t[n])}function i(e){if(!D.isUndefined(t[e]))return r(void 0,t[e])}function a(n){return D.isUndefined(t[n])?D.isUndefined(e[n])?void 0:r(void 0,e[n]):r(void 0,t[n])}function o(n){return n in t?r(e[n],t[n]):n in e?r(void 0,e[n]):void 0}var c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:o};return D.forEach(Object.keys(e).concat(Object.keys(t)),(function(e){var t=c[e]||s,r=t(e);D.isUndefined(r)&&t!==o||(n[e]=r)})),n},ie="0.22.0",ae=ie,oe={};["object","boolean","number","function","string","symbol"].forEach((function(e,t){oe[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));var ce={};oe.transitional=function(e,t,n){function r(e,t){return"[Axios v"+ae+"] Transitional option '"+e+"'"+t+(n?". "+n:"")}return function(n,s,i){if(!1===e)throw new Error(r(s," has been removed"+(t?" in "+t:"")));return t&&!ce[s]&&(ce[s]=!0,console.warn(r(s," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,s,i)}};var ue={assertOptions:function(e,t,n){if("object"!=typeof e)throw new TypeError("options must be an object");for(var r=Object.keys(e),s=r.length;s-- >0;){var i=r[s],a=t[i];if(a){var o=e[i],c=void 0===o||a(o,i,e);if(!0!==c)throw new TypeError("option "+i+" must be "+c)}else if(!0!==n)throw Error("Unknown option "+i)}},validators:oe},le=ue.validators;function he(e){this.defaults=e,this.interceptors={request:new N,response:new N}}he.prototype.request=function(e){"string"==typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=se(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=e.transitional;void 0!==t&&ue.assertOptions(t,{silentJSONParsing:le.transitional(le.boolean),forcedJSONParsing:le.transitional(le.boolean),clarifyTimeoutError:le.transitional(le.boolean)},!1);var n=[],r=!0;this.interceptors.request.forEach((function(t){"function"==typeof t.runWhen&&!1===t.runWhen(e)||(r=r&&t.synchronous,n.unshift(t.fulfilled,t.rejected))}));var s,i=[];if(this.interceptors.response.forEach((function(e){i.push(e.fulfilled,e.rejected)})),!r){var a=[re,void 0];for(Array.prototype.unshift.apply(a,n),a=a.concat(i),s=Promise.resolve(e);a.length;)s=s.then(a.shift(),a.shift());return s}for(var o=e;n.length;){var c=n.shift(),u=n.shift();try{o=c(o)}catch(e){u(e);break}}try{s=re(o)}catch(e){return Promise.reject(e)}for(;i.length;)s=s.then(i.shift(),i.shift());return s},he.prototype.getUri=function(e){return e=se(this.defaults,e),j(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},D.forEach(["delete","get","head","options"],(function(e){he.prototype[e]=function(t,n){return this.request(se(n||{},{method:e,url:t,data:(n||{}).data}))}})),D.forEach(["post","put","patch"],(function(e){he.prototype[e]=function(t,n,r){return this.request(se(r||{},{method:e,url:t,data:n}))}}));var de=he;function fe(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var n=this;this.promise.then((function(e){if(n._listeners){var t,r=n._listeners.length;for(t=0;t<r;t++)n._listeners[t](e);n._listeners=null}})),this.promise.then=function(e){var t,r=new Promise((function(e){n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e){n.reason||(n.reason=new X(e),t(n.reason))}))}fe.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},fe.prototype.subscribe=function(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]},fe.prototype.unsubscribe=function(e){if(this._listeners){var t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}},fe.source=function(){var e;return{token:new fe((function(t){e=t})),cancel:e}};var pe=fe;var ve=function e(t){var n=new de(t),r=R(de.prototype.request,n);return D.extend(r,de.prototype,n),D.extend(r,n),r.create=function(n){return e(se(t,n))},r}(Z);ve.Axios=de,ve.Cancel=X,ve.CancelToken=pe,ve.isCancel=te,ve.VERSION=ie,ve.all=function(e){return Promise.all(e)},ve.spread=function(e){return function(t){return e.apply(null,t)}},ve.isAxiosError=function(e){return"object"==typeof e&&!0===e.isAxiosError};var ge=ve,ye=ve;ge.default=ye;var me=ge;function be(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,s,i=[],a=!0,o=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){o=!0,s=e}finally{try{a||null==n.return||n.return()}finally{if(o)throw s}}return i}}(e,t)||g(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function we(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ke(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?we(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):we(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var _e=function(){function e(t){var n,r=this;w(this,e),x(this,"_channel",void 0),x(this,"watcher_count",void 0),x(this,"typing",void 0),x(this,"read",void 0),x(this,"pinnedMessages",void 0),x(this,"threads",void 0),x(this,"mutedUsers",void 0),x(this,"watchers",void 0),x(this,"members",void 0),x(this,"unreadCount",void 0),x(this,"membership",void 0),x(this,"last_message_at",void 0),x(this,"isUpToDate",void 0),x(this,"messageSets",[]),x(this,"setIsUpToDate",(function(e){r.isUpToDate=e})),x(this,"removeMessageFromArray",(function(e,t){var n=e.filter((function(e){return!(e.id&&t.id&&e.id===t.id)}));return{removed:n.length<e.length,result:n}})),x(this,"updateUserMessages",(function(e){var t=function(e,t){for(var n=0;n<e.length;n++){var r,s=e[n];(null===(r=s.user)||void 0===r?void 0:r.id)===t.id&&(e[n]=ke(ke({},s),{},{user:t}))}};for(var n in r.messageSets.forEach((function(n){return t(n.messages,e)})),r.threads)t(r.threads[n],e);t(r.pinnedMessages,e)})),x(this,"deleteUserMessages",(function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=function(e,t){for(var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=0;r<e.length;r++){var s,i=e[r];(null===(s=i.user)||void 0===s?void 0:s.id)===t.id&&(e[r]=n?{cid:i.cid,created_at:i.created_at,deleted_at:t.deleted_at,id:i.id,latest_reactions:[],mentioned_users:[],own_reactions:[],parent_id:i.parent_id,reply_count:i.reply_count,status:i.status,thread_participants:i.thread_participants,type:"deleted",updated_at:i.updated_at,user:i.user}:ke(ke({},i),{},{type:"deleted",deleted_at:t.deleted_at}))}};for(var s in r.messageSets.forEach((function(r){return n(r.messages,e,t)})),r.threads)n(r.threads[s],e,t);n(r.pinnedMessages,e,t)})),this._channel=t,this.watcher_count=0,this.typing={},this.read={},this.initMessages(),this.pinnedMessages=[],this.threads={},this.mutedUsers=[],this.watchers={},this.members={},this.membership={},this.unreadCount=0,this.isUpToDate=!0,this.last_message_at=null!=(null==t||null===(n=t.state)||void 0===n?void 0:n.last_message_at)?new Date(t.state.last_message_at):null}var t;return _(e,[{key:"messages",get:function(){var e;return(null===(e=this.messageSets.find((function(e){return e.isCurrent})))||void 0===e?void 0:e.messages)||[]},set:function(e){var t=this.messageSets.findIndex((function(e){return e.isCurrent}));this.messageSets[t].messages=e}},{key:"latestMessages",get:function(){var e;return(null===(e=this.messageSets.find((function(e){return e.isLatest})))||void 0===e?void 0:e.messages)||[]},set:function(e){var t=this.messageSets.findIndex((function(e){return e.isLatest}));this.messageSets[t].messages=e}},{key:"addMessageSorted",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"latest";return this.addMessagesSorted([e],t,!1,n,r)}},{key:"formatMessage",value:function(e){return ke(ke({},e),{},{__html:e.html,pinned_at:e.pinned_at?new Date(e.pinned_at):null,created_at:e.created_at?new Date(e.created_at):new Date,updated_at:e.updated_at?new Date(e.updated_at):new Date,status:e.status||"received"})}},{key:"addMessagesSorted",value:function(e){for(var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"current",i=this.findTargetMessageSet(e,r,s),a=i.messagesToAdd,o=i.targetMessageSetIndex,c=0;c<a.length;c+=1){var u=a[c].shadowed;if(!u){var l,h=a[c].created_at instanceof Date,d=void 0;if(h)d=a[c];else(d=this.formatMessage(a[c])).user&&null!==(l=this._channel)&&void 0!==l&&l.cid&&this._channel.getClient().state.updateUserReference(d.user,this._channel.cid),n&&d.id&&this.threads[d.id]&&delete this.threads[d.id],this.last_message_at||(this.last_message_at=new Date(d.created_at.getTime())),d.created_at.getTime()>this.last_message_at.getTime()&&(this.last_message_at=new Date(d.created_at.getTime()));var f=d.parent_id;if(f&&!d.show_in_channel||-1===o||(this.messageSets[o].messages=this._addToMessageList(this.messageSets[o].messages,d,t,"created_at",r)),f&&!n){var p=this.threads[f]||[],v=this._addToMessageList(p,d,t,"created_at",r);this.threads[f]=v}}}}},{key:"addPinnedMessages",value:function(e){for(var t=0;t<e.length;t+=1)this.addPinnedMessage(e[t])}},{key:"addPinnedMessage",value:function(e){this.pinnedMessages=this._addToMessageList(this.pinnedMessages,this.formatMessage(e),!1,"pinned_at")}},{key:"removePinnedMessage",value:function(e){var t=this.removeMessageFromArray(this.pinnedMessages,e).result;this.pinnedMessages=t}},{key:"addReaction",value:function(e,t,n){var r=this;if(t){var s=t;return this._updateMessage(t,(function(t){return s.own_reactions=r._addOwnReactionToMessage(t.own_reactions,e,n),r.formatMessage(s)})),s}}},{key:"_addOwnReactionToMessage",value:function(e,t,n){return e=(e=n?[]:this._removeOwnReactionFromMessage(e,t))||[],this._channel.getClient().userID===t.user_id&&e.push(t),e}},{key:"_removeOwnReactionFromMessage",value:function(e,t){return e?e.filter((function(e){return e.user_id!==t.user_id||e.type!==t.type})):e}},{key:"removeReaction",value:function(e,t){var n=this;if(t){var r=t;return this._updateMessage(t,(function(t){return r.own_reactions=n._removeOwnReactionFromMessage(t.own_reactions,e),n.formatMessage(r)})),r}}},{key:"removeQuotedMessageReferences",value:function(e){var t=this,n=function(e){var t,n;return ke(ke({},e),{},{created_at:e.created_at.toString(),pinned_at:null===(t=e.pinned_at)||void 0===t?void 0:t.toString(),updated_at:null===(n=e.updated_at)||void 0===n?void 0:n.toString()})};this.messageSets.forEach((function(r){var s=r.messages.filter((function(t){return t.quoted_message_id===e.id})).map(n).map((function(t){return ke(ke({},t),{},{quoted_message:ke(ke({},e),{},{attachments:[]})})}));t.addMessagesSorted(s,!0)}))}},{key:"_updateMessage",value:function(e,t){var n=e.parent_id,r=e.show_in_channel,s=e.pinned;if(n&&this.threads[n]){var i=this.threads[n],a=i.findIndex((function(t){return t.id===e.id}));-1!==a&&(i[a]=t(i[a]),this.threads[n]=i)}if(!r&&!n||r){var o=this.findMessageSetIndex(e);if(-1!==o){var c=this.messageSets[o].messages.findIndex((function(t){return t.id===e.id}));-1!==c&&(this.messageSets[o].messages[c]=t(this.messageSets[o].messages[c]))}}if(s){var u=this.pinnedMessages.findIndex((function(t){return t.id===e.id}));-1!==u&&(this.pinnedMessages[u]=t(this.pinnedMessages[u]))}}},{key:"_addToMessageList",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"created_at",s=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=s||n,a=e;n&&(a=a.filter((function(e){return!(e.id&&t.id===e.id)})));var o=a.length;if(0===o&&i)return a.concat(t);if(0===o)return y(a);var c=t[r].getTime(),u=a[o-1][r].getTime()<c;if(u&&i)return a.concat(t);if(u)return y(a);for(var l=0,h=0,d=o-1;l<=d;)a[h=Math.floor((d+l)/2)][r].getTime()<=c?l=h+1:d=h-1;if(!n&&t.id){if(a[l]&&t.id===a[l].id)return a[l]=t,y(a);if(a[l-1]&&t.id===a[l-1].id)return a[l-1]=t,y(a)}return i&&a.splice(l,0,t),y(a)}},{key:"removeMessage",value:function(e){var t=!1;if(e.parent_id&&this.threads[e.parent_id]){var n=this.removeMessageFromArray(this.threads[e.parent_id],e),r=n.removed,s=n.result;this.threads[e.parent_id]=s,t=r}else{var i,a=null!==(i=e.messageSetIndex)&&void 0!==i?i:this.findMessageSetIndex(e);if(-1!==a){var o=this.removeMessageFromArray(this.messageSets[a].messages,e),c=o.removed,u=o.result;this.messageSets[a].messages=u,t=c}}return t}},{key:"filterErrorMessages",value:function(){var e=this.latestMessages.filter((function(e){return"error"!==e.type}));this.latestMessages=e}},{key:"clean",value:function(){for(var e=new Date,t=0,n=Object.entries(this.typing);t<n.length;t++){var r=be(n[t],2),s=r[0],i=r[1],a="string"==typeof i.received_at?new Date(i.received_at):i.received_at||new Date;e.getTime()-a.getTime()>7e3&&(delete this.typing[s],this._channel.getClient().dispatchEvent({cid:this._channel.cid,type:"typing.stop",user:{id:s}}))}}},{key:"clearMessages",value:function(){this.initMessages(),this.pinnedMessages=[]}},{key:"initMessages",value:function(){this.messageSets=[{messages:[],isLatest:!0,isCurrent:!0}]}},{key:"loadMessageIntoState",value:(t=b(U.mark((function e(t,n){var r,s,i,a,o;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=!1,a=!1,o=n||t,"latest"!==t){e.next=9;break}if(this.messages!==this.latestMessages){e.next=6;break}return e.abrupt("return");case 6:s=this.messageSets.findIndex((function(e){return e.isLatest})),e.next=10;break;case 9:s=this.findMessageSetIndex({id:o});case 10:if(-1!==s&&(this.switchToMessageSet(s),i=!0),a=!n||!(null===(r=this.threads[n])||void 0===r||!r.find((function(e){return e.id===t}))),!i||!a){e.next=14;break}return e.abrupt("return");case 14:if(i){e.next=17;break}return e.next=17,this._channel.query({messages:{id_around:o,limit:25}},"new");case 17:if(a||!n){e.next=20;break}return e.next=20,this._channel.getReplies(n,{id_around:t,limit:25});case 20:-1!==(s=this.findMessageSetIndex({id:o}))&&this.switchToMessageSet(s);case 22:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)})},{key:"switchToMessageSet",value:function(e){var t=this.messageSets.find((function(e){return e.isCurrent}));t&&(t.isCurrent=!1,this.messageSets[e].isCurrent=!0)}},{key:"areMessageSetsOverlap",value:function(e,t){return e.some((function(e){return t.find((function(t){return e.id===t.id}))}))}},{key:"findMessageSetIndex",value:function(e){return this.messageSets.findIndex((function(t){return!!t.messages.find((function(t){return t.id===e.id}))}))}},{key:"findTargetMessageSet",value:function(e){var t,n=this,r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"current",i=e;if(r){var a=this.messageSets.map((function(e,t){return t})).filter((function(t){return n.areMessageSetsOverlap(n.messageSets[t].messages,e)}));switch(s){case"new":a.length>0?t=a[0]:e.some((function(e){return!e.parent_id}))&&(this.messageSets.push({messages:[],isCurrent:!1,isLatest:!1}),t=this.messageSets.length-1);break;case"current":t=this.messageSets.findIndex((function(e){return e.isCurrent}));break;case"latest":t=this.messageSets.findIndex((function(e){return e.isLatest}));break;default:t=-1}var o=a.splice(0,1)[0],c=y(a);if(void 0!==o&&o!==t&&c.push(t),c.length>0){var u=this.messageSets[o],l=this.messageSets.filter((function(e,t){return-1!==c.indexOf(t)}));l.forEach((function(e){u.isLatest=u.isLatest||e.isLatest,u.isCurrent=u.isCurrent||e.isCurrent,i=[].concat(y(i),y(e.messages))})),l.forEach((function(e){return n.messageSets.splice(n.messageSets.indexOf(e),1)}));var h=this.messageSets.findIndex((function(t){return n.areMessageSetsOverlap(t.messages,e)}));t=h}}else t=this.findMessageSetIndex(e[0]);return{targetMessageSetIndex:t,messagesToAdd:i}}}]),e}();function xe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ce(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?xe(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):xe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Se={"channel.created":!0,"channel.deleted":!0,"channel.hidden":!0,"channel.kicked":!0,"channel.muted":!0,"channel.truncated":!0,"channel.unmuted":!0,"channel.updated":!0,"channel.visible":!0,"health.check":!0,"member.added":!0,"member.removed":!0,"member.updated":!0,"message.deleted":!0,"message.new":!0,"message.read":!0,"message.updated":!0,"notification.added_to_channel":!0,"notification.channel_deleted":!0,"notification.channel_mutes_updated":!0,"notification.channel_truncated":!0,"notification.invite_accepted":!0,"notification.invite_rejected":!0,"notification.invited":!0,"notification.mark_read":!0,"notification.message_new":!0,"notification.mutes_updated":!0,"notification.removed_from_channel":!0,"reaction.deleted":!0,"reaction.new":!0,"reaction.updated":!0,"typing.start":!0,"typing.stop":!0,"user.banned":!0,"user.deleted":!0,"user.presence.changed":!0,"user.unbanned":!0,"user.unread_message_reminder":!0,"user.updated":!0,"user.watching.start":!0,"user.watching.stop":!0,"connection.changed":!0,"connection.recovered":!0,"transport.changed":!0},Ue=Ce(Ce({},Se),{},{all:!0}),Re=function(e){return Ue[e]||!1},Oe="object"==typeof self?self.FormData:window.FormData;function Ee(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return Te(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Te(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,s=function(){};return{s:s,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){throw e})),f:s}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){o=!0,i=e})),f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}function Te(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Le(e,t){e.then().catch((function(e){console.warn("failed to do ".concat(t,", ran into error: "),e)}))}var Me=function(e){return new Promise((function(t){return setTimeout(t,e)}))};function Ie(e){return e&&("[object Function]"===Object.prototype.toString.call(e)||"function"==typeof e||e instanceof Function)}var Pe={TOKEN_EXPIRED:40,WS_CLOSED_SUCCESS:1e3};function De(e,t,n){var r,s=new Oe;return null!==(r=e)&&"object"===f(r)&&(r.readable||"function"==typeof r._read)||function(e){return null!=e&&null!=e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}(e)||function(e){return"undefined"!=typeof window&&"File"in window&&e instanceof File}(e)||function(e){return"undefined"!=typeof window&&"Blob"in window&&e instanceof Blob}(e)?t?s.append("file",e,t):s.append("file",e):s.append("file",{uri:e,name:t||e.split("/").reverse()[0],contentType:n||void 0,type:n||void 0}),s}function Ae(e){var t,n=[],r=Ee(Array.isArray(e)?e:[e]);try{for(r.s();!(t=r.n()).done;){var s=t.value,i=Object.entries(s);i.length>1&&console.warn("client._buildSort() - multiple fields in a single sort object detected. Object's field order is not guaranteed");for(var a=0,o=i;a<o.length;a++){var c=be(o[a],2),u=c[0],l=c[1];n.push({field:u,direction:l})}}}catch(e){r.e(e)}finally{r.f()}return n}function je(e){var t=Math.min(500+2e3*e,25e3),n=Math.min(Math.max(250,2e3*(e-1)),25e3);return Math.floor(Math.random()*(t-n)+n)}function Fe(){return(e=function(e){var t=new Uint8Array(e);return We(t),t}(16))[6]=15&e[6]|64,e[8]=191&e[8]|128,Ne(e.subarray(0,4))+"-"+Ne(e.subarray(4,6))+"-"+Ne(e.subarray(6,8))+"-"+Ne(e.subarray(8,10))+"-"+Ne(e.subarray(10,16));var e}function Ne(e){for(var t="",n=0;n<e.length;n++)t+=e[n].toString(16).padStart(2,"0");return t}function qe(e){for(var t=Math.pow(2,8*e.byteLength/e.length),n=0;n<e.length;n++)e[n]=Math.random()*t}var We="undefined"!=typeof crypto?crypto.getRandomValues.bind(crypto):"undefined"!=typeof msCrypto?msCrypto.getRandomValues.bind(msCrypto):qe;function Be(e){var t={};if(!e)return t;try{Object.getOwnPropertyNames(e).forEach((function(n){t[n]=Object.getOwnPropertyDescriptor(e,n)}))}catch(e){return{error:"failed to serialize the error"}}return t}function ze(e){"undefined"!=typeof window&&window.addEventListener&&(window.addEventListener("offline",e),window.addEventListener("online",e))}function He(e){"undefined"!=typeof window&&window.removeEventListener&&(window.removeEventListener("offline",e),window.removeEventListener("online",e))}function Je(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return Ge(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Ge(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,s=function(){};return{s:s,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:s}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){o=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}function Ge(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Xe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ke(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Xe(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Xe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Ve=function(){function e(t,n,r,s){var i=this;w(this,e),x(this,"_client",void 0),x(this,"type",void 0),x(this,"id",void 0),x(this,"data",void 0),x(this,"_data",void 0),x(this,"cid",void 0),x(this,"listeners",void 0),x(this,"state",void 0),x(this,"initialized",void 0),x(this,"lastKeyStroke",void 0),x(this,"lastTypingEvent",void 0),x(this,"isTyping",void 0),x(this,"disconnected",void 0),x(this,"create",b(U.mark((function e(){var t;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t={watch:!1,state:!1,presence:!1},e.next=3,i.query(t,"latest");case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})))),x(this,"_callChannelListeners",(function(e){var t=i,n=[];t.listeners.all&&n.push.apply(n,y(t.listeners.all)),t.listeners[e.type]&&n.push.apply(n,y(t.listeners[e.type]));for(var r=0,s=n;r<s.length;r++){var a=s[r];"string"!=typeof a&&a(e)}})),x(this,"_channelURL",(function(){if(!i.id)throw new Error("channel id is not defined");return"".concat(i.getClient().baseURL,"/channels/").concat(i.type,"/").concat(i.id)}));if(!/^[\w_-]+$/.test(n))throw new Error("Invalid chat type ".concat(n,', letters, numbers and "_-" are allowed'));if("string"==typeof r&&!/^[\w!_-]+$/.test(r))throw new Error("Invalid chat id ".concat(r,', letters, numbers and "!-_" are allowed'));this._client=t,this.type=n,this.id=r,this.data=s,this._data=Ke({},s),this.cid="".concat(n,":").concat(r),this.listeners={},this.state=new _e(this),this.initialized=!1,this.lastTypingEvent=null,this.isTyping=!1,this.disconnected=!1}var t,n,r,s,i,a,o,c,u,l,h,d,p,v,g,m,k,C,S,R,O,E,T,L,M,I,P,D,A,j,F,N,q,W,B,z,H;return _(e,[{key:"getClient",value:function(){if(!0===this.disconnected)throw Error("You can't use a channel after client.disconnect() was called");return this._client}},{key:"getConfig",value:function(){return this.getClient().configs[this.type]}},{key:"sendMessage",value:(H=b(U.mark((function e(t,n){var r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().post(this._channelURL()+"/message",Ke({message:t},n));case 2:return r=e.sent,this.state.unreadCount=0,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return H.apply(this,arguments)})},{key:"sendFile",value:function(e,t,n,r){return this.getClient().sendFile("".concat(this._channelURL(),"/file"),e,t,n,r)}},{key:"sendImage",value:function(e,t,n,r){return this.getClient().sendFile("".concat(this._channelURL(),"/image"),e,t,n,r)}},{key:"deleteFile",value:function(e){return this.getClient().delete("".concat(this._channelURL(),"/file"),{url:e})}},{key:"deleteImage",value:function(e){return this.getClient().delete("".concat(this._channelURL(),"/image"),{url:e})}},{key:"sendEvent",value:(z=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._checkInitialized(),e.next=3,this.getClient().post(this._channelURL()+"/event",{event:t});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return z.apply(this,arguments)})},{key:"search",value:(B=b(U.mark((function e(t){var n,r,s=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(n=s.length>1&&void 0!==s[1]?s[1]:{}).offset||!n.sort&&!n.next){e.next=3;break}throw Error("Cannot specify offset with sort or next parameters");case 3:if(r=Ke(Ke({filter_conditions:{cid:this.cid}},n),{},{sort:n.sort?Ae(n.sort):void 0}),"string"!=typeof t){e.next=8;break}r.query=t,e.next=13;break;case 8:if("object"!==f(t)){e.next=12;break}r.message_filter_conditions=t,e.next=13;break;case 12:throw Error("Invalid type ".concat(f(t)," for query parameter"));case 13:return e.next=15,this.getClient().wsPromise;case 15:return e.next=17,this.getClient().get(this.getClient().baseURL+"/search",{payload:r});case 17:return e.abrupt("return",e.sent);case 18:case"end":return e.stop()}}),e,this)}))),function(e){return B.apply(this,arguments)})},{key:"queryMembers",value:(W=b(U.mark((function e(t){var n,r,s,i,a,o,c=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=c.length>1&&void 0!==c[1]?c[1]:[],s=c.length>2&&void 0!==c[2]?c[2]:{},a=this.type,this.id?i=this.id:null!==(n=this.data)&&void 0!==n&&n.members&&Array.isArray(this.data.members)&&(o=this.data.members),e.next=6,this.getClient().get(this.getClient().baseURL+"/members",{payload:Ke({type:a,id:i,members:o,sort:Ae(r),filter_conditions:t},s)});case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(e){return W.apply(this,arguments)})},{key:"sendReaction",value:(q=b(U.mark((function e(t,n,r){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}throw Error("Message id is missing");case 2:if(n&&0!==Object.keys(n).length){e.next=4;break}throw Error("Reaction object is missing");case 4:return e.next=6,this.getClient().post(this.getClient().baseURL+"/messages/".concat(t,"/reaction"),Ke({reaction:n},r));case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return q.apply(this,arguments)})},{key:"deleteReaction",value:function(e,t,n){if(this._checkInitialized(),!t||!e)throw Error("Deleting a reaction requires specifying both the message and reaction type");var r=this.getClient().baseURL+"/messages/".concat(e,"/reaction/").concat(t);return n?this.getClient().delete(r,{user_id:n}):this.getClient().delete(r,{})}},{key:"update",value:(N=b(U.mark((function e(){var t,n,r,s=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=s.length>0&&void 0!==s[0]?s[0]:{},n=s.length>1?s[1]:void 0,r=s.length>2?s[2]:void 0,["config","cid","created_by","id","member_count","type","created_at","updated_at","last_message_at","own_capabilities"].forEach((function(e){delete t[e]})),e.next=7,this._update(Ke({message:n,data:t},r));case 7:return e.abrupt("return",e.sent);case 8:case"end":return e.stop()}}),e,this)}))),function(){return N.apply(this,arguments)})},{key:"updatePartial",value:(F=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().patch(this._channelURL(),t);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return F.apply(this,arguments)})},{key:"enableSlowMode",value:(j=b(U.mark((function e(t){var n;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().post(this._channelURL(),{cooldown:t});case 2:return n=e.sent,this.data=n.channel,e.abrupt("return",n);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return j.apply(this,arguments)})},{key:"disableSlowMode",value:(A=b(U.mark((function e(){var t;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().post(this._channelURL(),{cooldown:0});case 2:return t=e.sent,this.data=t.channel,e.abrupt("return",t);case 5:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"delete",value:(D=b(U.mark((function e(){var t,n=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this.getClient().delete(this._channelURL(),Ke({},t));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return D.apply(this,arguments)})},{key:"truncate",value:(P=b(U.mark((function e(){var t,n=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this.getClient().post(this._channelURL()+"/truncate",t);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return P.apply(this,arguments)})},{key:"acceptInvite",value:(I=b(U.mark((function e(){var t,n=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this._update(Ke({accept_invite:!0},t));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return I.apply(this,arguments)})},{key:"rejectInvite",value:(M=b(U.mark((function e(){var t,n=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this._update(Ke({reject_invite:!0},t));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return M.apply(this,arguments)})},{key:"addMembers",value:(L=b(U.mark((function e(t,n){var r,s=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this._update(Ke({add_members:t,message:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return L.apply(this,arguments)})},{key:"addModerators",value:(T=b(U.mark((function e(t,n){var r,s=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this._update(Ke({add_moderators:t,message:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return T.apply(this,arguments)})},{key:"assignRoles",value:(E=b(U.mark((function e(t,n){var r,s=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this._update(Ke({assign_roles:t,message:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return E.apply(this,arguments)})},{key:"inviteMembers",value:(O=b(U.mark((function e(t,n){var r,s=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this._update(Ke({invites:t,message:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return O.apply(this,arguments)})},{key:"removeMembers",value:(R=b(U.mark((function e(t,n){var r,s=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this._update(Ke({remove_members:t,message:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return R.apply(this,arguments)})},{key:"demoteModerators",value:(S=b(U.mark((function e(t,n){var r,s=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this._update(Ke({demote_moderators:t,message:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return S.apply(this,arguments)})},{key:"_update",value:(C=b(U.mark((function e(t){var n;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().post(this._channelURL(),t);case 2:return n=e.sent,this.data=n.channel,e.abrupt("return",n);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return C.apply(this,arguments)})},{key:"mute",value:(k=b(U.mark((function e(){var t,n=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this.getClient().post(this.getClient().baseURL+"/moderation/mute/channel",Ke({channel_cid:this.cid},t));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return k.apply(this,arguments)})},{key:"unmute",value:(m=b(U.mark((function e(){var t,n=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this.getClient().post(this.getClient().baseURL+"/moderation/unmute/channel",Ke({channel_cid:this.cid},t));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return m.apply(this,arguments)})},{key:"muteStatus",value:function(){return this._checkInitialized(),this.getClient()._muteStatus(this.cid)}},{key:"sendAction",value:function(e,t){if(this._checkInitialized(),!e)throw Error("Message id is missing");return this.getClient().post(this.getClient().baseURL+"/messages/".concat(e,"/action"),{message_id:e,form_data:t,id:this.id,type:this.type})}},{key:"keystroke",value:(g=b(U.mark((function e(t){var n,r,s;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!==(n=this.getConfig())&&void 0!==n&&n.typing_events){e.next=2;break}return e.abrupt("return");case 2:if(r=new Date,s=this.lastTypingEvent&&r.getTime()-this.lastTypingEvent.getTime(),this.lastKeyStroke=r,this.isTyping=!0,!(null===s||s>2e3)){e.next=10;break}return this.lastTypingEvent=new Date,e.next=10,this.sendEvent({type:"typing.start",parent_id:t});case 10:case"end":return e.stop()}}),e,this)}))),function(e){return g.apply(this,arguments)})},{key:"stopTyping",value:(v=b(U.mark((function e(t){var n;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!==(n=this.getConfig())&&void 0!==n&&n.typing_events){e.next=2;break}return e.abrupt("return");case 2:return this.lastTypingEvent=null,this.isTyping=!1,e.next=6,this.sendEvent({type:"typing.stop",parent_id:t});case 6:case"end":return e.stop()}}),e,this)}))),function(e){return v.apply(this,arguments)})},{key:"lastMessage",value:function(){var e=this.state.latestMessages.length-5;e<0&&(e=0);var t=this.state.latestMessages.length+1,n=this.state.latestMessages.slice(e,t);return n.sort((function(e,t){return t.created_at.getTime()-e.created_at.getTime()})),n[0]}},{key:"markRead",value:(p=b(U.mark((function e(){var t,n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>0&&void 0!==r[0]?r[0]:{},this._checkInitialized(),null!==(t=this.getConfig())&&void 0!==t&&t.read_events){e.next=4;break}return e.abrupt("return",Promise.resolve(null));case 4:return e.next=6,this.getClient().post(this._channelURL()+"/read",Ke({},n));case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(){return p.apply(this,arguments)})},{key:"clean",value:function(){this.lastKeyStroke&&((new Date).getTime()-this.lastKeyStroke.getTime()>1e3&&this.isTyping&&Le(this.stopTyping(),"stop typing event"));this.state.clean()}},{key:"watch",value:(d=b(U.mark((function e(t){var n,r,s;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n={state:!0,watch:!0,presence:!1},e.next=3,this.getClient().wsPromise;case 3:return this.getClient()._hasConnectionID()||(n.watch=!1),r=Ke(Ke({},n),t),e.next=7,this.query(r,"latest");case 7:return s=e.sent,this.initialized=!0,this.data=s.channel,this._client.logger("info","channel:watch() - started watching channel ".concat(this.cid),{tags:["channel"],channel:this}),e.abrupt("return",s);case 12:case"end":return e.stop()}}),e,this)}))),function(e){return d.apply(this,arguments)})},{key:"stopWatching",value:(h=b(U.mark((function e(){var t;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().post(this._channelURL()+"/stop-watching",{});case 2:return t=e.sent,this._client.logger("info","channel:watch() - stopped watching channel ".concat(this.cid),{tags:["channel"],channel:this}),e.abrupt("return",t);case 5:case"end":return e.stop()}}),e,this)}))),function(){return h.apply(this,arguments)})},{key:"getReplies",value:(l=b(U.mark((function e(t,n){var r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().get(this.getClient().baseURL+"/messages/".concat(t,"/replies"),Ke({},n));case 2:return(r=e.sent).messages&&this.state.addMessagesSorted(r.messages),e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return l.apply(this,arguments)})},{key:"getPinnedMessages",value:(u=b(U.mark((function e(t){var n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:[],e.next=3,this.getClient().get(this.getClient().baseURL+"/channels/".concat(this.type,"/").concat(this.id,"/pinned_messages"),{payload:Ke(Ke({},t),{},{sort:Ae(n)})});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return u.apply(this,arguments)})},{key:"getReactions",value:function(e,t){return this.getClient().get(this.getClient().baseURL+"/messages/".concat(e,"/reactions"),Ke({},t))}},{key:"getMessagesById",value:function(e){return this.getClient().get(this._channelURL()+"/messages",{ids:e.join(",")})}},{key:"lastRead",value:function(){this._checkInitialized();var e=this.getClient().userID;if(e)return this.state.read[e]?this.state.read[e].last_read:null}},{key:"_countMessageAsUnread",value:function(e){var t,n,r,s;return!e.shadowed&&(!e.silent&&(!(e.parent_id&&!e.show_in_channel)&&((null===(t=e.user)||void 0===t?void 0:t.id)!==this.getClient().userID&&((null===(n=e.user)||void 0===n||!n.id||!this.getClient().userMuteStatus(e.user.id))&&("system"!==e.type&&(!(Array.isArray(null===(r=this.data)||void 0===r?void 0:r.own_capabilities)&&(null===(s=this.data)||void 0===s||!s.own_capabilities.includes("read-events")))&&!this.muteStatus().muted))))))}},{key:"countUnread",value:function(e){if(!e)return this.state.unreadCount;for(var t=0,n=0;n<this.state.latestMessages.length;n+=1){var r=this.state.latestMessages[n];r.created_at>e&&this._countMessageAsUnread(r)&&t++}return t}},{key:"countUnreadMentions",value:function(){for(var e=this.lastRead(),t=this.getClient().userID,n=0,r=0;r<this.state.latestMessages.length;r+=1){var s,i=this.state.latestMessages[r];this._countMessageAsUnread(i)&&(!e||i.created_at>e)&&null!==(s=i.mentioned_users)&&void 0!==s&&s.some((function(e){return e.id===t}))&&n++}return n}},{key:"query",value:(c=b(U.mark((function e(t){var n,r,s,i,a,o=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length>1&&void 0!==o[1]?o[1]:"current",e.next=3,this.getClient().wsPromise;case 3:return r="".concat(this.getClient().baseURL,"/channels/").concat(this.type),this.id&&(r+="/".concat(this.id)),e.next=7,this.getClient().post(r+"/query",Ke({data:this._data,state:!0},t));case 7:return s=e.sent,this.id||(this.id=s.channel.id,this.cid=s.channel.cid,i=s.members.map((function(e){var t;return e.user_id||(null===(t=e.user)||void 0===t?void 0:t.id)})).sort().join(","),(a="".concat(this.type,":!members-").concat(i))in this.getClient().activeChannels&&delete this.getClient().activeChannels[a],this.cid in this.getClient().activeChannels||(this.getClient().activeChannels[this.cid]=this)),this.getClient()._addChannelConfig(s),this._initializeState(s,n),e.abrupt("return",s);case 12:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"banUser",value:(o=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._checkInitialized(),e.next=3,this.getClient().banUser(t,Ke(Ke({},n),{},{type:this.type,id:this.id}));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return o.apply(this,arguments)})},{key:"hide",value:(a=b(U.mark((function e(){var t,n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.length>0&&void 0!==r[0]?r[0]:null,n=r.length>1&&void 0!==r[1]&&r[1],this._checkInitialized(),e.next=5,this.getClient().post("".concat(this._channelURL(),"/hide"),{user_id:t,clear_history:n});case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"show",value:(i=b(U.mark((function e(){var t,n=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:null,this._checkInitialized(),e.next=4,this.getClient().post("".concat(this._channelURL(),"/show"),{user_id:t});case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"unbanUser",value:(s=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._checkInitialized(),e.next=3,this.getClient().unbanUser(t,{type:this.type,id:this.id});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return s.apply(this,arguments)})},{key:"shadowBan",value:(r=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._checkInitialized(),e.next=3,this.getClient().shadowBan(t,Ke(Ke({},n),{},{type:this.type,id:this.id}));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"removeShadowBan",value:(n=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._checkInitialized(),e.next=3,this.getClient().removeShadowBan(t,{type:this.type,id:this.id});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"createCall",value:(t=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().post(this._channelURL()+"/call",t);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"on",value:function(e,t){var n=this,r=t?e:"all";if(!Re(r))throw Error("Invalid event type ".concat(r));var s=t||e;return r in this.listeners||(this.listeners[r]=[]),this._client.logger("info","Attaching listener for ".concat(r," event on channel ").concat(this.cid),{tags:["event","channel"],channel:this}),this.listeners[r].push(s),{unsubscribe:function(){n._client.logger("info","Removing listener for ".concat(r," event from channel ").concat(n.cid),{tags:["event","channel"],channel:n}),n.listeners[r]=n.listeners[r].filter((function(e){return e!==s}))}}}},{key:"off",value:function(e,t){var n=t?e:"all";if(!Re(n))throw Error("Invalid event type ".concat(n));var r=t||e;n in this.listeners||(this.listeners[n]=[]),this._client.logger("info","Removing listener for ".concat(n," event from channel ").concat(this.cid),{tags:["event","channel"],channel:this}),this.listeners[n]=this.listeners[n].filter((function(e){return e!==r}))}},{key:"_handleChannelEvent",value:function(e){var t,n,r,s,i,a,o,c,u=this;this._client.logger("info","channel:_handleChannelEvent - Received event of type { ".concat(e.type," } on ").concat(this.cid),{tags:["event","channel"],channel:this});var l=u.state;switch(e.type){case"typing.start":null!==(t=e.user)&&void 0!==t&&t.id&&(l.typing[e.user.id]=e);break;case"typing.stop":null!==(n=e.user)&&void 0!==n&&n.id&&delete l.typing[e.user.id];break;case"message.read":var h,d;if(null!==(r=e.user)&&void 0!==r&&r.id)l.read[e.user.id]={last_read:e.received_at,user:e.user,unread_messages:0},(null===(h=e.user)||void 0===h?void 0:h.id)===(null===(d=this.getClient().user)||void 0===d?void 0:d.id)&&(l.unreadCount=0);break;case"user.watching.start":case"user.updated":null!==(s=e.user)&&void 0!==s&&s.id&&(l.watchers[e.user.id]=e.user);break;case"user.watching.stop":null!==(i=e.user)&&void 0!==i&&i.id&&delete l.watchers[e.user.id];break;case"message.deleted":e.message&&(e.hard_delete?l.removeMessage(e.message):l.addMessageSorted(e.message,!1,!1),l.removeQuotedMessageReferences(e.message),e.message.pinned&&l.removePinnedMessage(e.message));break;case"message.new":if(e.message){var f,p,v,g=(null===(f=e.user)||void 0===f?void 0:f.id)===(null===(p=this.getClient().user)||void 0===p?void 0:p.id),y=e.message.parent_id&&!e.message.show_in_channel;(this.state.isUpToDate||y)&&l.addMessageSorted(e.message,g),e.message.pinned&&l.addPinnedMessage(e.message),g&&null!==(v=e.user)&&void 0!==v&&v.id?(l.unreadCount=0,l.read[e.user.id]={last_read:new Date(e.created_at),user:e.user,unread_messages:0}):this._countMessageAsUnread(e.message)&&(l.unreadCount=l.unreadCount+1)}break;case"message.updated":e.message&&(l.addMessageSorted(e.message,!1,!1),e.message.pinned?l.addPinnedMessage(e.message):l.removePinnedMessage(e.message));break;case"channel.truncated":if(null!==(a=e.channel)&&void 0!==a&&a.truncated_at){var m=+new Date(e.channel.truncated_at);l.messageSets.forEach((function(e,t){e.messages.forEach((function(e){var n=e.created_at,r=e.id;m>+n&&l.removeMessage({id:r,messageSetIndex:t})}))})),l.pinnedMessages.forEach((function(e){var t=e.id,n=e.created_at;m>+n&&l.removePinnedMessage({id:t})}))}else l.clearMessages();l.unreadCount=0,e.message&&(l.addMessageSorted(e.message),e.message.pinned&&l.addPinnedMessage(e.message));break;case"member.added":case"member.updated":null!==(o=e.member)&&void 0!==o&&o.user_id&&(l.members[e.member.user_id]=e.member);break;case"member.removed":null!==(c=e.user)&&void 0!==c&&c.id&&delete l.members[e.user.id];break;case"channel.updated":var b,w,k,_,x,C;if(e.channel)u.data=Ke(Ke({},e.channel),{},{hidden:null!==(b=null===(w=e.channel)||void 0===w?void 0:w.hidden)&&void 0!==b?b:null===(k=u.data)||void 0===k?void 0:k.hidden,own_capabilities:null!==(_=null===(x=e.channel)||void 0===x?void 0:x.own_capabilities)&&void 0!==_?_:null===(C=u.data)||void 0===C?void 0:C.own_capabilities});break;case"reaction.new":e.message&&e.reaction&&(e.message=l.addReaction(e.reaction,e.message));break;case"reaction.deleted":e.reaction&&(e.message=l.removeReaction(e.reaction,e.message));break;case"reaction.updated":e.reaction&&(e.message=l.addReaction(e.reaction,e.message,!0));break;case"channel.hidden":e.clear_history&&l.clearMessages()}void 0!==e.watcher_count&&(u.state.watcher_count=e.watcher_count)}},{key:"_checkInitialized",value:function(){if(!this.initialized&&!this.getClient()._isUsingServerAuth())throw Error("Channel ".concat(this.cid," hasn't been initialized yet. Make sure to call .watch() and wait for it to resolve"))}},{key:"_initializeState",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"latest",n=this.getClient(),r=n.state,s=n.user,i=n.userID;if(e.members){var a,o=Je(e.members);try{for(o.s();!(a=o.n()).done;){var c=a.value;c.user&&r.updateUserReference(c.user,this.cid)}}catch(e){o.e(e)}finally{o.f()}}this.state.membership=e.membership||{};var u=e.messages||[];if(this.state.messages||this.state.initMessages(),this.state.addMessagesSorted(u,!1,!0,!0,t),this.state.pinnedMessages||(this.state.pinnedMessages=[]),this.state.addPinnedMessages(e.pinned_messages||[]),this.state.watcher_count=e.watcher_count||0,e.watchers){var l,h=Je(e.watchers);try{for(h.s();!(l=h.n()).done;){var d=l.value;d&&(r.updateUserReference(d,this.cid),this.state.watchers[d.id]=d)}}catch(e){h.e(e)}finally{h.f()}}if(null!=i){var f=this.state.last_message_at||new Date;s&&(this.state.read[s.id]={user:s,last_read:f,unread_messages:0})}if(e.read){var p,v=Je(e.read);try{for(v.s();!(p=v.n()).done;){var g,y=p.value;this.state.read[y.user.id]={last_read:new Date(y.last_read),unread_messages:null!==(g=y.unread_messages)&&void 0!==g?g:0,user:y.user},y.user.id===(null==s?void 0:s.id)&&(this.state.unreadCount=this.state.read[y.user.id].unread_messages)}}catch(e){v.e(e)}finally{v.f()}}if(e.members){var m,b=Je(e.members);try{for(b.s();!(m=b.n()).done;){var w=m.value;w.user&&(this.state.members[w.user.id]=w)}}catch(e){b.e(e)}finally{b.f()}}}},{key:"_disconnect",value:function(){this._client.logger("info","channel:disconnect() - Disconnecting the channel ".concat(this.cid),{tags:["connection","channel"],channel:this}),this.disconnected=!0,this.state.setIsUpToDate(!1)}}]),e}();function $e(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return Qe(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Qe(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,s=function(){};return{s:s,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:s}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){o=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}function Qe(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Ye=function(){function e(){w(this,e),x(this,"users",void 0),x(this,"userChannelReferences",void 0),this.users={},this.userChannelReferences={}}return _(e,[{key:"updateUsers",value:function(e){var t,n=$e(e);try{for(n.s();!(t=n.n()).done;){var r=t.value;this.updateUser(r)}}catch(e){n.e(e)}finally{n.f()}}},{key:"updateUser",value:function(e){null!=e&&(this.users[e.id]=e)}},{key:"updateUserReference",value:function(e,t){null!=e&&(this.updateUser(e),this.userChannelReferences[e.id]||(this.userChannelReferences[e.id]={}),this.userChannelReferences[e.id][t]=!0)}},{key:"deleteAllChannelReference",value:function(e){for(var t in this.userChannelReferences)delete this.userChannelReferences[t][e]}}]),e}(),Ze=null;"undefined"!=typeof WebSocket?Ze=WebSocket:"undefined"!=typeof MozWebSocket?Ze=MozWebSocket:void 0!==C?Ze=C.WebSocket||C.MozWebSocket:"undefined"!=typeof window?Ze=window.WebSocket||window.MozWebSocket:"undefined"!=typeof self&&(Ze=self.WebSocket||self.MozWebSocket);var et=Ze;function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function nt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?tt(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):tt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var rt=function e(){w(this,e),x(this,"connectionStartTimestamp",void 0),x(this,"wsConsecutiveFailures",void 0),x(this,"wsTotalFailures",void 0),x(this,"instanceClientId",void 0),this.connectionStartTimestamp=null,this.wsTotalFailures=0,this.wsConsecutiveFailures=0,this.instanceClientId=Fe()},st=function(){var e=b(U.mark((function e(t,n){var r,s;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=3,s=0;case 2:if(!(s<r)){e.next=17;break}return e.prev=3,e.next=6,me.post("https://chat-insights.getstream.io/insights/".concat(t),n);case 6:e.next=13;break;case 8:return e.prev=8,e.t0=e.catch(3),e.next=12,Me(3e3*(s+1));case 12:return e.abrupt("continue",14);case 13:return e.abrupt("break",17);case 14:s++,e.next=2;break;case 17:case"end":return e.stop()}}),e,null,[[3,8]])})));return function(t,n){return e.apply(this,arguments)}}();function it(e,t){return nt(nt({},t),at(e))}function at(e){var t,n,r,s=e.client;return{ready_state:null===(t=e.ws)||void 0===t?void 0:t.readyState,url:e._buildUrl(),api_key:s.key,start_ts:s.insightMetrics.connectionStartTimestamp,end_ts:(new Date).getTime(),auth_type:s.getAuthType(),token:s.tokenManager.token,user_id:s.userID,user_details:s._user,device:s.options.device,client_id:e.connectionID,ws_details:e.ws,ws_consecutive_failures:s.insightMetrics.wsConsecutiveFailures,ws_total_failures:s.insightMetrics.wsTotalFailures,request_id:e.requestID,online:"undefined"!=typeof navigator?null===(n=navigator)||void 0===n?void 0:n.onLine:null,user_agent:"undefined"!=typeof navigator?null===(r=navigator)||void 0===r?void 0:r.userAgent:null,instance_client_id:s.insightMetrics.instanceClientId}}function ot(e){return at(e)}function ct(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ut(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ct(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ct(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var lt=function(e){return void 0!==e.code},ht=function(e){return void 0!==e.error},dt=function(){function e(t){var n=this,r=t.client;w(this,e),x(this,"client",void 0),x(this,"connectionID",void 0),x(this,"connectionOpen",void 0),x(this,"consecutiveFailures",void 0),x(this,"pingInterval",void 0),x(this,"healthCheckTimeoutRef",void 0),x(this,"isConnecting",void 0),x(this,"isDisconnected",void 0),x(this,"isHealthy",void 0),x(this,"isResolved",void 0),x(this,"lastEvent",void 0),x(this,"connectionCheckTimeout",void 0),x(this,"connectionCheckTimeoutRef",void 0),x(this,"rejectPromise",void 0),x(this,"requestID",void 0),x(this,"resolvePromise",void 0),x(this,"totalFailures",void 0),x(this,"ws",void 0),x(this,"wsID",void 0),x(this,"_buildUrl",(function(){var e=encodeURIComponent(n.client._buildWSPayload(n.requestID)),t=n.client.tokenManager.getToken();return"".concat(n.client.wsBaseURL,"/connect?json=").concat(e,"&api_key=").concat(n.client.key,"&authorization=").concat(t,"&stream-auth-type=").concat(n.client.getAuthType(),"&X-Stream-Client=").concat(n.client.getUserAgent())})),x(this,"onlineStatusChanged",(function(e){"offline"===e.type?(n._log("onlineStatusChanged() - Status changing to offline"),n._setHealth(!1)):"online"===e.type&&(n._log("onlineStatusChanged() - Status changing to online. isHealthy: ".concat(n.isHealthy)),n.isHealthy||n._reconnect({interval:10}))})),x(this,"onopen",(function(e){n.wsID===e&&n._log("onopen() - onopen callback",{wsID:e})})),x(this,"onmessage",(function(e,t){if(n.wsID===e){n._log("onmessage() - onmessage callback",{event:t,wsID:e});var r="string"==typeof t.data?JSON.parse(t.data):null;if(!n.isResolved&&r){var s,i;if(n.isResolved=!0,r.error)return void(null===(i=n.rejectPromise)||void 0===i||i.call(n,n._errorFromWSEvent(r,!1)));null===(s=n.resolvePromise)||void 0===s||s.call(n,r),n._setHealth(!0)}n.lastEvent=new Date,r&&"health.check"===r.type&&n.scheduleNextPing(),n.client.handleEvent(t),n.scheduleConnectionCheck()}})),x(this,"onclose",(function(e,t){if(n.wsID===e)if(n._log("onclose() - onclose callback - "+t.code,{event:t,wsID:e}),t.code===Pe.WS_CLOSED_SUCCESS){var r,s=new Error("WS connection reject with error ".concat(t.reason));s.reason=t.reason,s.code=t.code,s.wasClean=t.wasClean,s.target=t.target,null===(r=n.rejectPromise)||void 0===r||r.call(n,s),n._log("onclose() - WS connection reject with error ".concat(t.reason),{event:t})}else{var i;n.consecutiveFailures+=1,n.totalFailures+=1,n._setHealth(!1),n.isConnecting=!1,null===(i=n.rejectPromise)||void 0===i||i.call(n,n._errorFromWSEvent(t)),n._log("onclose() - WS connection closed. Calling reconnect ...",{event:t}),n._reconnect()}})),x(this,"onerror",(function(e,t){var r;n.wsID===e&&(n.consecutiveFailures+=1,n.totalFailures+=1,n._setHealth(!1),n.isConnecting=!1,null===(r=n.rejectPromise)||void 0===r||r.call(n,n._errorFromWSEvent(t)),n._log("onerror() - WS connection resulted into error",{event:t}),n._reconnect())})),x(this,"_setHealth",(function(e){e!==n.isHealthy&&(n.isHealthy=e,n.isHealthy?n.client.dispatchEvent({type:"connection.changed",online:n.isHealthy}):setTimeout((function(){n.isHealthy||n.client.dispatchEvent({type:"connection.changed",online:n.isHealthy})}),5e3))})),x(this,"_errorFromWSEvent",(function(e){var t,r,s,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];lt(e)&&(t=e.code,r="unknown",s=e.reason),ht(e)&&(t=e.error.code,r=e.error.StatusCode,s=e.error.message),n._log("_errorFromWSEvent() - WS failed with code ".concat(t),{event:e},"warn");var a=new Error("WS failed with code ".concat(t," and reason - ").concat(s));return a.code=t,a.StatusCode=r,a.isWSFailure=i,a})),x(this,"_setupConnectionPromise",(function(){n.isResolved=!1,n.connectionOpen=new Promise((function(e,t){n.resolvePromise=e,n.rejectPromise=t}))})),x(this,"scheduleNextPing",(function(){n.healthCheckTimeoutRef&&clearTimeout(n.healthCheckTimeoutRef),n.healthCheckTimeoutRef=setTimeout((function(){var e=[{type:"health.check",client_id:n.client.clientID}];try{var t;null===(t=n.ws)||void 0===t||t.send(JSON.stringify(e))}catch(e){}}),n.pingInterval)})),x(this,"scheduleConnectionCheck",(function(){n.connectionCheckTimeoutRef&&clearTimeout(n.connectionCheckTimeoutRef),n.connectionCheckTimeoutRef=setTimeout((function(){var e=new Date;n.lastEvent&&e.getTime()-n.lastEvent.getTime()>n.connectionCheckTimeout&&(n._log("scheduleConnectionCheck - going to reconnect"),n._setHealth(!1),n._reconnect())}),n.connectionCheckTimeout)})),this.client=r,this.consecutiveFailures=0,this.totalFailures=0,this.isConnecting=!1,this.isDisconnected=!1,this.isResolved=!1,this.isHealthy=!1,this.wsID=1,this.lastEvent=null,this.pingInterval=25e3,this.connectionCheckTimeout=this.pingInterval+1e4,ze(this.onlineStatusChanged)}var t,n,r,s;return _(e,[{key:"_log",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"info";this.client.logger(n,"connection:"+e,ut({tags:["connection"]},t))}},{key:"connect",value:(s=b(U.mark((function e(){var t,n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=r.length>0&&void 0!==r[0]?r[0]:15e3,!this.isConnecting){e.next=3;break}throw Error("You've called connect twice, can only attempt 1 connection at the time");case 3:return this.isDisconnected=!1,e.prev=4,e.next=7,this._connect();case 7:n=e.sent,this.consecutiveFailures=0,this._log("connect() - Established ws connection with healthcheck: ".concat(n)),e.next=23;break;case 12:if(e.prev=12,e.t0=e.catch(4),this.isHealthy=!1,this.consecutiveFailures+=1,e.t0.code!==Pe.TOKEN_EXPIRED||this.client.tokenManager.isStatic()){e.next=21;break}this._log("connect() - WS failure due to expired token, so going to try to reload token and reconnect"),this._reconnect({refreshToken:!0}),e.next=23;break;case 21:if(e.t0.isWSFailure){e.next=23;break}throw new Error(JSON.stringify({code:e.t0.code,StatusCode:e.t0.StatusCode,message:e.t0.message,isWSFailure:e.t0.isWSFailure}));case 23:return e.next=25,this._waitForHealthy(t);case 25:return e.abrupt("return",e.sent);case 26:case"end":return e.stop()}}),e,this,[[4,12]])}))),function(){return s.apply(this,arguments)})},{key:"_waitForHealthy",value:(r=b(U.mark((function e(){var t,n=this,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.length>0&&void 0!==r[0]?r[0]:15e3,e.abrupt("return",Promise.race([b(U.mark((function e(){var r,s;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=50,s=0;case 2:if(!(s<=t)){e.next=18;break}return e.prev=3,e.next=6,n.connectionOpen;case 6:return e.abrupt("return",e.sent);case 9:if(e.prev=9,e.t0=e.catch(3),s!==t){e.next=13;break}throw new Error(JSON.stringify({code:e.t0.code,StatusCode:e.t0.StatusCode,message:e.t0.message,isWSFailure:e.t0.isWSFailure}));case 13:return e.next=15,Me(r);case 15:s+=r,e.next=2;break;case 18:case"end":return e.stop()}}),e,null,[[3,9]])})))(),b(U.mark((function e(){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Me(t);case 2:throw n.isConnecting=!1,new Error(JSON.stringify({code:"",StatusCode:"",message:"initial WS connection could not be established",isWSFailure:!0}));case 4:case"end":return e.stop()}}),e)})))()]));case 2:case"end":return e.stop()}}),e)}))),function(){return r.apply(this,arguments)})},{key:"disconnect",value:function(e){var t,n=this;this._log("disconnect() - Closing the websocket connection for wsID ".concat(this.wsID)),this.wsID+=1,this.isConnecting=!1,this.isDisconnected=!0,this.healthCheckTimeoutRef&&clearInterval(this.healthCheckTimeoutRef),this.connectionCheckTimeoutRef&&clearInterval(this.connectionCheckTimeoutRef),He(this.onlineStatusChanged),this.isHealthy=!1,this.ws&&this.ws.removeAllListeners&&this.ws.removeAllListeners();var r=this.ws;return r&&r.close&&r.readyState===r.OPEN?(t=new Promise((function(t){var s=function(e){n._log("disconnect() - resolving isClosedPromise ".concat(e?"with":"without"," close frame"),{event:e}),t()};r.onclose=s,setTimeout(s,null!=e?e:1e3)})),this._log("disconnect() - Manually closed connection by calling client.disconnect()"),r.close(Pe.WS_CLOSED_SUCCESS,"Manually closed connection by calling client.disconnect()")):(this._log("disconnect() - ws connection doesn't exist or it is already closed."),t=Promise.resolve()),delete this.ws,t}},{key:"_connect",value:(n=b(U.mark((function e(){var t,n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.isConnecting&&!this.isDisconnected){e.next=2;break}return e.abrupt("return");case 2:return this.isConnecting=!0,this.requestID=Fe(),this.client.insightMetrics.connectionStartTimestamp=(new Date).getTime(),e.prev=5,this._log("_connect() - waiting for token"),e.next=9,this.client.tokenManager.tokenReady();case 9:return this._setupConnectionPromise(),t=this._buildUrl(),this._log("_connect() - Connecting to ".concat(t),{wsURL:t,requestID:this.requestID}),this.ws=new et(t),this.ws.onopen=this.onopen.bind(this,this.wsID),this.ws.onclose=this.onclose.bind(this,this.wsID),this.ws.onerror=this.onerror.bind(this,this.wsID),this.ws.onmessage=this.onmessage.bind(this,this.wsID),e.next=19,this.connectionOpen;case 19:if(n=e.sent,this.isConnecting=!1,!n){e.next=25;break}return this.connectionID=n.connection_id,this.client.insightMetrics.wsConsecutiveFailures>0&&this.client.options.enableInsights&&(st("ws_success_after_failure",ot(this)),this.client.insightMetrics.wsConsecutiveFailures=0),e.abrupt("return",n);case 25:e.next=32;break;case 27:throw e.prev=27,e.t0=e.catch(5),this.isConnecting=!1,this.client.options.enableInsights&&(this.client.insightMetrics.wsConsecutiveFailures++,this.client.insightMetrics.wsTotalFailures++,r=it(this,Be(e.t0)),null==st||st("ws_fatal",r)),e.t0;case 32:case"end":return e.stop()}}),e,this,[[5,27]])}))),function(){return n.apply(this,arguments)})},{key:"_reconnect",value:(t=b(U.mark((function e(){var t,n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=r.length>0&&void 0!==r[0]?r[0]:{},this._log("_reconnect() - Initiating the reconnect"),!this.isConnecting&&!this.isHealthy){e.next=5;break}return this._log("_reconnect() - Abort (1) since already connecting or healthy"),e.abrupt("return");case 5:return(n=t.interval)||(n=je(this.consecutiveFailures)),e.next=9,Me(n);case 9:if(!this.isConnecting&&!this.isHealthy){e.next=12;break}return this._log("_reconnect() - Abort (2) since already connecting or healthy"),e.abrupt("return");case 12:if(!this.isDisconnected){e.next=15;break}return this._log("_reconnect() - Abort (3) since disconnect() is called"),e.abrupt("return");case 15:if(this._log("_reconnect() - Destroying current WS connection"),this._destroyCurrentWSConnection(),!t.refreshToken){e.next=20;break}return e.next=20,this.client.tokenManager.loadToken();case 20:return e.prev=20,e.next=23,this._connect();case 23:return this._log("_reconnect() - Waiting for recoverCallBack"),e.next=26,this.client.recoverState();case 26:this._log("_reconnect() - Finished recoverCallBack"),this.consecutiveFailures=0,e.next=38;break;case 30:if(e.prev=30,e.t0=e.catch(20),this.isHealthy=!1,this.consecutiveFailures+=1,e.t0.code!==Pe.TOKEN_EXPIRED||this.client.tokenManager.isStatic()){e.next=37;break}return this._log("_reconnect() - WS failure due to expired token, so going to try to reload token and reconnect"),e.abrupt("return",this._reconnect({refreshToken:!0}));case 37:e.t0.isWSFailure&&(this._log("_reconnect() - WS failure, so going to try to reconnect"),this._reconnect());case 38:this._log("_reconnect() - == END ==");case 39:case"end":return e.stop()}}),e,this,[[20,30]])}))),function(){return t.apply(this,arguments)})},{key:"_destroyCurrentWSConnection",value:function(){this.wsID+=1;try{var e,t;null==this||null===(e=this.ws)||void 0===e||e.removeAllListeners(),null==this||null===(t=this.ws)||void 0===t||t.close()}catch(e){}}}]),e}();function ft(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function pt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ft(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ft(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function vt(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if("string"!=typeof t)throw new TypeError("userId should be a string");pt({user_id:t},n);throw Error("Unable to find jwt crypto, if you are getting this error is probably because you are trying to generate tokens on browser or React Native (or other environment where crypto functions are not available). Please Note: token should only be generated server-side.")}function gt(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={server:!0},r=d({algorithm:"HS256",noTimestamp:!0},t);return null.sign(n,e,r)}function yt(e){var t=e.split(".");if(3!==t.length)return"";var n=t[1],r=h(n);return JSON.parse(r).user_id}function mt(e){return["eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9",l(JSON.stringify({user_id:e})),"devtoken"].join(".")}function bt(e,t,n){var r=Buffer.from(t,"ascii");return null.createHmac("sha256",r).update(e).digest("hex")===n}var wt,kt=function e(t){var n=this;w(this,e),x(this,"loadTokenPromise",void 0),x(this,"type",void 0),x(this,"secret",void 0),x(this,"token",void 0),x(this,"tokenProvider",void 0),x(this,"user",void 0),x(this,"setTokenOrProvider",function(){var e=b(U.mark((function e(t,r){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.validateToken(t,r),n.user=r,Ie(t)&&(n.tokenProvider=t,n.type="provider"),"string"==typeof t&&(n.token=t,n.type="static"),!t&&n.user&&n.secret&&(n.token=vt(n.secret,r.id,{},{}),n.type="static"),e.next=7,n.loadToken();case 7:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),x(this,"reset",(function(){n.token=void 0,n.user=void 0,n.loadTokenPromise=null})),x(this,"validateToken",(function(e,t){if(!t||!t.anon||e){if(!n.secret&&!e)throw new Error("User token can not be empty");if(e&&"string"!=typeof e&&!Ie(e))throw new Error("user token should either be a string or a function");if("string"==typeof e){if(t.anon&&""===e)return;var r=yt(e);if(null!=e&&(null==r||""===r||r!==t.id))throw new Error("userToken does not have a user_id or is not matching with user.id")}}})),x(this,"tokenReady",(function(){return n.loadTokenPromise})),x(this,"loadToken",(function(){return n.loadTokenPromise=new Promise(function(){var e=b(U.mark((function e(t,r){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("static"!==n.type){e.next=2;break}return e.abrupt("return",t(n.token));case 2:if(!n.tokenProvider||"string"==typeof n.tokenProvider){e.next=13;break}return e.prev=3,e.next=6,n.tokenProvider();case 6:n.token=e.sent,e.next=12;break;case 9:return e.prev=9,e.t0=e.catch(3),e.abrupt("return",r(new Error("Call to tokenProvider failed with message: ".concat(e.t0))));case 12:t(n.token);case 13:case"end":return e.stop()}}),e,null,[[3,9]])})));return function(t,n){return e.apply(this,arguments)}}()),n.loadTokenPromise})),x(this,"getToken",(function(){if(n.token)return n.token;if(n.user&&n.user.anon&&!n.token)return n.token;if(n.secret)return gt(n.secret);throw new Error("Both secret and user tokens are not set. Either client.connectUser wasn't called or client.disconnect was called")})),x(this,"isStatic",(function(){return"static"===n.type})),this.loadTokenPromise=null,t&&(this.secret=t),this.type="static",this.secret&&(this.token=gt(this.secret))},_t={"-1":{name:"InternalSystemError",retryable:!0},2:{name:"AccessKeyError",retryable:!1},3:{name:"AuthenticationFailedError",retryable:!0},4:{name:"InputError",retryable:!1},6:{name:"DuplicateUsernameError",retryable:!1},9:{name:"RateLimitError",retryable:!0},16:{name:"DoesNotExistError",retryable:!1},17:{name:"NotAllowedError",retryable:!1},18:{name:"EventNotSupportedError",retryable:!1},19:{name:"ChannelFeatureNotSupportedError",retryable:!1},20:{name:"MessageTooLongError",retryable:!1},21:{name:"MultipleNestingLevelError",retryable:!1},22:{name:"PayloadTooBigError",retryable:!1},23:{name:"RequestTimeoutError",retryable:!0},24:{name:"MaxHeaderSizeExceededError",retryable:!1},40:{name:"AuthErrorTokenExpired",retryable:!1},41:{name:"AuthErrorTokenNotValidYet",retryable:!1},42:{name:"AuthErrorTokenUsedBeforeIssuedAt",retryable:!1},43:{name:"AuthErrorTokenSignatureInvalid",retryable:!1},44:{name:"CustomCommandEndpointMissingError",retryable:!1},45:{name:"CustomCommandEndpointCallError",retryable:!0},46:{name:"ConnectionIDNotFoundError",retryable:!1},60:{name:"CoolDownError",retryable:!0},69:{name:"ErrWrongRegion",retryable:!1},70:{name:"ErrQueryChannelPermissions",retryable:!1},71:{name:"ErrTooManyConnections",retryable:!0},99:{name:"AppSuspendedError",retryable:!1}};function xt(e){return void 0!==e.code}function Ct(e){if(!e.code)return!1;var t=_t["".concat(e.code)];return!!t&&t.retryable}function St(e){if("boolean"==typeof e.isWSFailure)return e.isWSFailure;try{return JSON.parse(e.message).isWSFailure}catch(e){return!1}}function Ut(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Rt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ut(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ut(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}!function(e){e.Closed="CLOSED",e.Connected="CONNECTED",e.Connecting="CONNECTING",e.Disconnected="DISCONNECTED",e.Init="INIT"}(wt||(wt={}));var Ot=function(){function e(t){var n=this,r=t.client;w(this,e),x(this,"client",void 0),x(this,"state",void 0),x(this,"consecutiveFailures",void 0),x(this,"connectionID",void 0),x(this,"cancelToken",void 0),x(this,"_onlineStatusChanged",(function(e){var t;if(n._log("_onlineStatusChanged() - ".concat(e.type)),"offline"===e.type)return n._setState(wt.Closed),null===(t=n.cancelToken)||void 0===t||t.cancel("disconnect() is called"),void(n.cancelToken=void 0);"online"===e.type&&n.state===wt.Closed&&n.connect(!0)})),x(this,"_req",function(){var e=b(U.mark((function e(t,r,s){var i,a;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.cancelToken||t.close||(n.cancelToken=me.CancelToken.source()),e.prev=1,e.next=4,n.client.doAxiosRequest("get",n.client.baseURL.replace(":3030",":8900")+"/longpoll",void 0,{config:Rt(Rt({},r),{},{cancelToken:null===(i=n.cancelToken)||void 0===i?void 0:i.token}),params:t});case 4:return a=e.sent,n.consecutiveFailures=0,e.abrupt("return",a);case 9:if(e.prev=9,e.t0=e.catch(1),n.consecutiveFailures+=1,!s||!Ct(e.t0)){e.next=17;break}return n._log("_req() - Retryable error, retrying request"),e.next=16,Me(je(n.consecutiveFailures));case 16:return e.abrupt("return",n._req(t,r,s));case 17:throw e.t0;case 18:case"end":return e.stop()}}),e,null,[[1,9]])})));return function(t,n,r){return e.apply(this,arguments)}}()),x(this,"_poll",b(U.mark((function e(){var t,r,s;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n.state!==wt.Connected){e.next=25;break}return e.prev=1,e.next=4,n._req({},{timeout:3e4},!0);case 4:if(r=e.sent,null!==(t=r.events)&&void 0!==t&&t.length)for(s=0;s<r.events.length;s++)n.client.dispatchEvent(r.events[s]);e.next=23;break;case 8:if(e.prev=8,e.t0=e.catch(1),!me.isCancel(e.t0)){e.next=13;break}return n._log("_poll() - axios canceled request"),e.abrupt("return");case 13:if(46!==e.t0.code){e.next=18;break}return n._log("_poll() - ConnectionID error, connecting without ID..."),n._setState(wt.Disconnected),n.connect(!0),e.abrupt("return");case 18:if(!xt(e.t0)||Ct(e.t0)){e.next=21;break}return n._setState(wt.Closed),e.abrupt("return");case 21:return e.next=23,Me(je(n.consecutiveFailures));case 23:e.next=0;break;case 25:case"end":return e.stop()}}),e,null,[[1,8]])})))),x(this,"connect",b(U.mark((function e(){var t,r,s,i=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=i.length>0&&void 0!==i[0]&&i[0],n.state!==wt.Connecting){e.next=4;break}return n._log("connect() - connecting already in progress",{reconnect:t},"warn"),e.abrupt("return");case 4:if(n.state!==wt.Connected){e.next=7;break}return n._log("connect() - already connected and polling",{reconnect:t},"warn"),e.abrupt("return");case 7:return n._setState(wt.Connecting),n.connectionID=void 0,e.prev=9,e.next=12,n._req({json:n.client._buildWSPayload()},{timeout:8e3},t);case 12:return r=e.sent,s=r.event,n._setState(wt.Connected),n.connectionID=s.connection_id,n.client.dispatchEvent(s),n._poll(),t&&n.client.recoverState(),e.abrupt("return",s);case 22:throw e.prev=22,e.t0=e.catch(9),n._setState(wt.Closed),e.t0;case 26:case"end":return e.stop()}}),e,null,[[9,22]])})))),x(this,"isHealthy",(function(){return!!n.connectionID&&n.state===wt.Connected})),x(this,"disconnect",b(U.mark((function e(){var t,r,s,i=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=i.length>0&&void 0!==i[0]?i[0]:2e3,He(n._onlineStatusChanged),n._setState(wt.Disconnected),null===(t=n.cancelToken)||void 0===t||t.cancel("disconnect() is called"),n.cancelToken=void 0,s=n.connectionID,n.connectionID=void 0,e.prev=7,e.next=10,n._req({close:!0,connection_id:s},{timeout:r},!1);case 10:n._log("disconnect() - Closed connectionID"),e.next=16;break;case 13:e.prev=13,e.t0=e.catch(7),n._log("disconnect() - Failed",{err:e.t0},"error");case 16:case"end":return e.stop()}}),e,null,[[7,13]])})))),this.client=r,this.state=wt.Init,this.consecutiveFailures=0,ze(this._onlineStatusChanged)}return _(e,[{key:"_log",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"info";this.client.logger(n,"WSConnectionFallback:"+e,Rt({tags:["connection_fallback","connection"]},t))}},{key:"_setState",value:function(e){this._log("_setState() - ".concat(e)),this.state===wt.Connecting&&e===wt.Connected&&this.client.dispatchEvent({type:"connection.changed",online:!0}),e!==wt.Closed&&e!==wt.Disconnected||this.client.dispatchEvent({type:"connection.changed",online:!1}),this.state=e}}]),e}();function Et(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Tt(e,t){return(Tt=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Lt(e,t){if(t&&("object"===f(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return Et(e)}function Mt(e){return(Mt=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function It(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function Pt(e,t,n){return(Pt=It()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var s=new(Function.bind.apply(e,r));return n&&Tt(s,n.prototype),s}).apply(null,arguments)}function Dt(e){var t="function"==typeof Map?new Map:void 0;return(Dt=function(e){if(null===e||!function(e){return-1!==Function.toString.call(e).indexOf("[native code]")}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return Pt(e,arguments,Mt(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),Tt(n,e)})(e)}function At(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Mt(e);if(t){var s=Mt(this).constructor;n=Reflect.construct(r,arguments,s)}else n=r.apply(this,arguments);return Lt(this,n)}}var jt=function(e){!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&&Tt(e,t)}(n,e);var t=At(n);function n(){var e;w(this,n);for(var r=arguments.length,s=new Array(r),i=0;i<r;i++)s[i]=arguments[i];return x(Et(e=t.call.apply(t,[this].concat(s))),"code",void 0),x(Et(e),"response",void 0),x(Et(e),"status",void 0),e}return n}(Dt(Error)),Ft=["created_at","updated_at","last_active","online"];function Nt(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return qt(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return qt(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,s=function(){};return{s:s,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:s}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){o=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}function qt(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Wt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Bt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Wt(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Wt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function zt(e){return"string"==typeof e||e instanceof String}var Ht=function(){function e(t,n,r){var s=this;w(this,e),x(this,"_user",void 0),x(this,"activeChannels",void 0),x(this,"anonymous",void 0),x(this,"axiosInstance",void 0),x(this,"baseURL",void 0),x(this,"browser",void 0),x(this,"cleaningIntervalRef",void 0),x(this,"clientID",void 0),x(this,"configs",void 0),x(this,"key",void 0),x(this,"listeners",void 0),x(this,"logger",void 0),x(this,"recoverStateOnReconnect",void 0),x(this,"mutedChannels",void 0),x(this,"mutedUsers",void 0),x(this,"node",void 0),x(this,"options",void 0),x(this,"secret",void 0),x(this,"setUserPromise",void 0),x(this,"state",void 0),x(this,"tokenManager",void 0),x(this,"user",void 0),x(this,"userAgent",void 0),x(this,"userID",void 0),x(this,"wsBaseURL",void 0),x(this,"wsConnection",void 0),x(this,"wsFallback",void 0),x(this,"wsPromise",void 0),x(this,"consecutiveFailures",void 0),x(this,"insightMetrics",void 0),x(this,"defaultWSTimeoutWithFallback",void 0),x(this,"defaultWSTimeout",void 0),x(this,"_getConnectionID",(function(){var e,t;return(null===(e=s.wsConnection)||void 0===e?void 0:e.connectionID)||(null===(t=s.wsFallback)||void 0===t?void 0:t.connectionID)})),x(this,"_hasConnectionID",(function(){return Boolean(s._getConnectionID())})),x(this,"connectUser",function(){var e=b(U.mark((function e(t,n){var r,i;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.id){e.next=2;break}throw new Error('The "id" field on the user is missing');case 2:if(s.userID!==t.id||!s.setUserPromise){e.next=5;break}return console.warn("Consecutive calls to connectUser is detected, ideally you should only call this function once in your app."),e.abrupt("return",s.setUserPromise);case 5:if(!s.userID){e.next=7;break}throw new Error("Use client.disconnect() before trying to connect as a different user. connectUser was called twice.");case 7:return!s._isUsingServerAuth()&&!s.node||s.options.allowServerSideConnect||console.warn('Please do not use connectUser server side. connectUser impacts MAU and concurrent connection usage and thus your bill. If you have a valid use-case, add "allowServerSideConnect: true" to the client options to disable this warning.'),s.userID=t.id,s.anonymous=!1,r=s._setToken(t,n),s._setUser(t),i=s.openConnection(),s.setUserPromise=Promise.all([r,i]).then((function(e){return e[1]})),e.prev=14,e.next=17,s.setUserPromise;case 17:return e.abrupt("return",e.sent);case 20:throw e.prev=20,e.t0=e.catch(14),s.disconnectUser(),e.t0;case 24:case"end":return e.stop()}}),e,null,[[14,20]])})));return function(t,n){return e.apply(this,arguments)}}()),x(this,"setUser",this.connectUser),x(this,"_setToken",(function(e,t){return s.tokenManager.setTokenOrProvider(t,e)})),x(this,"closeConnection",function(){var e=b(U.mark((function e(t){var n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return null!=s.cleaningIntervalRef&&(clearInterval(s.cleaningIntervalRef),s.cleaningIntervalRef=void 0),e.next=3,Promise.all([null===(n=s.wsConnection)||void 0===n?void 0:n.disconnect(t),null===(r=s.wsFallback)||void 0===r?void 0:r.disconnect(t)]);case 3:return e.abrupt("return",Promise.resolve());case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),x(this,"openConnection",b(U.mark((function e(){var t,n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(s.userID){e.next=2;break}throw Error("User is not set on client, use client.connectUser or client.connectAnonymousUser instead");case 2:if(null===(t=s.wsConnection)||void 0===t||!t.isConnecting){e.next=5;break}return s.logger("info","client:openConnection() - connection already in progress",{tags:["connection","client"]}),e.abrupt("return",Promise.resolve());case 5:if(!(null!==(n=s.wsConnection)&&void 0!==n&&n.isHealthy||null!==(r=s.wsFallback)&&void 0!==r&&r.isHealthy())||!s._hasConnectionID()){e.next=8;break}return s.logger("info","client:openConnection() - openConnection called twice, healthy connection already exists",{tags:["connection","client"]}),e.abrupt("return",Promise.resolve());case 8:return s.clientID="".concat(s.userID,"--").concat(Fe()),s.wsPromise=s.connect(),s._startCleaning(),e.abrupt("return",s.wsPromise);case 12:case"end":return e.stop()}}),e)})))),x(this,"_setupConnection",this.openConnection),x(this,"_normalizeDate",(function(e){if(e instanceof Date&&(e=e.toISOString()),""===e)throw new Error("Don't pass blank string for since, use null instead if resetting the token revoke");return e})),x(this,"disconnectUser",function(){var e=b(U.mark((function e(t){var n,r,i;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(s.logger("info","client:disconnect() - Disconnecting the client",{tags:["connection","client"]}),delete s.user,delete s._user,delete s.userID,s.anonymous=!1,n=s.closeConnection(t),r=0,i=Object.values(s.activeChannels);r<i.length;r++)i[r]._disconnect();return s.activeChannels={},s.state=new Ye,setTimeout(s.tokenManager.reset),e.abrupt("return",n);case 11:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),x(this,"disconnect",this.disconnectUser),x(this,"connectAnonymousUser",(function(){!s._isUsingServerAuth()&&!s.node||s.options.allowServerSideConnect||console.warn('Please do not use connectUser server side. connectUser impacts MAU and concurrent connection usage and thus your bill. If you have a valid use-case, add "allowServerSideConnect: true" to the client options to disable this warning.'),s.anonymous=!0,s.userID=Fe();var e={id:s.userID,anon:!0};return s._setToken(e,""),s._setUser(e),s._setupConnection()})),x(this,"setAnonymousUser",this.connectAnonymousUser),x(this,"doAxiosRequest",function(){var e=b(U.mark((function e(t,n,r){var i,a,o,c,u=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=u.length>3&&void 0!==u[3]?u[3]:{},e.next=3,s.tokenManager.tokenReady();case 3:a=s._enrichAxiosOptions(i),e.prev=4,s._logApiRequest(t,n,r,a),e.t0=t,e.next="get"===e.t0?9:"delete"===e.t0?13:"post"===e.t0?17:"put"===e.t0?21:"patch"===e.t0?25:"options"===e.t0?29:33;break;case 9:return e.next=11,s.axiosInstance.get(n,a);case 11:return o=e.sent,e.abrupt("break",34);case 13:return e.next=15,s.axiosInstance.delete(n,a);case 15:return o=e.sent,e.abrupt("break",34);case 17:return e.next=19,s.axiosInstance.post(n,r,a);case 19:return o=e.sent,e.abrupt("break",34);case 21:return e.next=23,s.axiosInstance.put(n,r,a);case 23:return o=e.sent,e.abrupt("break",34);case 25:return e.next=27,s.axiosInstance.patch(n,r,a);case 27:return o=e.sent,e.abrupt("break",34);case 29:return e.next=31,s.axiosInstance.options(n,a);case 31:return o=e.sent,e.abrupt("break",34);case 33:throw new Error("Invalid request type");case 34:return s._logApiResponse(t,n,o),s.consecutiveFailures=0,e.abrupt("return",s.handleResponse(o));case 39:if(e.prev=39,e.t1=e.catch(4),e.t1.client_request_id=null===(c=a.headers)||void 0===c?void 0:c["x-client-request-id"],s._logApiError(t,n,e.t1),s.consecutiveFailures+=1,!e.t1.response){e.next=56;break}if(e.t1.response.data.code!==Pe.TOKEN_EXPIRED||s.tokenManager.isStatic()){e.next=53;break}if(!(s.consecutiveFailures>1)){e.next=49;break}return e.next=49,Me(je(s.consecutiveFailures));case 49:return s.tokenManager.loadToken(),e.next=52,s.doAxiosRequest(t,n,r,i);case 52:return e.abrupt("return",e.sent);case 53:return e.abrupt("return",s.handleResponse(e.t1.response));case 56:throw e.t1;case 57:case"end":return e.stop()}}),e,null,[[4,39]])})));return function(t,n,r){return e.apply(this,arguments)}}()),x(this,"dispatchEvent",(function(e){e.received_at||(e.received_at=new Date);var t=s._handleClientEvent(e),n=e.cid,r=n?s.activeChannels[n]:void 0;r&&r._handleChannelEvent(e),s._callClientListeners(e),r&&r._callChannelListeners(e),t.forEach((function(e){return e()}))})),x(this,"handleEvent",(function(e){var t=e.data,n=JSON.parse(t);s.dispatchEvent(n)})),x(this,"_updateMemberWatcherReferences",(function(e){var t=s.state.userChannelReferences[e.id]||{};for(var n in t){var r=s.activeChannels[n];null!=r&&r.state&&(r.state.members[e.id]&&(r.state.members[e.id].user=e),r.state.watchers[e.id]&&(r.state.watchers[e.id]=e))}})),x(this,"_updateUserReferences",this._updateMemberWatcherReferences),x(this,"_updateUserMessageReferences",(function(e){var t=s.state.userChannelReferences[e.id]||{};for(var n in t){var r=s.activeChannels[n].state;null==r||r.updateUserMessages(e)}})),x(this,"_deleteUserMessageReference",(function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=s.state.userChannelReferences[e.id]||{};for(var r in n){var i=s.activeChannels[r],a=i.state;null==a||a.deleteUserMessages(e,t)}})),x(this,"_handleUserEvent",(function(e){if(e.user){if("user.presence.changed"===e.type||"user.updated"===e.type){if(e.user.id===s.userID){var t=Bt({},s.user||{}),n=Bt({},s._user||{});for(var r in s.user)r in e.user||{channel_mutes:!0,devices:!0,mutes:!0,total_unread_count:!0,unread_channels:!0,unread_count:!0,invisible:!0,roles:!0}[r]||(delete t[r],delete n[r]);for(var i in e.user)n&&i in n&&(n[i]=e.user[i]);s._user=Bt({},n),s.user=Bt(Bt({},t),e.user)}s.state.updateUser(e.user),s._updateMemberWatcherReferences(e.user)}"user.updated"===e.type&&s._updateUserMessageReferences(e.user),"user.deleted"===e.type&&e.user.deleted_at&&(e.mark_messages_deleted||e.hard_delete)&&s._deleteUserMessageReference(e.user,e.hard_delete)}})),x(this,"_callClientListeners",(function(e){var t=s,n=[];t.listeners.all&&n.push.apply(n,y(t.listeners.all)),t.listeners[e.type]&&n.push.apply(n,y(t.listeners[e.type]));for(var r=0,i=n;r<i.length;r++){(0,i[r])(e)}})),x(this,"recoverState",b(U.mark((function e(){var t;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(s.logger("info","client:recoverState() - Start of recoverState with connectionID ".concat(s._getConnectionID()),{tags:["connection"]}),!(t=Object.keys(s.activeChannels)).length||!s.recoverStateOnReconnect){e.next=10;break}return s.logger("info","client:recoverState() - Start the querying of ".concat(t.length," channels"),{tags:["connection","client"]}),e.next=6,s.queryChannels({cid:{$in:t}},{last_message_at:-1},{limit:30});case 6:s.logger("info","client:recoverState() - Querying channels finished",{tags:["connection","client"]}),s.dispatchEvent({type:"connection.recovered"}),e.next=11;break;case 10:s.dispatchEvent({type:"connection.recovered"});case 11:s.wsPromise=Promise.resolve(),s.setUserPromise=Promise.resolve();case 13:case"end":return e.stop()}}),e)})))),x(this,"getChannelByMembers",(function(e,t){var n=y(t.members||[]).sort().join(","),r="".concat(e,":!members-").concat(n);if(!n)throw Error("Please specify atleast one member when creating unique conversation");for(var i in s.activeChannels){var a=s.activeChannels[i];if(!a.disconnected){if(i===r)return a;if(0===i.indexOf("".concat(e,":!members-")))if(Object.keys(a.state.members).sort().join(",")===n)return a}}var o=new Ve(s,e,void 0,t);return s.activeChannels[r]=o,o})),x(this,"getChannelById",(function(e,t,n){if("string"==typeof t&&~t.indexOf(":"))throw Error("Invalid channel id ".concat(t,", can't contain the : character"));var r="".concat(e,":").concat(t);if(r in s.activeChannels&&!s.activeChannels[r].disconnected){var i=s.activeChannels[r];return Object.keys(n).length>0&&(i.data=n,i._data=n),i}var a=new Ve(s,e,t,n);return s.activeChannels[a.cid]=a,a})),x(this,"updateUsers",this.upsertUsers),x(this,"updateUser",this.upsertUser),x(this,"markAllRead",this.markChannelsRead),x(this,"_isUsingServerAuth",(function(){return!!s.secret})),x(this,"_buildWSPayload",(function(e){return JSON.stringify({user_id:s.userID,user_details:s._user,device:s.options.device,client_request_id:e})})),this.key=t,this.listeners={},this.state=new Ye,this.mutedChannels=[],this.mutedUsers=[],n&&zt(n)&&(this.secret=n);var i=r||(n&&!zt(n)?n:{});this.browser=void 0!==i.browser?i.browser:"undefined"!=typeof window,this.node=!this.browser,this.options=Bt({timeout:3e3,withCredentials:!1,warmUp:!1,recoverStateOnReconnect:!0},i),this.node&&!this.options.httpsAgent&&(this.options.httpsAgent=new null.Agent({keepAlive:!0,keepAliveMsecs:3e3})),this.axiosInstance=me.create(this.options),this.setBaseURL(this.options.baseURL||"https://chat.stream-io-api.com"),"undefined"!=typeof process&&process.env.STREAM_LOCAL_TEST_RUN&&this.setBaseURL("http://localhost:3030"),"undefined"!=typeof process&&process.env.STREAM_LOCAL_TEST_HOST&&this.setBaseURL("http://"+process.env.STREAM_LOCAL_TEST_HOST),this.wsConnection=null,this.wsPromise=null,this.setUserPromise=null,this.activeChannels={},this.configs={},this.anonymous=!1,this.tokenManager=new kt(this.secret),this.consecutiveFailures=0,this.insightMetrics=new rt,this.defaultWSTimeoutWithFallback=6e3,this.defaultWSTimeout=15e3,this.logger=Ie(i.logger)?i.logger:function(){return null},this.recoverStateOnReconnect=this.options.recoverStateOnReconnect}var t,n,r,s,i,a,o,c,u,l,h,v,g,m,k,C,S,R,O,E,T,L,M,I,P,D,A,j,F,N,q,W,B,z,H,J,G,X,K,V,$,Q,Y,Z,ee,te,ne,re,se,ie,ae,oe,ce,ue,le,he,de,fe,pe,ve,ge,ye,be,we,ke,_e,xe,Ce,Se,Ue,Oe,Ee;return _(e,[{key:"devToken",value:function(e){return mt(e)}},{key:"getAuthType",value:function(){return this.anonymous?"anonymous":"jwt"}},{key:"setBaseURL",value:function(e){this.baseURL=e,this.wsBaseURL=this.baseURL.replace("http","ws").replace(":3030",":8800")}},{key:"_setUser",value:function(e){this.user=e,this._user=Bt({},e)}},{key:"updateAppSettings",value:(Ee=b(U.mark((function e(t){var n;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return null!==(n=t.apn_config)&&void 0!==n&&n.p12_cert&&(t.apn_config.p12_cert=Buffer.from(t.apn_config.p12_cert).toString("base64")),e.next=3,this.patch(this.baseURL+"/app",t);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return Ee.apply(this,arguments)})},{key:"revokeTokens",value:(Oe=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.updateAppSettings({revoke_tokens_issued_before:this._normalizeDate(t)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return Oe.apply(this,arguments)})},{key:"revokeUserToken",value:(Ue=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.revokeUsersToken([t],n);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return Ue.apply(this,arguments)})},{key:"revokeUsersToken",value:(Se=b(U.mark((function e(t,n){var r,s,i,a;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=void 0===n?(new Date).toISOString():this._normalizeDate(n),r=[],s=Nt(t);try{for(s.s();!(i=s.n()).done;)a=i.value,r.push({id:a,set:{revoke_tokens_issued_before:n}})}catch(e){s.e(e)}finally{s.f()}return e.next=6,this.partialUpdateUsers(r);case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t){return Se.apply(this,arguments)})},{key:"getAppSettings",value:(Ce=b(U.mark((function e(){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/app");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(){return Ce.apply(this,arguments)})},{key:"testPushSettings",value:(xe=b(U.mark((function e(t){var n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/check_push",Bt(Bt(Bt(Bt(Bt(Bt(Bt({user_id:t},n.messageID?{message_id:n.messageID}:{}),n.apnTemplate?{apn_template:n.apnTemplate}:{}),n.firebaseTemplate?{firebase_template:n.firebaseTemplate}:{}),n.firebaseDataTemplate?{firebase_data_template:n.firebaseDataTemplate}:{}),n.skipDevices?{skip_devices:!0}:{}),n.pushProviderName?{push_provider_name:n.pushProviderName}:{}),n.pushProviderType?{push_provider_type:n.pushProviderType}:{}));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return xe.apply(this,arguments)})},{key:"testSQSSettings",value:(_e=b(U.mark((function e(){var t,n=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this.post(this.baseURL+"/check_sqs",t);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return _e.apply(this,arguments)})},{key:"setGuestUser",value:(ke=b(U.mark((function e(t){var n,r,s;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.anonymous=!0,e.prev=1,e.next=4,this.post(this.baseURL+"/guest",{user:t});case 4:n=e.sent,e.next=11;break;case 7:throw e.prev=7,e.t0=e.catch(1),this.anonymous=!1,e.t0;case 11:return this.anonymous=!1,(r=n.user).created_at,r.updated_at,r.last_active,r.online,s=p(r,Ft),e.next=15,this.connectUser(s,n.access_token);case 15:return e.abrupt("return",e.sent);case 16:case"end":return e.stop()}}),e,this,[[1,7]])}))),function(e){return ke.apply(this,arguments)})},{key:"createToken",value:function(e,t,n){if(null==this.secret)throw Error("tokens can only be created server-side using the API Secret");var r={};return t&&(r.exp=t),n&&(r.iat=n),vt(this.secret,e,r,{})}},{key:"on",value:function(e,t){var n=this,r=t?e:"all";if(!Re(r))throw Error("Invalid event type ".concat(r));var s=t||e;return r in this.listeners||(this.listeners[r]=[]),this.logger("info","Attaching listener for ".concat(r," event"),{tags:["event","client"]}),this.listeners[r].push(s),{unsubscribe:function(){n.logger("info","Removing listener for ".concat(r," event"),{tags:["event","client"]}),n.listeners[r]=n.listeners[r].filter((function(e){return e!==s}))}}}},{key:"off",value:function(e,t){var n=t?e:"all";if(!Re(n))throw Error("Invalid event type ".concat(n));var r=t||e;n in this.listeners||(this.listeners[n]=[]),this.logger("info","Removing listener for ".concat(n," event"),{tags:["event","client"]}),this.listeners[n]=this.listeners[n].filter((function(e){return e!==r}))}},{key:"_logApiRequest",value:function(e,t,n,r){this.logger("info","client: ".concat(e," - Request - ").concat(t),{tags:["api","api_request","client"],url:t,payload:n,config:r})}},{key:"_logApiResponse",value:function(e,t,n){this.logger("info","client:".concat(e," - Response - url: ").concat(t," > status ").concat(n.status),{tags:["api","api_response","client"],url:t,response:n})}},{key:"_logApiError",value:function(e,t,n){this.logger("error","client:".concat(e," - Error - url: ").concat(t),{tags:["api","api_response","client"],url:t,error:n})}},{key:"get",value:function(e,t){return this.doAxiosRequest("get",e,null,{params:t})}},{key:"put",value:function(e,t){return this.doAxiosRequest("put",e,t)}},{key:"post",value:function(e,t){return this.doAxiosRequest("post",e,t)}},{key:"patch",value:function(e,t){return this.doAxiosRequest("patch",e,t)}},{key:"delete",value:function(e,t){return this.doAxiosRequest("delete",e,null,{params:t})}},{key:"sendFile",value:function(e,t,n,r,s){var i=De(t,n,r);return null!=s&&i.append("user",JSON.stringify(s)),this.doAxiosRequest("post",e,i,{headers:i.getHeaders?i.getHeaders():{},config:{timeout:0,maxContentLength:1/0,maxBodyLength:1/0}})}},{key:"errorFromResponse",value:function(e){var t;return t=new jt("StreamChat error HTTP code: ".concat(e.status)),e.data&&e.data.code&&((t=new Error("StreamChat error code ".concat(e.data.code,": ").concat(e.data.message))).code=e.data.code),t.response=e,t.status=e.status,t}},{key:"handleResponse",value:function(e){var t,n=e.data;if(!(t=e).status||t.status<200||300<=t.status)throw this.errorFromResponse(e);return n}},{key:"_handleClientEvent",value:function(e){var t,n,r,s=this,i=this,a=[];if(this.logger("info","client:_handleClientEvent - Received event of type { ".concat(e.type," }"),{tags:["event","client"],event:e}),"user.presence.changed"!==e.type&&"user.updated"!==e.type&&"user.deleted"!==e.type||this._handleUserEvent(e),"health.check"===e.type&&e.me&&(i.user=e.me,i.state.updateUser(e.me),i.mutedChannels=e.me.channel_mutes,i.mutedUsers=e.me.mutes),e.channel&&"notification.message_new"===e.type&&(this.configs[e.channel.type]=e.channel.config),"notification.channel_mutes_updated"===e.type&&null!==(t=e.me)&&void 0!==t&&t.channel_mutes){var o=[],c=[];this.mutedChannels.forEach((function(e){return e.channel&&o.push(e.channel.cid)})),e.me.channel_mutes.forEach((function(e){return e.channel&&c.push(e.channel.cid)})),o.forEach((function(e){!c.includes(e)&&s.activeChannels[e]&&(s.activeChannels[e].state.unreadCount=0)})),this.mutedChannels=e.me.channel_mutes}("notification.mutes_updated"===e.type&&null!==(n=e.me)&&void 0!==n&&n.mutes&&(this.mutedUsers=e.me.mutes),"notification.mark_read"===e.type&&0===e.unread_channels)&&Object.keys(this.activeChannels).forEach((function(e){return s.activeChannels[e].state.unreadCount=0}));"channel.deleted"!==e.type&&"notification.channel_deleted"!==e.type||!e.cid||(i.state.deleteAllChannelReference(e.cid),null===(r=this.activeChannels[e.cid])||void 0===r||r._disconnect(),a.push((function(){e.cid&&delete s.activeChannels[e.cid]})));return a}},{key:"_muteStatus",value:function(e){for(var t,n=0;n<this.mutedChannels.length;n++){var r,s=this.mutedChannels[n];if((null===(r=s.channel)||void 0===r?void 0:r.cid)===e){t={muted:!s.expires||new Date(s.expires).getTime()>(new Date).getTime(),createdAt:s.created_at?new Date(s.created_at):new Date,expiresAt:s.expires?new Date(s.expires):null};break}}return t||{muted:!1,createdAt:null,expiresAt:null}}},{key:"connect",value:(we=b(U.mark((function e(){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.userID&&this._user){e.next=2;break}throw Error("Call connectUser or connectAnonymousUser before starting the connection");case 2:if(this.wsBaseURL){e.next=4;break}throw Error("Websocket base url not set");case 4:if(this.clientID){e.next=6;break}throw Error("clientID is not set");case 6:if(this.wsConnection||!this.options.warmUp&&!this.options.enableInsights||this._sayHi(),this.wsConnection=new dt({client:this}),e.prev=8,!this.wsFallback){e.next=13;break}return e.next=12,this.wsFallback.connect();case 12:return e.abrupt("return",e.sent);case 13:return e.next=15,this.wsConnection.connect(this.options.enableWSFallback?this.defaultWSTimeoutWithFallback:this.defaultWSTimeout);case 15:return e.abrupt("return",e.sent);case 18:if(e.prev=18,e.t0=e.catch(8),!(this.options.enableWSFallback&&St(e.t0)&&(t=void 0,t="undefined"!=typeof navigator?navigator:"undefined"!=typeof window&&window.navigator?window.navigator:void 0,t?"boolean"!=typeof t.onLine||t.onLine:(console.warn("isOnline failed to access window.navigator and assume browser is online"),1)))){e.next=29;break}return this.logger("info","client:connect() - WS failed, fallback to longpoll",{tags:["connection","client"]}),this.dispatchEvent({type:"transport.changed",mode:"longpoll"}),this.wsConnection._destroyCurrentWSConnection(),this.wsConnection.disconnect().then(),this.wsFallback=new Ot({client:this}),e.next=28,this.wsFallback.connect();case 28:return e.abrupt("return",e.sent);case 29:throw e.t0;case 30:case"end":return e.stop()}var t}),e,this,[[8,18]])}))),function(){return we.apply(this,arguments)})},{key:"_sayHi",value:function(){var e=this,t=Fe(),n={headers:{"x-client-request-id":t}};this.doAxiosRequest("get",this.baseURL+"/hi",null,n).catch((function(n){e.options.enableInsights&&st("http_hi_failed",{api_key:e.key,err:n,client_request_id:t})}))}},{key:"queryUsers",value:(be=b(U.mark((function e(t){var n,r,s,i,a=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length>1&&void 0!==a[1]?a[1]:[],r=a.length>2&&void 0!==a[2]?a[2]:{},s={presence:!1},e.next=5,this.setUserPromise;case 5:return this._hasConnectionID()||(s.presence=!1),e.next=8,this.get(this.baseURL+"/users",{payload:Bt(Bt({filter_conditions:t,sort:Ae(n)},s),r)});case 8:return i=e.sent,this.state.updateUsers(i.users),e.abrupt("return",i);case 11:case"end":return e.stop()}}),e,this)}))),function(e){return be.apply(this,arguments)})},{key:"queryBannedUsers",value:(ye=b(U.mark((function e(){var t,n,r,s=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=s.length>0&&void 0!==s[0]?s[0]:{},n=s.length>1&&void 0!==s[1]?s[1]:[],r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=5,this.get(this.baseURL+"/query_banned_users",{payload:Bt({filter_conditions:t,sort:Ae(n)},r)});case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e,this)}))),function(){return ye.apply(this,arguments)})},{key:"queryMessageFlags",value:(ge=b(U.mark((function e(){var t,n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.length>0&&void 0!==r[0]?r[0]:{},n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=4,this.get(this.baseURL+"/moderation/flags/message",{payload:Bt({filter_conditions:t},n)});case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}}),e,this)}))),function(){return ge.apply(this,arguments)})},{key:"queryChannels",value:(ve=b(U.mark((function e(t){var n,r,s,i,a,o,c,u,l,h,d,f,p,v,g,y=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=y.length>1&&void 0!==y[1]?y[1]:[],r=y.length>2&&void 0!==y[2]?y[2]:{},s=y.length>3&&void 0!==y[3]?y[3]:{},i=s.skipInitialization,a={state:!0,watch:!0,presence:!1},e.next=7,this.setUserPromise;case 7:return this._hasConnectionID()||(a.watch=!1),o=Bt(Bt({filter_conditions:t,sort:Ae(n)},a),r),e.next=11,this.post(this.baseURL+"/channels",o);case 11:c=e.sent,u=[],l=Nt(c.channels);try{for(l.s();!(h=l.n()).done;)d=h.value,this._addChannelConfig(d)}catch(e){l.e(e)}finally{l.f()}f=Nt(c.channels);try{for(f.s();!(p=f.n()).done;)v=p.value,(g=this.channel(v.channel.type,v.channel.id)).data=v.channel,g.initialized=!0,void 0===i?g._initializeState(v,"latest"):i.includes(v.channel.id)||(g.state.clearMessages(),g._initializeState(v,"latest")),u.push(g)}catch(e){f.e(e)}finally{f.f()}return e.abrupt("return",u);case 18:case"end":return e.stop()}}),e,this)}))),function(e){return ve.apply(this,arguments)})},{key:"search",value:(pe=b(U.mark((function e(t,n){var r,s,i=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(r=i.length>2&&void 0!==i[2]?i[2]:{}).offset||!r.sort&&!r.next){e.next=3;break}throw Error("Cannot specify offset with sort or next parameters");case 3:if(s=Bt(Bt({filter_conditions:t},r),{},{sort:r.sort?Ae(r.sort):void 0}),"string"!=typeof n){e.next=8;break}s.query=n,e.next=13;break;case 8:if("object"!==f(n)){e.next=12;break}s.message_filter_conditions=n,e.next=13;break;case 12:throw Error("Invalid type ".concat(f(n)," for query parameter"));case 13:return e.next=15,this.setUserPromise;case 15:return e.next=17,this.get(this.baseURL+"/search",{payload:s});case 17:return e.abrupt("return",e.sent);case 18:case"end":return e.stop()}}),e,this)}))),function(e,t){return pe.apply(this,arguments)})},{key:"setLocalDevice",value:function(e){if(this.wsConnection||this.wsFallback)throw new Error("you can only set device before opening a websocket connection");this.options.device=e}},{key:"addDevice",value:(fe=b(U.mark((function e(t,n,r,s){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/devices",Bt(Bt({id:t,push_provider:n},null!=r?{user_id:r}:{}),null!=s?{push_provider_name:s}:{}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return fe.apply(this,arguments)})},{key:"getDevices",value:(de=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/devices",t?{user_id:t}:{});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return de.apply(this,arguments)})},{key:"removeDevice",value:(he=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.delete(this.baseURL+"/devices",Bt({id:t},n?{user_id:n}:{}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return he.apply(this,arguments)})},{key:"getRateLimits",value:(le=b(U.mark((function e(t){var n,r,s,i,a,o;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=(n=t||{}).serverSide,s=n.web,i=n.android,a=n.ios,o=n.endpoints,e.abrupt("return",this.get(this.baseURL+"/rate_limits",{server_side:r,web:s,android:i,ios:a,endpoints:o?o.join(","):void 0}));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return le.apply(this,arguments)})},{key:"_addChannelConfig",value:function(e){this.configs[e.channel.type]=e.channel.config}},{key:"channel",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!this.userID&&!this._isUsingServerAuth())throw Error("Call connectUser or connectAnonymousUser before creating a channel");if(~e.indexOf(":"))throw Error("Invalid channel group ".concat(e,", can't contain the : character"));return null==t||""===t?new Ve(this,e,void 0,n):"object"===f(t)?this.getChannelByMembers(e,t):this.getChannelById(e,t,n)}},{key:"partialUpdateUser",value:(ue=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.partialUpdateUsers([t]);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return ue.apply(this,arguments)})},{key:"upsertUsers",value:(ce=b(U.mark((function e(t){var n,r,s,i;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n={},r=Nt(t),e.prev=2,r.s();case 4:if((s=r.n()).done){e.next=11;break}if((i=s.value).id){e.next=8;break}throw Error("User ID is required when updating a user");case 8:n[i.id]=i;case 9:e.next=4;break;case 11:e.next=16;break;case 13:e.prev=13,e.t0=e.catch(2),r.e(e.t0);case 16:return e.prev=16,r.f(),e.finish(16);case 19:return e.next=21,this.post(this.baseURL+"/users",{users:n});case 21:return e.abrupt("return",e.sent);case 22:case"end":return e.stop()}}),e,this,[[2,13,16,19]])}))),function(e){return ce.apply(this,arguments)})},{key:"upsertUser",value:function(e){return this.upsertUsers([e])}},{key:"partialUpdateUsers",value:(oe=b(U.mark((function e(t){var n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=Nt(t),e.prev=1,n.s();case 3:if((r=n.n()).done){e.next=9;break}if(r.value.id){e.next=7;break}throw Error("User ID is required when updating a user");case 7:e.next=3;break;case 9:e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),n.e(e.t0);case 14:return e.prev=14,n.f(),e.finish(14);case 17:return e.next=19,this.patch(this.baseURL+"/users",{users:t});case 19:return e.abrupt("return",e.sent);case 20:case"end":return e.stop()}}),e,this,[[1,11,14,17]])}))),function(e){return oe.apply(this,arguments)})},{key:"deleteUser",value:(ae=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.delete(this.baseURL+"/users/".concat(t),n);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return ae.apply(this,arguments)})},{key:"reactivateUser",value:(ie=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/users/".concat(t,"/reactivate"),Bt({},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return ie.apply(this,arguments)})},{key:"deactivateUser",value:(se=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/users/".concat(t,"/deactivate"),Bt({},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return se.apply(this,arguments)})},{key:"exportUser",value:(re=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/users/".concat(t,"/export"),Bt({},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return re.apply(this,arguments)})},{key:"banUser",value:(ne=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/moderation/ban",Bt({target_user_id:t},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return ne.apply(this,arguments)})},{key:"unbanUser",value:(te=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.delete(this.baseURL+"/moderation/ban",Bt({target_user_id:t},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return te.apply(this,arguments)})},{key:"shadowBan",value:(ee=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.banUser(t,Bt({shadow:!0},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return ee.apply(this,arguments)})},{key:"removeShadowBan",value:(Z=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.unbanUser(t,Bt({shadow:!0},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return Z.apply(this,arguments)})},{key:"muteUser",value:(Y=b(U.mark((function e(t,n){var r,s=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this.post(this.baseURL+"/moderation/mute",Bt(Bt({target_id:t},n?{user_id:n}:{}),r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return Y.apply(this,arguments)})},{key:"unmuteUser",value:(Q=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/moderation/unmute",Bt({target_id:t},n?{user_id:n}:{}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return Q.apply(this,arguments)})},{key:"userMuteStatus",value:function(e){if(!this.user||!this.wsPromise)throw new Error("Make sure to await connectUser() first.");for(var t=0;t<this.mutedUsers.length;t+=1)if(this.mutedUsers[t].target.id===e)return!0;return!1}},{key:"flagMessage",value:($=b(U.mark((function e(t){var n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/moderation/flag",Bt({target_message_id:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return $.apply(this,arguments)})},{key:"flagUser",value:(V=b(U.mark((function e(t){var n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/moderation/flag",Bt({target_user_id:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return V.apply(this,arguments)})},{key:"unflagMessage",value:(K=b(U.mark((function e(t){var n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/moderation/unflag",Bt({target_message_id:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return K.apply(this,arguments)})},{key:"unflagUser",value:(X=b(U.mark((function e(t){var n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/moderation/unflag",Bt({target_user_id:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return X.apply(this,arguments)})},{key:"getCallToken",value:(G=b(U.mark((function e(t){var n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/calls/".concat(t),Bt({},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return G.apply(this,arguments)})},{key:"_queryFlags",value:(J=b(U.mark((function e(){var t,n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.length>0&&void 0!==r[0]?r[0]:{},n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=4,this.post(this.baseURL+"/moderation/flags",Bt({filter_conditions:t},n));case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}}),e,this)}))),function(){return J.apply(this,arguments)})},{key:"_queryFlagReports",value:(H=b(U.mark((function e(){var t,n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.length>0&&void 0!==r[0]?r[0]:{},n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=4,this.post(this.baseURL+"/moderation/reports",Bt({filter_conditions:t},n));case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}}),e,this)}))),function(){return H.apply(this,arguments)})},{key:"_reviewFlagReport",value:(z=b(U.mark((function e(t,n){var r,s=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this.patch(this.baseURL+"/moderation/reports/".concat(t),Bt({review_result:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return z.apply(this,arguments)})},{key:"_unblockMessage",value:(B=b(U.mark((function e(t){var n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/moderation/unblock_message",Bt({target_message_id:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return B.apply(this,arguments)})},{key:"markChannelsRead",value:(W=b(U.mark((function e(){var t,n=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this.post(this.baseURL+"/channels/read",Bt({},t));case 3:case"end":return e.stop()}}),e,this)}))),function(){return W.apply(this,arguments)})},{key:"createCommand",value:function(e){return this.post(this.baseURL+"/commands",e)}},{key:"getCommand",value:function(e){return this.get(this.baseURL+"/commands/".concat(e))}},{key:"updateCommand",value:function(e,t){return this.put(this.baseURL+"/commands/".concat(e),t)}},{key:"deleteCommand",value:function(e){return this.delete(this.baseURL+"/commands/".concat(e))}},{key:"listCommands",value:function(){return this.get(this.baseURL+"/commands")}},{key:"createChannelType",value:function(e){var t=d({},{commands:["all"]},e);return this.post(this.baseURL+"/channeltypes",t)}},{key:"getChannelType",value:function(e){return this.get(this.baseURL+"/channeltypes/".concat(e))}},{key:"updateChannelType",value:function(e,t){return this.put(this.baseURL+"/channeltypes/".concat(e),t)}},{key:"deleteChannelType",value:function(e){return this.delete(this.baseURL+"/channeltypes/".concat(e))}},{key:"listChannelTypes",value:function(){return this.get(this.baseURL+"/channeltypes")}},{key:"translateMessage",value:(q=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/messages/".concat(t,"/translate"),{language:n});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return q.apply(this,arguments)})},{key:"_normalizeExpiration",value:function(e){var t=null;if("number"==typeof e){var n=new Date;n.setSeconds(n.getSeconds()+e),t=n.toISOString()}else zt(e)?t=e:e instanceof Date&&(t=e.toISOString());return t}},{key:"_validateAndGetMessageId",value:function(e,t){var n;if("string"==typeof e)n=e;else{if(!e.id)throw Error(t);n=e.id}return n}},{key:"pinMessage",value:function(e,t,n,r){var s=this._validateAndGetMessageId(e,"Please specify the message id when calling unpinMessage");return this.partialUpdateMessage(s,{set:{pinned:!0,pin_expires:this._normalizeExpiration(t),pinned_at:this._normalizeExpiration(r)}},n)}},{key:"unpinMessage",value:function(e,t){var n=this._validateAndGetMessageId(e,"Please specify the message id when calling unpinMessage");return this.partialUpdateMessage(n,{set:{pinned:!1}},t)}},{key:"updateMessage",value:(N=b(U.mark((function e(t,n,r){var s;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.id){e.next=2;break}throw Error("Please specify the message id when calling updateMessage");case 2:return delete(s=d({},t)).id,["command","created_at","html","latest_reactions","own_reactions","quoted_message","reaction_counts","reply_count","type","updated_at","user","__html"].forEach((function(e){null!=s[e]&&delete s[e]})),null!=n&&(zt(n)?s.user_id=n:s.user={id:n.id}),Array.isArray(s.mentioned_users)&&!zt(s.mentioned_users[0])&&(s.mentioned_users=s.mentioned_users.map((function(e){return e.id}))),e.next=10,this.post(this.baseURL+"/messages/".concat(t.id),Bt({message:s},r));case 10:return e.abrupt("return",e.sent);case 11:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return N.apply(this,arguments)})},{key:"partialUpdateMessage",value:(F=b(U.mark((function e(t,n,r,s){var i;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}throw Error("Please specify the message id when calling partialUpdateMessage");case 2:return i=r,null!=r&&zt(r)&&(i={id:r}),e.next=6,this.put(this.baseURL+"/messages/".concat(t),Bt(Bt(Bt({},n),s),{},{user:i}));case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return F.apply(this,arguments)})},{key:"deleteMessage",value:(j=b(U.mark((function e(t,n){var r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r={},n&&(r={hard:!0}),e.next=4,this.delete(this.baseURL+"/messages/".concat(t),r);case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return j.apply(this,arguments)})},{key:"getMessage",value:(A=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/messages/".concat(t));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return A.apply(this,arguments)})},{key:"getUserAgent",value:function(){return this.userAgent||"stream-chat-javascript-client-".concat(this.node?"node":"browser","-","6.7.2")}},{key:"setUserAgent",value:function(e){this.userAgent=e}},{key:"_enrichAxiosOptions",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{params:{},headers:{},config:{}},n=this._getToken(),r=n?{Authorization:n}:void 0;return null!==(e=t.headers)&&void 0!==e&&e["x-client-request-id"]||(t.headers=Bt(Bt({},t.headers),{},{"x-client-request-id":Fe()})),Bt({params:Bt({user_id:this.userID,connection_id:this._getConnectionID(),api_key:this.key},t.params),headers:Bt(Bt({},r),{},{"stream-auth-type":this.getAuthType(),"X-Stream-Client":this.getUserAgent()},t.headers)},t.config)}},{key:"_getToken",value:function(){return!this.tokenManager||this.anonymous?null:this.tokenManager.getToken()}},{key:"_startCleaning",value:function(){var e=this;null==this.cleaningIntervalRef&&(this.cleaningIntervalRef=setInterval((function(){for(var t=0,n=Object.values(e.activeChannels);t<n.length;t++){n[t].clean()}}),500))}},{key:"verifyWebhook",value:function(e,t){return!!this.secret&&bt(e,this.secret,t)}},{key:"getPermission",value:function(e){return this.get("".concat(this.baseURL,"/permissions/").concat(e))}},{key:"createPermission",value:function(e){return this.post("".concat(this.baseURL,"/permissions"),Bt({},e))}},{key:"updatePermission",value:function(e,t){return this.put("".concat(this.baseURL,"/permissions/").concat(e),Bt({},t))}},{key:"deletePermission",value:function(e){return this.delete("".concat(this.baseURL,"/permissions/").concat(e))}},{key:"listPermissions",value:function(){return this.get("".concat(this.baseURL,"/permissions"))}},{key:"createRole",value:function(e){return this.post("".concat(this.baseURL,"/roles"),{name:e})}},{key:"listRoles",value:function(){return this.get("".concat(this.baseURL,"/roles"))}},{key:"deleteRole",value:function(e){return this.delete("".concat(this.baseURL,"/roles/").concat(e))}},{key:"sync",value:function(e,t){return this.post("".concat(this.baseURL,"/sync"),{channel_cids:e,last_sync_at:t})}},{key:"sendUserCustomEvent",value:(D=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post("".concat(this.baseURL,"/users/").concat(t,"/event"),{event:n});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return D.apply(this,arguments)})},{key:"createBlockList",value:function(e){return this.post("".concat(this.baseURL,"/blocklists"),e)}},{key:"listBlockLists",value:function(){return this.get("".concat(this.baseURL,"/blocklists"))}},{key:"getBlockList",value:function(e){return this.get("".concat(this.baseURL,"/blocklists/").concat(e))}},{key:"updateBlockList",value:function(e,t){return this.put("".concat(this.baseURL,"/blocklists/").concat(e),t)}},{key:"deleteBlockList",value:function(e){return this.delete("".concat(this.baseURL,"/blocklists/").concat(e))}},{key:"exportChannels",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=Bt({channels:e},t);return this.post("".concat(this.baseURL,"/export_channels"),n)}},{key:"exportUsers",value:function(e){return this.post("".concat(this.baseURL,"/export/users"),e)}},{key:"exportChannel",value:function(e,t){return this.exportChannels([e],t)}},{key:"getExportChannelStatus",value:function(e){return this.get("".concat(this.baseURL,"/export_channels/").concat(e))}},{key:"createSegment",value:(P=b(U.mark((function e(t){var n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/segments",{segment:t});case 2:return n=e.sent,r=n.segment,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return P.apply(this,arguments)})},{key:"getSegment",value:(I=b(U.mark((function e(t){var n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/segments/".concat(t));case 2:return n=e.sent,r=n.segment,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return I.apply(this,arguments)})},{key:"listSegments",value:(M=b(U.mark((function e(t){var n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/segments",t);case 2:return n=e.sent,r=n.segments,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return M.apply(this,arguments)})},{key:"updateSegment",value:(L=b(U.mark((function e(t,n){var r,s;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.put(this.baseURL+"/segments/".concat(t),{segment:n});case 2:return r=e.sent,s=r.segment,e.abrupt("return",s);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return L.apply(this,arguments)})},{key:"deleteSegment",value:(T=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.delete(this.baseURL+"/segments/".concat(t)));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return T.apply(this,arguments)})},{key:"createCampaign",value:(E=b(U.mark((function e(t){var n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/campaigns",{campaign:t});case 2:return n=e.sent,r=n.campaign,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return E.apply(this,arguments)})},{key:"getCampaign",value:(O=b(U.mark((function e(t){var n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/campaigns/".concat(t));case 2:return n=e.sent,r=n.campaign,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return O.apply(this,arguments)})},{key:"listCampaigns",value:(R=b(U.mark((function e(t){var n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/campaigns",t);case 2:return n=e.sent,r=n.campaigns,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return R.apply(this,arguments)})},{key:"updateCampaign",value:(S=b(U.mark((function e(t,n){var r,s;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.put(this.baseURL+"/campaigns/".concat(t),{campaign:n});case 2:return r=e.sent,s=r.campaign,e.abrupt("return",s);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return S.apply(this,arguments)})},{key:"deleteCampaign",value:(C=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.delete(this.baseURL+"/campaigns/".concat(t)));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return C.apply(this,arguments)})},{key:"scheduleCampaign",value:(k=b(U.mark((function e(t,n){var r,s,i;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=n.scheduledFor,e.next=3,this.patch(this.baseURL+"/campaigns/".concat(t,"/schedule"),{scheduled_for:r});case 3:return s=e.sent,i=s.campaign,e.abrupt("return",i);case 6:case"end":return e.stop()}}),e,this)}))),function(e,t){return k.apply(this,arguments)})},{key:"stopCampaign",value:(m=b(U.mark((function e(t){var n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.patch(this.baseURL+"/campaigns/".concat(t,"/stop"));case 2:return n=e.sent,r=n.campaign,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"resumeCampaign",value:(g=b(U.mark((function e(t){var n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.patch(this.baseURL+"/campaigns/".concat(t,"/resume"));case 2:return n=e.sent,r=n.campaign,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return g.apply(this,arguments)})},{key:"testCampaign",value:(v=b(U.mark((function e(t,n){var r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=n.users,e.next=3,this.post(this.baseURL+"/campaigns/".concat(t,"/test"),{users:r});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return v.apply(this,arguments)})},{key:"enrichURL",value:(h=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.get(this.baseURL+"/og",{url:t}));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return h.apply(this,arguments)})},{key:"getTask",value:(l=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.get("".concat(this.baseURL,"/tasks/").concat(t)));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"deleteChannels",value:(u=b(U.mark((function e(t){var n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/channels/delete",Bt({cids:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return u.apply(this,arguments)})},{key:"deleteUsers",value:(c=b(U.mark((function e(t,n){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("soft"===(null==n?void 0:n.user)||"hard"===(null==n?void 0:n.user)){e.next=2;break}throw new Error("Invalid delete user options. user must be one of [soft hard]");case 2:if(void 0===n.messages||"soft"===n.messages||"hard"===n.messages){e.next=4;break}throw new Error("Invalid delete user options. messages must be one of [soft hard]");case 4:if(void 0===n.conversations||"soft"===n.conversations||"hard"===n.conversations){e.next=6;break}throw new Error("Invalid delete user options. conversations must be one of [soft hard]");case 6:return e.next=8,this.post(this.baseURL+"/users/delete",Bt({user_ids:t},n));case 8:return e.abrupt("return",e.sent);case 9:case"end":return e.stop()}}),e,this)}))),function(e,t){return c.apply(this,arguments)})},{key:"_createImportURL",value:(o=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/import_urls",{filename:t});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return o.apply(this,arguments)})},{key:"_createImport",value:(a=b(U.mark((function e(t){var n,r=arguments;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{mode:"upsert"},e.next=3,this.post(this.baseURL+"/imports",Bt({path:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"_getImport",value:(i=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/imports/".concat(t));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return i.apply(this,arguments)})},{key:"_listImports",value:(s=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/imports",t);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return s.apply(this,arguments)})},{key:"upsertPushProvider",value:(r=b(U.mark((function e(t){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/push_providers",{push_provider:t});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"deletePushProvider",value:(n=b(U.mark((function e(t){var n,r;return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.type,r=t.name,e.next=3,this.delete(this.baseURL+"/push_providers/".concat(n,"/").concat(r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"listPushProviders",value:(t=b(U.mark((function e(){return U.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/push_providers");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}],[{key:"getInstance",value:function(t,n,r){return e._instance||(e._instance="string"==typeof n?new e(t,n,r):new e(t,n)),e._instance}}]),e}();x(Ht,"_instance",void 0);var Jt="Allow",Gt="Deny",Xt=["*"],Kt=["*"],Vt=function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Xt,s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:Kt,i=arguments.length>4&&void 0!==arguments[4]&&arguments[4],a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:Jt;w(this,e),x(this,"name",void 0),x(this,"action",void 0),x(this,"owner",void 0),x(this,"priority",void 0),x(this,"resources",void 0),x(this,"roles",void 0),this.name=t,this.action=a,this.owner=i,this.priority=n,this.resources=r,this.roles=s},$t=new Vt("Allow all",999,Xt,Kt,!1,Jt),Qt=new Vt("Deny all",1,Xt,Kt,!1,Gt);e.Allow=Jt,e.AllowAll=$t,e.AnyResource=Xt,e.AnyRole=Kt,e.BuiltinPermissions={AddLinks:"Add Links",BanUser:"Ban User",CreateChannel:"Create Channel",CreateMessage:"Create Message",CreateReaction:"Create Reaction",DeleteAnyAttachment:"Delete Any Attachment",DeleteAnyChannel:"Delete Any Channel",DeleteAnyMessage:"Delete Any Message",DeleteAnyReaction:"Delete Any Reaction",DeleteOwnAttachment:"Delete Own Attachment",DeleteOwnChannel:"Delete Own Channel",DeleteOwnMessage:"Delete Own Message",DeleteOwnReaction:"Delete Own Reaction",ReadAnyChannel:"Read Any Channel",ReadOwnChannel:"Read Own Channel",RunMessageAction:"Run Message Action",UpdateAnyChannel:"Update Any Channel",UpdateAnyMessage:"Update Any Message",UpdateMembersAnyChannel:"Update Members Any Channel",UpdateMembersOwnChannel:"Update Members Own Channel",UpdateOwnChannel:"Update Own Channel",UpdateOwnMessage:"Update Own Message",UploadAttachment:"Upload Attachment",UseFrozenChannel:"Send messages and reactions to frozen channels"},e.BuiltinRoles={Admin:"admin",Anonymous:"anonymous",ChannelMember:"channel_member",ChannelModerator:"channel_moderator",Guest:"guest",User:"user"},e.Channel=Ve,e.ChannelState=_e,e.CheckSignature=bt,e.ClientState=Ye,e.Deny=Gt,e.DenyAll=Qt,e.DevToken=mt,e.EVENT_MAP=Se,e.ErrorFromResponse=jt,e.InsightMetrics=rt,e.JWTServerToken=gt,e.JWTUserToken=vt,e.MaxPriority=999,e.MinPriority=1,e.Permission=Vt,e.StableWSConnection=dt,e.StreamChat=Ht,e.TokenManager=kt,e.UserFromToken=yt,e.buildWsFatalInsight=it,e.buildWsSuccessAfterFailureInsight=ot,e.chatCodes=Pe,e.decodeBase64=h,e.encodeBase64=l,e.isOwnUser=function(e){return void 0!==(null==e?void 0:e.total_unread_count)},e.isValidEventType=Re,e.logChatPromiseExecution=Le,e.postInsights=st,Object.defineProperty(e,"__esModule",{value:!0})}(this.window=this.window||{});
|
|
1
|
+
!function(e){"use strict";for(var t=function(e){for(var t,r=e.length,s=r%3,i=[],a=16383,c=0,u=r-s;c<u;c+=a)i.push(o(e,c,c+a>u?u:c+a));1===s?(t=e[r-1],i.push(n[t>>2]+n[t<<4&63]+"==")):2===s&&(t=(e[r-2]<<8)+e[r-1],i.push(n[t>>10]+n[t>>4&63]+n[t<<2&63]+"="));return i.join("")},n=[],r=[],s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=0,a=s.length;i<a;++i)n[i]=s[i],r[s.charCodeAt(i)]=i;function o(e,t,r){for(var s,i,a=[],o=t;o<r;o+=3)s=(e[o]<<16&16711680)+(e[o+1]<<8&65280)+(255&e[o+2]),a.push(n[(i=s)>>18&63]+n[i>>12&63]+n[i>>6&63]+n[63&i]);return a.join("")}function c(e){return"string"==typeof e}function u(e,t){return!!t&&c(e)}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63;var l=function(e){return t(new Uint8Array(function(e,t){var n=[];if(c(e)&&u(e,t)){for(var r=0,s=e.length;r<s;r++)if(e.charAt(r)){var i=t(e.charAt(r),r,e);n[r]=i}}else if(!c(e)&&!u(e,t))for(var a=0,o=e.length;a<o;a++)if(a in e){var l=t(e[a],a,e);n[a]=l}return n}(e,(function(e){return e.charCodeAt(0)}))))},h=function(e){var t,n,r,s={},i=String.fromCharCode,a=e.length,o=0,c=0,u="";for(t=0;t<64;t++)s["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(t)]=t;for(n=0;n<a;n++)for(o=(o<<6)+s[e.charAt(n)],c+=6;c>=8;)((r=o>>>(c-=8)&255)||n<a-2)&&(u+=i(r));return u};function d(){return d=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},d.apply(this,arguments)}function f(e){return f="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},f(e)}function p(e,t){if(null==e)return{};var n,r,s=function(e,t){if(null==e)return{};var n,r,s={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(s[n]=e[n]);return s}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function g(e,t){if(e){if("string"==typeof e)return v(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?v(e,t):void 0}}function m(e){return function(e){if(Array.isArray(e))return v(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||g(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function y(e,t,n,r,s,i,a){try{var o=e[i](a),c=o.value}catch(e){return void n(e)}o.done?t(c):Promise.resolve(c).then(r,s)}function b(e){return function(){var t=this,n=arguments;return new Promise((function(r,s){var i=e.apply(t,n);function a(e){y(i,r,s,a,o,"next",e)}function o(e){y(i,r,s,a,o,"throw",e)}a(void 0)}))}}function w(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function k(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)}}function _(e,t,n){return t&&k(e.prototype,t),n&&k(e,n),e}function x(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var C="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};var S,U,R=(S=function(e){var t=function(e){var t,n=Object.prototype,r=n.hasOwnProperty,s="function"==typeof Symbol?Symbol:{},i=s.iterator||"@@iterator",a=s.asyncIterator||"@@asyncIterator",o=s.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,n){return e[t]=n}}function u(e,t,n,r){var s=t&&t.prototype instanceof g?t:g,i=Object.create(s.prototype),a=new O(r||[]);return i._invoke=function(e,t,n){var r=h;return function(s,i){if(r===f)throw new Error("Generator is already running");if(r===p){if("throw"===s)throw i;return M()}for(n.method=s,n.arg=i;;){var a=n.delegate;if(a){var o=S(a,n);if(o){if(o===v)continue;return o}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===h)throw r=p,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=f;var c=l(e,t,n);if("normal"===c.type){if(r=n.done?p:d,c.arg===v)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r=p,n.method="throw",n.arg=c.arg)}}}(e,n,a),i}function l(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var h="suspendedStart",d="suspendedYield",f="executing",p="completed",v={};function g(){}function m(){}function y(){}var b={};b[i]=function(){return this};var w=Object.getPrototypeOf,k=w&&w(w(E([])));k&&k!==n&&r.call(k,i)&&(b=k);var _=y.prototype=g.prototype=Object.create(b);function x(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function n(s,i,a,o){var c=l(e[s],e,i);if("throw"!==c.type){var u=c.arg,h=u.value;return h&&"object"==typeof h&&r.call(h,"__await")?t.resolve(h.__await).then((function(e){n("next",e,a,o)}),(function(e){n("throw",e,a,o)})):t.resolve(h).then((function(e){u.value=e,a(u)}),(function(e){return n("throw",e,a,o)}))}o(c.arg)}var s;this._invoke=function(e,r){function i(){return new t((function(t,s){n(e,r,t,s)}))}return s=s?s.then(i,i):i()}}function S(e,n){var r=e.iterator[n.method];if(r===t){if(n.delegate=null,"throw"===n.method){if(e.iterator.return&&(n.method="return",n.arg=t,S(e,n),"throw"===n.method))return v;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return v}var s=l(r,e.iterator,n.arg);if("throw"===s.type)return n.method="throw",n.arg=s.arg,n.delegate=null,v;var i=s.arg;return i?i.done?(n[e.resultName]=i.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,v):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,v)}function U(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function R(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function O(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(U,this),this.reset(!0)}function E(e){if(e){var n=e[i];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var s=-1,a=function n(){for(;++s<e.length;)if(r.call(e,s))return n.value=e[s],n.done=!1,n;return n.value=t,n.done=!0,n};return a.next=a}}return{next:M}}function M(){return{value:t,done:!0}}return m.prototype=_.constructor=y,y.constructor=m,m.displayName=c(y,o,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===m||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,y):(e.__proto__=y,c(e,o,"GeneratorFunction")),e.prototype=Object.create(_),e},e.awrap=function(e){return{__await:e}},x(C.prototype),C.prototype[a]=function(){return this},e.AsyncIterator=C,e.async=function(t,n,r,s,i){void 0===i&&(i=Promise);var a=new C(u(t,n,r,s),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},x(_),c(_,o,"Generator"),_[i]=function(){return this},_.toString=function(){return"[object Generator]"},e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},e.values=E,O.prototype={constructor:O,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(R),!e)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=t)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var n=this;function s(r,s){return o.type="throw",o.arg=e,n.next=r,s&&(n.method="next",n.arg=t),!!s}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],o=a.completion;if("root"===a.tryLoc)return s("end");if(a.tryLoc<=this.prev){var c=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(c&&u){if(this.prev<a.catchLoc)return s(a.catchLoc,!0);if(this.prev<a.finallyLoc)return s(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return s(a.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return s(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var s=this.tryEntries[n];if(s.tryLoc<=this.prev&&r.call(s,"finallyLoc")&&this.prev<s.finallyLoc){var i=s;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,v):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),v},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),R(n),v}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var s=r.arg;R(n)}return s}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:E(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),v}},e}(e.exports);try{regeneratorRuntime=t}catch(e){Function("r","regeneratorRuntime = r")(t)}},S(U={exports:{}},U.exports),U.exports),O=R,E=function(e,t){return function(){for(var n=new Array(arguments.length),r=0;r<n.length;r++)n[r]=arguments[r];return e.apply(t,n)}},M=Object.prototype.toString;function T(e){return"[object Array]"===M.call(e)}function L(e){return void 0===e}function I(e){return null!==e&&"object"==typeof e}function P(e){if("[object Object]"!==M.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function D(e){return"[object Function]"===M.call(e)}function A(e,t){if(null!=e)if("object"!=typeof e&&(e=[e]),T(e))for(var n=0,r=e.length;n<r;n++)t.call(null,e[n],n,e);else for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.call(null,e[s],s,e)}var j={isArray:T,isArrayBuffer:function(e){return"[object ArrayBuffer]"===M.call(e)},isBuffer:function(e){return null!==e&&!L(e)&&null!==e.constructor&&!L(e.constructor)&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},isArrayBufferView:function(e){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&e.buffer instanceof ArrayBuffer},isString:function(e){return"string"==typeof e},isNumber:function(e){return"number"==typeof e},isObject:I,isPlainObject:P,isUndefined:L,isDate:function(e){return"[object Date]"===M.call(e)},isFile:function(e){return"[object File]"===M.call(e)},isBlob:function(e){return"[object Blob]"===M.call(e)},isFunction:D,isStream:function(e){return I(e)&&D(e.pipe)},isURLSearchParams:function(e){return"undefined"!=typeof URLSearchParams&&e instanceof URLSearchParams},isStandardBrowserEnv:function(){return("undefined"==typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!=typeof window&&"undefined"!=typeof document)},forEach:A,merge:function e(){var t={};function n(n,r){P(t[r])&&P(n)?t[r]=e(t[r],n):P(n)?t[r]=e({},n):T(n)?t[r]=n.slice():t[r]=n}for(var r=0,s=arguments.length;r<s;r++)A(arguments[r],n);return t},extend:function(e,t,n){return A(t,(function(t,r){e[r]=n&&"function"==typeof t?E(t,n):t})),e},trim:function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")},stripBOM:function(e){return 65279===e.charCodeAt(0)&&(e=e.slice(1)),e}};function F(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}var N=function(e,t,n){if(!t)return e;var r;if(n)r=n(t);else if(j.isURLSearchParams(t))r=t.toString();else{var s=[];j.forEach(t,(function(e,t){null!=e&&(j.isArray(e)?t+="[]":e=[e],j.forEach(e,(function(e){j.isDate(e)?e=e.toISOString():j.isObject(e)&&(e=JSON.stringify(e)),s.push(F(t)+"="+F(e))})))})),r=s.join("&")}if(r){var i=e.indexOf("#");-1!==i&&(e=e.slice(0,i)),e+=(-1===e.indexOf("?")?"?":"&")+r}return e};function q(){this.handlers=[]}q.prototype.use=function(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1},q.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},q.prototype.forEach=function(e){j.forEach(this.handlers,(function(t){null!==t&&e(t)}))};var W=q,B=function(e,t){j.forEach(e,(function(n,r){r!==t&&r.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[r])}))},z=function(e,t,n,r,s){return e.config=t,n&&(e.code=n),e.request=r,e.response=s,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}},e},H=function(e,t,n,r,s){var i=new Error(e);return z(i,t,n,r,s)},J=j.isStandardBrowserEnv()?{write:function(e,t,n,r,s,i){var a=[];a.push(e+"="+encodeURIComponent(t)),j.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),j.isString(r)&&a.push("path="+r),j.isString(s)&&a.push("domain="+s),!0===i&&a.push("secure"),document.cookie=a.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}},G=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"],X=j.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function r(e){var r=e;return t&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=r(window.location.href),function(t){var n=j.isString(t)?r(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return!0};function K(e){this.message=e}K.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},K.prototype.__CANCEL__=!0;var V=K,$=function(e){return new Promise((function(t,n){var r,s=e.data,i=e.headers,a=e.responseType;function o(){e.cancelToken&&e.cancelToken.unsubscribe(r),e.signal&&e.signal.removeEventListener("abort",r)}j.isFormData(s)&&delete i["Content-Type"];var c=new XMLHttpRequest;if(e.auth){var u=e.auth.username||"",l=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.Authorization="Basic "+btoa(u+":"+l)}var h,d,f=(h=e.baseURL,d=e.url,h&&!/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(d)?function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}(h,d):d);function p(){if(c){var r="getAllResponseHeaders"in c?function(e){var t,n,r,s={};return e?(j.forEach(e.split("\n"),(function(e){if(r=e.indexOf(":"),t=j.trim(e.substr(0,r)).toLowerCase(),n=j.trim(e.substr(r+1)),t){if(s[t]&&G.indexOf(t)>=0)return;s[t]="set-cookie"===t?(s[t]?s[t]:[]).concat([n]):s[t]?s[t]+", "+n:n}})),s):s}(c.getAllResponseHeaders()):null;!function(e,t,n){var r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(H("Request failed with status code "+n.status,n.config,null,n.request,n)):e(n)}((function(e){t(e),o()}),(function(e){n(e),o()}),{data:a&&"text"!==a&&"json"!==a?c.response:c.responseText,status:c.status,statusText:c.statusText,headers:r,config:e,request:c}),c=null}}if(c.open(e.method.toUpperCase(),N(f,e.params,e.paramsSerializer),!0),c.timeout=e.timeout,"onloadend"in c?c.onloadend=p:c.onreadystatechange=function(){c&&4===c.readyState&&(0!==c.status||c.responseURL&&0===c.responseURL.indexOf("file:"))&&setTimeout(p)},c.onabort=function(){c&&(n(H("Request aborted",e,"ECONNABORTED",c)),c=null)},c.onerror=function(){n(H("Network Error",e,null,c)),c=null},c.ontimeout=function(){var t="timeout of "+e.timeout+"ms exceeded",r=e.transitional||te.transitional;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(H(t,e,r.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",c)),c=null},j.isStandardBrowserEnv()){var v=(e.withCredentials||X(f))&&e.xsrfCookieName?J.read(e.xsrfCookieName):void 0;v&&(i[e.xsrfHeaderName]=v)}"setRequestHeader"in c&&j.forEach(i,(function(e,t){void 0===s&&"content-type"===t.toLowerCase()?delete i[t]:c.setRequestHeader(t,e)})),j.isUndefined(e.withCredentials)||(c.withCredentials=!!e.withCredentials),a&&"json"!==a&&(c.responseType=e.responseType),"function"==typeof e.onDownloadProgress&&c.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&c.upload&&c.upload.addEventListener("progress",e.onUploadProgress),(e.cancelToken||e.signal)&&(r=function(e){c&&(n(!e||e&&e.type?new V("canceled"):e),c.abort(),c=null)},e.cancelToken&&e.cancelToken.subscribe(r),e.signal&&(e.signal.aborted?r():e.signal.addEventListener("abort",r))),s||(s=null),c.send(s)}))},Q={"Content-Type":"application/x-www-form-urlencoded"};function Y(e,t){!j.isUndefined(e)&&j.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var Z,ee={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:(("undefined"!=typeof XMLHttpRequest||"undefined"!=typeof process&&"[object process]"===Object.prototype.toString.call(process))&&(Z=$),Z),transformRequest:[function(e,t){return B(t,"Accept"),B(t,"Content-Type"),j.isFormData(e)||j.isArrayBuffer(e)||j.isBuffer(e)||j.isStream(e)||j.isFile(e)||j.isBlob(e)?e:j.isArrayBufferView(e)?e.buffer:j.isURLSearchParams(e)?(Y(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):j.isObject(e)||t&&"application/json"===t["Content-Type"]?(Y(t,"application/json"),function(e,t,n){if(j.isString(e))try{return(t||JSON.parse)(e),j.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){var t=this.transitional||ee.transitional,n=t&&t.silentJSONParsing,r=t&&t.forcedJSONParsing,s=!n&&"json"===this.responseType;if(s||r&&j.isString(e)&&e.length)try{return JSON.parse(e)}catch(e){if(s){if("SyntaxError"===e.name)throw z(e,this,"E_JSON_PARSE");throw e}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};j.forEach(["delete","get","head"],(function(e){ee.headers[e]={}})),j.forEach(["post","put","patch"],(function(e){ee.headers[e]=j.merge(Q)}));var te=ee,ne=function(e,t,n){var r=this||te;return j.forEach(n,(function(n){e=n.call(r,e,t)})),e},re=function(e){return!(!e||!e.__CANCEL__)};function se(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new V("canceled")}var ie=function(e){return se(e),e.headers=e.headers||{},e.data=ne.call(e,e.data,e.headers,e.transformRequest),e.headers=j.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),j.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]})),(e.adapter||te.adapter)(e).then((function(t){return se(e),t.data=ne.call(e,t.data,t.headers,e.transformResponse),t}),(function(t){return re(t)||(se(e),t&&t.response&&(t.response.data=ne.call(e,t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))},ae=function(e,t){t=t||{};var n={};function r(e,t){return j.isPlainObject(e)&&j.isPlainObject(t)?j.merge(e,t):j.isPlainObject(t)?j.merge({},t):j.isArray(t)?t.slice():t}function s(n){return j.isUndefined(t[n])?j.isUndefined(e[n])?void 0:r(void 0,e[n]):r(e[n],t[n])}function i(e){if(!j.isUndefined(t[e]))return r(void 0,t[e])}function a(n){return j.isUndefined(t[n])?j.isUndefined(e[n])?void 0:r(void 0,e[n]):r(void 0,t[n])}function o(n){return n in t?r(e[n],t[n]):n in e?r(void 0,e[n]):void 0}var c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:o};return j.forEach(Object.keys(e).concat(Object.keys(t)),(function(e){var t=c[e]||s,r=t(e);j.isUndefined(r)&&t!==o||(n[e]=r)})),n},oe="0.22.0",ce=oe,ue={};["object","boolean","number","function","string","symbol"].forEach((function(e,t){ue[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));var le={};ue.transitional=function(e,t,n){function r(e,t){return"[Axios v"+ce+"] Transitional option '"+e+"'"+t+(n?". "+n:"")}return function(n,s,i){if(!1===e)throw new Error(r(s," has been removed"+(t?" in "+t:"")));return t&&!le[s]&&(le[s]=!0,console.warn(r(s," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,s,i)}};var he={assertOptions:function(e,t,n){if("object"!=typeof e)throw new TypeError("options must be an object");for(var r=Object.keys(e),s=r.length;s-- >0;){var i=r[s],a=t[i];if(a){var o=e[i],c=void 0===o||a(o,i,e);if(!0!==c)throw new TypeError("option "+i+" must be "+c)}else if(!0!==n)throw Error("Unknown option "+i)}},validators:ue},de=he.validators;function fe(e){this.defaults=e,this.interceptors={request:new W,response:new W}}fe.prototype.request=function(e){"string"==typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=ae(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=e.transitional;void 0!==t&&he.assertOptions(t,{silentJSONParsing:de.transitional(de.boolean),forcedJSONParsing:de.transitional(de.boolean),clarifyTimeoutError:de.transitional(de.boolean)},!1);var n=[],r=!0;this.interceptors.request.forEach((function(t){"function"==typeof t.runWhen&&!1===t.runWhen(e)||(r=r&&t.synchronous,n.unshift(t.fulfilled,t.rejected))}));var s,i=[];if(this.interceptors.response.forEach((function(e){i.push(e.fulfilled,e.rejected)})),!r){var a=[ie,void 0];for(Array.prototype.unshift.apply(a,n),a=a.concat(i),s=Promise.resolve(e);a.length;)s=s.then(a.shift(),a.shift());return s}for(var o=e;n.length;){var c=n.shift(),u=n.shift();try{o=c(o)}catch(e){u(e);break}}try{s=ie(o)}catch(e){return Promise.reject(e)}for(;i.length;)s=s.then(i.shift(),i.shift());return s},fe.prototype.getUri=function(e){return e=ae(this.defaults,e),N(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},j.forEach(["delete","get","head","options"],(function(e){fe.prototype[e]=function(t,n){return this.request(ae(n||{},{method:e,url:t,data:(n||{}).data}))}})),j.forEach(["post","put","patch"],(function(e){fe.prototype[e]=function(t,n,r){return this.request(ae(r||{},{method:e,url:t,data:n}))}}));var pe=fe;function ve(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var n=this;this.promise.then((function(e){if(n._listeners){var t,r=n._listeners.length;for(t=0;t<r;t++)n._listeners[t](e);n._listeners=null}})),this.promise.then=function(e){var t,r=new Promise((function(e){n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e){n.reason||(n.reason=new V(e),t(n.reason))}))}ve.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},ve.prototype.subscribe=function(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]},ve.prototype.unsubscribe=function(e){if(this._listeners){var t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}},ve.source=function(){var e;return{token:new ve((function(t){e=t})),cancel:e}};var ge=ve;var me=function e(t){var n=new pe(t),r=E(pe.prototype.request,n);return j.extend(r,pe.prototype,n),j.extend(r,n),r.create=function(n){return e(ae(t,n))},r}(te);me.Axios=pe,me.Cancel=V,me.CancelToken=ge,me.isCancel=re,me.VERSION=oe,me.all=function(e){return Promise.all(e)},me.spread=function(e){return function(t){return e.apply(null,t)}},me.isAxiosError=function(e){return"object"==typeof e&&!0===e.isAxiosError};var ye=me,be=me;ye.default=be;var we=ye;function ke(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,s,i=[],a=!0,o=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){o=!0,s=e}finally{try{a||null==n.return||n.return()}finally{if(o)throw s}}return i}}(e,t)||g(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function xe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?_e(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_e(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Ce=function(){function e(t){var n,r=this;w(this,e),x(this,"_channel",void 0),x(this,"watcher_count",void 0),x(this,"typing",void 0),x(this,"read",void 0),x(this,"pinnedMessages",void 0),x(this,"pending_messages",void 0),x(this,"threads",void 0),x(this,"mutedUsers",void 0),x(this,"watchers",void 0),x(this,"members",void 0),x(this,"unreadCount",void 0),x(this,"membership",void 0),x(this,"last_message_at",void 0),x(this,"isUpToDate",void 0),x(this,"messageSets",[]),x(this,"setIsUpToDate",(function(e){r.isUpToDate=e})),x(this,"removeMessageFromArray",(function(e,t){var n=e.filter((function(e){return!(e.id&&t.id&&e.id===t.id)}));return{removed:n.length<e.length,result:n}})),x(this,"updateUserMessages",(function(e){var t=function(e,t){for(var n=0;n<e.length;n++){var r,s=e[n];(null===(r=s.user)||void 0===r?void 0:r.id)===t.id&&(e[n]=xe(xe({},s),{},{user:t}))}};for(var n in r.messageSets.forEach((function(n){return t(n.messages,e)})),r.threads)t(r.threads[n],e);t(r.pinnedMessages,e)})),x(this,"deleteUserMessages",(function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=function(e,t){for(var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=0;r<e.length;r++){var s,i=e[r];(null===(s=i.user)||void 0===s?void 0:s.id)===t.id&&(e[r]=n?{cid:i.cid,created_at:i.created_at,deleted_at:t.deleted_at,id:i.id,latest_reactions:[],mentioned_users:[],own_reactions:[],parent_id:i.parent_id,reply_count:i.reply_count,status:i.status,thread_participants:i.thread_participants,type:"deleted",updated_at:i.updated_at,user:i.user}:xe(xe({},i),{},{type:"deleted",deleted_at:t.deleted_at}))}};for(var s in r.messageSets.forEach((function(r){return n(r.messages,e,t)})),r.threads)n(r.threads[s],e,t);n(r.pinnedMessages,e,t)})),this._channel=t,this.watcher_count=0,this.typing={},this.read={},this.initMessages(),this.pinnedMessages=[],this.pending_messages=[],this.threads={},this.mutedUsers=[],this.watchers={},this.members={},this.membership={},this.unreadCount=0,this.isUpToDate=!0,this.last_message_at=null!=(null==t||null===(n=t.state)||void 0===n?void 0:n.last_message_at)?new Date(t.state.last_message_at):null}var t;return _(e,[{key:"messages",get:function(){var e;return(null===(e=this.messageSets.find((function(e){return e.isCurrent})))||void 0===e?void 0:e.messages)||[]},set:function(e){var t=this.messageSets.findIndex((function(e){return e.isCurrent}));this.messageSets[t].messages=e}},{key:"latestMessages",get:function(){var e;return(null===(e=this.messageSets.find((function(e){return e.isLatest})))||void 0===e?void 0:e.messages)||[]},set:function(e){var t=this.messageSets.findIndex((function(e){return e.isLatest}));this.messageSets[t].messages=e}},{key:"addMessageSorted",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"latest";return this.addMessagesSorted([e],t,!1,n,r)}},{key:"formatMessage",value:function(e){return xe(xe({},e),{},{__html:e.html,pinned_at:e.pinned_at?new Date(e.pinned_at):null,created_at:e.created_at?new Date(e.created_at):new Date,updated_at:e.updated_at?new Date(e.updated_at):new Date,status:e.status||"received"})}},{key:"addMessagesSorted",value:function(e){for(var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"current",i=this.findTargetMessageSet(e,r,s),a=i.messagesToAdd,o=i.targetMessageSetIndex,c=0;c<a.length;c+=1){var u=a[c].shadowed;if(!u){var l,h=a[c].created_at instanceof Date,d=void 0;if(h)d=a[c];else(d=this.formatMessage(a[c])).user&&null!==(l=this._channel)&&void 0!==l&&l.cid&&this._channel.getClient().state.updateUserReference(d.user,this._channel.cid),n&&d.id&&this.threads[d.id]&&delete this.threads[d.id],this.last_message_at||(this.last_message_at=new Date(d.created_at.getTime())),d.created_at.getTime()>this.last_message_at.getTime()&&(this.last_message_at=new Date(d.created_at.getTime()));var f=d.parent_id;if(f&&!d.show_in_channel||-1===o||(this.messageSets[o].messages=this._addToMessageList(this.messageSets[o].messages,d,t,"created_at",r)),f&&!n){var p=this.threads[f]||[],v=this._addToMessageList(p,d,t,"created_at",r);this.threads[f]=v}}}}},{key:"addPinnedMessages",value:function(e){for(var t=0;t<e.length;t+=1)this.addPinnedMessage(e[t])}},{key:"addPinnedMessage",value:function(e){this.pinnedMessages=this._addToMessageList(this.pinnedMessages,this.formatMessage(e),!1,"pinned_at")}},{key:"removePinnedMessage",value:function(e){var t=this.removeMessageFromArray(this.pinnedMessages,e).result;this.pinnedMessages=t}},{key:"addReaction",value:function(e,t,n){var r=this;if(t){var s=t;return this._updateMessage(t,(function(t){return s.own_reactions=r._addOwnReactionToMessage(t.own_reactions,e,n),r.formatMessage(s)})),s}}},{key:"_addOwnReactionToMessage",value:function(e,t,n){return e=(e=n?[]:this._removeOwnReactionFromMessage(e,t))||[],this._channel.getClient().userID===t.user_id&&e.push(t),e}},{key:"_removeOwnReactionFromMessage",value:function(e,t){return e?e.filter((function(e){return e.user_id!==t.user_id||e.type!==t.type})):e}},{key:"removeReaction",value:function(e,t){var n=this;if(t){var r=t;return this._updateMessage(t,(function(t){return r.own_reactions=n._removeOwnReactionFromMessage(t.own_reactions,e),n.formatMessage(r)})),r}}},{key:"removeQuotedMessageReferences",value:function(e){var t=this,n=function(e){var t,n;return xe(xe({},e),{},{created_at:e.created_at.toString(),pinned_at:null===(t=e.pinned_at)||void 0===t?void 0:t.toString(),updated_at:null===(n=e.updated_at)||void 0===n?void 0:n.toString()})};this.messageSets.forEach((function(r){var s=r.messages.filter((function(t){return t.quoted_message_id===e.id})).map(n).map((function(t){return xe(xe({},t),{},{quoted_message:xe(xe({},e),{},{attachments:[]})})}));t.addMessagesSorted(s,!0)}))}},{key:"_updateMessage",value:function(e,t){var n=e.parent_id,r=e.show_in_channel,s=e.pinned;if(n&&this.threads[n]){var i=this.threads[n],a=i.findIndex((function(t){return t.id===e.id}));-1!==a&&(i[a]=t(i[a]),this.threads[n]=i)}if(!r&&!n||r){var o=this.findMessageSetIndex(e);if(-1!==o){var c=this.messageSets[o].messages.findIndex((function(t){return t.id===e.id}));-1!==c&&(this.messageSets[o].messages[c]=t(this.messageSets[o].messages[c]))}}if(s){var u=this.pinnedMessages.findIndex((function(t){return t.id===e.id}));-1!==u&&(this.pinnedMessages[u]=t(this.pinnedMessages[u]))}}},{key:"_addToMessageList",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"created_at",s=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=s||n,a=e;n&&(a=a.filter((function(e){return!(e.id&&t.id===e.id)})));var o=a.length;if(0===o&&i)return a.concat(t);if(0===o)return m(a);var c=t[r].getTime(),u=a[o-1][r].getTime()<c;if(u&&i)return a.concat(t);if(u)return m(a);for(var l=0,h=0,d=o-1;l<=d;)a[h=Math.floor((d+l)/2)][r].getTime()<=c?l=h+1:d=h-1;if(!n&&t.id){if(a[l]&&t.id===a[l].id)return a[l]=t,m(a);if(a[l-1]&&t.id===a[l-1].id)return a[l-1]=t,m(a)}return i&&a.splice(l,0,t),m(a)}},{key:"removeMessage",value:function(e){var t=!1;if(e.parent_id&&this.threads[e.parent_id]){var n=this.removeMessageFromArray(this.threads[e.parent_id],e),r=n.removed,s=n.result;this.threads[e.parent_id]=s,t=r}else{var i,a=null!==(i=e.messageSetIndex)&&void 0!==i?i:this.findMessageSetIndex(e);if(-1!==a){var o=this.removeMessageFromArray(this.messageSets[a].messages,e),c=o.removed,u=o.result;this.messageSets[a].messages=u,t=c}}return t}},{key:"filterErrorMessages",value:function(){var e=this.latestMessages.filter((function(e){return"error"!==e.type}));this.latestMessages=e}},{key:"clean",value:function(){for(var e=new Date,t=0,n=Object.entries(this.typing);t<n.length;t++){var r=ke(n[t],2),s=r[0],i=r[1],a="string"==typeof i.received_at?new Date(i.received_at):i.received_at||new Date;e.getTime()-a.getTime()>7e3&&(delete this.typing[s],this._channel.getClient().dispatchEvent({cid:this._channel.cid,type:"typing.stop",user:{id:s}}))}}},{key:"clearMessages",value:function(){this.initMessages(),this.pinnedMessages=[]}},{key:"initMessages",value:function(){this.messageSets=[{messages:[],isLatest:!0,isCurrent:!0}]}},{key:"loadMessageIntoState",value:(t=b(O.mark((function e(t,n){var r,s,i,a,o,c,u=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(s=u.length>2&&void 0!==u[2]?u[2]:25,a=!1,o=!1,c=n||t,"latest"!==t){e.next=10;break}if(this.messages!==this.latestMessages){e.next=7;break}return e.abrupt("return");case 7:i=this.messageSets.findIndex((function(e){return e.isLatest})),e.next=11;break;case 10:i=this.findMessageSetIndex({id:c});case 11:if(-1!==i&&(this.switchToMessageSet(i),a=!0),o=!n||!(null===(r=this.threads[n])||void 0===r||!r.find((function(e){return e.id===t}))),!a||!o){e.next=15;break}return e.abrupt("return");case 15:if(a){e.next=18;break}return e.next=18,this._channel.query({messages:{id_around:c,limit:s}},"new");case 18:if(o||!n){e.next=21;break}return e.next=21,this._channel.getReplies(n,{id_around:t,limit:s});case 21:-1!==(i=this.findMessageSetIndex({id:c}))&&this.switchToMessageSet(i);case 23:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)})},{key:"findMessage",value:function(e,t){if(t){var n=this.threads[t];if(!n)return;return n.find((function(t){return t.id===e}))}var r=this.findMessageSetIndex({id:e});if(-1!==r)return this.messageSets[r].messages.find((function(t){return t.id===e}))}},{key:"switchToMessageSet",value:function(e){var t=this.messageSets.find((function(e){return e.isCurrent}));t&&(t.isCurrent=!1,this.messageSets[e].isCurrent=!0)}},{key:"areMessageSetsOverlap",value:function(e,t){return e.some((function(e){return t.find((function(t){return e.id===t.id}))}))}},{key:"findMessageSetIndex",value:function(e){return this.messageSets.findIndex((function(t){return!!t.messages.find((function(t){return t.id===e.id}))}))}},{key:"findTargetMessageSet",value:function(e){var t,n=this,r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"current",i=e;if(r){var a=this.messageSets.map((function(e,t){return t})).filter((function(t){return n.areMessageSetsOverlap(n.messageSets[t].messages,e)}));switch(s){case"new":a.length>0?t=a[0]:e.some((function(e){return!e.parent_id}))&&(this.messageSets.push({messages:[],isCurrent:!1,isLatest:!1}),t=this.messageSets.length-1);break;case"current":t=this.messageSets.findIndex((function(e){return e.isCurrent}));break;case"latest":t=this.messageSets.findIndex((function(e){return e.isLatest}));break;default:t=-1}var o=a.splice(0,1)[0],c=m(a);if(void 0!==o&&o!==t&&c.push(t),c.length>0){var u=this.messageSets[o],l=this.messageSets.filter((function(e,t){return-1!==c.indexOf(t)}));l.forEach((function(e){u.isLatest=u.isLatest||e.isLatest,u.isCurrent=u.isCurrent||e.isCurrent,i=[].concat(m(i),m(e.messages))})),l.forEach((function(e){return n.messageSets.splice(n.messageSets.indexOf(e),1)}));var h=this.messageSets.findIndex((function(t){return n.areMessageSetsOverlap(t.messages,e)}));t=h}}else t=this.findMessageSetIndex(e[0]);return{targetMessageSetIndex:t,messagesToAdd:i}}}]),e}();function Se(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ue(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Se(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Se(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Re={"channel.created":!0,"channel.deleted":!0,"channel.hidden":!0,"channel.kicked":!0,"channel.muted":!0,"channel.truncated":!0,"channel.unmuted":!0,"channel.updated":!0,"channel.visible":!0,"health.check":!0,"member.added":!0,"member.removed":!0,"member.updated":!0,"message.deleted":!0,"message.new":!0,"message.read":!0,"message.updated":!0,"notification.added_to_channel":!0,"notification.channel_deleted":!0,"notification.channel_mutes_updated":!0,"notification.channel_truncated":!0,"notification.invite_accepted":!0,"notification.invite_rejected":!0,"notification.invited":!0,"notification.mark_read":!0,"notification.message_new":!0,"notification.mutes_updated":!0,"notification.removed_from_channel":!0,"reaction.deleted":!0,"reaction.new":!0,"reaction.updated":!0,"typing.start":!0,"typing.stop":!0,"user.banned":!0,"user.deleted":!0,"user.presence.changed":!0,"user.unbanned":!0,"user.unread_message_reminder":!0,"user.updated":!0,"user.watching.start":!0,"user.watching.stop":!0,"connection.changed":!0,"connection.recovered":!0,"transport.changed":!0},Oe=Ue(Ue({},Re),{},{all:!0}),Ee=function(e){return Oe[e]||!1},Me="object"==typeof self?self.FormData:window.FormData;function Te(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return Le(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Le(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,s=function(){};return{s:s,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){throw e})),f:s}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){o=!0,i=e})),f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}function Le(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Ie(e,t){e.then().catch((function(e){console.warn("failed to do ".concat(t,", ran into error: "),e)}))}var Pe=function(e){return new Promise((function(t){return setTimeout(t,e)}))};function De(e){return e&&("[object Function]"===Object.prototype.toString.call(e)||"function"==typeof e||e instanceof Function)}var Ae={TOKEN_EXPIRED:40,WS_CLOSED_SUCCESS:1e3};function je(e,t,n){var r,s=new Me;return null!==(r=e)&&"object"===f(r)&&(r.readable||"function"==typeof r._read)||function(e){return null!=e&&null!=e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}(e)||function(e){return"undefined"!=typeof window&&"File"in window&&e instanceof File}(e)||function(e){return"undefined"!=typeof window&&"Blob"in window&&e instanceof Blob}(e)?t?s.append("file",e,t):s.append("file",e):s.append("file",{uri:e,name:t||e.split("/").reverse()[0],contentType:n||void 0,type:n||void 0}),s}function Fe(e){var t,n=[],r=Te(Array.isArray(e)?e:[e]);try{for(r.s();!(t=r.n()).done;){var s=t.value,i=Object.entries(s);i.length>1&&console.warn("client._buildSort() - multiple fields in a single sort object detected. Object's field order is not guaranteed");for(var a=0,o=i;a<o.length;a++){var c=ke(o[a],2),u=c[0],l=c[1];n.push({field:u,direction:l})}}}catch(e){r.e(e)}finally{r.f()}return n}function Ne(e){var t=Math.min(500+2e3*e,25e3),n=Math.min(Math.max(250,2e3*(e-1)),25e3);return Math.floor(Math.random()*(t-n)+n)}function qe(){return(e=function(e){var t=new Uint8Array(e);return ze(t),t}(16))[6]=15&e[6]|64,e[8]=191&e[8]|128,We(e.subarray(0,4))+"-"+We(e.subarray(4,6))+"-"+We(e.subarray(6,8))+"-"+We(e.subarray(8,10))+"-"+We(e.subarray(10,16));var e}function We(e){for(var t="",n=0;n<e.length;n++)t+=e[n].toString(16).padStart(2,"0");return t}function Be(e){for(var t=Math.pow(2,8*e.byteLength/e.length),n=0;n<e.length;n++)e[n]=Math.random()*t}var ze="undefined"!=typeof crypto?crypto.getRandomValues.bind(crypto):"undefined"!=typeof msCrypto?msCrypto.getRandomValues.bind(msCrypto):Be;function He(e){var t={};if(!e)return t;try{Object.getOwnPropertyNames(e).forEach((function(n){t[n]=Object.getOwnPropertyDescriptor(e,n)}))}catch(e){return{error:"failed to serialize the error"}}return t}function Je(e){"undefined"!=typeof window&&window.addEventListener&&(window.addEventListener("offline",e),window.addEventListener("online",e))}function Ge(e){"undefined"!=typeof window&&window.removeEventListener&&(window.removeEventListener("offline",e),window.removeEventListener("online",e))}function Xe(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return Ke(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Ke(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,s=function(){};return{s:s,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:s}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){o=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}function Ke(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Ve(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function $e(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ve(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ve(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Qe=function(){function e(t,n,r,s){var i=this;w(this,e),x(this,"_client",void 0),x(this,"type",void 0),x(this,"id",void 0),x(this,"data",void 0),x(this,"_data",void 0),x(this,"cid",void 0),x(this,"listeners",void 0),x(this,"state",void 0),x(this,"initialized",void 0),x(this,"lastKeyStroke",void 0),x(this,"lastTypingEvent",void 0),x(this,"isTyping",void 0),x(this,"disconnected",void 0),x(this,"create",b(O.mark((function e(){var t;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t={watch:!1,state:!1,presence:!1},e.next=3,i.query(t,"latest");case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})))),x(this,"_callChannelListeners",(function(e){var t=i,n=[];t.listeners.all&&n.push.apply(n,m(t.listeners.all)),t.listeners[e.type]&&n.push.apply(n,m(t.listeners[e.type]));for(var r=0,s=n;r<s.length;r++){var a=s[r];"string"!=typeof a&&a(e)}})),x(this,"_channelURL",(function(){if(!i.id)throw new Error("channel id is not defined");return"".concat(i.getClient().baseURL,"/channels/").concat(i.type,"/").concat(i.id)}));if(!/^[\w_-]+$/.test(n))throw new Error("Invalid chat type ".concat(n,', letters, numbers and "_-" are allowed'));if("string"==typeof r&&!/^[\w!_-]+$/.test(r))throw new Error("Invalid chat id ".concat(r,', letters, numbers and "!-_" are allowed'));this._client=t,this.type=n,this.id=r,this.data=s,this._data=$e({},s),this.cid="".concat(n,":").concat(r),this.listeners={},this.state=new Ce(this),this.initialized=!1,this.lastTypingEvent=null,this.isTyping=!1,this.disconnected=!1}var t,n,r,s,i,a,o,c,u,l,h,d,p,v,g,y,k,C,S,U,R,E,M,T,L,I,P,D,A,j,F,N,q,W,B,z,H;return _(e,[{key:"getClient",value:function(){if(!0===this.disconnected)throw Error("You can't use a channel after client.disconnect() was called");return this._client}},{key:"getConfig",value:function(){return this.getClient().configs[this.type]}},{key:"sendMessage",value:(H=b(O.mark((function e(t,n){var r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().post(this._channelURL()+"/message",$e({message:t},n));case 2:return r=e.sent,this.state.unreadCount=0,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return H.apply(this,arguments)})},{key:"sendFile",value:function(e,t,n,r){return this.getClient().sendFile("".concat(this._channelURL(),"/file"),e,t,n,r)}},{key:"sendImage",value:function(e,t,n,r){return this.getClient().sendFile("".concat(this._channelURL(),"/image"),e,t,n,r)}},{key:"deleteFile",value:function(e){return this.getClient().delete("".concat(this._channelURL(),"/file"),{url:e})}},{key:"deleteImage",value:function(e){return this.getClient().delete("".concat(this._channelURL(),"/image"),{url:e})}},{key:"sendEvent",value:(z=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._checkInitialized(),e.next=3,this.getClient().post(this._channelURL()+"/event",{event:t});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return z.apply(this,arguments)})},{key:"search",value:(B=b(O.mark((function e(t){var n,r,s=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(n=s.length>1&&void 0!==s[1]?s[1]:{}).offset||!n.sort&&!n.next){e.next=3;break}throw Error("Cannot specify offset with sort or next parameters");case 3:if(r=$e($e({filter_conditions:{cid:this.cid}},n),{},{sort:n.sort?Fe(n.sort):void 0}),"string"!=typeof t){e.next=8;break}r.query=t,e.next=13;break;case 8:if("object"!==f(t)){e.next=12;break}r.message_filter_conditions=t,e.next=13;break;case 12:throw Error("Invalid type ".concat(f(t)," for query parameter"));case 13:return e.next=15,this.getClient().wsPromise;case 15:return e.next=17,this.getClient().get(this.getClient().baseURL+"/search",{payload:r});case 17:return e.abrupt("return",e.sent);case 18:case"end":return e.stop()}}),e,this)}))),function(e){return B.apply(this,arguments)})},{key:"queryMembers",value:(W=b(O.mark((function e(t){var n,r,s,i,a,o,c=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=c.length>1&&void 0!==c[1]?c[1]:[],s=c.length>2&&void 0!==c[2]?c[2]:{},a=this.type,this.id?i=this.id:null!==(n=this.data)&&void 0!==n&&n.members&&Array.isArray(this.data.members)&&(o=this.data.members),e.next=6,this.getClient().get(this.getClient().baseURL+"/members",{payload:$e({type:a,id:i,members:o,sort:Fe(r),filter_conditions:t},s)});case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(e){return W.apply(this,arguments)})},{key:"sendReaction",value:(q=b(O.mark((function e(t,n,r){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}throw Error("Message id is missing");case 2:if(n&&0!==Object.keys(n).length){e.next=4;break}throw Error("Reaction object is missing");case 4:return e.next=6,this.getClient().post(this.getClient().baseURL+"/messages/".concat(t,"/reaction"),$e({reaction:n},r));case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return q.apply(this,arguments)})},{key:"deleteReaction",value:function(e,t,n){if(this._checkInitialized(),!t||!e)throw Error("Deleting a reaction requires specifying both the message and reaction type");var r=this.getClient().baseURL+"/messages/".concat(e,"/reaction/").concat(t);return n?this.getClient().delete(r,{user_id:n}):this.getClient().delete(r,{})}},{key:"update",value:(N=b(O.mark((function e(){var t,n,r,s=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=s.length>0&&void 0!==s[0]?s[0]:{},n=s.length>1?s[1]:void 0,r=s.length>2?s[2]:void 0,["config","cid","created_by","id","member_count","type","created_at","updated_at","last_message_at","own_capabilities"].forEach((function(e){delete t[e]})),e.next=7,this._update($e({message:n,data:t},r));case 7:return e.abrupt("return",e.sent);case 8:case"end":return e.stop()}}),e,this)}))),function(){return N.apply(this,arguments)})},{key:"updatePartial",value:(F=b(O.mark((function e(t){var n;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().patch(this._channelURL(),t);case 2:return n=e.sent,this.data=n.channel,e.abrupt("return",n);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return F.apply(this,arguments)})},{key:"enableSlowMode",value:(j=b(O.mark((function e(t){var n;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().post(this._channelURL(),{cooldown:t});case 2:return n=e.sent,this.data=n.channel,e.abrupt("return",n);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return j.apply(this,arguments)})},{key:"disableSlowMode",value:(A=b(O.mark((function e(){var t;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().post(this._channelURL(),{cooldown:0});case 2:return t=e.sent,this.data=t.channel,e.abrupt("return",t);case 5:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"delete",value:(D=b(O.mark((function e(){var t,n=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this.getClient().delete(this._channelURL(),$e({},t));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return D.apply(this,arguments)})},{key:"truncate",value:(P=b(O.mark((function e(){var t,n=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this.getClient().post(this._channelURL()+"/truncate",t);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return P.apply(this,arguments)})},{key:"acceptInvite",value:(I=b(O.mark((function e(){var t,n=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this._update($e({accept_invite:!0},t));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return I.apply(this,arguments)})},{key:"rejectInvite",value:(L=b(O.mark((function e(){var t,n=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this._update($e({reject_invite:!0},t));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return L.apply(this,arguments)})},{key:"addMembers",value:(T=b(O.mark((function e(t,n){var r,s=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this._update($e({add_members:t,message:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return T.apply(this,arguments)})},{key:"addModerators",value:(M=b(O.mark((function e(t,n){var r,s=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this._update($e({add_moderators:t,message:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return M.apply(this,arguments)})},{key:"assignRoles",value:(E=b(O.mark((function e(t,n){var r,s=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this._update($e({assign_roles:t,message:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return E.apply(this,arguments)})},{key:"inviteMembers",value:(R=b(O.mark((function e(t,n){var r,s=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this._update($e({invites:t,message:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return R.apply(this,arguments)})},{key:"removeMembers",value:(U=b(O.mark((function e(t,n){var r,s=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this._update($e({remove_members:t,message:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return U.apply(this,arguments)})},{key:"demoteModerators",value:(S=b(O.mark((function e(t,n){var r,s=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this._update($e({demote_moderators:t,message:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return S.apply(this,arguments)})},{key:"_update",value:(C=b(O.mark((function e(t){var n;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().post(this._channelURL(),t);case 2:return n=e.sent,this.data=n.channel,e.abrupt("return",n);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return C.apply(this,arguments)})},{key:"mute",value:(k=b(O.mark((function e(){var t,n=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this.getClient().post(this.getClient().baseURL+"/moderation/mute/channel",$e({channel_cid:this.cid},t));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return k.apply(this,arguments)})},{key:"unmute",value:(y=b(O.mark((function e(){var t,n=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this.getClient().post(this.getClient().baseURL+"/moderation/unmute/channel",$e({channel_cid:this.cid},t));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return y.apply(this,arguments)})},{key:"muteStatus",value:function(){return this._checkInitialized(),this.getClient()._muteStatus(this.cid)}},{key:"sendAction",value:function(e,t){if(this._checkInitialized(),!e)throw Error("Message id is missing");return this.getClient().post(this.getClient().baseURL+"/messages/".concat(e,"/action"),{message_id:e,form_data:t,id:this.id,type:this.type})}},{key:"keystroke",value:(g=b(O.mark((function e(t){var n,r,s;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!==(n=this.getConfig())&&void 0!==n&&n.typing_events){e.next=2;break}return e.abrupt("return");case 2:if(r=new Date,s=this.lastTypingEvent&&r.getTime()-this.lastTypingEvent.getTime(),this.lastKeyStroke=r,this.isTyping=!0,!(null===s||s>2e3)){e.next=10;break}return this.lastTypingEvent=new Date,e.next=10,this.sendEvent({type:"typing.start",parent_id:t});case 10:case"end":return e.stop()}}),e,this)}))),function(e){return g.apply(this,arguments)})},{key:"stopTyping",value:(v=b(O.mark((function e(t){var n;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!==(n=this.getConfig())&&void 0!==n&&n.typing_events){e.next=2;break}return e.abrupt("return");case 2:return this.lastTypingEvent=null,this.isTyping=!1,e.next=6,this.sendEvent({type:"typing.stop",parent_id:t});case 6:case"end":return e.stop()}}),e,this)}))),function(e){return v.apply(this,arguments)})},{key:"lastMessage",value:function(){var e=this.state.latestMessages.length-5;e<0&&(e=0);var t=this.state.latestMessages.length+1,n=this.state.latestMessages.slice(e,t);return n.sort((function(e,t){return t.created_at.getTime()-e.created_at.getTime()})),n[0]}},{key:"markRead",value:(p=b(O.mark((function e(){var t,n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>0&&void 0!==r[0]?r[0]:{},this._checkInitialized(),null!==(t=this.getConfig())&&void 0!==t&&t.read_events){e.next=4;break}return e.abrupt("return",Promise.resolve(null));case 4:return e.next=6,this.getClient().post(this._channelURL()+"/read",$e({},n));case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(){return p.apply(this,arguments)})},{key:"clean",value:function(){this.lastKeyStroke&&((new Date).getTime()-this.lastKeyStroke.getTime()>1e3&&this.isTyping&&Ie(this.stopTyping(),"stop typing event"));this.state.clean()}},{key:"watch",value:(d=b(O.mark((function e(t){var n,r,s;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n={state:!0,watch:!0,presence:!1},e.next=3,this.getClient().wsPromise;case 3:return this.getClient()._hasConnectionID()||(n.watch=!1),r=$e($e({},n),t),e.next=7,this.query(r,"latest");case 7:return s=e.sent,this.initialized=!0,this.data=s.channel,this._client.logger("info","channel:watch() - started watching channel ".concat(this.cid),{tags:["channel"],channel:this}),e.abrupt("return",s);case 12:case"end":return e.stop()}}),e,this)}))),function(e){return d.apply(this,arguments)})},{key:"stopWatching",value:(h=b(O.mark((function e(){var t;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().post(this._channelURL()+"/stop-watching",{});case 2:return t=e.sent,this._client.logger("info","channel:watch() - stopped watching channel ".concat(this.cid),{tags:["channel"],channel:this}),e.abrupt("return",t);case 5:case"end":return e.stop()}}),e,this)}))),function(){return h.apply(this,arguments)})},{key:"getReplies",value:(l=b(O.mark((function e(t,n){var r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().get(this.getClient().baseURL+"/messages/".concat(t,"/replies"),$e({},n));case 2:return(r=e.sent).messages&&this.state.addMessagesSorted(r.messages),e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return l.apply(this,arguments)})},{key:"getPinnedMessages",value:(u=b(O.mark((function e(t){var n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:[],e.next=3,this.getClient().get(this.getClient().baseURL+"/channels/".concat(this.type,"/").concat(this.id,"/pinned_messages"),{payload:$e($e({},t),{},{sort:Fe(n)})});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return u.apply(this,arguments)})},{key:"getReactions",value:function(e,t){return this.getClient().get(this.getClient().baseURL+"/messages/".concat(e,"/reactions"),$e({},t))}},{key:"getMessagesById",value:function(e){return this.getClient().get(this._channelURL()+"/messages",{ids:e.join(",")})}},{key:"lastRead",value:function(){this._checkInitialized();var e=this.getClient().userID;if(e)return this.state.read[e]?this.state.read[e].last_read:null}},{key:"_countMessageAsUnread",value:function(e){var t,n,r,s;return!e.shadowed&&(!e.silent&&(!(e.parent_id&&!e.show_in_channel)&&((null===(t=e.user)||void 0===t?void 0:t.id)!==this.getClient().userID&&((null===(n=e.user)||void 0===n||!n.id||!this.getClient().userMuteStatus(e.user.id))&&("system"!==e.type&&(!(Array.isArray(null===(r=this.data)||void 0===r?void 0:r.own_capabilities)&&(null===(s=this.data)||void 0===s||!s.own_capabilities.includes("read-events")))&&!this.muteStatus().muted))))))}},{key:"countUnread",value:function(e){if(!e)return this.state.unreadCount;for(var t=0,n=0;n<this.state.latestMessages.length;n+=1){var r=this.state.latestMessages[n];r.created_at>e&&this._countMessageAsUnread(r)&&t++}return t}},{key:"countUnreadMentions",value:function(){for(var e=this.lastRead(),t=this.getClient().userID,n=0,r=0;r<this.state.latestMessages.length;r+=1){var s,i=this.state.latestMessages[r];this._countMessageAsUnread(i)&&(!e||i.created_at>e)&&null!==(s=i.mentioned_users)&&void 0!==s&&s.some((function(e){return e.id===t}))&&n++}return n}},{key:"query",value:(c=b(O.mark((function e(t){var n,r,s,i,a,o=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length>1&&void 0!==o[1]?o[1]:"current",e.next=3,this.getClient().wsPromise;case 3:return r="".concat(this.getClient().baseURL,"/channels/").concat(this.type),this.id&&(r+="/".concat(this.id)),e.next=7,this.getClient().post(r+"/query",$e({data:this._data,state:!0},t));case 7:return s=e.sent,this.id||(this.id=s.channel.id,this.cid=s.channel.cid,i=s.members.map((function(e){var t;return e.user_id||(null===(t=e.user)||void 0===t?void 0:t.id)})).sort().join(","),(a="".concat(this.type,":!members-").concat(i))in this.getClient().activeChannels&&delete this.getClient().activeChannels[a],this.cid in this.getClient().activeChannels||(this.getClient().activeChannels[this.cid]=this)),this.getClient()._addChannelConfig(s),this._initializeState(s,n),this.data=s.channel,e.abrupt("return",s);case 13:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"banUser",value:(o=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._checkInitialized(),e.next=3,this.getClient().banUser(t,$e($e({},n),{},{type:this.type,id:this.id}));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return o.apply(this,arguments)})},{key:"hide",value:(a=b(O.mark((function e(){var t,n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.length>0&&void 0!==r[0]?r[0]:null,n=r.length>1&&void 0!==r[1]&&r[1],this._checkInitialized(),e.next=5,this.getClient().post("".concat(this._channelURL(),"/hide"),{user_id:t,clear_history:n});case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"show",value:(i=b(O.mark((function e(){var t,n=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:null,this._checkInitialized(),e.next=4,this.getClient().post("".concat(this._channelURL(),"/show"),{user_id:t});case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"unbanUser",value:(s=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._checkInitialized(),e.next=3,this.getClient().unbanUser(t,{type:this.type,id:this.id});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return s.apply(this,arguments)})},{key:"shadowBan",value:(r=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._checkInitialized(),e.next=3,this.getClient().shadowBan(t,$e($e({},n),{},{type:this.type,id:this.id}));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"removeShadowBan",value:(n=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._checkInitialized(),e.next=3,this.getClient().removeShadowBan(t,{type:this.type,id:this.id});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"createCall",value:(t=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getClient().post(this._channelURL()+"/call",t);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"on",value:function(e,t){var n=this,r=t?e:"all";if(!Ee(r))throw Error("Invalid event type ".concat(r));var s=t||e;return r in this.listeners||(this.listeners[r]=[]),this._client.logger("info","Attaching listener for ".concat(r," event on channel ").concat(this.cid),{tags:["event","channel"],channel:this}),this.listeners[r].push(s),{unsubscribe:function(){n._client.logger("info","Removing listener for ".concat(r," event from channel ").concat(n.cid),{tags:["event","channel"],channel:n}),n.listeners[r]=n.listeners[r].filter((function(e){return e!==s}))}}}},{key:"off",value:function(e,t){var n=t?e:"all";if(!Ee(n))throw Error("Invalid event type ".concat(n));var r=t||e;n in this.listeners||(this.listeners[n]=[]),this._client.logger("info","Removing listener for ".concat(n," event from channel ").concat(this.cid),{tags:["event","channel"],channel:this}),this.listeners[n]=this.listeners[n].filter((function(e){return e!==r}))}},{key:"_handleChannelEvent",value:function(e){var t,n,r,s,i,a,o,c,u=this;this._client.logger("info","channel:_handleChannelEvent - Received event of type { ".concat(e.type," } on ").concat(this.cid),{tags:["event","channel"],channel:this});var l=u.state;switch(e.type){case"typing.start":null!==(t=e.user)&&void 0!==t&&t.id&&(l.typing[e.user.id]=e);break;case"typing.stop":null!==(n=e.user)&&void 0!==n&&n.id&&delete l.typing[e.user.id];break;case"message.read":var h,d;if(null!==(r=e.user)&&void 0!==r&&r.id)l.read[e.user.id]={last_read:e.received_at,user:e.user,unread_messages:0},(null===(h=e.user)||void 0===h?void 0:h.id)===(null===(d=this.getClient().user)||void 0===d?void 0:d.id)&&(l.unreadCount=0);break;case"user.watching.start":case"user.updated":null!==(s=e.user)&&void 0!==s&&s.id&&(l.watchers[e.user.id]=e.user);break;case"user.watching.stop":null!==(i=e.user)&&void 0!==i&&i.id&&delete l.watchers[e.user.id];break;case"message.deleted":e.message&&(this._extendEventWithOwnReactions(e),e.hard_delete?l.removeMessage(e.message):l.addMessageSorted(e.message,!1,!1),l.removeQuotedMessageReferences(e.message),e.message.pinned&&l.removePinnedMessage(e.message));break;case"message.new":if(e.message){var f,p,v,g=(null===(f=e.user)||void 0===f?void 0:f.id)===(null===(p=this.getClient().user)||void 0===p?void 0:p.id),m=e.message.parent_id&&!e.message.show_in_channel;(this.state.isUpToDate||m)&&l.addMessageSorted(e.message,g),e.message.pinned&&l.addPinnedMessage(e.message),g&&null!==(v=e.user)&&void 0!==v&&v.id?(l.unreadCount=0,l.read[e.user.id]={last_read:new Date(e.created_at),user:e.user,unread_messages:0}):this._countMessageAsUnread(e.message)&&(l.unreadCount=l.unreadCount+1)}break;case"message.updated":e.message&&(this._extendEventWithOwnReactions(e),l.addMessageSorted(e.message,!1,!1),e.message.pinned?l.addPinnedMessage(e.message):l.removePinnedMessage(e.message));break;case"channel.truncated":if(null!==(a=e.channel)&&void 0!==a&&a.truncated_at){var y=+new Date(e.channel.truncated_at);l.messageSets.forEach((function(e,t){e.messages.forEach((function(e){var n=e.created_at,r=e.id;y>+n&&l.removeMessage({id:r,messageSetIndex:t})}))})),l.pinnedMessages.forEach((function(e){var t=e.id,n=e.created_at;y>+n&&l.removePinnedMessage({id:t})}))}else l.clearMessages();l.unreadCount=0,e.message&&(l.addMessageSorted(e.message),e.message.pinned&&l.addPinnedMessage(e.message));break;case"member.added":case"member.updated":null!==(o=e.member)&&void 0!==o&&o.user_id&&(l.members[e.member.user_id]=e.member);break;case"member.removed":null!==(c=e.user)&&void 0!==c&&c.id&&delete l.members[e.user.id];break;case"channel.updated":var b,w,k,_,x,C;if(e.channel)u.data=$e($e({},e.channel),{},{hidden:null!==(b=null===(w=e.channel)||void 0===w?void 0:w.hidden)&&void 0!==b?b:null===(k=u.data)||void 0===k?void 0:k.hidden,own_capabilities:null!==(_=null===(x=e.channel)||void 0===x?void 0:x.own_capabilities)&&void 0!==_?_:null===(C=u.data)||void 0===C?void 0:C.own_capabilities});break;case"reaction.new":e.message&&e.reaction&&(e.message=l.addReaction(e.reaction,e.message));break;case"reaction.deleted":e.reaction&&(e.message=l.removeReaction(e.reaction,e.message));break;case"reaction.updated":e.reaction&&(e.message=l.addReaction(e.reaction,e.message,!0));break;case"channel.hidden":e.clear_history&&l.clearMessages()}void 0!==e.watcher_count&&(u.state.watcher_count=e.watcher_count)}},{key:"_checkInitialized",value:function(){if(!this.initialized&&!this.getClient()._isUsingServerAuth())throw Error("Channel ".concat(this.cid," hasn't been initialized yet. Make sure to call .watch() and wait for it to resolve"))}},{key:"_initializeState",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"latest",n=this.getClient(),r=n.state,s=n.user,i=n.userID;if(e.members){var a,o=Xe(e.members);try{for(o.s();!(a=o.n()).done;){var c=a.value;c.user&&r.updateUserReference(c.user,this.cid)}}catch(e){o.e(e)}finally{o.f()}}this.state.membership=e.membership||{};var u=e.messages||[];if(this.state.messages||this.state.initMessages(),this.state.addMessagesSorted(u,!1,!0,!0,t),this.state.pinnedMessages||(this.state.pinnedMessages=[]),this.state.addPinnedMessages(e.pinned_messages||[]),e.pending_messages&&(this.state.pending_messages=e.pending_messages),this.state.watcher_count=e.watcher_count||0,e.watchers){var l,h=Xe(e.watchers);try{for(h.s();!(l=h.n()).done;){var d=l.value;d&&(r.updateUserReference(d,this.cid),this.state.watchers[d.id]=d)}}catch(e){h.e(e)}finally{h.f()}}if(null!=i){var f=this.state.last_message_at||new Date;s&&(this.state.read[s.id]={user:s,last_read:f,unread_messages:0})}if(e.read){var p,v=Xe(e.read);try{for(v.s();!(p=v.n()).done;){var g,m=p.value;this.state.read[m.user.id]={last_read:new Date(m.last_read),unread_messages:null!==(g=m.unread_messages)&&void 0!==g?g:0,user:m.user},m.user.id===(null==s?void 0:s.id)&&(this.state.unreadCount=this.state.read[m.user.id].unread_messages)}}catch(e){v.e(e)}finally{v.f()}}if(e.members){var y,b=Xe(e.members);try{for(b.s();!(y=b.n()).done;){var w=y.value;w.user&&(this.state.members[w.user.id]=w)}}catch(e){b.e(e)}finally{b.f()}}}},{key:"_extendEventWithOwnReactions",value:function(e){if(e.message){var t=this.state.findMessage(e.message.id,e.message.parent_id);t&&(e.message.own_reactions=t.own_reactions)}}},{key:"_disconnect",value:function(){this._client.logger("info","channel:disconnect() - Disconnecting the channel ".concat(this.cid),{tags:["connection","channel"],channel:this}),this.disconnected=!0,this.state.setIsUpToDate(!1)}}]),e}();function Ye(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return Ze(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Ze(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,s=function(){};return{s:s,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:s}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){o=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}function Ze(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var et=function(){function e(){w(this,e),x(this,"users",void 0),x(this,"userChannelReferences",void 0),this.users={},this.userChannelReferences={}}return _(e,[{key:"updateUsers",value:function(e){var t,n=Ye(e);try{for(n.s();!(t=n.n()).done;){var r=t.value;this.updateUser(r)}}catch(e){n.e(e)}finally{n.f()}}},{key:"updateUser",value:function(e){null!=e&&(this.users[e.id]=e)}},{key:"updateUserReference",value:function(e,t){null!=e&&(this.updateUser(e),this.userChannelReferences[e.id]||(this.userChannelReferences[e.id]={}),this.userChannelReferences[e.id][t]=!0)}},{key:"deleteAllChannelReference",value:function(e){for(var t in this.userChannelReferences)delete this.userChannelReferences[t][e]}}]),e}(),tt=null;"undefined"!=typeof WebSocket?tt=WebSocket:"undefined"!=typeof MozWebSocket?tt=MozWebSocket:void 0!==C?tt=C.WebSocket||C.MozWebSocket:"undefined"!=typeof window?tt=window.WebSocket||window.MozWebSocket:"undefined"!=typeof self&&(tt=self.WebSocket||self.MozWebSocket);var nt=tt;function rt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function st(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?rt(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):rt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var it=function e(){w(this,e),x(this,"connectionStartTimestamp",void 0),x(this,"wsConsecutiveFailures",void 0),x(this,"wsTotalFailures",void 0),x(this,"instanceClientId",void 0),this.connectionStartTimestamp=null,this.wsTotalFailures=0,this.wsConsecutiveFailures=0,this.instanceClientId=qe()},at=function(){var e=b(O.mark((function e(t,n){var r,s;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=3,s=0;case 2:if(!(s<r)){e.next=17;break}return e.prev=3,e.next=6,we.post("https://chat-insights.getstream.io/insights/".concat(t),n);case 6:e.next=13;break;case 8:return e.prev=8,e.t0=e.catch(3),e.next=12,Pe(3e3*(s+1));case 12:return e.abrupt("continue",14);case 13:return e.abrupt("break",17);case 14:s++,e.next=2;break;case 17:case"end":return e.stop()}}),e,null,[[3,8]])})));return function(t,n){return e.apply(this,arguments)}}();function ot(e,t){return st(st({},t),ct(e))}function ct(e){var t,n,r,s=e.client;return{ready_state:null===(t=e.ws)||void 0===t?void 0:t.readyState,url:e._buildUrl(),api_key:s.key,start_ts:s.insightMetrics.connectionStartTimestamp,end_ts:(new Date).getTime(),auth_type:s.getAuthType(),token:s.tokenManager.token,user_id:s.userID,user_details:s._user,device:s.options.device,client_id:e.connectionID,ws_details:e.ws,ws_consecutive_failures:s.insightMetrics.wsConsecutiveFailures,ws_total_failures:s.insightMetrics.wsTotalFailures,request_id:e.requestID,online:"undefined"!=typeof navigator?null===(n=navigator)||void 0===n?void 0:n.onLine:null,user_agent:"undefined"!=typeof navigator?null===(r=navigator)||void 0===r?void 0:r.userAgent:null,instance_client_id:s.insightMetrics.instanceClientId}}function ut(e){return ct(e)}function lt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ht(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?lt(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):lt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var dt=function(e){return void 0!==e.code},ft=function(e){return void 0!==e.error},pt=function(){function e(t){var n=this,r=t.client;w(this,e),x(this,"client",void 0),x(this,"connectionID",void 0),x(this,"connectionOpen",void 0),x(this,"consecutiveFailures",void 0),x(this,"pingInterval",void 0),x(this,"healthCheckTimeoutRef",void 0),x(this,"isConnecting",void 0),x(this,"isDisconnected",void 0),x(this,"isHealthy",void 0),x(this,"isResolved",void 0),x(this,"lastEvent",void 0),x(this,"connectionCheckTimeout",void 0),x(this,"connectionCheckTimeoutRef",void 0),x(this,"rejectPromise",void 0),x(this,"requestID",void 0),x(this,"resolvePromise",void 0),x(this,"totalFailures",void 0),x(this,"ws",void 0),x(this,"wsID",void 0),x(this,"_buildUrl",(function(){var e=encodeURIComponent(n.client._buildWSPayload(n.requestID)),t=n.client.tokenManager.getToken();return"".concat(n.client.wsBaseURL,"/connect?json=").concat(e,"&api_key=").concat(n.client.key,"&authorization=").concat(t,"&stream-auth-type=").concat(n.client.getAuthType(),"&X-Stream-Client=").concat(n.client.getUserAgent())})),x(this,"onlineStatusChanged",(function(e){"offline"===e.type?(n._log("onlineStatusChanged() - Status changing to offline"),n._setHealth(!1)):"online"===e.type&&(n._log("onlineStatusChanged() - Status changing to online. isHealthy: ".concat(n.isHealthy)),n.isHealthy||n._reconnect({interval:10}))})),x(this,"onopen",(function(e){n.wsID===e&&n._log("onopen() - onopen callback",{wsID:e})})),x(this,"onmessage",(function(e,t){if(n.wsID===e){n._log("onmessage() - onmessage callback",{event:t,wsID:e});var r="string"==typeof t.data?JSON.parse(t.data):null;if(!n.isResolved&&r){var s,i;if(n.isResolved=!0,r.error)return void(null===(i=n.rejectPromise)||void 0===i||i.call(n,n._errorFromWSEvent(r,!1)));null===(s=n.resolvePromise)||void 0===s||s.call(n,r),n._setHealth(!0)}n.lastEvent=new Date,r&&"health.check"===r.type&&n.scheduleNextPing(),n.client.handleEvent(t),n.scheduleConnectionCheck()}})),x(this,"onclose",(function(e,t){if(n.wsID===e)if(n._log("onclose() - onclose callback - "+t.code,{event:t,wsID:e}),t.code===Ae.WS_CLOSED_SUCCESS){var r,s=new Error("WS connection reject with error ".concat(t.reason));s.reason=t.reason,s.code=t.code,s.wasClean=t.wasClean,s.target=t.target,null===(r=n.rejectPromise)||void 0===r||r.call(n,s),n._log("onclose() - WS connection reject with error ".concat(t.reason),{event:t})}else{var i;n.consecutiveFailures+=1,n.totalFailures+=1,n._setHealth(!1),n.isConnecting=!1,null===(i=n.rejectPromise)||void 0===i||i.call(n,n._errorFromWSEvent(t)),n._log("onclose() - WS connection closed. Calling reconnect ...",{event:t}),n._reconnect()}})),x(this,"onerror",(function(e,t){var r;n.wsID===e&&(n.consecutiveFailures+=1,n.totalFailures+=1,n._setHealth(!1),n.isConnecting=!1,null===(r=n.rejectPromise)||void 0===r||r.call(n,n._errorFromWSEvent(t)),n._log("onerror() - WS connection resulted into error",{event:t}),n._reconnect())})),x(this,"_setHealth",(function(e){e!==n.isHealthy&&(n.isHealthy=e,n.isHealthy?n.client.dispatchEvent({type:"connection.changed",online:n.isHealthy}):setTimeout((function(){n.isHealthy||n.client.dispatchEvent({type:"connection.changed",online:n.isHealthy})}),5e3))})),x(this,"_errorFromWSEvent",(function(e){var t,r,s,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];dt(e)&&(t=e.code,r="unknown",s=e.reason),ft(e)&&(t=e.error.code,r=e.error.StatusCode,s=e.error.message),n._log("_errorFromWSEvent() - WS failed with code ".concat(t),{event:e},"warn");var a=new Error("WS failed with code ".concat(t," and reason - ").concat(s));return a.code=t,a.StatusCode=r,a.isWSFailure=i,a})),x(this,"_setupConnectionPromise",(function(){n.isResolved=!1,n.connectionOpen=new Promise((function(e,t){n.resolvePromise=e,n.rejectPromise=t}))})),x(this,"scheduleNextPing",(function(){n.healthCheckTimeoutRef&&clearTimeout(n.healthCheckTimeoutRef),n.healthCheckTimeoutRef=setTimeout((function(){var e=[{type:"health.check",client_id:n.client.clientID}];try{var t;null===(t=n.ws)||void 0===t||t.send(JSON.stringify(e))}catch(e){}}),n.pingInterval)})),x(this,"scheduleConnectionCheck",(function(){n.connectionCheckTimeoutRef&&clearTimeout(n.connectionCheckTimeoutRef),n.connectionCheckTimeoutRef=setTimeout((function(){var e=new Date;n.lastEvent&&e.getTime()-n.lastEvent.getTime()>n.connectionCheckTimeout&&(n._log("scheduleConnectionCheck - going to reconnect"),n._setHealth(!1),n._reconnect())}),n.connectionCheckTimeout)})),this.client=r,this.consecutiveFailures=0,this.totalFailures=0,this.isConnecting=!1,this.isDisconnected=!1,this.isResolved=!1,this.isHealthy=!1,this.wsID=1,this.lastEvent=null,this.pingInterval=25e3,this.connectionCheckTimeout=this.pingInterval+1e4,Je(this.onlineStatusChanged)}var t,n,r,s;return _(e,[{key:"_log",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"info";this.client.logger(n,"connection:"+e,ht({tags:["connection"]},t))}},{key:"setClient",value:function(e){this.client=e}},{key:"connect",value:(s=b(O.mark((function e(){var t,n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=r.length>0&&void 0!==r[0]?r[0]:15e3,!this.isConnecting){e.next=3;break}throw Error("You've called connect twice, can only attempt 1 connection at the time");case 3:return this.isDisconnected=!1,e.prev=4,e.next=7,this._connect();case 7:n=e.sent,this.consecutiveFailures=0,this._log("connect() - Established ws connection with healthcheck: ".concat(n)),e.next=23;break;case 12:if(e.prev=12,e.t0=e.catch(4),this.isHealthy=!1,this.consecutiveFailures+=1,e.t0.code!==Ae.TOKEN_EXPIRED||this.client.tokenManager.isStatic()){e.next=21;break}this._log("connect() - WS failure due to expired token, so going to try to reload token and reconnect"),this._reconnect({refreshToken:!0}),e.next=23;break;case 21:if(e.t0.isWSFailure){e.next=23;break}throw new Error(JSON.stringify({code:e.t0.code,StatusCode:e.t0.StatusCode,message:e.t0.message,isWSFailure:e.t0.isWSFailure}));case 23:return e.next=25,this._waitForHealthy(t);case 25:return e.abrupt("return",e.sent);case 26:case"end":return e.stop()}}),e,this,[[4,12]])}))),function(){return s.apply(this,arguments)})},{key:"_waitForHealthy",value:(r=b(O.mark((function e(){var t,n=this,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.length>0&&void 0!==r[0]?r[0]:15e3,e.abrupt("return",Promise.race([b(O.mark((function e(){var r,s;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=50,s=0;case 2:if(!(s<=t)){e.next=18;break}return e.prev=3,e.next=6,n.connectionOpen;case 6:return e.abrupt("return",e.sent);case 9:if(e.prev=9,e.t0=e.catch(3),s!==t){e.next=13;break}throw new Error(JSON.stringify({code:e.t0.code,StatusCode:e.t0.StatusCode,message:e.t0.message,isWSFailure:e.t0.isWSFailure}));case 13:return e.next=15,Pe(r);case 15:s+=r,e.next=2;break;case 18:case"end":return e.stop()}}),e,null,[[3,9]])})))(),b(O.mark((function e(){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Pe(t);case 2:throw n.isConnecting=!1,new Error(JSON.stringify({code:"",StatusCode:"",message:"initial WS connection could not be established",isWSFailure:!0}));case 4:case"end":return e.stop()}}),e)})))()]));case 2:case"end":return e.stop()}}),e)}))),function(){return r.apply(this,arguments)})},{key:"disconnect",value:function(e){var t,n=this;this._log("disconnect() - Closing the websocket connection for wsID ".concat(this.wsID)),this.wsID+=1,this.isConnecting=!1,this.isDisconnected=!0,this.healthCheckTimeoutRef&&clearInterval(this.healthCheckTimeoutRef),this.connectionCheckTimeoutRef&&clearInterval(this.connectionCheckTimeoutRef),Ge(this.onlineStatusChanged),this.isHealthy=!1,this.ws&&this.ws.removeAllListeners&&this.ws.removeAllListeners();var r=this.ws;return r&&r.close&&r.readyState===r.OPEN?(t=new Promise((function(t){var s=function(e){n._log("disconnect() - resolving isClosedPromise ".concat(e?"with":"without"," close frame"),{event:e}),t()};r.onclose=s,setTimeout(s,null!=e?e:1e3)})),this._log("disconnect() - Manually closed connection by calling client.disconnect()"),r.close(Ae.WS_CLOSED_SUCCESS,"Manually closed connection by calling client.disconnect()")):(this._log("disconnect() - ws connection doesn't exist or it is already closed."),t=Promise.resolve()),delete this.ws,t}},{key:"_connect",value:(n=b(O.mark((function e(){var t,n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.isConnecting&&!this.isDisconnected){e.next=2;break}return e.abrupt("return");case 2:return this.isConnecting=!0,this.requestID=qe(),this.client.insightMetrics.connectionStartTimestamp=(new Date).getTime(),e.prev=5,this._log("_connect() - waiting for token"),e.next=9,this.client.tokenManager.tokenReady();case 9:return this._setupConnectionPromise(),t=this._buildUrl(),this._log("_connect() - Connecting to ".concat(t),{wsURL:t,requestID:this.requestID}),this.ws=new nt(t),this.ws.onopen=this.onopen.bind(this,this.wsID),this.ws.onclose=this.onclose.bind(this,this.wsID),this.ws.onerror=this.onerror.bind(this,this.wsID),this.ws.onmessage=this.onmessage.bind(this,this.wsID),e.next=19,this.connectionOpen;case 19:if(n=e.sent,this.isConnecting=!1,!n){e.next=25;break}return this.connectionID=n.connection_id,this.client.insightMetrics.wsConsecutiveFailures>0&&this.client.options.enableInsights&&(at("ws_success_after_failure",ut(this)),this.client.insightMetrics.wsConsecutiveFailures=0),e.abrupt("return",n);case 25:e.next=32;break;case 27:throw e.prev=27,e.t0=e.catch(5),this.isConnecting=!1,this.client.options.enableInsights&&(this.client.insightMetrics.wsConsecutiveFailures++,this.client.insightMetrics.wsTotalFailures++,r=ot(this,He(e.t0)),null==at||at("ws_fatal",r)),e.t0;case 32:case"end":return e.stop()}}),e,this,[[5,27]])}))),function(){return n.apply(this,arguments)})},{key:"_reconnect",value:(t=b(O.mark((function e(){var t,n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=r.length>0&&void 0!==r[0]?r[0]:{},this._log("_reconnect() - Initiating the reconnect"),!this.isConnecting&&!this.isHealthy){e.next=5;break}return this._log("_reconnect() - Abort (1) since already connecting or healthy"),e.abrupt("return");case 5:return(n=t.interval)||(n=Ne(this.consecutiveFailures)),e.next=9,Pe(n);case 9:if(!this.isConnecting&&!this.isHealthy){e.next=12;break}return this._log("_reconnect() - Abort (2) since already connecting or healthy"),e.abrupt("return");case 12:if(!this.isDisconnected){e.next=15;break}return this._log("_reconnect() - Abort (3) since disconnect() is called"),e.abrupt("return");case 15:if(this._log("_reconnect() - Destroying current WS connection"),this._destroyCurrentWSConnection(),!t.refreshToken){e.next=20;break}return e.next=20,this.client.tokenManager.loadToken();case 20:return e.prev=20,e.next=23,this._connect();case 23:return this._log("_reconnect() - Waiting for recoverCallBack"),e.next=26,this.client.recoverState();case 26:this._log("_reconnect() - Finished recoverCallBack"),this.consecutiveFailures=0,e.next=38;break;case 30:if(e.prev=30,e.t0=e.catch(20),this.isHealthy=!1,this.consecutiveFailures+=1,e.t0.code!==Ae.TOKEN_EXPIRED||this.client.tokenManager.isStatic()){e.next=37;break}return this._log("_reconnect() - WS failure due to expired token, so going to try to reload token and reconnect"),e.abrupt("return",this._reconnect({refreshToken:!0}));case 37:e.t0.isWSFailure&&(this._log("_reconnect() - WS failure, so going to try to reconnect"),this._reconnect());case 38:this._log("_reconnect() - == END ==");case 39:case"end":return e.stop()}}),e,this,[[20,30]])}))),function(){return t.apply(this,arguments)})},{key:"_destroyCurrentWSConnection",value:function(){this.wsID+=1;try{var e,t;null==this||null===(e=this.ws)||void 0===e||e.removeAllListeners(),null==this||null===(t=this.ws)||void 0===t||t.close()}catch(e){}}}]),e}();function vt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function gt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?vt(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):vt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function mt(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if("string"!=typeof t)throw new TypeError("userId should be a string");gt({user_id:t},n);throw Error("Unable to find jwt crypto, if you are getting this error is probably because you are trying to generate tokens on browser or React Native (or other environment where crypto functions are not available). Please Note: token should only be generated server-side.")}function yt(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={server:!0},r=d({algorithm:"HS256",noTimestamp:!0},t);return null.sign(n,e,r)}function bt(e){var t=e.split(".");if(3!==t.length)return"";var n=t[1],r=h(n);return JSON.parse(r).user_id}function wt(e){return["eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9",l(JSON.stringify({user_id:e})),"devtoken"].join(".")}function kt(e,t,n){var r=Buffer.from(t,"ascii");return null.createHmac("sha256",r).update(e).digest("hex")===n}var _t,xt=function e(t){var n=this;w(this,e),x(this,"loadTokenPromise",void 0),x(this,"type",void 0),x(this,"secret",void 0),x(this,"token",void 0),x(this,"tokenProvider",void 0),x(this,"user",void 0),x(this,"setTokenOrProvider",function(){var e=b(O.mark((function e(t,r){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.validateToken(t,r),n.user=r,De(t)&&(n.tokenProvider=t,n.type="provider"),"string"==typeof t&&(n.token=t,n.type="static"),!t&&n.user&&n.secret&&(n.token=mt(n.secret,r.id,{},{}),n.type="static"),e.next=7,n.loadToken();case 7:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),x(this,"reset",(function(){n.token=void 0,n.user=void 0,n.loadTokenPromise=null})),x(this,"validateToken",(function(e,t){if(!t||!t.anon||e){if(!n.secret&&!e)throw new Error("User token can not be empty");if(e&&"string"!=typeof e&&!De(e))throw new Error("user token should either be a string or a function");if("string"==typeof e){if(t.anon&&""===e)return;var r=bt(e);if(null!=e&&(null==r||""===r||r!==t.id))throw new Error("userToken does not have a user_id or is not matching with user.id")}}})),x(this,"tokenReady",(function(){return n.loadTokenPromise})),x(this,"loadToken",(function(){return n.loadTokenPromise=new Promise(function(){var e=b(O.mark((function e(t,r){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("static"!==n.type){e.next=2;break}return e.abrupt("return",t(n.token));case 2:if(!n.tokenProvider||"string"==typeof n.tokenProvider){e.next=13;break}return e.prev=3,e.next=6,n.tokenProvider();case 6:n.token=e.sent,e.next=12;break;case 9:return e.prev=9,e.t0=e.catch(3),e.abrupt("return",r(new Error("Call to tokenProvider failed with message: ".concat(e.t0))));case 12:t(n.token);case 13:case"end":return e.stop()}}),e,null,[[3,9]])})));return function(t,n){return e.apply(this,arguments)}}()),n.loadTokenPromise})),x(this,"getToken",(function(){if(n.token)return n.token;if(n.user&&n.user.anon&&!n.token)return n.token;if(n.secret)return yt(n.secret);throw new Error("Both secret and user tokens are not set. Either client.connectUser wasn't called or client.disconnect was called")})),x(this,"isStatic",(function(){return"static"===n.type})),this.loadTokenPromise=null,t&&(this.secret=t),this.type="static",this.secret&&(this.token=yt(this.secret))},Ct={"-1":{name:"InternalSystemError",retryable:!0},2:{name:"AccessKeyError",retryable:!1},3:{name:"AuthenticationFailedError",retryable:!0},4:{name:"InputError",retryable:!1},6:{name:"DuplicateUsernameError",retryable:!1},9:{name:"RateLimitError",retryable:!0},16:{name:"DoesNotExistError",retryable:!1},17:{name:"NotAllowedError",retryable:!1},18:{name:"EventNotSupportedError",retryable:!1},19:{name:"ChannelFeatureNotSupportedError",retryable:!1},20:{name:"MessageTooLongError",retryable:!1},21:{name:"MultipleNestingLevelError",retryable:!1},22:{name:"PayloadTooBigError",retryable:!1},23:{name:"RequestTimeoutError",retryable:!0},24:{name:"MaxHeaderSizeExceededError",retryable:!1},40:{name:"AuthErrorTokenExpired",retryable:!1},41:{name:"AuthErrorTokenNotValidYet",retryable:!1},42:{name:"AuthErrorTokenUsedBeforeIssuedAt",retryable:!1},43:{name:"AuthErrorTokenSignatureInvalid",retryable:!1},44:{name:"CustomCommandEndpointMissingError",retryable:!1},45:{name:"CustomCommandEndpointCallError",retryable:!0},46:{name:"ConnectionIDNotFoundError",retryable:!1},60:{name:"CoolDownError",retryable:!0},69:{name:"ErrWrongRegion",retryable:!1},70:{name:"ErrQueryChannelPermissions",retryable:!1},71:{name:"ErrTooManyConnections",retryable:!0},99:{name:"AppSuspendedError",retryable:!1}};function St(e){return void 0!==e.code}function Ut(e){if(!e.code)return!1;var t=Ct["".concat(e.code)];return!!t&&t.retryable}function Rt(e){if("boolean"==typeof e.isWSFailure)return e.isWSFailure;try{return JSON.parse(e.message).isWSFailure}catch(e){return!1}}function Ot(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Et(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ot(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ot(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}!function(e){e.Closed="CLOSED",e.Connected="CONNECTED",e.Connecting="CONNECTING",e.Disconnected="DISCONNECTED",e.Init="INIT"}(_t||(_t={}));var Mt=function(){function e(t){var n=this,r=t.client;w(this,e),x(this,"client",void 0),x(this,"state",void 0),x(this,"consecutiveFailures",void 0),x(this,"connectionID",void 0),x(this,"cancelToken",void 0),x(this,"_onlineStatusChanged",(function(e){var t;if(n._log("_onlineStatusChanged() - ".concat(e.type)),"offline"===e.type)return n._setState(_t.Closed),null===(t=n.cancelToken)||void 0===t||t.cancel("disconnect() is called"),void(n.cancelToken=void 0);"online"===e.type&&n.state===_t.Closed&&n.connect(!0)})),x(this,"_req",function(){var e=b(O.mark((function e(t,r,s){var i,a;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.cancelToken||t.close||(n.cancelToken=we.CancelToken.source()),e.prev=1,e.next=4,n.client.doAxiosRequest("get",n.client.baseURL.replace(":3030",":8900")+"/longpoll",void 0,{config:Et(Et({},r),{},{cancelToken:null===(i=n.cancelToken)||void 0===i?void 0:i.token}),params:t});case 4:return a=e.sent,n.consecutiveFailures=0,e.abrupt("return",a);case 9:if(e.prev=9,e.t0=e.catch(1),n.consecutiveFailures+=1,!s||!Ut(e.t0)){e.next=17;break}return n._log("_req() - Retryable error, retrying request"),e.next=16,Pe(Ne(n.consecutiveFailures));case 16:return e.abrupt("return",n._req(t,r,s));case 17:throw e.t0;case 18:case"end":return e.stop()}}),e,null,[[1,9]])})));return function(t,n,r){return e.apply(this,arguments)}}()),x(this,"_poll",b(O.mark((function e(){var t,r,s;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n.state!==_t.Connected){e.next=25;break}return e.prev=1,e.next=4,n._req({},{timeout:3e4},!0);case 4:if(r=e.sent,null!==(t=r.events)&&void 0!==t&&t.length)for(s=0;s<r.events.length;s++)n.client.dispatchEvent(r.events[s]);e.next=23;break;case 8:if(e.prev=8,e.t0=e.catch(1),!we.isCancel(e.t0)){e.next=13;break}return n._log("_poll() - axios canceled request"),e.abrupt("return");case 13:if(46!==e.t0.code){e.next=18;break}return n._log("_poll() - ConnectionID error, connecting without ID..."),n._setState(_t.Disconnected),n.connect(!0),e.abrupt("return");case 18:if(!St(e.t0)||Ut(e.t0)){e.next=21;break}return n._setState(_t.Closed),e.abrupt("return");case 21:return e.next=23,Pe(Ne(n.consecutiveFailures));case 23:e.next=0;break;case 25:case"end":return e.stop()}}),e,null,[[1,8]])})))),x(this,"connect",b(O.mark((function e(){var t,r,s,i=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=i.length>0&&void 0!==i[0]&&i[0],n.state!==_t.Connecting){e.next=4;break}return n._log("connect() - connecting already in progress",{reconnect:t},"warn"),e.abrupt("return");case 4:if(n.state!==_t.Connected){e.next=7;break}return n._log("connect() - already connected and polling",{reconnect:t},"warn"),e.abrupt("return");case 7:return n._setState(_t.Connecting),n.connectionID=void 0,e.prev=9,e.next=12,n._req({json:n.client._buildWSPayload()},{timeout:8e3},t);case 12:return r=e.sent,s=r.event,n._setState(_t.Connected),n.connectionID=s.connection_id,n.client.dispatchEvent(s),n._poll(),t&&n.client.recoverState(),e.abrupt("return",s);case 22:throw e.prev=22,e.t0=e.catch(9),n._setState(_t.Closed),e.t0;case 26:case"end":return e.stop()}}),e,null,[[9,22]])})))),x(this,"isHealthy",(function(){return!!n.connectionID&&n.state===_t.Connected})),x(this,"disconnect",b(O.mark((function e(){var t,r,s,i=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=i.length>0&&void 0!==i[0]?i[0]:2e3,Ge(n._onlineStatusChanged),n._setState(_t.Disconnected),null===(t=n.cancelToken)||void 0===t||t.cancel("disconnect() is called"),n.cancelToken=void 0,s=n.connectionID,n.connectionID=void 0,e.prev=7,e.next=10,n._req({close:!0,connection_id:s},{timeout:r},!1);case 10:n._log("disconnect() - Closed connectionID"),e.next=16;break;case 13:e.prev=13,e.t0=e.catch(7),n._log("disconnect() - Failed",{err:e.t0},"error");case 16:case"end":return e.stop()}}),e,null,[[7,13]])})))),this.client=r,this.state=_t.Init,this.consecutiveFailures=0,Je(this._onlineStatusChanged)}return _(e,[{key:"_log",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"info";this.client.logger(n,"WSConnectionFallback:"+e,Et({tags:["connection_fallback","connection"]},t))}},{key:"_setState",value:function(e){this._log("_setState() - ".concat(e)),this.state===_t.Connecting&&e===_t.Connected&&this.client.dispatchEvent({type:"connection.changed",online:!0}),e!==_t.Closed&&e!==_t.Disconnected||this.client.dispatchEvent({type:"connection.changed",online:!1}),this.state=e}}]),e}();function Tt(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Lt(e,t){return Lt=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Lt(e,t)}function It(e,t){if(t&&("object"===f(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return Tt(e)}function Pt(e){return Pt=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Pt(e)}function Dt(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function At(e,t,n){return At=Dt()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var s=new(Function.bind.apply(e,r));return n&&Lt(s,n.prototype),s},At.apply(null,arguments)}function jt(e){var t="function"==typeof Map?new Map:void 0;return jt=function(e){if(null===e||!function(e){return-1!==Function.toString.call(e).indexOf("[native code]")}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return At(e,arguments,Pt(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),Lt(n,e)},jt(e)}function Ft(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Pt(e);if(t){var s=Pt(this).constructor;n=Reflect.construct(r,arguments,s)}else n=r.apply(this,arguments);return It(this,n)}}var Nt=function(e){!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&&Lt(e,t)}(n,e);var t=Ft(n);function n(){var e;w(this,n);for(var r=arguments.length,s=new Array(r),i=0;i<r;i++)s[i]=arguments[i];return x(Tt(e=t.call.apply(t,[this].concat(s))),"code",void 0),x(Tt(e),"response",void 0),x(Tt(e),"status",void 0),e}return n}(jt(Error)),qt=["created_at","updated_at","last_active","online"];function Wt(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return Bt(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Bt(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,s=function(){};return{s:s,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:s}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){o=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}function Bt(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function zt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ht(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?zt(Object(n),!0).forEach((function(t){x(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):zt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Jt(e){return"string"==typeof e||e instanceof String}var Gt=function(){function e(t,n,r){var s=this;w(this,e),x(this,"_user",void 0),x(this,"activeChannels",void 0),x(this,"anonymous",void 0),x(this,"axiosInstance",void 0),x(this,"baseURL",void 0),x(this,"browser",void 0),x(this,"cleaningIntervalRef",void 0),x(this,"clientID",void 0),x(this,"configs",void 0),x(this,"key",void 0),x(this,"listeners",void 0),x(this,"logger",void 0),x(this,"recoverStateOnReconnect",void 0),x(this,"mutedChannels",void 0),x(this,"mutedUsers",void 0),x(this,"node",void 0),x(this,"options",void 0),x(this,"secret",void 0),x(this,"setUserPromise",void 0),x(this,"state",void 0),x(this,"tokenManager",void 0),x(this,"user",void 0),x(this,"userAgent",void 0),x(this,"userID",void 0),x(this,"wsBaseURL",void 0),x(this,"wsConnection",void 0),x(this,"wsFallback",void 0),x(this,"wsPromise",void 0),x(this,"consecutiveFailures",void 0),x(this,"insightMetrics",void 0),x(this,"defaultWSTimeoutWithFallback",void 0),x(this,"defaultWSTimeout",void 0),x(this,"_getConnectionID",(function(){var e,t;return(null===(e=s.wsConnection)||void 0===e?void 0:e.connectionID)||(null===(t=s.wsFallback)||void 0===t?void 0:t.connectionID)})),x(this,"_hasConnectionID",(function(){return Boolean(s._getConnectionID())})),x(this,"connectUser",function(){var e=b(O.mark((function e(t,n){var r,i;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.id){e.next=2;break}throw new Error('The "id" field on the user is missing');case 2:if(s.userID!==t.id||!s.setUserPromise){e.next=5;break}return console.warn("Consecutive calls to connectUser is detected, ideally you should only call this function once in your app."),e.abrupt("return",s.setUserPromise);case 5:if(!s.userID){e.next=7;break}throw new Error("Use client.disconnect() before trying to connect as a different user. connectUser was called twice.");case 7:return!s._isUsingServerAuth()&&!s.node||s.options.allowServerSideConnect||console.warn('Please do not use connectUser server side. connectUser impacts MAU and concurrent connection usage and thus your bill. If you have a valid use-case, add "allowServerSideConnect: true" to the client options to disable this warning.'),s.userID=t.id,s.anonymous=!1,r=s._setToken(t,n),s._setUser(t),i=s.openConnection(),s.setUserPromise=Promise.all([r,i]).then((function(e){return e[1]})),e.prev=14,e.next=17,s.setUserPromise;case 17:return e.abrupt("return",e.sent);case 20:throw e.prev=20,e.t0=e.catch(14),s.disconnectUser(),e.t0;case 24:case"end":return e.stop()}}),e,null,[[14,20]])})));return function(t,n){return e.apply(this,arguments)}}()),x(this,"setUser",this.connectUser),x(this,"_setToken",(function(e,t){return s.tokenManager.setTokenOrProvider(t,e)})),x(this,"closeConnection",function(){var e=b(O.mark((function e(t){var n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return null!=s.cleaningIntervalRef&&(clearInterval(s.cleaningIntervalRef),s.cleaningIntervalRef=void 0),e.next=3,Promise.all([null===(n=s.wsConnection)||void 0===n?void 0:n.disconnect(t),null===(r=s.wsFallback)||void 0===r?void 0:r.disconnect(t)]);case 3:return e.abrupt("return",Promise.resolve());case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),x(this,"openConnection",b(O.mark((function e(){var t,n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(s.userID){e.next=2;break}throw Error("User is not set on client, use client.connectUser or client.connectAnonymousUser instead");case 2:if(null===(t=s.wsConnection)||void 0===t||!t.isConnecting||!s.wsPromise){e.next=5;break}return s.logger("info","client:openConnection() - connection already in progress",{tags:["connection","client"]}),e.abrupt("return",s.wsPromise);case 5:if(!(null!==(n=s.wsConnection)&&void 0!==n&&n.isHealthy||null!==(r=s.wsFallback)&&void 0!==r&&r.isHealthy())||!s._hasConnectionID()){e.next=8;break}return s.logger("info","client:openConnection() - openConnection called twice, healthy connection already exists",{tags:["connection","client"]}),e.abrupt("return",Promise.resolve());case 8:return s.clientID="".concat(s.userID,"--").concat(qe()),s.wsPromise=s.connect(),s._startCleaning(),e.abrupt("return",s.wsPromise);case 12:case"end":return e.stop()}}),e)})))),x(this,"_setupConnection",this.openConnection),x(this,"_normalizeDate",(function(e){if(e instanceof Date&&(e=e.toISOString()),""===e)throw new Error("Don't pass blank string for since, use null instead if resetting the token revoke");return e})),x(this,"disconnectUser",function(){var e=b(O.mark((function e(t){var n,r,i;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(s.logger("info","client:disconnect() - Disconnecting the client",{tags:["connection","client"]}),delete s.user,delete s._user,delete s.userID,s.anonymous=!1,n=s.closeConnection(t),r=0,i=Object.values(s.activeChannels);r<i.length;r++)i[r]._disconnect();return s.activeChannels={},s.state=new et,setTimeout(s.tokenManager.reset),e.abrupt("return",n);case 11:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),x(this,"disconnect",this.disconnectUser),x(this,"connectAnonymousUser",(function(){!s._isUsingServerAuth()&&!s.node||s.options.allowServerSideConnect||console.warn('Please do not use connectUser server side. connectUser impacts MAU and concurrent connection usage and thus your bill. If you have a valid use-case, add "allowServerSideConnect: true" to the client options to disable this warning.'),s.anonymous=!0,s.userID=qe();var e={id:s.userID,anon:!0};return s._setToken(e,""),s._setUser(e),s._setupConnection()})),x(this,"setAnonymousUser",this.connectAnonymousUser),x(this,"doAxiosRequest",function(){var e=b(O.mark((function e(t,n,r){var i,a,o,c,u=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=u.length>3&&void 0!==u[3]?u[3]:{},e.next=3,s.tokenManager.tokenReady();case 3:a=s._enrichAxiosOptions(i),e.prev=4,s._logApiRequest(t,n,r,a),e.t0=t,e.next="get"===e.t0?9:"delete"===e.t0?13:"post"===e.t0?17:"put"===e.t0?21:"patch"===e.t0?25:"options"===e.t0?29:33;break;case 9:return e.next=11,s.axiosInstance.get(n,a);case 11:case 15:case 19:case 23:case 27:case 31:return o=e.sent,e.abrupt("break",34);case 13:return e.next=15,s.axiosInstance.delete(n,a);case 17:return e.next=19,s.axiosInstance.post(n,r,a);case 21:return e.next=23,s.axiosInstance.put(n,r,a);case 25:return e.next=27,s.axiosInstance.patch(n,r,a);case 29:return e.next=31,s.axiosInstance.options(n,a);case 33:throw new Error("Invalid request type");case 34:return s._logApiResponse(t,n,o),s.consecutiveFailures=0,e.abrupt("return",s.handleResponse(o));case 39:if(e.prev=39,e.t1=e.catch(4),e.t1.client_request_id=null===(c=a.headers)||void 0===c?void 0:c["x-client-request-id"],s._logApiError(t,n,e.t1),s.consecutiveFailures+=1,!e.t1.response){e.next=56;break}if(e.t1.response.data.code!==Ae.TOKEN_EXPIRED||s.tokenManager.isStatic()){e.next=53;break}if(!(s.consecutiveFailures>1)){e.next=49;break}return e.next=49,Pe(Ne(s.consecutiveFailures));case 49:return s.tokenManager.loadToken(),e.next=52,s.doAxiosRequest(t,n,r,i);case 52:return e.abrupt("return",e.sent);case 53:return e.abrupt("return",s.handleResponse(e.t1.response));case 56:throw e.t1;case 57:case"end":return e.stop()}}),e,null,[[4,39]])})));return function(t,n,r){return e.apply(this,arguments)}}()),x(this,"dispatchEvent",(function(e){e.received_at||(e.received_at=new Date);var t=s._handleClientEvent(e),n=e.cid,r=n?s.activeChannels[n]:void 0;r&&r._handleChannelEvent(e),s._callClientListeners(e),r&&r._callChannelListeners(e),t.forEach((function(e){return e()}))})),x(this,"handleEvent",(function(e){var t=e.data,n=JSON.parse(t);s.dispatchEvent(n)})),x(this,"_updateMemberWatcherReferences",(function(e){var t=s.state.userChannelReferences[e.id]||{};for(var n in t){var r=s.activeChannels[n];null!=r&&r.state&&(r.state.members[e.id]&&(r.state.members[e.id].user=e),r.state.watchers[e.id]&&(r.state.watchers[e.id]=e))}})),x(this,"_updateUserReferences",this._updateMemberWatcherReferences),x(this,"_updateUserMessageReferences",(function(e){var t=s.state.userChannelReferences[e.id]||{};for(var n in t){var r=s.activeChannels[n].state;null==r||r.updateUserMessages(e)}})),x(this,"_deleteUserMessageReference",(function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=s.state.userChannelReferences[e.id]||{};for(var r in n){var i=s.activeChannels[r],a=i.state;null==a||a.deleteUserMessages(e,t)}})),x(this,"_handleUserEvent",(function(e){if(e.user){if("user.presence.changed"===e.type||"user.updated"===e.type){if(e.user.id===s.userID){var t=Ht({},s.user||{}),n=Ht({},s._user||{});for(var r in s.user)r in e.user||{channel_mutes:!0,devices:!0,mutes:!0,total_unread_count:!0,unread_channels:!0,unread_count:!0,invisible:!0,roles:!0}[r]||(delete t[r],delete n[r]);for(var i in e.user)n&&i in n&&(n[i]=e.user[i]);s._user=Ht({},n),s.user=Ht(Ht({},t),e.user)}s.state.updateUser(e.user),s._updateMemberWatcherReferences(e.user)}"user.updated"===e.type&&s._updateUserMessageReferences(e.user),"user.deleted"===e.type&&e.user.deleted_at&&(e.mark_messages_deleted||e.hard_delete)&&s._deleteUserMessageReference(e.user,e.hard_delete)}})),x(this,"_callClientListeners",(function(e){var t=s,n=[];t.listeners.all&&n.push.apply(n,m(t.listeners.all)),t.listeners[e.type]&&n.push.apply(n,m(t.listeners[e.type]));for(var r=0,i=n;r<i.length;r++){(0,i[r])(e)}})),x(this,"recoverState",b(O.mark((function e(){var t;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(s.logger("info","client:recoverState() - Start of recoverState with connectionID ".concat(s._getConnectionID()),{tags:["connection"]}),!(t=Object.keys(s.activeChannels)).length||!s.recoverStateOnReconnect){e.next=10;break}return s.logger("info","client:recoverState() - Start the querying of ".concat(t.length," channels"),{tags:["connection","client"]}),e.next=6,s.queryChannels({cid:{$in:t}},{last_message_at:-1},{limit:30});case 6:s.logger("info","client:recoverState() - Querying channels finished",{tags:["connection","client"]}),s.dispatchEvent({type:"connection.recovered"}),e.next=11;break;case 10:s.dispatchEvent({type:"connection.recovered"});case 11:s.wsPromise=Promise.resolve(),s.setUserPromise=Promise.resolve();case 13:case"end":return e.stop()}}),e)})))),x(this,"getChannelByMembers",(function(e,t){var n=m(t.members||[]).sort().join(","),r="".concat(e,":!members-").concat(n);if(!n)throw Error("Please specify atleast one member when creating unique conversation");for(var i in s.activeChannels){var a=s.activeChannels[i];if(!a.disconnected){if(i===r)return a;if(0===i.indexOf("".concat(e,":!members-")))if(Object.keys(a.state.members).sort().join(",")===n)return a}}var o=new Qe(s,e,void 0,t);return s.activeChannels[r]=o,o})),x(this,"getChannelById",(function(e,t,n){if("string"==typeof t&&~t.indexOf(":"))throw Error("Invalid channel id ".concat(t,", can't contain the : character"));var r="".concat(e,":").concat(t);if(r in s.activeChannels&&!s.activeChannels[r].disconnected){var i=s.activeChannels[r];return Object.keys(n).length>0&&(i.data=n,i._data=n),i}var a=new Qe(s,e,t,n);return s.activeChannels[a.cid]=a,a})),x(this,"updateUsers",this.upsertUsers),x(this,"updateUser",this.upsertUser),x(this,"markAllRead",this.markChannelsRead),x(this,"_isUsingServerAuth",(function(){return!!s.secret})),x(this,"_buildWSPayload",(function(e){return JSON.stringify({user_id:s.userID,user_details:s._user,device:s.options.device,client_request_id:e})})),this.key=t,this.listeners={},this.state=new et,this.mutedChannels=[],this.mutedUsers=[],n&&Jt(n)&&(this.secret=n);var i=r||(n&&!Jt(n)?n:{});this.browser=void 0!==i.browser?i.browser:"undefined"!=typeof window,this.node=!this.browser,this.options=Ht({timeout:3e3,withCredentials:!1,warmUp:!1,recoverStateOnReconnect:!0},i),this.node&&!this.options.httpsAgent&&(this.options.httpsAgent=new null.Agent({keepAlive:!0,keepAliveMsecs:3e3})),this.axiosInstance=we.create(this.options),this.setBaseURL(this.options.baseURL||"https://chat.stream-io-api.com"),"undefined"!=typeof process&&process.env.STREAM_LOCAL_TEST_RUN&&this.setBaseURL("http://localhost:3030"),"undefined"!=typeof process&&process.env.STREAM_LOCAL_TEST_HOST&&this.setBaseURL("http://"+process.env.STREAM_LOCAL_TEST_HOST),this.wsConnection=null,this.wsPromise=null,this.setUserPromise=null,this.activeChannels={},this.configs={},this.anonymous=!1,this.tokenManager=new xt(this.secret),this.consecutiveFailures=0,this.insightMetrics=new it,this.defaultWSTimeoutWithFallback=6e3,this.defaultWSTimeout=15e3,this.logger=De(i.logger)?i.logger:function(){return null},this.recoverStateOnReconnect=this.options.recoverStateOnReconnect}var t,n,r,s,i,a,o,c,u,l,h,v,g,y,k,C,S,U,R,E,M,T,L,I,P,D,A,j,F,N,q,W,B,z,H,J,G,X,K,V,$,Q,Y,Z,ee,te,ne,re,se,ie,ae,oe,ce,ue,le,he,de,fe,pe,ve,ge,me,ye,be,ke,_e,xe,Ce,Se,Ue,Re,Oe;return _(e,[{key:"devToken",value:function(e){return wt(e)}},{key:"getAuthType",value:function(){return this.anonymous?"anonymous":"jwt"}},{key:"setBaseURL",value:function(e){this.baseURL=e,this.wsBaseURL=this.baseURL.replace("http","ws").replace(":3030",":8800")}},{key:"_setUser",value:function(e){this.user=e,this._user=Ht({},e)}},{key:"updateAppSettings",value:(Oe=b(O.mark((function e(t){var n;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return null!=(n=t.apn_config)&&n.p12_cert&&(t=Ht(Ht({},t),{},{apn_config:Ht(Ht({},n),{},{p12_cert:Buffer.from(n.p12_cert).toString("base64")})})),e.next=4,this.patch(this.baseURL+"/app",t);case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return Oe.apply(this,arguments)})},{key:"revokeTokens",value:(Re=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.updateAppSettings({revoke_tokens_issued_before:this._normalizeDate(t)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return Re.apply(this,arguments)})},{key:"revokeUserToken",value:(Ue=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.revokeUsersToken([t],n);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return Ue.apply(this,arguments)})},{key:"revokeUsersToken",value:(Se=b(O.mark((function e(t,n){var r,s,i,a;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=void 0===n?(new Date).toISOString():this._normalizeDate(n),r=[],s=Wt(t);try{for(s.s();!(i=s.n()).done;)a=i.value,r.push({id:a,set:{revoke_tokens_issued_before:n}})}catch(e){s.e(e)}finally{s.f()}return e.next=6,this.partialUpdateUsers(r);case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t){return Se.apply(this,arguments)})},{key:"getAppSettings",value:(Ce=b(O.mark((function e(){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/app");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(){return Ce.apply(this,arguments)})},{key:"testPushSettings",value:(xe=b(O.mark((function e(t){var n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/check_push",Ht(Ht(Ht(Ht(Ht(Ht(Ht({user_id:t},n.messageID?{message_id:n.messageID}:{}),n.apnTemplate?{apn_template:n.apnTemplate}:{}),n.firebaseTemplate?{firebase_template:n.firebaseTemplate}:{}),n.firebaseDataTemplate?{firebase_data_template:n.firebaseDataTemplate}:{}),n.skipDevices?{skip_devices:!0}:{}),n.pushProviderName?{push_provider_name:n.pushProviderName}:{}),n.pushProviderType?{push_provider_type:n.pushProviderType}:{}));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return xe.apply(this,arguments)})},{key:"testSQSSettings",value:(_e=b(O.mark((function e(){var t,n=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this.post(this.baseURL+"/check_sqs",t);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(){return _e.apply(this,arguments)})},{key:"setGuestUser",value:(ke=b(O.mark((function e(t){var n,r,s;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.anonymous=!0,e.prev=1,e.next=4,this.post(this.baseURL+"/guest",{user:t});case 4:n=e.sent,e.next=11;break;case 7:throw e.prev=7,e.t0=e.catch(1),this.anonymous=!1,e.t0;case 11:return this.anonymous=!1,(r=n.user).created_at,r.updated_at,r.last_active,r.online,s=p(r,qt),e.next=15,this.connectUser(s,n.access_token);case 15:return e.abrupt("return",e.sent);case 16:case"end":return e.stop()}}),e,this,[[1,7]])}))),function(e){return ke.apply(this,arguments)})},{key:"createToken",value:function(e,t,n){if(null==this.secret)throw Error("tokens can only be created server-side using the API Secret");var r={};return t&&(r.exp=t),n&&(r.iat=n),mt(this.secret,e,r,{})}},{key:"on",value:function(e,t){var n=this,r=t?e:"all";if(!Ee(r))throw Error("Invalid event type ".concat(r));var s=t||e;return r in this.listeners||(this.listeners[r]=[]),this.logger("info","Attaching listener for ".concat(r," event"),{tags:["event","client"]}),this.listeners[r].push(s),{unsubscribe:function(){n.logger("info","Removing listener for ".concat(r," event"),{tags:["event","client"]}),n.listeners[r]=n.listeners[r].filter((function(e){return e!==s}))}}}},{key:"off",value:function(e,t){var n=t?e:"all";if(!Ee(n))throw Error("Invalid event type ".concat(n));var r=t||e;n in this.listeners||(this.listeners[n]=[]),this.logger("info","Removing listener for ".concat(n," event"),{tags:["event","client"]}),this.listeners[n]=this.listeners[n].filter((function(e){return e!==r}))}},{key:"_logApiRequest",value:function(e,t,n,r){this.logger("info","client: ".concat(e," - Request - ").concat(t),{tags:["api","api_request","client"],url:t,payload:n,config:r})}},{key:"_logApiResponse",value:function(e,t,n){this.logger("info","client:".concat(e," - Response - url: ").concat(t," > status ").concat(n.status),{tags:["api","api_response","client"],url:t,response:n})}},{key:"_logApiError",value:function(e,t,n){this.logger("error","client:".concat(e," - Error - url: ").concat(t),{tags:["api","api_response","client"],url:t,error:n})}},{key:"get",value:function(e,t){return this.doAxiosRequest("get",e,null,{params:t})}},{key:"put",value:function(e,t){return this.doAxiosRequest("put",e,t)}},{key:"post",value:function(e,t){return this.doAxiosRequest("post",e,t)}},{key:"patch",value:function(e,t){return this.doAxiosRequest("patch",e,t)}},{key:"delete",value:function(e,t){return this.doAxiosRequest("delete",e,null,{params:t})}},{key:"sendFile",value:function(e,t,n,r,s){var i=je(t,n,r);return null!=s&&i.append("user",JSON.stringify(s)),this.doAxiosRequest("post",e,i,{headers:i.getHeaders?i.getHeaders():{},config:{timeout:0,maxContentLength:1/0,maxBodyLength:1/0}})}},{key:"errorFromResponse",value:function(e){var t;return t=new Nt("StreamChat error HTTP code: ".concat(e.status)),e.data&&e.data.code&&((t=new Error("StreamChat error code ".concat(e.data.code,": ").concat(e.data.message))).code=e.data.code),t.response=e,t.status=e.status,t}},{key:"handleResponse",value:function(e){var t,n=e.data;if(!(t=e).status||t.status<200||300<=t.status)throw this.errorFromResponse(e);return n}},{key:"_handleClientEvent",value:function(e){var t,n,r,s=this,i=this,a=[];if(this.logger("info","client:_handleClientEvent - Received event of type { ".concat(e.type," }"),{tags:["event","client"],event:e}),"user.presence.changed"!==e.type&&"user.updated"!==e.type&&"user.deleted"!==e.type||this._handleUserEvent(e),"health.check"===e.type&&e.me&&(i.user=e.me,i.state.updateUser(e.me),i.mutedChannels=e.me.channel_mutes,i.mutedUsers=e.me.mutes),e.channel&&"notification.message_new"===e.type&&(this.configs[e.channel.type]=e.channel.config),"notification.channel_mutes_updated"===e.type&&null!==(t=e.me)&&void 0!==t&&t.channel_mutes){var o=[],c=[];this.mutedChannels.forEach((function(e){return e.channel&&o.push(e.channel.cid)})),e.me.channel_mutes.forEach((function(e){return e.channel&&c.push(e.channel.cid)})),o.forEach((function(e){!c.includes(e)&&s.activeChannels[e]&&(s.activeChannels[e].state.unreadCount=0)})),this.mutedChannels=e.me.channel_mutes}("notification.mutes_updated"===e.type&&null!==(n=e.me)&&void 0!==n&&n.mutes&&(this.mutedUsers=e.me.mutes),"notification.mark_read"===e.type&&0===e.unread_channels)&&Object.keys(this.activeChannels).forEach((function(e){return s.activeChannels[e].state.unreadCount=0}));"channel.deleted"!==e.type&&"notification.channel_deleted"!==e.type||!e.cid||(i.state.deleteAllChannelReference(e.cid),null===(r=this.activeChannels[e.cid])||void 0===r||r._disconnect(),a.push((function(){e.cid&&delete s.activeChannels[e.cid]})));return a}},{key:"_muteStatus",value:function(e){for(var t,n=0;n<this.mutedChannels.length;n++){var r,s=this.mutedChannels[n];if((null===(r=s.channel)||void 0===r?void 0:r.cid)===e){t={muted:!s.expires||new Date(s.expires).getTime()>(new Date).getTime(),createdAt:s.created_at?new Date(s.created_at):new Date,expiresAt:s.expires?new Date(s.expires):null};break}}return t||{muted:!1,createdAt:null,expiresAt:null}}},{key:"connect",value:(be=b(O.mark((function e(){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.userID&&this._user){e.next=2;break}throw Error("Call connectUser or connectAnonymousUser before starting the connection");case 2:if(this.wsBaseURL){e.next=4;break}throw Error("Websocket base url not set");case 4:if(this.clientID){e.next=6;break}throw Error("clientID is not set");case 6:if(this.wsConnection||!this.options.warmUp&&!this.options.enableInsights||this._sayHi(),this.options.wsConnection&&this.node?(this.options.wsConnection.setClient(this),this.wsConnection=this.options.wsConnection):this.wsConnection=new pt({client:this}),e.prev=8,!this.wsFallback){e.next=13;break}return e.next=12,this.wsFallback.connect();case 12:case 15:case 28:return e.abrupt("return",e.sent);case 13:return e.next=15,this.wsConnection.connect(this.options.enableWSFallback?this.defaultWSTimeoutWithFallback:this.defaultWSTimeout);case 18:if(e.prev=18,e.t0=e.catch(8),!(this.options.enableWSFallback&&Rt(e.t0)&&(t=void 0,t="undefined"!=typeof navigator?navigator:"undefined"!=typeof window&&window.navigator?window.navigator:void 0,t?"boolean"!=typeof t.onLine||t.onLine:(console.warn("isOnline failed to access window.navigator and assume browser is online"),1)))){e.next=29;break}return this.logger("info","client:connect() - WS failed, fallback to longpoll",{tags:["connection","client"]}),this.dispatchEvent({type:"transport.changed",mode:"longpoll"}),this.wsConnection._destroyCurrentWSConnection(),this.wsConnection.disconnect().then(),this.wsFallback=new Mt({client:this}),e.next=28,this.wsFallback.connect();case 29:throw e.t0;case 30:case"end":return e.stop()}var t}),e,this,[[8,18]])}))),function(){return be.apply(this,arguments)})},{key:"_sayHi",value:function(){var e=this,t=qe(),n={headers:{"x-client-request-id":t}};this.doAxiosRequest("get",this.baseURL+"/hi",null,n).catch((function(n){e.options.enableInsights&&at("http_hi_failed",{api_key:e.key,err:n,client_request_id:t})}))}},{key:"queryUsers",value:(ye=b(O.mark((function e(t){var n,r,s,i,a=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length>1&&void 0!==a[1]?a[1]:[],r=a.length>2&&void 0!==a[2]?a[2]:{},s={presence:!1},e.next=5,this.wsPromise;case 5:return this._hasConnectionID()||(s.presence=!1),e.next=8,this.get(this.baseURL+"/users",{payload:Ht(Ht({filter_conditions:t,sort:Fe(n)},s),r)});case 8:return i=e.sent,this.state.updateUsers(i.users),e.abrupt("return",i);case 11:case"end":return e.stop()}}),e,this)}))),function(e){return ye.apply(this,arguments)})},{key:"queryBannedUsers",value:(me=b(O.mark((function e(){var t,n,r,s=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=s.length>0&&void 0!==s[0]?s[0]:{},n=s.length>1&&void 0!==s[1]?s[1]:[],r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=5,this.get(this.baseURL+"/query_banned_users",{payload:Ht({filter_conditions:t,sort:Fe(n)},r)});case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e,this)}))),function(){return me.apply(this,arguments)})},{key:"queryMessageFlags",value:(ge=b(O.mark((function e(){var t,n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.length>0&&void 0!==r[0]?r[0]:{},n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=4,this.get(this.baseURL+"/moderation/flags/message",{payload:Ht({filter_conditions:t},n)});case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}}),e,this)}))),function(){return ge.apply(this,arguments)})},{key:"queryChannels",value:(ve=b(O.mark((function e(t){var n,r,s,i,a,o,c,u,l,h,d,f,p,v,g,m=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=m.length>1&&void 0!==m[1]?m[1]:[],r=m.length>2&&void 0!==m[2]?m[2]:{},s=m.length>3&&void 0!==m[3]?m[3]:{},i=s.skipInitialization,a={state:!0,watch:!0,presence:!1},e.next=7,this.wsPromise;case 7:return this._hasConnectionID()||(a.watch=!1),o=Ht(Ht({filter_conditions:t,sort:Fe(n)},a),r),e.next=11,this.post(this.baseURL+"/channels",o);case 11:c=e.sent,u=[],l=Wt(c.channels);try{for(l.s();!(h=l.n()).done;)d=h.value,this._addChannelConfig(d)}catch(e){l.e(e)}finally{l.f()}f=Wt(c.channels);try{for(f.s();!(p=f.n()).done;)v=p.value,(g=this.channel(v.channel.type,v.channel.id)).data=v.channel,g.initialized=!0,void 0===i?g._initializeState(v,"latest"):i.includes(v.channel.id)||(g.state.clearMessages(),g._initializeState(v,"latest")),u.push(g)}catch(e){f.e(e)}finally{f.f()}return e.abrupt("return",u);case 18:case"end":return e.stop()}}),e,this)}))),function(e){return ve.apply(this,arguments)})},{key:"search",value:(pe=b(O.mark((function e(t,n){var r,s,i=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(r=i.length>2&&void 0!==i[2]?i[2]:{}).offset||!r.sort&&!r.next){e.next=3;break}throw Error("Cannot specify offset with sort or next parameters");case 3:if(s=Ht(Ht({filter_conditions:t},r),{},{sort:r.sort?Fe(r.sort):void 0}),"string"!=typeof n){e.next=8;break}s.query=n,e.next=13;break;case 8:if("object"!==f(n)){e.next=12;break}s.message_filter_conditions=n,e.next=13;break;case 12:throw Error("Invalid type ".concat(f(n)," for query parameter"));case 13:return e.next=15,this.wsPromise;case 15:return e.next=17,this.get(this.baseURL+"/search",{payload:s});case 17:return e.abrupt("return",e.sent);case 18:case"end":return e.stop()}}),e,this)}))),function(e,t){return pe.apply(this,arguments)})},{key:"setLocalDevice",value:function(e){if(this.wsConnection||this.wsFallback)throw new Error("you can only set device before opening a websocket connection");this.options.device=e}},{key:"addDevice",value:(fe=b(O.mark((function e(t,n,r,s){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/devices",Ht(Ht({id:t,push_provider:n},null!=r?{user_id:r}:{}),null!=s?{push_provider_name:s}:{}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return fe.apply(this,arguments)})},{key:"getDevices",value:(de=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/devices",t?{user_id:t}:{});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return de.apply(this,arguments)})},{key:"removeDevice",value:(he=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.delete(this.baseURL+"/devices",Ht({id:t},n?{user_id:n}:{}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return he.apply(this,arguments)})},{key:"getRateLimits",value:(le=b(O.mark((function e(t){var n,r,s,i,a,o;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=(n=t||{}).serverSide,s=n.web,i=n.android,a=n.ios,o=n.endpoints,e.abrupt("return",this.get(this.baseURL+"/rate_limits",{server_side:r,web:s,android:i,ios:a,endpoints:o?o.join(","):void 0}));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return le.apply(this,arguments)})},{key:"_addChannelConfig",value:function(e){this.configs[e.channel.type]=e.channel.config}},{key:"channel",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!this.userID&&!this._isUsingServerAuth())throw Error("Call connectUser or connectAnonymousUser before creating a channel");if(~e.indexOf(":"))throw Error("Invalid channel group ".concat(e,", can't contain the : character"));return null==t||""===t?new Qe(this,e,void 0,n):"object"===f(t)?this.getChannelByMembers(e,t):this.getChannelById(e,t,n)}},{key:"partialUpdateUser",value:(ue=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.partialUpdateUsers([t]);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return ue.apply(this,arguments)})},{key:"upsertUsers",value:(ce=b(O.mark((function e(t){var n,r,s,i;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n={},r=Wt(t),e.prev=2,r.s();case 4:if((s=r.n()).done){e.next=11;break}if((i=s.value).id){e.next=8;break}throw Error("User ID is required when updating a user");case 8:n[i.id]=i;case 9:e.next=4;break;case 11:e.next=16;break;case 13:e.prev=13,e.t0=e.catch(2),r.e(e.t0);case 16:return e.prev=16,r.f(),e.finish(16);case 19:return e.next=21,this.post(this.baseURL+"/users",{users:n});case 21:return e.abrupt("return",e.sent);case 22:case"end":return e.stop()}}),e,this,[[2,13,16,19]])}))),function(e){return ce.apply(this,arguments)})},{key:"upsertUser",value:function(e){return this.upsertUsers([e])}},{key:"partialUpdateUsers",value:(oe=b(O.mark((function e(t){var n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=Wt(t),e.prev=1,n.s();case 3:if((r=n.n()).done){e.next=9;break}if(r.value.id){e.next=7;break}throw Error("User ID is required when updating a user");case 7:e.next=3;break;case 9:e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),n.e(e.t0);case 14:return e.prev=14,n.f(),e.finish(14);case 17:return e.next=19,this.patch(this.baseURL+"/users",{users:t});case 19:return e.abrupt("return",e.sent);case 20:case"end":return e.stop()}}),e,this,[[1,11,14,17]])}))),function(e){return oe.apply(this,arguments)})},{key:"deleteUser",value:(ae=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.delete(this.baseURL+"/users/".concat(t),n);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return ae.apply(this,arguments)})},{key:"reactivateUser",value:(ie=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/users/".concat(t,"/reactivate"),Ht({},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return ie.apply(this,arguments)})},{key:"deactivateUser",value:(se=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/users/".concat(t,"/deactivate"),Ht({},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return se.apply(this,arguments)})},{key:"exportUser",value:(re=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/users/".concat(t,"/export"),Ht({},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return re.apply(this,arguments)})},{key:"banUser",value:(ne=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/moderation/ban",Ht({target_user_id:t},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return ne.apply(this,arguments)})},{key:"unbanUser",value:(te=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.delete(this.baseURL+"/moderation/ban",Ht({target_user_id:t},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return te.apply(this,arguments)})},{key:"shadowBan",value:(ee=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.banUser(t,Ht({shadow:!0},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return ee.apply(this,arguments)})},{key:"removeShadowBan",value:(Z=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.unbanUser(t,Ht({shadow:!0},n));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return Z.apply(this,arguments)})},{key:"muteUser",value:(Y=b(O.mark((function e(t,n){var r,s=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this.post(this.baseURL+"/moderation/mute",Ht(Ht({target_id:t},n?{user_id:n}:{}),r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return Y.apply(this,arguments)})},{key:"unmuteUser",value:(Q=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/moderation/unmute",Ht({target_id:t},n?{user_id:n}:{}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return Q.apply(this,arguments)})},{key:"userMuteStatus",value:function(e){if(!this.user||!this.wsPromise)throw new Error("Make sure to await connectUser() first.");for(var t=0;t<this.mutedUsers.length;t+=1)if(this.mutedUsers[t].target.id===e)return!0;return!1}},{key:"flagMessage",value:($=b(O.mark((function e(t){var n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/moderation/flag",Ht({target_message_id:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return $.apply(this,arguments)})},{key:"flagUser",value:(V=b(O.mark((function e(t){var n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/moderation/flag",Ht({target_user_id:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return V.apply(this,arguments)})},{key:"unflagMessage",value:(K=b(O.mark((function e(t){var n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/moderation/unflag",Ht({target_message_id:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return K.apply(this,arguments)})},{key:"unflagUser",value:(X=b(O.mark((function e(t){var n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/moderation/unflag",Ht({target_user_id:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return X.apply(this,arguments)})},{key:"getCallToken",value:(G=b(O.mark((function e(t){var n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/calls/".concat(t),Ht({},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return G.apply(this,arguments)})},{key:"_queryFlags",value:(J=b(O.mark((function e(){var t,n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.length>0&&void 0!==r[0]?r[0]:{},n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=4,this.post(this.baseURL+"/moderation/flags",Ht({filter_conditions:t},n));case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}}),e,this)}))),function(){return J.apply(this,arguments)})},{key:"_queryFlagReports",value:(H=b(O.mark((function e(){var t,n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.length>0&&void 0!==r[0]?r[0]:{},n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=4,this.post(this.baseURL+"/moderation/reports",Ht({filter_conditions:t},n));case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}}),e,this)}))),function(){return H.apply(this,arguments)})},{key:"_reviewFlagReport",value:(z=b(O.mark((function e(t,n){var r,s=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:{},e.next=3,this.patch(this.baseURL+"/moderation/reports/".concat(t),Ht({review_result:n},r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return z.apply(this,arguments)})},{key:"_unblockMessage",value:(B=b(O.mark((function e(t){var n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/moderation/unblock_message",Ht({target_message_id:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return B.apply(this,arguments)})},{key:"markChannelsRead",value:(W=b(O.mark((function e(){var t,n=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.next=3,this.post(this.baseURL+"/channels/read",Ht({},t));case 3:case"end":return e.stop()}}),e,this)}))),function(){return W.apply(this,arguments)})},{key:"createCommand",value:function(e){return this.post(this.baseURL+"/commands",e)}},{key:"getCommand",value:function(e){return this.get(this.baseURL+"/commands/".concat(e))}},{key:"updateCommand",value:function(e,t){return this.put(this.baseURL+"/commands/".concat(e),t)}},{key:"deleteCommand",value:function(e){return this.delete(this.baseURL+"/commands/".concat(e))}},{key:"listCommands",value:function(){return this.get(this.baseURL+"/commands")}},{key:"createChannelType",value:function(e){var t=d({},{commands:["all"]},e);return this.post(this.baseURL+"/channeltypes",t)}},{key:"getChannelType",value:function(e){return this.get(this.baseURL+"/channeltypes/".concat(e))}},{key:"updateChannelType",value:function(e,t){return this.put(this.baseURL+"/channeltypes/".concat(e),t)}},{key:"deleteChannelType",value:function(e){return this.delete(this.baseURL+"/channeltypes/".concat(e))}},{key:"listChannelTypes",value:function(){return this.get(this.baseURL+"/channeltypes")}},{key:"translateMessage",value:(q=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/messages/".concat(t,"/translate"),{language:n});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return q.apply(this,arguments)})},{key:"_normalizeExpiration",value:function(e){var t=null;if("number"==typeof e){var n=new Date;n.setSeconds(n.getSeconds()+e),t=n.toISOString()}else Jt(e)?t=e:e instanceof Date&&(t=e.toISOString());return t}},{key:"_validateAndGetMessageId",value:function(e,t){var n;if("string"==typeof e)n=e;else{if(!e.id)throw Error(t);n=e.id}return n}},{key:"pinMessage",value:function(e,t,n,r){var s=this._validateAndGetMessageId(e,"Please specify the message id when calling unpinMessage");return this.partialUpdateMessage(s,{set:{pinned:!0,pin_expires:this._normalizeExpiration(t),pinned_at:this._normalizeExpiration(r)}},n)}},{key:"unpinMessage",value:function(e,t){var n=this._validateAndGetMessageId(e,"Please specify the message id when calling unpinMessage");return this.partialUpdateMessage(n,{set:{pinned:!1}},t)}},{key:"updateMessage",value:(N=b(O.mark((function e(t,n,r){var s;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.id){e.next=2;break}throw Error("Please specify the message id when calling updateMessage");case 2:return delete(s=d({},t)).id,["command","created_at","html","latest_reactions","own_reactions","quoted_message","reaction_counts","reply_count","type","updated_at","user","__html"].forEach((function(e){null!=s[e]&&delete s[e]})),null!=n&&(Jt(n)?s.user_id=n:s.user={id:n.id}),Array.isArray(s.mentioned_users)&&!Jt(s.mentioned_users[0])&&(s.mentioned_users=s.mentioned_users.map((function(e){return e.id}))),e.next=10,this.post(this.baseURL+"/messages/".concat(t.id),Ht({message:s},r));case 10:return e.abrupt("return",e.sent);case 11:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return N.apply(this,arguments)})},{key:"partialUpdateMessage",value:(F=b(O.mark((function e(t,n,r,s){var i;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}throw Error("Please specify the message id when calling partialUpdateMessage");case 2:return i=r,null!=r&&Jt(r)&&(i={id:r}),e.next=6,this.put(this.baseURL+"/messages/".concat(t),Ht(Ht(Ht({},n),s),{},{user:i}));case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return F.apply(this,arguments)})},{key:"deleteMessage",value:(j=b(O.mark((function e(t,n){var r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r={},n&&(r={hard:!0}),e.next=4,this.delete(this.baseURL+"/messages/".concat(t),r);case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return j.apply(this,arguments)})},{key:"getMessage",value:(A=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/messages/".concat(t));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return A.apply(this,arguments)})},{key:"getUserAgent",value:function(){return this.userAgent||"stream-chat-javascript-client-".concat(this.node?"node":"browser","-","6.9.0")}},{key:"setUserAgent",value:function(e){this.userAgent=e}},{key:"_enrichAxiosOptions",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{params:{},headers:{},config:{}},n=this._getToken(),r=n?{Authorization:n}:void 0;return null!==(e=t.headers)&&void 0!==e&&e["x-client-request-id"]||(t.headers=Ht(Ht({},t.headers),{},{"x-client-request-id":qe()})),Ht({params:Ht({user_id:this.userID,connection_id:this._getConnectionID(),api_key:this.key},t.params),headers:Ht(Ht({},r),{},{"stream-auth-type":this.getAuthType(),"X-Stream-Client":this.getUserAgent()},t.headers)},t.config)}},{key:"_getToken",value:function(){return!this.tokenManager||this.anonymous?null:this.tokenManager.getToken()}},{key:"_startCleaning",value:function(){var e=this;null==this.cleaningIntervalRef&&(this.cleaningIntervalRef=setInterval((function(){for(var t=0,n=Object.values(e.activeChannels);t<n.length;t++){n[t].clean()}}),500))}},{key:"verifyWebhook",value:function(e,t){return!!this.secret&&kt(e,this.secret,t)}},{key:"getPermission",value:function(e){return this.get("".concat(this.baseURL,"/permissions/").concat(e))}},{key:"createPermission",value:function(e){return this.post("".concat(this.baseURL,"/permissions"),Ht({},e))}},{key:"updatePermission",value:function(e,t){return this.put("".concat(this.baseURL,"/permissions/").concat(e),Ht({},t))}},{key:"deletePermission",value:function(e){return this.delete("".concat(this.baseURL,"/permissions/").concat(e))}},{key:"listPermissions",value:function(){return this.get("".concat(this.baseURL,"/permissions"))}},{key:"createRole",value:function(e){return this.post("".concat(this.baseURL,"/roles"),{name:e})}},{key:"listRoles",value:function(){return this.get("".concat(this.baseURL,"/roles"))}},{key:"deleteRole",value:function(e){return this.delete("".concat(this.baseURL,"/roles/").concat(e))}},{key:"sync",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.post("".concat(this.baseURL,"/sync"),Ht({channel_cids:e,last_sync_at:t},n))}},{key:"sendUserCustomEvent",value:(D=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post("".concat(this.baseURL,"/users/").concat(t,"/event"),{event:n});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return D.apply(this,arguments)})},{key:"createBlockList",value:function(e){return this.post("".concat(this.baseURL,"/blocklists"),e)}},{key:"listBlockLists",value:function(){return this.get("".concat(this.baseURL,"/blocklists"))}},{key:"getBlockList",value:function(e){return this.get("".concat(this.baseURL,"/blocklists/").concat(e))}},{key:"updateBlockList",value:function(e,t){return this.put("".concat(this.baseURL,"/blocklists/").concat(e),t)}},{key:"deleteBlockList",value:function(e){return this.delete("".concat(this.baseURL,"/blocklists/").concat(e))}},{key:"exportChannels",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=Ht({channels:e},t);return this.post("".concat(this.baseURL,"/export_channels"),n)}},{key:"exportUsers",value:function(e){return this.post("".concat(this.baseURL,"/export/users"),e)}},{key:"exportChannel",value:function(e,t){return this.exportChannels([e],t)}},{key:"getExportChannelStatus",value:function(e){return this.get("".concat(this.baseURL,"/export_channels/").concat(e))}},{key:"createSegment",value:(P=b(O.mark((function e(t){var n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/segments",{segment:t});case 2:return n=e.sent,r=n.segment,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return P.apply(this,arguments)})},{key:"getSegment",value:(I=b(O.mark((function e(t){var n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/segments/".concat(t));case 2:return n=e.sent,r=n.segment,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return I.apply(this,arguments)})},{key:"listSegments",value:(L=b(O.mark((function e(t){var n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/segments",t);case 2:return n=e.sent,r=n.segments,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return L.apply(this,arguments)})},{key:"updateSegment",value:(T=b(O.mark((function e(t,n){var r,s;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.put(this.baseURL+"/segments/".concat(t),{segment:n});case 2:return r=e.sent,s=r.segment,e.abrupt("return",s);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return T.apply(this,arguments)})},{key:"deleteSegment",value:(M=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.delete(this.baseURL+"/segments/".concat(t)));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return M.apply(this,arguments)})},{key:"createCampaign",value:(E=b(O.mark((function e(t){var n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/campaigns",{campaign:t});case 2:return n=e.sent,r=n.campaign,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return E.apply(this,arguments)})},{key:"getCampaign",value:(R=b(O.mark((function e(t){var n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/campaigns/".concat(t));case 2:return n=e.sent,r=n.campaign,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return R.apply(this,arguments)})},{key:"listCampaigns",value:(U=b(O.mark((function e(t){var n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/campaigns",t);case 2:return n=e.sent,r=n.campaigns,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return U.apply(this,arguments)})},{key:"updateCampaign",value:(S=b(O.mark((function e(t,n){var r,s;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.put(this.baseURL+"/campaigns/".concat(t),{campaign:n});case 2:return r=e.sent,s=r.campaign,e.abrupt("return",s);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return S.apply(this,arguments)})},{key:"deleteCampaign",value:(C=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.delete(this.baseURL+"/campaigns/".concat(t)));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return C.apply(this,arguments)})},{key:"scheduleCampaign",value:(k=b(O.mark((function e(t,n){var r,s,i;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=n.scheduledFor,e.next=3,this.patch(this.baseURL+"/campaigns/".concat(t,"/schedule"),{scheduled_for:r});case 3:return s=e.sent,i=s.campaign,e.abrupt("return",i);case 6:case"end":return e.stop()}}),e,this)}))),function(e,t){return k.apply(this,arguments)})},{key:"stopCampaign",value:(y=b(O.mark((function e(t){var n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.patch(this.baseURL+"/campaigns/".concat(t,"/stop"));case 2:return n=e.sent,r=n.campaign,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"resumeCampaign",value:(g=b(O.mark((function e(t){var n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.patch(this.baseURL+"/campaigns/".concat(t,"/resume"));case 2:return n=e.sent,r=n.campaign,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return g.apply(this,arguments)})},{key:"testCampaign",value:(v=b(O.mark((function e(t,n){var r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=n.users,e.next=3,this.post(this.baseURL+"/campaigns/".concat(t,"/test"),{users:r});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return v.apply(this,arguments)})},{key:"enrichURL",value:(h=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.get(this.baseURL+"/og",{url:t}));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return h.apply(this,arguments)})},{key:"getTask",value:(l=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.get("".concat(this.baseURL,"/tasks/").concat(t)));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"deleteChannels",value:(u=b(O.mark((function e(t){var n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.next=3,this.post(this.baseURL+"/channels/delete",Ht({cids:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return u.apply(this,arguments)})},{key:"deleteUsers",value:(c=b(O.mark((function e(t,n){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("soft"===(null==n?void 0:n.user)||"hard"===(null==n?void 0:n.user)){e.next=2;break}throw new Error("Invalid delete user options. user must be one of [soft hard]");case 2:if(void 0===n.messages||"soft"===n.messages||"hard"===n.messages){e.next=4;break}throw new Error("Invalid delete user options. messages must be one of [soft hard]");case 4:if(void 0===n.conversations||"soft"===n.conversations||"hard"===n.conversations){e.next=6;break}throw new Error("Invalid delete user options. conversations must be one of [soft hard]");case 6:return e.next=8,this.post(this.baseURL+"/users/delete",Ht({user_ids:t},n));case 8:return e.abrupt("return",e.sent);case 9:case"end":return e.stop()}}),e,this)}))),function(e,t){return c.apply(this,arguments)})},{key:"_createImportURL",value:(o=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/import_urls",{filename:t});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return o.apply(this,arguments)})},{key:"_createImport",value:(a=b(O.mark((function e(t){var n,r=arguments;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{mode:"upsert"},e.next=3,this.post(this.baseURL+"/imports",Ht({path:t},n));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"_getImport",value:(i=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/imports/".concat(t));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return i.apply(this,arguments)})},{key:"_listImports",value:(s=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/imports",t);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return s.apply(this,arguments)})},{key:"upsertPushProvider",value:(r=b(O.mark((function e(t){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.post(this.baseURL+"/push_providers",{push_provider:t});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"deletePushProvider",value:(n=b(O.mark((function e(t){var n,r;return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.type,r=t.name,e.next=3,this.delete(this.baseURL+"/push_providers/".concat(n,"/").concat(r));case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"listPushProviders",value:(t=b(O.mark((function e(){return O.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(this.baseURL+"/push_providers");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}],[{key:"getInstance",value:function(t,n,r){return e._instance||(e._instance="string"==typeof n?new e(t,n,r):new e(t,n)),e._instance}}]),e}();x(Gt,"_instance",void 0);var Xt="Allow",Kt="Deny",Vt=["*"],$t=["*"],Qt=function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Vt,s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:$t,i=arguments.length>4&&void 0!==arguments[4]&&arguments[4],a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:Xt;w(this,e),x(this,"name",void 0),x(this,"action",void 0),x(this,"owner",void 0),x(this,"priority",void 0),x(this,"resources",void 0),x(this,"roles",void 0),this.name=t,this.action=a,this.owner=i,this.priority=n,this.resources=r,this.roles=s},Yt=new Qt("Allow all",999,Vt,$t,!1,Xt),Zt=new Qt("Deny all",1,Vt,$t,!1,Kt);e.Allow=Xt,e.AllowAll=Yt,e.AnyResource=Vt,e.AnyRole=$t,e.BuiltinPermissions={AddLinks:"Add Links",BanUser:"Ban User",CreateChannel:"Create Channel",CreateMessage:"Create Message",CreateReaction:"Create Reaction",DeleteAnyAttachment:"Delete Any Attachment",DeleteAnyChannel:"Delete Any Channel",DeleteAnyMessage:"Delete Any Message",DeleteAnyReaction:"Delete Any Reaction",DeleteOwnAttachment:"Delete Own Attachment",DeleteOwnChannel:"Delete Own Channel",DeleteOwnMessage:"Delete Own Message",DeleteOwnReaction:"Delete Own Reaction",ReadAnyChannel:"Read Any Channel",ReadOwnChannel:"Read Own Channel",RunMessageAction:"Run Message Action",UpdateAnyChannel:"Update Any Channel",UpdateAnyMessage:"Update Any Message",UpdateMembersAnyChannel:"Update Members Any Channel",UpdateMembersOwnChannel:"Update Members Own Channel",UpdateOwnChannel:"Update Own Channel",UpdateOwnMessage:"Update Own Message",UploadAttachment:"Upload Attachment",UseFrozenChannel:"Send messages and reactions to frozen channels"},e.BuiltinRoles={Admin:"admin",Anonymous:"anonymous",ChannelMember:"channel_member",ChannelModerator:"channel_moderator",Guest:"guest",User:"user"},e.Channel=Qe,e.ChannelState=Ce,e.CheckSignature=kt,e.ClientState=et,e.Deny=Kt,e.DenyAll=Zt,e.DevToken=wt,e.EVENT_MAP=Re,e.ErrorFromResponse=Nt,e.InsightMetrics=it,e.JWTServerToken=yt,e.JWTUserToken=mt,e.MaxPriority=999,e.MinPriority=1,e.Permission=Qt,e.StableWSConnection=pt,e.StreamChat=Gt,e.TokenManager=xt,e.UserFromToken=bt,e.buildWsFatalInsight=ot,e.buildWsSuccessAfterFailureInsight=ut,e.chatCodes=Ae,e.decodeBase64=h,e.encodeBase64=l,e.isOwnUser=function(e){return void 0!==(null==e?void 0:e.total_unread_count)},e.isValidEventType=Ee,e.logChatPromiseExecution=Ie,e.postInsights=at,Object.defineProperty(e,"__esModule",{value:!0})}(this.window=this.window||{});
|
|
2
2
|
//# sourceMappingURL=browser.full-bundle.min.js.map
|