@phenixrts/sdk 2025.2.4-beta.619 → 2025.2.4-beta.621

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.
Files changed (42) hide show
  1. package/channels/debug/channels.js +429 -357
  2. package/channels/debug/package.json +1 -1
  3. package/channels/debug.private/channels.js +429 -357
  4. package/channels/debug.private/package.json +1 -1
  5. package/channels/debug.provideGlobalScope/channels.js +429 -357
  6. package/channels/debug.provideGlobalScope/package.json +1 -1
  7. package/channels/es5.debug.private/channels.js +444 -352
  8. package/channels/es5.debug.private/package.json +1 -1
  9. package/channels/min/channels.js +1 -1
  10. package/channels/min/channels.js.map +1 -1
  11. package/channels/min/package.json +1 -1
  12. package/channels/min.private/channels.js +1 -1
  13. package/channels/min.private/channels.js.map +1 -1
  14. package/channels/min.private/package.json +1 -1
  15. package/channels/min.provideGlobalScope/channels.js +1 -1
  16. package/channels/min.provideGlobalScope/channels.js.map +1 -1
  17. package/channels/min.provideGlobalScope/package.json +1 -1
  18. package/channels/package.json +1 -1
  19. package/full/debug/full.js +429 -357
  20. package/full/debug/package.json +1 -1
  21. package/full/debug.private/full.js +429 -357
  22. package/full/debug.private/package.json +1 -1
  23. package/full/min/full.js +1 -1
  24. package/full/min/full.js.map +1 -1
  25. package/full/min/package.json +1 -1
  26. package/full/min.private/full.js +1 -1
  27. package/full/min.private/full.js.map +1 -1
  28. package/full/min.private/package.json +1 -1
  29. package/full/package.json +1 -1
  30. package/package.json +1 -1
  31. package/publish/debug/package.json +1 -1
  32. package/publish/debug/publish.js +429 -357
  33. package/publish/debug.private/package.json +1 -1
  34. package/publish/debug.private/publish.js +429 -357
  35. package/publish/min/package.json +1 -1
  36. package/publish/min/publish.js +1 -1
  37. package/publish/min/publish.js.map +1 -1
  38. package/publish/min.private/package.json +1 -1
  39. package/publish/min.private/publish.js +1 -1
  40. package/publish/min.private/publish.js.map +1 -1
  41. package/publish/package.json +1 -1
  42. package/types/sdk/discovery/EndPoint.d.ts +4 -2
@@ -1,3 +1,3 @@
1
1
  /*! For license information please see publish.js.LICENSE.txt */
2
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.phenix=t():e.phenix=t()}(self,()=>(()=>{var e={981:(e,t,n)=>{"use strict";n.d(t,{A:()=>h});var r=n(738),i=n.n(r),o=n(383),a=n.n(o),s=n(579),u=n.n(s),c=n(693),l=n.n(c),d=u()(function e(t,n,r){a()(this,e),l()(this,"onFulfilled",void 0),l()(this,"onRejected",void 0),l()(this,"promise",void 0),this.onFulfilled="function"==typeof t?t:null,this.onRejected="function"==typeof n?n:null,this.promise=r}),f=function(){function e(t){if(a()(this,e),l()(this,"_state",void 0),l()(this,"_handled",void 0),l()(this,"_value",void 0),l()(this,"_deferreds",void 0),!(this instanceof e))throw new TypeError("Promises must be constructed via new");if("function"!=typeof t)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=null,this._deferreds=[],this.doResolve(t)}return u()(e,[{key:"doResolve",value:function(e){var t=this,n=!1;try{e(function(e){n||(n=!0,t.promiseResolve(e))},function(e){n||(n=!0,t.promiseReject(e))})}catch(e){if(n)return;n=!0,this.promiseReject(e)}}},{key:"promiseResolve",value:function(t){var n=this;try{if(t===n)throw new TypeError("A Promise cannot be resolved with it self.");if(t&&("object"===i()(t)||"function"==typeof t)){var r=t.then;if(t instanceof e)return n._state=3,n._value=t,void n.finale();if("function"==typeof r)return void n.doResolve(function(){r.apply(t,arguments)})}n._state=1,n._value=t,n.finale()}catch(e){n.promiseReject(e)}}},{key:"promiseReject",value:function(e){this._state=2,this._value=e,this.finale()}},{key:"finale",value:function(){var t=this;2===this._state&&0===this._deferreds.length&&e._immediate(function(){t._handled||e._unhandledRejection(t._value)});for(var n=0,r=this._deferreds.length;n<r;n++)this.handle(this._deferreds[n]);this._deferreds=[]}},{key:"handle",value:function(t){for(var n=this;3===n._state;)n=n._value;0!==n._state?(n._handled=!0,e._immediate(function(){var e=1===n._state?t.onFulfilled:t.onRejected;if(null!==e){var r;try{r=e(n._value)}catch(e){return void t.promise.promiseReject(e)}t.promise.promiseResolve(r)}else 1===n._state?t.promise.promiseResolve(n._value):t.promise.promiseReject(n._value)})):n._deferreds.push(t)}}],[{key:"all",value:function(t){return new e(function(e,n){if(!Array.isArray(t))return n(new TypeError("Promise.all accepts an array"));var r=Array.prototype.slice.call(t);if(0===r.length)return e([]);for(var o=r.length,a=function(t,s){try{if(s&&("object"===i()(s)||"function"==typeof s)){var u=s.then;if("function"==typeof u)return void u.call(s,function(e){return a(t,e)},n)}r[t]=s,0===--o&&e(r)}catch(e){n(e)}},s=0;s<r.length;s++)a(s,r[s])})}},{key:"resolve",value:function(t){return t&&"object"===i()(t)&&t.constructor===e?t:new e(function(e){return e(t)})}},{key:"reject",value:function(t){return new e(function(e,n){return n(t)})}},{key:"race",value:function(t){return new e(function(n,r){if(!Array.isArray(t))return r(new TypeError("Promise.race accepts an array"));for(var i=0,o=t.length;i<o;i++)e.resolve(t[i]).then(n,r)})}},{key:"_immediate",value:function(e){window.setTimeout(e,0)}},{key:"_unhandledRejection",value:function(e){"undefined"!=typeof console&&console&&console.warn("Possible Unhandled Promise Rejection:",e)}}])}();f.prototype.catch=function(e){return this.then(null,e)},f.prototype.then=function(e,t){var n=new f(function(){return null});return this.handle(new d(e,t,n)),n},f.prototype.finally=function(e){return this.then(function(t){return f.resolve(e()).then(function(){return t},function(){return null})},function(t){return f.resolve(e()).then(function(){return f.reject(t)},function(){return null})})};var h=f},79:e=>{e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r},e.exports.__esModule=!0,e.exports.default=e.exports},987:e=>{e.exports=function(e){if(Array.isArray(e))return e},e.exports.__esModule=!0,e.exports.default=e.exports},901:(e,t,n)=>{var r=n(79);e.exports=function(e){if(Array.isArray(e))return r(e)},e.exports.__esModule=!0,e.exports.default=e.exports},475:e=>{e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.__esModule=!0,e.exports.default=e.exports},293:(e,t,n)=>{var r=n(981).A;function i(e,t,n,i,o,a,s){try{var u=e[a](s),c=u.value}catch(e){return void n(e)}u.done?t(c):r.resolve(c).then(i,o)}e.exports=function(e){return function(){var t=this,n=arguments;return new r(function(r,o){var a=e.apply(t,n);function s(e){i(a,r,o,s,u,"next",e)}function u(e){i(a,r,o,s,u,"throw",e)}s(void 0)})}},e.exports.__esModule=!0,e.exports.default=e.exports},383:e=>{e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.__esModule=!0,e.exports.default=e.exports},579:(e,t,n)=>{var r=n(736);function i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,r(i.key),i)}}e.exports=function(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e},e.exports.__esModule=!0,e.exports.default=e.exports},693:(e,t,n)=>{var r=n(736);e.exports=function(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e},e.exports.__esModule=!0,e.exports.default=e.exports},72:e=>{function t(n){return e.exports=t=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},e.exports.__esModule=!0,e.exports.default=e.exports,t(n)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},511:(e,t,n)=>{var r=n(636);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&r(e,t)},e.exports.__esModule=!0,e.exports.default=e.exports},291:e=>{e.exports=function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)},e.exports.__esModule=!0,e.exports.default=e.exports},156:e=>{e.exports=function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o,a,s=[],u=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);u=!0);}catch(e){c=!0,i=e}finally{try{if(!u&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw i}}return s}},e.exports.__esModule=!0,e.exports.default=e.exports},752:e=>{e.exports=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.")},e.exports.__esModule=!0,e.exports.default=e.exports},869:e=>{e.exports=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.")},e.exports.__esModule=!0,e.exports.default=e.exports},452:(e,t,n)=>{var r=n(738).default,i=n(475);e.exports=function(e,t){if(t&&("object"==r(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return i(e)},e.exports.__esModule=!0,e.exports.default=e.exports},636:e=>{function t(n,r){return e.exports=t=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},e.exports.__esModule=!0,e.exports.default=e.exports,t(n,r)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},715:(e,t,n)=>{var r=n(987),i=n(156),o=n(122),a=n(752);e.exports=function(e,t){return r(e)||i(e,t)||o(e,t)||a()},e.exports.__esModule=!0,e.exports.default=e.exports},132:(e,t,n)=>{var r=n(901),i=n(291),o=n(122),a=n(869);e.exports=function(e){return r(e)||i(e)||o(e)||a()},e.exports.__esModule=!0,e.exports.default=e.exports},45:(e,t,n)=>{var r=n(738).default;e.exports=function(e,t){if("object"!=r(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!=r(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)},e.exports.__esModule=!0,e.exports.default=e.exports},736:(e,t,n)=>{var r=n(738).default,i=n(45);e.exports=function(e){var t=i(e,"string");return"symbol"==r(t)?t:t+""},e.exports.__esModule=!0,e.exports.default=e.exports},738:e=>{function t(n){return e.exports=t="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.exports.__esModule=!0,e.exports.default=e.exports,t(n)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},122:(e,t,n)=>{var r=n(79);e.exports=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n={}.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)?r(e,t):void 0}},e.exports.__esModule=!0,e.exports.default=e.exports}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={exports:{}};return e[r](o,o.exports,n),o.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{"use strict";n.r(r),n.d(r,{PublisherState:()=>Ve,Publishers:()=>Rt,SDK:()=>Ne,default:()=>Lt});var e=n(383),t=n.n(e),i=n(579),o=n.n(i),a=n(693),s=n.n(a),u=n(132),c=n.n(u),l=n(452),d=n.n(l),f=n(72),h=n.n(f),p=n(511),v=n.n(p),g=function(){return o()(function e(n){t()(this,e),s()(this,"_disposed",void 0),s()(this,"_disposable",void 0),this._disposed=!1,this._disposable=n},[{key:"dispose",value:function(){if(!this._disposed)return this._disposed=!0,this._disposable.call(this)}}])}();function y(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(y=function(){return!!e})()}var m,_=function(e){function n(e,r){return t()(this,n),i=this,o=n,a=[function(){var t=e.indexOf(r);t>=0&&e.splice(t,1)}],o=h()(o),d()(i,y()?Reflect.construct(o,a||[],h()(i).constructor):o.apply(i,a));var i,o,a}return v()(n,e),o()(n)}(g),b=function(){return o()(function e(n){t()(this,e),s()(this,"_listeners",void 0),s()(this,"_value",void 0),this._listeners=[],this._value=n},[{key:"value",get:function(){return this._value},set:function(e){var t=this._value!==e;if(t&&e){var n=e;"function"==typeof n.equals&&(t=!n.equals(this._value))}if(t){this._value=e;for(var r=0,i=c()(this._listeners);r<i.length;r++)(0,i[r])(e)}}},{key:"subscribe",value:function(e){return this._listeners.push(e),e(this._value),new _(this._listeners,e)}}])}(),C=function(){return o()(function e(n){t()(this,e),s()(this,"_subject",void 0),this._subject=n},[{key:"value",get:function(){return this._subject.value}},{key:"subscribe",value:function(e){return this._subject.subscribe(e)}}])}(),w={document,location,navigator,window},k=function(){function e(n){t()(this,e),s()(this,"_document",void 0),s()(this,"_location",void 0),s()(this,"_navigator",void 0),s()(this,"_window",void 0),this._document=n.document,this._location=n.location,this._navigator=n.navigator,this._window=n.window}return o()(e,[{key:"AbortController",get:function(){return this._window.AbortController}},{key:"FormData",get:function(){return this._window.FormData}},{key:"HTMLVideoElement",get:function(){return this._window.HTMLVideoElement}},{key:"MediaStream",get:function(){return this._window.MediaStream}},{key:"MediaStreamTrack",get:function(){return this._window.MediaStreamTrack}},{key:"MediaSource",get:function(){return this._window.MediaSource}},{key:"RTCPeerConnection",get:function(){return this._window.RTCPeerConnection}},{key:"RTCSessionDescription",get:function(){return this._window.RTCSessionDescription}},{key:"RTCIceCandidate",get:function(){return this._window.RTCIceCandidate}},{key:"URL",get:function(){return this._window.URL}},{key:"URLSearchParams",get:function(){return this._window.URLSearchParams}},{key:"addDocumentEventListener",get:function(){return this._document.addEventListener.bind(this._document)}},{key:"addWindowEventListener",get:function(){return this._window.addEventListener.bind(this._window)}},{key:"clearInterval",get:function(){return this._window.clearInterval.bind(this._window)}},{key:"clearTimeout",get:function(){return this._window.clearTimeout.bind(this._window)}},{key:"documentCreateElement",get:function(){return this._document.createElement.bind(this._document)}},{key:"documentHasFocus",get:function(){return this._document.hasFocus.bind(this._document)}},{key:"documentIsHidden",get:function(){return!!this._document.hidden}},{key:"documentQuerySelector",get:function(){return this._document.querySelector.bind(this._document)}},{key:"fetch",get:function(){return this._window.fetch.bind(this._window)}},{key:"locationHostname",get:function(){return this._location.hostname}},{key:"locationSearch",get:function(){return this._location.search}},{key:"navigatorConnection",get:function(){return this._navigator.connection}},{key:"navigatorIsOnLine",get:function(){return this._navigator.onLine}},{key:"pageLoadTime",get:function(){return this._window.__phenixPageLoadTime||this._window.__pageLoadTime}},{key:"sendBeacon",get:function(){var e=this;return this._navigator.sendBeacon?function(t,n){return e._navigator.sendBeacon(t,void 0===n?null:n)}:void 0}},{key:"queueMicrotask",get:function(){return this._window.queueMicrotask.bind(this._window)}},{key:"removeDocumentEventListener",get:function(){return this._document.removeEventListener.bind(this._document)}},{key:"requestAnimationFrame",get:function(){return this._window.requestAnimationFrame.bind(this._window)}},{key:"removeWindowEventListener",get:function(){return this._window.removeEventListener.bind(this._window)}},{key:"setInterval",get:function(){return this._window.setInterval.bind(this._window)}},{key:"setTimeout",get:function(){return this._window.setTimeout.bind(this._window)}}],[{key:"setInstance",value:function(e){throw new Error("This build does not support setting the GlobalScope")}},{key:"getInstance",value:function(){return e._readOnlyInstance}},{key:"subscribe",value:function(t){return e._readOnlyInstance.subscribe(t)}}])}();m=k,s()(k,"_instance",new b(new m(w))),s()(k,"_readOnlyInstance",new C(m._instance));var S,T,x,O=k.getInstance(),P=function(){function e(){t()(this,e)}return o()(e,null,[{key:"browserNameAndVersion",get:function(){return e._browserNameAndVersion}},{key:"browserName",get:function(){return this._browserName}},{key:"browserMajorVersion",get:function(){return this._browserMajorVersion}},{key:"isAndroid",get:function(){return e._isAndroid}},{key:"isChrome69",get:function(){return e._isChrome69}},{key:"isChrome70",get:function(){return e._isChrome70}},{key:"isChrome71",get:function(){return e._isChrome71}},{key:"isChrome72",get:function(){return e._isChrome72}},{key:"isChrome74",get:function(){return e._isChrome74}},{key:"isChrome75",get:function(){return e._isChrome75}},{key:"isChrome76",get:function(){return e._isChrome76}},{key:"isChrome77",get:function(){return e._isChrome77}},{key:"isMobile",value:function(){return e._isMobile}},{key:"parseBrowserNameAndVersion",value:function(){if(!navigator||!navigator.userAgent)return"";var t=navigator.userAgent.match(e._browserNameAndVersionRegex);return t&&t[0]?t[0]:e.parseBrowserNameAndVersionForIE()}},{key:"parseBrowserName",value:function(){if(!e._browserNameAndVersion)return"";var t=e._browserNameAndVersion.split("/");return t&&t[0]?t[0]:""}},{key:"parseBrowserMajorVersion",value:function(){if(!e._browserNameAndVersion)return 0;var t=e._browserNameAndVersion.split("/");if(!t||!t[1])return 0;var n=t[1];return n&&Number(n.split(".")[0])||0}},{key:"parseBrowserNameAndVersionForIE",value:function(){if(!navigator||!navigator.userAgent)return"";var e=navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return"IE/".concat(parseInt(e.substring(t+5,e.indexOf(".",t)),10));if(e.indexOf("Trident/")>0){var n=e.indexOf("rv:");return"IE/".concat(parseInt(e.substring(n+3,e.indexOf(".",n)),10))}return""}}])}();S=P,s()(P,"_browserNameAndVersionRegex",/(MSIE|(?!Gecko.+)Firefox|(?!AppleWebKit.+Chrome.+)Safari|(?!AppleWebKit.+)Chrome|AppleWebKit(?!.+Chrome|.+Safari)|Gecko(?!.+Firefox))(?: |\/)([\d.apre]+)/g),s()(P,"_browserNameAndVersion",S.parseBrowserNameAndVersion()),s()(P,"_browserName",S.parseBrowserName()),s()(P,"_browserMajorVersion",S.parseBrowserMajorVersion()),s()(P,"_isMobile",/Android|iPhone|iPad|iPod|BlackBerry|Opera Mini/i.test(null===(T=navigator)||void 0===T?void 0:T.userAgent)),s()(P,"_isAndroid",/Android/i.test(null===(x=navigator)||void 0===x?void 0:x.userAgent)),s()(P,"_isChrome69",S._browserNameAndVersion.includes("Chrome/69.")),s()(P,"_isChrome70",S._browserNameAndVersion.includes("Chrome/70.")),s()(P,"_isChrome71",S._browserNameAndVersion.includes("Chrome/71.")),s()(P,"_isChrome72",S._browserNameAndVersion.includes("Chrome/72.")),s()(P,"_isChrome74",S._browserNameAndVersion.includes("Chrome/74.")),s()(P,"_isChrome75",S._browserNameAndVersion.includes("Chrome/75.")),s()(P,"_isChrome76",S._browserNameAndVersion.includes("Chrome/76.")),s()(P,"_isChrome77",S._browserNameAndVersion.includes("Chrome/77."));var E=function(){function e(){t()(this,e)}return o()(e,null,[{key:"clientOfferDisabled",get:function(){return P.isChrome74||P.isChrome75||P.isChrome76||P.isChrome77}},{key:"getTransceiversDisabled",get:function(){return e.addTranceiverDisabled}},{key:"addTranceiverDisabled",get:function(){return P.isChrome69||P.isChrome70||P.isChrome71||P.isChrome72}},{key:"getStatsPromiseBasedDisabled",get:function(){return"Chrome"===P.browserName&&P.browserMajorVersion<=66}},{key:"getCurrentOfferDisabled",get:function(){return"Chrome"===P.browserName&&P.browserMajorVersion<=69||"Firefox"===P.browserName&&P.browserMajorVersion<=56}},{key:"onTrackDisabled",get:function(){return"Chrome"===P.browserName&&P.browserMajorVersion<=63||"Firefox"===P.browserName&&P.browserMajorVersion<=52}},{key:"webkitRTCPeerConnectionEnabled",get:function(){return"Chrome"===P.browserName&&P.browserMajorVersion<=55}},{key:"promiseBasedPCMethodsDisabled",get:function(){return"Firefox"===P.browserName&&P.browserMajorVersion<=52}},{key:"shouldUseNativeHls",get:function(){return"Safari"===P.browserName||"SamsungBrowser"===P.browserName}},{key:"isPrecachingEnabled",get:function(){return"IE"!==P.browserName}},{key:"isForceChromeGarbageCollectionSupported",get:function(){var e;return"Chrome"===P.browserName&&"function"==typeof(null===(e=O.value)||void 0===e?void 0:e.documentCreateElement)}},{key:"isQueueMicrotaskSupported",get:function(){return"Chrome"===P.browserName&&P.browserMajorVersion>=71||"Firefox"===P.browserName&&P.browserMajorVersion>=69||"Safari"===P.browserName}},{key:"isMobile",get:function(){return P.isMobile()}},{key:"isInsertableStreamsSupported",get:function(){return!("undefined"==typeof MediaStreamTrackProcessor||"undefined"==typeof MediaStreamTrackGenerator)}},{key:"isEncodedInsertableStreamsSupported",get:function(){return"undefined"!=typeof RTCRtpReceiver&&void 0!==RTCRtpReceiver.prototype.createEncodedStreams}},{key:"isRTCRtpScriptTransformSupported",get:function(){return"undefined"!=typeof RTCRtpScriptTransform}},{key:"isRequestVideoFrameCallbackSupported",get:function(){var e;return void 0!==(null===(e=O.value)||void 0===e?void 0:e.HTMLVideoElement.prototype.requestVideoFrameCallback)}},{key:"isRequestAnimationFrameSupported",get:function(){var e;return"function"==typeof(null===(e=O.value)||void 0===e?void 0:e.requestAnimationFrame)}},{key:"isChannelFrameTimingInformationSupported",get:function(){return e.isRequestVideoFrameCallbackSupported&&(e.isEncodedInsertableStreamsSupported||e.isRTCRtpScriptTransformSupported)}},{key:"errorStackAlsoHasErrorMessage",get:function(){return"Firefox"!==P.browserName&&"Safari"!==P.browserName}}])}(),R=function(e){return e[e.All=-1]="All",e[e.Trace=10]="Trace",e[e.Debug=20]="Debug",e[e.Info=30]="Info",e[e.Warn=40]="Warn",e[e.Error=50]="Error",e[e.Fatal=60]="Fatal",e[e.Off=100]="Off",e}({}),L=function(){return o()(function e(n,r,i){t()(this,e),s()(this,"_category",void 0),s()(this,"_appenders",void 0),s()(this,"_threshold",void 0),this._category=n,this._appenders=r,this._threshold=i},[{key:"category",get:function(){return this._category}},{key:"appenders",get:function(){return this._appenders}},{key:"threshold",get:function(){return this._threshold}},{key:"trace",value:function(){if(this._threshold.value&&!(this._threshold.value>R.Trace)){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this.log(R.Trace,t)}}},{key:"debug",value:function(){if(this._threshold.value&&!(this._threshold.value>R.Debug)){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this.log(R.Debug,t)}}},{key:"info",value:function(){if(this._threshold.value&&!(this._threshold.value>R.Info)){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this.log(R.Info,t)}}},{key:"warn",value:function(){if(this._threshold.value&&!(this._threshold.value>R.Warn)){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this.log(R.Warn,t)}}},{key:"error",value:function(){if(this._threshold.value&&!(this._threshold.value>R.Error)){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this.log(R.Error,t)}}},{key:"fatal",value:function(){if(this._threshold.value&&!(this._threshold.value>R.Fatal)){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this.log(R.Fatal,t)}}},{key:"log",value:function(e,t){var n=this,r=new Date,i=this.replacePlaceholders(t);this._appenders.value.forEach(function(t){t.log(e,i,n.category,r)})}},{key:"replacePlaceholders",value:function(e){for(var t=this,n=e[0],r=0;n.indexOf&&e.length>1&&r>=0;)if((r=n.indexOf("%",r))>0)switch(n.substring(r+1,r+2)){case"%":n=n.substring(0,r)+n.substring(r+1),r++;break;case"s":case"d":e[0]=n=this.replaceArgument(this.toString(e[1]),n,r),e.splice(1,1);break;case"j":e[0]=n=this.replaceArgument(this.stringify(e[1]),n,r),e.splice(1,1);break;default:return e.toString()}return e.length>1&&(e=e.reduce(function(e,n,r,i){return r+1===i.length&&n instanceof Error?E.errorStackAlsoHasErrorMessage?e+"\n"+t.toString(n.stack):e+"\n"+t.toString(n.message)+"\n"+t.toString(n.stack):e+"[".concat(t.toString(n),"]")})),e.toString()}},{key:"stringify",value:function(e){var t=[];try{return JSON.stringify(e instanceof Error?this.toString(e):e,function(e,n){if(n&&n instanceof Object){if(t.includes(n))return"<recursive>";t.push(n)}return n},2)}catch(e){return"[object invalid JSON.stringify]"}}},{key:"replaceArgument",value:function(e,t,n){return t.substring(0,n)+this.toString(e)+t.substring(n+2)}},{key:"toString",value:function(e){if("string"==typeof e)return e;if("boolean"==typeof e)return e?"true":"false";if("number"==typeof e)return e.toString();var t="";if(e)if("function"==typeof e)t=e.toString();else if(e instanceof Object)try{t=e.toString()}catch(e){t="[object invalid toString()]"}return t}}])}(),D=function(){return o()(function e(){t()(this,e),s()(this,"_appenders",[])},[{key:"value",get:function(){return this._appenders}},{key:"add",value:function(e){this._appenders.push(e)}},{key:"remove",value:function(e){this._appenders=this._appenders.reduce(function(t,n){return n!==e&&t.push(n),t},[])}}])}(),F=function(){return o()(function e(){t()(this,e)},null,[{key:"sendLocalCandidates",get:function(){return this._sendLocalCandidates}},{key:"sendLogs",get:function(){return this._sendLogs}},{key:"sendMetrics",get:function(){return this._sendMetrics}},{key:"logToConsole",get:function(){return this._logToConsole}},{key:"applyFeatures",value:function(){try{var e={sendLocalCandidates:!1,sendLogs:"Off",sendMetrics:"Essential",logToConsole:"Off"};this._sendLocalCandidates=!("sendLocalCandidates"in e)||e.sendLocalCandidates,this._sendLogs="sendLogs"in e?e.sendLogs:"All",this._sendMetrics="sendMetrics"in e?e.sendMetrics:"All",this._logToConsole="logToConsole"in e?e.logToConsole:"All"}catch(e){this._sendLocalCandidates=!0,this._sendLogs="All",this._sendMetrics="All",this._logToConsole="All"}}}])}();s()(F,"_sendLocalCandidates",void 0),s()(F,"_sendLogs",void 0),s()(F,"_sendMetrics",void 0),s()(F,"_logToConsole",void 0),F.applyFeatures();var I=function(){return o()(function e(){t()(this,e)},null,[{key:"defaultLoggingLevel",get:function(){return R[F.sendLogs]}},{key:"defaultConsoleLoggingLevel",get:function(){return R[F.logToConsole]}},{key:"defaultTelemetryLoggingLevel",get:function(){return R.Info}}])}(),j=function(){return o()(function e(){t()(this,e),s()(this,"_threshold",I.defaultLoggingLevel)},[{key:"value",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){this._threshold=e}}])}(),M=function(){return o()(function e(n){t()(this,e),s()(this,"_threshold",void 0),this._threshold=n},[{key:"log",value:function(e,t,n,r){if(!(e<this._threshold)){var i="".concat(r.toISOString()," [").concat(n,"] [").concat(R[e],"] ").concat(t);e<R.Warn?console.log(i):console.error(i)}}}])}(),A=n(293),N=n.n(A),G=function(){function e(){throw t()(this,e),new Error("Numbers is a static class that may not be instantiated")}return o()(e,null,[{key:"countNumberLength",value:function(t){var n=0,r=t;return r<0&&(r*=-1,n++),e.countDigitsBeforeDecimal(r)+n+(r!==Math.floor(r)?e.countDigitsAfterDecimal(r)+1:0)}},{key:"fixRounding",value:function(e,t){var n=Math.pow(10,t);return Math.round(e*n)/n}},{key:"countDigitsBeforeDecimal",value:function(e){for(var t=1,n=e;n>=10;)n/=10,t++;return t}},{key:"countDigitsAfterDecimal",value:function(t){for(var n=t,r=Math.floor(t),i=0;r!==n&&i<15;)i++,r=e.fixRounding(n,i);return i}}])}(),V=function(){return o()(function e(){t()(this,e)},null,[{key:"sdkVersion",get:function(){try{return"2026-07-08T19:42:41.636Z (2025.2.4-beta.619)"}catch(e){return this._defaultVersion}}}])}();s()(V,"_defaultVersion",(new Date).toISOString());var U=n(981).A;function B(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return z(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,f={p:0,n:0,v:e,a:h,f:h.bind(e,4),d:function(t,n){return o=t,s=0,u=e,f.n=n,a}};function h(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],h=f.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=h&&((i=n<2&&h<o[1])?(s=0,f.v=r,f.n=o[1]):h<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,f.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&h(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(f.n=-1),h(s,u)):f.n=u:f.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=f.n<0)?u:n.call(r,f))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(z(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,z(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,z(d,"constructor",c),z(c,"constructor",u),u.displayName="GeneratorFunction",z(c,i,"GeneratorFunction"),z(d),z(d,i,"Generator"),z(d,r,function(){return this}),z(d,"toString",function(){return"[object Generator]"}),(B=function(){return{w:o,m:f}})()}function z(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}z=function(e,t,n,r){function o(t,n){z(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},z(e,t,n,r)}var H=function(){return o()(function e(n){var r=this;t()(this,e),s()(this,"_telemetryConfiguration",void 0),s()(this,"_logs",[]),s()(this,"_isSending",!1),s()(this,"_domain",""),this._telemetryConfiguration=n,this.getLocationHostnameFromGlobalScope().then(function(e){r._domain=e})},[{key:"push",value:function(e,t,n,r){var i=(r.valueOf()-this._telemetryConfiguration.pageLoadTime)/1e3,o={timestamp:r.toISOString(),tenancy:this._telemetryConfiguration.tenancy,level:R[e],category:n,message:t,sessionId:this._telemetryConfiguration.sessionId,version:V.sdkVersion,environment:this._telemetryConfiguration.environment,fullQualifiedName:this._domain,runtime:i};e<R.Error?this._logs.push(o):this._logs.unshift(o),this.sendLogsIfAble()}},{key:"getLocationHostnameFromGlobalScope",value:function(){return new U(function(e){var t=O.subscribe(function(n){n&&(e(n.locationHostname),n.setTimeout(function(){return t.dispose()},0))})})}},{key:"sendLogs",value:(n=N()(B().m(function e(t){var n;return B().w(function(e){for(;;)switch(e.n){case 0:return(n=new O.value.FormData).append("jsonBody",JSON.stringify({records:t})),e.n=1,O.value.fetch(this._telemetryConfiguration.url,{method:"POST",body:n});case 1:return e.a(2,e.v)}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"sendLogsIfAble",value:(e=N()(B().m(function e(){var t,n,r,i,o,a=this;return B().w(function(e){for(;;)switch(e.n){case 0:if(!(this._logs.length<=0||this._isSending)&&O.value){e.n=1;break}return e.a(2);case 1:for(t=0,n=0,this._isSending=!0,r=function(e){return"number"==typeof e?G.countNumberLength(e):e.length},i=function(e){return Object.values(e).reduce(function(e,t){return e+(t?r(t):0)},0)};this._logs.length>t&&i(this._logs[t])+n<8192;)n+=i(this._logs[t]),t++;return t||(this._logs[t].message=this._logs[t].message.substring(0,i(this._logs[t])+(8192-i(this._logs[t]))),t=1),o=this._logs.slice(0,t),this._logs=this._logs.slice(t),e.a(2,this.sendLogs(o).then(function(e){return a._isSending=!1,a.sendLogsIfAble(),e}).catch(function(){a._isSending=!1,a.sendLogsIfAble()}))}},e,this)})),function(){return e.apply(this,arguments)})}]);var e,n}(),W=function(){return o()(function e(n){t()(this,e),s()(this,"_telemetryService",void 0),s()(this,"_tenancy",void 0),s()(this,"_sessionId",void 0),s()(this,"_threshold",void 0),this._tenancy=n.tenancy,this._sessionId=n.sessionId,this._threshold=n.threshold,this._telemetryService=new H(n)},[{key:"log",value:function(e,t,n,r){e<this._threshold||this._telemetryService.push(e,t,n,r)}}])}(),J=function(){return o()(function e(){t()(this,e),s()(this,"_url","https://telemetry.phenixrts.com/telemetry/logs"),s()(this,"_tenancy","-"),s()(this,"_sessionId","-"),s()(this,"_environment","-"),s()(this,"_pageLoadTime",0),s()(this,"_threshold",I.defaultTelemetryLoggingLevel)},[{key:"url",get:function(){return this._url},set:function(e){var t=new O.value.URL(e);t.pathname=t.pathname+"/logs",this._url=t.toString()}},{key:"environment",get:function(){return this._environment},set:function(e){this._environment=e}},{key:"tenancy",get:function(){return this._tenancy},set:function(e){this._tenancy=e}},{key:"sessionId",get:function(){return this._sessionId},set:function(e){this._sessionId=e}},{key:"pageLoadTime",get:function(){return this._pageLoadTime},set:function(e){this._pageLoadTime=e}},{key:"threshold",get:function(){return this._threshold},set:function(e){this._threshold=e}}])}(),q=function(){return o()(function e(){t()(this,e)},null,[{key:"defaultTelemetryLevel",get:function(){return K[F.sendMetrics]}}])}(),K=function(e){return e[e.Off=100]="Off",e[e.Essential=10]="Essential",e[e.All=-1]="All",e}({}),Q=function(){return o()(function e(){t()(this,e),s()(this,"_url","https://telemetry.phenixrts.com/telemetry/metrics"),s()(this,"_tenancy","-"),s()(this,"_sessionId","-"),s()(this,"_environment","-"),s()(this,"_threshold",q.defaultTelemetryLevel)},[{key:"url",get:function(){return this._url},set:function(e){var t=new O.value.URL(e);t.pathname=t.pathname+"/metrics",this._url=t.toString()}},{key:"environment",get:function(){return this._environment},set:function(e){this._environment=e}},{key:"tenancy",get:function(){return this._tenancy},set:function(e){this._tenancy=e}},{key:"sessionId",get:function(){return this._sessionId},set:function(e){this._sessionId=e}},{key:"threshold",get:function(){return this._threshold},set:function(e){this._threshold=e}}])}(),$=function(e){throw new Error("Unexpected value [".concat(e,"]. This should never be reached"))},Z=function(){return o()(function e(){t()(this,e)},null,[{key:"convertTelemetryLevelToTelemetryLevelType",value:function(e){switch(e){case K.Off:return"Off";case K.Essential:return"Essential";case K.All:return"All";default:$(e)}}},{key:"convertTelemetryLevelTypeToTelemetryLevel",value:function(e){switch(e){case"Off":return K.Off;case"Essential":return K.Essential;case"All":return K.All;default:$(e)}}}])}(),X=function(){return o()(function e(){t()(this,e)},null,[{key:"convertLoggingLevelToLoggingLevelType",value:function(e){switch(e){case R.Off:return"Off";case R.Trace:return"Trace";case R.Debug:return"Debug";case R.Info:return"Info";case R.Warn:return"Warn";case R.Error:return"Error";case R.Fatal:return"Fatal";case R.All:return"All";default:$(e)}}},{key:"convertLoggingLevelTypeToLoggingLevel",value:function(e){switch(e){case"Off":return R.Off;case"Trace":return R.Trace;case"Debug":return R.Debug;case"Info":return R.Info;case"Warn":return R.Warn;case"Error":return R.Error;case"Fatal":return R.Fatal;case"All":return R.All;default:$(e)}}}])}(),Y=function(){function e(){t()(this,e)}return o()(e,null,[{key:"getStringValue",value:function(t){return e.defaultStringValue[t]}},{key:"getBooleanValue",value:function(t){return e.defaultBooleanValue[t]}},{key:"defaultStringValue",get:function(){return{"phenix-metrics-level":Z.convertTelemetryLevelToTelemetryLevelType(q.defaultTelemetryLevel),"phenix-logging-level":X.convertLoggingLevelToLoggingLevelType(I.defaultLoggingLevel),"phenix-console-logging-level":X.convertLoggingLevelToLoggingLevelType(I.defaultConsoleLoggingLevel),"phenix-telemetry-logging-level":X.convertLoggingLevelToLoggingLevelType(I.defaultTelemetryLoggingLevel),"phenix-channel-token":"","phenix-uri":"","phenix-base-uri":""}}},{key:"defaultBooleanValue",get:function(){return{"phenix-automatically-retry-on-failure":!0,"phenix-automatically-reconnect-peer-connection":!0,"phenix-force-garbage-collection-on-restart":!0,"phenix-skip-garbage-collection-on-mobile-devices":!0}}}])}(),ee=function(){function e(){throw t()(this,e),new Error("LoggerFactory is a static class that may not be instantiated")}return o()(e,null,[{key:"telemetryConfiguration",get:function(){return e._telemetryConfiguration}},{key:"getLogger",value:function(t){return"string"!=typeof t&&(t="SDK"),e._loggers[t]||(e._loggers[t]=new L(t,this._appenders,this._threshold))}},{key:"applyLoggerConfigFromParameterConfiguration",value:function(){e.applyLoggingLevel(),e.applyAppenderLoggingLevel("console",e.applyConsoleLogger.bind(this)),e.applyAppenderLoggingLevel("telemetry",e.applyTelemetryLogger.bind(this))}},{key:"applyLoggingLevel",value:function(){var e=Y.getStringValue("phenix-logging-level");R[e]&&this._threshold.setThreshold(R[e])}},{key:"applyAppenderLoggingLevel",value:function(e,t){var n=Y.getStringValue("phenix-".concat(e,"-logging-level"));"Off"!==n&&t(R[n])}},{key:"applyConsoleLogger",value:function(e){this._appenders.add(new M(e||I.defaultConsoleLoggingLevel))}},{key:"applyTelemetryLogger",value:function(e){this._telemetryConfiguration.threshold=e||I.defaultTelemetryLoggingLevel,this._appenders.add(new W(this._telemetryConfiguration))}}])}();s()(ee,"_loggers",{}),s()(ee,"_appenders",new D),s()(ee,"_threshold",new j),s()(ee,"_telemetryConfiguration",new J),ee.applyLoggerConfigFromParameterConfiguration();var te=function(){return o()(function e(){throw t()(this,e),new Error("Strings is a static class that may not be instantiated")},null,[{key:"random",value:function(e){var t=Math.ceil(e/13);return new Array(t).fill(function(){return Math.random().toString(16).substring(2,15)}).reduce(function(e,t){return e+t()},"").substring(0,e)}}])}(),ne=function(){return o()(function e(n){var r,i;t()(this,e),s()(this,"_applicationId",void 0),s()(this,"_token",void 0),this._applicationId=(null==n?void 0:n.applicationId)||"",this._token={uri:null!=n&&null!==(r=n.token)&&void 0!==r&&r.uri?new O.value.URL(n.token.uri):null,capabilities:(null==n||null===(i=n.token)||void 0===i?void 0:i.capabilities)||[]}},[{key:"uri",get:function(){return this._token.uri}},{key:"capabilities",get:function(){return this._token.capabilities}},{key:"tenancy",get:function(){return this._applicationId}}])}(),re=function(){function e(){t()(this,e)}return o()(e,null,[{key:"parseToken",value:function(t){if(!this.isEncodedEdgeTokenValid(t))return e._logger.error("Token is not valid [%s]",t),new ne(null);try{var n=atob(t.substr(7)),r=JSON.parse(n);return r.token=JSON.parse(r.token),new ne(r)}catch(t){return e._logger.error("Cannot parse token value",t),new ne(null)}}},{key:"isEncodedEdgeTokenValid",value:function(e){return!!e&&e.startsWith("DIGEST:")}}])}();s()(re,"_logger",ee.getLogger("EdgeAuthParser"));var ie=function(){return o()(function e(){t()(this,e),s()(this,"_list",[])},[{key:"add",value:function(e){this._list.push(e)}},{key:"dispose",value:function(){this._list.forEach(function(e){return e.dispose()}),this._list.length=0}},{key:"toString",value:function(){return"DisposableList[disposables=".concat(this._list.length,"]")}}])}(),oe="visibilitychange",ae=function(){return o()(function e(){t()(this,e),s()(this,"_disposables",new ie),s()(this,"_readOnlyIsForeground",void 0),s()(this,"_isForeground",void 0),s()(this,"_timeOfLastTabFocusChange",Date.now()),s()(this,"_lastBackgroundDuration",null),this._isForeground=new b(!0),this._readOnlyIsForeground=new C(this._isForeground),this.initialize()},[{key:"isForeground",get:function(){return this._readOnlyIsForeground}},{key:"getTimeSinceLastChange",value:function(){return Date.now()-this._timeOfLastTabFocusChange}},{key:"getLastBackgroundDuration",value:function(){return this._lastBackgroundDuration}},{key:"dispose",value:function(){this._disposables.dispose()}},{key:"initialize",value:function(){var e=this,t=null,n=function(){var n=!O.value.documentIsHidden;n?t&&(e._lastBackgroundDuration=Date.now()-t):(t=Date.now(),e._lastBackgroundDuration=null),e._isForeground.value=n},r=!1;O.value.addDocumentEventListener(oe,n,r),this._disposables.add(new g(function(){return O.value.removeDocumentEventListener(oe,n,r)}))}}])}(),se=n(981).A;function ue(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return ce(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,f={p:0,n:0,v:e,a:h,f:h.bind(e,4),d:function(t,n){return o=t,s=0,u=e,f.n=n,a}};function h(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],h=f.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=h&&((i=n<2&&h<o[1])?(s=0,f.v=r,f.n=o[1]):h<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,f.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&h(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(f.n=-1),h(s,u)):f.n=u:f.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=f.n<0)?u:n.call(r,f))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(ce(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,ce(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,ce(d,"constructor",c),ce(c,"constructor",u),u.displayName="GeneratorFunction",ce(c,i,"GeneratorFunction"),ce(d),ce(d,i,"Generator"),ce(d,r,function(){return this}),ce(d,"toString",function(){return"[object Generator]"}),(ue=function(){return{w:o,m:f}})()}function ce(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}ce=function(e,t,n,r){function o(t,n){ce(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},ce(e,t,n,r)}var le=function(){return o()(function e(n){t()(this,e),s()(this,"_logger",ee.getLogger("VanillaPeerConnection")),s()(this,"_peerConnection",void 0),E.webkitRTCPeerConnectionEnabled?this._peerConnection=new webkitRTCPeerConnection(n):this._peerConnection=new O.value.RTCPeerConnection(n)},[{key:"native",get:function(){return this._peerConnection}},{key:"currentLocalDescription",get:function(){var e;return(null===(e=this._peerConnection)||void 0===e?void 0:e.currentLocalDescription)||null}},{key:"currentRemoteDescription",get:function(){var e;return(null===(e=this._peerConnection)||void 0===e?void 0:e.currentRemoteDescription)||null}},{key:"connectionState",get:function(){var e;return(null===(e=this._peerConnection)||void 0===e?void 0:e.connectionState)||null}},{key:"iceConnectionState",get:function(){var e;return(null===(e=this._peerConnection)||void 0===e?void 0:e.iceConnectionState)||null}},{key:"supportsGetConfiguration",get:function(){var e;return"function"==typeof(null===(e=this._peerConnection)||void 0===e?void 0:e.getConfiguration)}},{key:"supportsSetConfiguration",get:function(){var e;return"function"==typeof(null===(e=this._peerConnection)||void 0===e?void 0:e.setConfiguration)}},{key:"supportsGetTransceivers",get:function(){var e;return!E.getTransceiversDisabled&&"function"==typeof(null===(e=this._peerConnection)||void 0===e?void 0:e.getTransceivers)}},{key:"supportsAddTransceiver",get:function(){var e;return!E.addTranceiverDisabled&&"function"==typeof(null===(e=this._peerConnection)||void 0===e?void 0:e.addTransceiver)}},{key:"createOffer",value:(i=N()(ue().m(function e(t){var n=this;return ue().w(function(e){for(;;)switch(e.n){case 0:if(this._peerConnection){e.n=1;break}throw new Error("No PeerConnection initialized");case 1:if(!E.promiseBasedPCMethodsDisabled){e.n=2;break}return e.a(2,new se(function(e,r){return n._peerConnection.createOffer(e,r,t)}));case 2:return e.a(2,this._peerConnection.createOffer(t))}},e,this)})),function(e){return i.apply(this,arguments)})},{key:"createAnswer",value:(r=N()(ue().m(function e(t){var n=this;return ue().w(function(e){for(;;)switch(e.n){case 0:if(this._peerConnection){e.n=1;break}throw new Error("No PeerConnection initialized");case 1:if(!E.promiseBasedPCMethodsDisabled){e.n=2;break}return e.a(2,new se(function(e,r){return n._peerConnection.createAnswer(e,r,t)}));case 2:return e.a(2,this._peerConnection.createAnswer(t))}},e,this)})),function(e){return r.apply(this,arguments)})},{key:"setLocalDescription",value:(n=N()(ue().m(function e(t){return ue().w(function(e){for(;;)switch(e.n){case 0:if(this._peerConnection){e.n=1;break}throw new Error("No PeerConnection initialized");case 1:return e.a(2,this._peerConnection.setLocalDescription(E.promiseBasedPCMethodsDisabled?new RTCSessionDescription(t):t))}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"setRemoteDescription",value:(e=N()(ue().m(function e(t){var n;return ue().w(function(e){for(;;)switch(e.n){case 0:if(this._peerConnection){e.n=1;break}throw new Error("No PeerConnection initialized");case 1:return(null===(n=t.sdp)||void 0===n?void 0:n.match(/a=crypto:/i))&&this._logger.warn("SDP a=crypto is not supported"),e.a(2,this._peerConnection.setRemoteDescription(E.promiseBasedPCMethodsDisabled?new RTCSessionDescription(t):t))}},e,this)})),function(t){return e.apply(this,arguments)})},{key:"getSenders",value:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.getSenders()}},{key:"getReceivers",value:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.getReceivers()}},{key:"getStats",value:function(e){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.getStats(e)}},{key:"getStatsLegacy",value:function(){var e=this;if(!this._peerConnection)throw new Error("No PeerConnection initialized");return new se(function(t){e._peerConnection.getStats(t)})}},{key:"addEventListener",value:function(e,t,n){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.addEventListener(e,t,n)}},{key:"removeEventListener",value:function(e,t,n){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.removeEventListener(e,t,n)}},{key:"getTransceivers",value:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.getTransceivers()}},{key:"addTransceiver",value:function(e,t){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.addTransceiver(e,t)}},{key:"addStream",value:function(e){var t=this;e.getTracks().forEach(function(e){if(!t._peerConnection)throw new Error("No PeerConnection initialized");t._peerConnection.addTrack(e)})}},{key:"getConfiguration",value:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.getConfiguration()}},{key:"setConfiguration",value:function(e){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.setConfiguration(e)}},{key:"ontrack",get:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.ontrack},set:function(e){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.ontrack=e}},{key:"onicecandidate",get:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.onicecandidate},set:function(e){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.onicecandidate=e}},{key:"onconnectionstatechange",get:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.onconnectionstatechange},set:function(e){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.onconnectionstatechange=e}},{key:"oniceconnectionstatechange",get:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.oniceconnectionstatechange},set:function(e){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.oniceconnectionstatechange=e}},{key:"close",value:function(){var e;null===(e=this._peerConnection)||void 0===e||e.close()}},{key:"dispose",value:function(){this._peerConnection=null}}]);var e,n,r,i}(),de=n(981).A;function fe(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return he(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,f={p:0,n:0,v:e,a:h,f:h.bind(e,4),d:function(t,n){return o=t,s=0,u=e,f.n=n,a}};function h(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],h=f.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=h&&((i=n<2&&h<o[1])?(s=0,f.v=r,f.n=o[1]):h<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,f.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&h(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(f.n=-1),h(s,u)):f.n=u:f.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=f.n<0)?u:n.call(r,f))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(he(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,he(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,he(d,"constructor",c),he(c,"constructor",u),u.displayName="GeneratorFunction",he(c,i,"GeneratorFunction"),he(d),he(d,i,"Generator"),he(d,r,function(){return this}),he(d,"toString",function(){return"[object Generator]"}),(fe=function(){return{w:o,m:f}})()}function he(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}he=function(e,t,n,r){function o(t,n){he(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},he(e,t,n,r)}var pe=function(){return o()(function e(){t()(this,e)},[{key:"createPeerConnection",value:(e=N()(fe().m(function e(t){return fe().w(function(e){for(;;)if(0===e.n)return e.a(2,new de(function(e){var n=O.subscribe(function(r){r&&(e(new le(t)),n.dispose())})}))},e)})),function(t){return e.apply(this,arguments)})}]);var e}();function ve(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return ge(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,f={p:0,n:0,v:e,a:h,f:h.bind(e,4),d:function(t,n){return o=t,s=0,u=e,f.n=n,a}};function h(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],h=f.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=h&&((i=n<2&&h<o[1])?(s=0,f.v=r,f.n=o[1]):h<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,f.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&h(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(f.n=-1),h(s,u)):f.n=u:f.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=f.n<0)?u:n.call(r,f))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(ge(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,ge(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,ge(d,"constructor",c),ge(c,"constructor",u),u.displayName="GeneratorFunction",ge(c,i,"GeneratorFunction"),ge(d),ge(d,i,"Generator"),ge(d,r,function(){return this}),ge(d,"toString",function(){return"[object Generator]"}),(ve=function(){return{w:o,m:f}})()}function ge(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}ge=function(e,t,n,r){function o(t,n){ge(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},ge(e,t,n,r)}var ye=function(e){return e[e.Disabled=0]="Disabled",e[e.Enabled=1]="Enabled",e}({}),me=["audio","video"],_e=function(){function e(){throw t()(this,e),new Error("PeerConnectionService is a static class that may not be instantiated")}return o()(e,null,[{key:"peerConnectionFactory",get:function(){return e._peerConnectionFactory}},{key:"initiateInitialPrecaching",value:function(){E.isPrecachingEnabled&&e.precacheCreatePeerConnectionOffer().catch(function(t){return e._logger.error("Failed to pre-cache peer connection offer",t)})}},{key:"precacheCreatePeerConnectionOffer",value:(r=N()(ve().m(function t(){return ve().w(function(t){for(;;)if(0===t.n)return t.a(2,e._cached={direction:"recvonly",peerConnection:e.createPeerConnectionOffer().catch(function(t){throw e._cached=null,t})})},t)})),function(){return r.apply(this,arguments)})},{key:"createPeerConnectionOffer",value:(n=N()(ve().m(function t(){var n,r,i,o,a,s=arguments;return ve().w(function(t){for(;;)switch(t.n){case 0:if(n=s.length>0&&void 0!==s[0]?s[0]:"recvonly",r=s.length>1&&void 0!==s[1]?s[1]:me,i=s.length>2&&void 0!==s[2]?s[2]:ye.Disabled,!e._cached||e._cached.direction!==n||i!==ye.Disabled||!this.isTracksKindsEquivalentToDefault(r)){t.n=1;break}return o=e._cached.peerConnection,e._cached=null,t.a(2,o);case 1:return a=E.isEncodedInsertableStreamsSupported?{encodedInsertableStreams:i===ye.Enabled}:void 0,t.a(2,e._peerConnectionFactory.value.createPeerConnection(a).then(function(){var e=N()(ve().m(function e(t){var i,o,a,s,u,c,l,d,f,h;return ve().w(function(e){for(;;)switch(e.n){case 0:if(i=t.supportsAddTransceiver,o=[],a=[],!i){e.n=2;break}return r.forEach(function(e){"audio"!==e?"video"!==e||a.push(t.addTransceiver(e,{direction:n})):o.push(t.addTransceiver(e,{direction:n}))}),u=o,c=a,l=t,e.n=1,t.createOffer(void 0);case 1:return d=e.v,e.a(2,{audioTransceivers:u,videoTransceivers:c,peerConnection:l,localOffer:d});case 2:return s="recvonly"===n?{offerToReceiveAudio:!0,offerToReceiveVideo:!0}:{},f=t,e.n=3,t.createOffer(s);case 3:return h=e.v,e.a(2,{peerConnection:f,localOffer:h})}},e)}));return function(t){return e.apply(this,arguments)}}()))}},t,this)})),function(){return n.apply(this,arguments)})},{key:"isTracksKindsEquivalentToDefault",value:function(e){if(e.length!==me.length)return!1;var t=function(e){return e.reduce(function(e,t){return e[t]=(e[t]||0)+1,e},{audio:0,video:0})},n=t(e),r=t(me);return n.audio===r.audio&&n.video===r.video}}]);var n,r}();s()(_e,"_logger",ee.getLogger("PeerConnectionService")),s()(_e,"_peerConnectionFactory",new b(new pe)),s()(_e,"_cached",void 0),_e.initiateInitialPrecaching();var be=function(){return o()(function e(){t()(this,e)},null,[{key:"getTelemetryUrl",value:function(e){try{var t=new O.value.URL(e),n=t.hostname.split(".");switch(t.protocol){case"ws:":t.protocol="http:";break;case"wss:":t.protocol="https:"}return 2===n.length||3===n.length&&n[n.length-2].length<=2&&n[n.length-1].length<=3?n.unshift("telemetry"):n[0].startsWith("stg-")||n[0].endsWith("-stg")||n[0].includes("-stg-")||"stg"===n[0]?n[0]="telemetry-stg":n[0].startsWith("local")||n[0].endsWith("-local")||(n[0]="telemetry"),t.hostname=n.join("."),"".concat(t.origin,"/telemetry")}catch(t){return e}}}])}(),Ce=function(){return o()(function e(){t()(this,e)},null,[{key:"getEnvironmentFromUrl",value:function(e){try{return new O.value.URL(e).origin}catch(e){return""}}}])}(),we=function(){return o()(function e(){t()(this,e)},null,[{key:"discoveryParameters",get:function(){return this._discoveryParameters}},{key:"applyParameters",value:function(){try{var e={discovery:{intentions:"contribution"}};this._discoveryParameters="discovery"in e?e.discovery:{intentions:""}}catch(e){this._discoveryParameters={intentions:""}}}}])}();s()(we,"_discoveryParameters",void 0),we.applyParameters();var ke=function(){function e(){throw t()(this,e),new Error("DiscoveryUri is a static class that may not be instantiated")}return o()(e,null,[{key:"uri",get:function(){return e._discoveryUri}},{key:"buildDiscoveryUrl",value:function(e){var t=new O.value.URL(e.toString()),n=V.sdkVersion,r=we.discoveryParameters.intentions;return t.searchParams.set("version",n),t.searchParams.set("intentions",r),t.searchParams.set("_","".concat(Date.now())),"/"===t.pathname&&(t.pathname="/pcast/endPoints"),t.toString()}}])}();s()(ke,"_discoveryUri",new b("https://pcast.phenixrts.com/pcast/endPoints"));var Se=n(738),Te=n.n(Se),xe=function(){return o()(function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2e3,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:3e5;t()(this,e),s()(this,"_backoffIntervalInMillisecond",void 0),s()(this,"_minBackoffIntervalInMillisecond",void 0),s()(this,"_maxBackoffIntervalInMillisecond",void 0),this._backoffIntervalInMillisecond=n,this._minBackoffIntervalInMillisecond=r,this._maxBackoffIntervalInMillisecond=i},[{key:"getExponentialBackoffIntervalByFailureCount",value:function(e){var t=this._backoffIntervalInMillisecond/1e3,n=.5+.5*Math.random(),r=Math.pow(t,e-2),i=Math.floor(r)*n,o=Math.ceil(Math.max(1e3*i,this._minBackoffIntervalInMillisecond));return Math.min(o,this._maxBackoffIntervalInMillisecond)}}])}(),Oe=function(e){return e[e.TimeToFirstFrame=0]="TimeToFirstFrame",e[e.ChannelCreationTimeToFirstFrame=1]="ChannelCreationTimeToFirstFrame",e[e.Stalled=2]="Stalled",e[e.Buffering=3]="Buffering",e[e.SetupCompleted=4]="SetupCompleted",e[e.SetupFailed=5]="SetupFailed",e[e.RoundTripTime=6]="RoundTripTime",e[e.DownlinkThroughputCapacity=7]="DownlinkThroughputCapacity",e[e.NetworkType=8]="NetworkType",e[e.ResolutionChanged=9]="ResolutionChanged",e[e.ApplicationForeground=10]="ApplicationForeground",e[e.ApplicationBackground=11]="ApplicationBackground",e}(Oe||{}),Pe=Oe,Ee=function(){return o()(function e(n){t()(this,e),s()(this,"_metrics",void 0),this._metrics=n},[{key:"getName",value:function(){return Pe[this._metrics]}},{key:"getTelemetryLevel",value:function(){switch(this._metrics){case Pe.TimeToFirstFrame:case Pe.ChannelCreationTimeToFirstFrame:return K.Essential;case Pe.Stalled:case Pe.Buffering:case Pe.SetupCompleted:case Pe.SetupFailed:case Pe.RoundTripTime:case Pe.DownlinkThroughputCapacity:case Pe.NetworkType:case Pe.ResolutionChanged:case Pe.ApplicationForeground:case Pe.ApplicationBackground:return K.All;default:$(this._metrics)}}}])}(),Re=n(981).A;function Le(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return De(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,f={p:0,n:0,v:e,a:h,f:h.bind(e,4),d:function(t,n){return o=t,s=0,u=e,f.n=n,a}};function h(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],h=f.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=h&&((i=n<2&&h<o[1])?(s=0,f.v=r,f.n=o[1]):h<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,f.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&h(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(f.n=-1),h(s,u)):f.n=u:f.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=f.n<0)?u:n.call(r,f))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(De(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,De(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,De(d,"constructor",c),De(c,"constructor",u),u.displayName="GeneratorFunction",De(c,i,"GeneratorFunction"),De(d),De(d,i,"Generator"),De(d,r,function(){return this}),De(d,"toString",function(){return"[object Generator]"}),(Le=function(){return{w:o,m:f}})()}function De(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}De=function(e,t,n,r){function o(t,n){De(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},De(e,t,n,r)}var Fe,Ie,je=function(){return o()(function e(n){var r=this;t()(this,e),s()(this,"_logger",ee.getLogger("MetricsService")),s()(this,"_metricsConfiguration",void 0),s()(this,"_exponentialBackoff",void 0),s()(this,"_metrics",[]),s()(this,"_isSending",!1),s()(this,"_failureCount",0),s()(this,"_domain",""),this._metricsConfiguration=n,this._exponentialBackoff=new xe,this.getLocationHostnameFromGlobalScope().then(function(e){r._domain=e})},[{key:"metricsConfiguration",get:function(){return this._metricsConfiguration}},{key:"push",value:function(e){var t=e.streamId,n=e.value,r=e.previousValue,i=e.runtime,o=e.resource,a=e.kind,s=new Ee(e.metricType);if(!(this._metricsConfiguration.threshold>s.getTelemetryLevel())){var u={timestamp:(new Date).toISOString(),tenancy:this._metricsConfiguration.tenancy,sessionId:this._metricsConfiguration.sessionId,streamId:t,metric:s.getName(),value:n,previousValue:r,fullQualifiedName:this._domain,environment:this._metricsConfiguration.environment,version:V.sdkVersion,runtime:i,resource:o,kind:a};this._metrics.push(u),this.sendMetricsIfAble()}}},{key:"getLocationHostnameFromGlobalScope",value:function(){return new Re(function(e){var t=O.subscribe(function(n){n&&(e(n.locationHostname),n.setTimeout(function(){return t.dispose()},0))})})}},{key:"sendMetrics",value:(n=N()(Le().m(function e(t){var n;return Le().w(function(e){for(;;)switch(e.n){case 0:return(n=new O.value.FormData).append("jsonBody",JSON.stringify({records:t})),e.n=1,O.value.fetch(this._metricsConfiguration.url,{method:"POST",body:n});case 1:return e.a(2,e.v)}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"sendMetricsIfAble",value:(e=N()(Le().m(function e(){var t,n=this;return Le().w(function(e){for(;;)switch(e.n){case 0:if(!(this._metrics.length<=0||this._isSending)&&O.value){e.n=1;break}return e.a(2);case 1:return this._isSending=!0,t=this._metrics.slice(0,1024),this._metrics=this._metrics.slice(1024),e.a(2,this.sendMetrics(t).then(function(e){if(n.isResponseStatusCodeRetryable(e)){if(n._metrics.length<=2048)return n._failureCount++,void O.value.setTimeout(function(){n._metrics=[].concat(c()(t),c()(n._metrics)),n._isSending=!1,n.sendMetricsIfAble()},n._exponentialBackoff.getExponentialBackoffIntervalByFailureCount(n._failureCount));n._logger.error("Too many cached metric records [%s], dropping [%s] records",n._metrics.length,t.length)}return n._isSending=!1,n._failureCount=0,n.sendMetricsIfAble(),e}).catch(function(){n._isSending=!1,n.sendMetricsIfAble()}))}},e,this)})),function(){return e.apply(this,arguments)})},{key:"isResponseStatusCodeRetryable",value:function(e){var t=e.status;return/^5\d{2}$/.test(t.toString())}}]);var e,n}(),Me=function(){function e(){throw t()(this,e),new Error("MetricsFactory is a static class that may not be instantiated")}return o()(e,null,[{key:"getMetricsService",value:function(t){if("string"!=typeof t)throw new Error("url must be a string instead received [".concat(Te()(t),"]"));var n=e._metricsServices[t];if(n)return n;var r=new Q;return r.sessionId=Ne.clientSessionId,r.tenancy=Ne.tenancy.value,r.url=be.getTelemetryUrl(t),r.environment=Ce.getEnvironmentFromUrl(t),r.threshold=Z.convertTelemetryLevelTypeToTelemetryLevel(Ne.telemetryLevel),e._metricsServices[t]=new je(r)}},{key:"setTelemetryLevel",value:function(t){var n=Object.values(e._metricsServices);n&&n.length&&n.forEach(function(e){e.metricsConfiguration.threshold=t})}}])}();s()(Me,"_metricsServices",{});var Ae=(null===(Fe=k.getInstance().value)||void 0===Fe?void 0:Fe.pageLoadTime)||Date.now(),Ne=function(){function e(){throw t()(this,e),new Error("SDK is a static class that may not be instantiated")}return o()(e,null,[{key:"pageLoadTime",get:function(){return Ae}},{key:"sendLocalCandidates",get:function(){return this._sendLocalCandidates}},{key:"tenancy",get:function(){return this._tenancy}},{key:"clientSessionId",get:function(){return e._clientSessionId}},{key:"loadedTimestamp",get:function(){return e._loadedTimestamp}},{key:"initialized",get:function(){return e._readOnlyInitialized}},{key:"discoveryUri",get:function(){return e._readOnlyDiscoveryUri}},{key:"peerConnectionFactory",get:function(){return e._readOnlyPeerConnectionFactory}},{key:"automaticRetryOnFailure",get:function(){return e._automaticallyRetryOnFailure}},{key:"automaticallyReconnectPeerConnection",get:function(){return e._automaticallyReconnectPeerConnection}},{key:"automaticallyPlayMediaStream",get:function(){return e._automaticallyPlayMediaStream}},{key:"automaticallyMuteVideoOnPlayFailure",get:function(){return e._automaticallyMuteVideoOnPlayFailure}},{key:"forceGarbageCollectionOnRestart",get:function(){return this._forceGarbageCollectionOnRestart}},{key:"skipGarbageCollectionOnMobileDevices",get:function(){return this._skipGarbageCollectionOnMobileDevices}},{key:"webPlayerLoader",get:function(){return this._webPlayerLoader}},{key:"shakaPlayerLoader",get:function(){return this._shakaPlayerLoader}},{key:"hlsJsLoader",get:function(){return this._hlsJsLoader}},{key:"metricsService",get:function(){return e._metricsService}},{key:"applicationActivityMonitor",get:function(){return this._applicationActivityMonitor}},{key:"telemetryUrl",get:function(){return this._telemetryUrl}},{key:"maximalNumberOfPeerConnectionReconnectAttempts",get:function(){return this._maximalNumberOfPeerConnectionReconnectAttempts},set:function(e){this._maximalNumberOfPeerConnectionReconnectAttempts=e}},{key:"loggingLevel",get:function(){return X.convertLoggingLevelToLoggingLevelType(this._logger.threshold.value)}},{key:"telemetryLevel",get:function(){return Z.convertTelemetryLevelToTelemetryLevelType(e._telemetryLevel.value)}},{key:"browserDetector",get:function(){return P}},{key:"applyTelemetryConfiguration",value:function(){var t=this,n=ee.telemetryConfiguration;n.sessionId=e.clientSessionId,n.pageLoadTime=e.pageLoadTime,e._environment.subscribe(function(e){n.environment=e}),e.telemetryUrl.subscribe(function(e){var r=t._logger.appenders.value.find(function(e){return e instanceof W});r&&(n.url=e,t._logger.appenders.remove(r),t._logger.appenders.add(new W(n)),t._logger.info("Telemetry URL was set to [%s]",n.url))}),e._tenancy.subscribe(function(e){var r=t._logger.appenders.value.find(function(e){return e instanceof W});r&&e&&(n.tenancy=e,t._logger.appenders.remove(r),t._logger.appenders.add(new W(n)),t._logger.info("Telemetry tenancy was set to [%s]",n.tenancy))})}},{key:"applyMetricsConfiguration",value:function(){e._metricsService=Me.getMetricsService(ke.uri.value),e._metricsConfiguration=e._metricsService.metricsConfiguration,e._metricsConfiguration.sessionId=e.clientSessionId,e._environment.subscribe(function(t){e._metricsConfiguration.environment=t}),e.telemetryUrl.subscribe(function(t){e._metricsConfiguration.url=t}),e._tenancy.subscribe(function(t){e._metricsConfiguration.tenancy=t});var t=Y.getStringValue("phenix-metrics-level");t&&Me.setTelemetryLevel(K[t]),e._telemetryLevel.subscribe(function(e){Me.setTelemetryLevel(e)})}},{key:"applyAutomaticallyRetryOnFailureFromParameterConfiguration",value:function(){this._automaticallyRetryOnFailure=Y.getBooleanValue("phenix-automatically-retry-on-failure"),this._logger.info("Automatically retry on failure is set to: [%s]",this._automaticallyRetryOnFailure)}},{key:"applyAutomaticallyReconnectPeerConnectionFromParameterConfiguration",value:function(){this._automaticallyReconnectPeerConnection=Y.getBooleanValue("phenix-automatically-reconnect-peer-connection"),this._logger.info("Automatically reconnect peer connection is set to: [%s]",this._automaticallyReconnectPeerConnection)}},{key:"applyForceGarbageCollectionOnRestartFromParameterConfiguration",value:function(){this._forceGarbageCollectionOnRestart=Y.getBooleanValue("phenix-force-garbage-collection-on-restart"),this._logger.info("Force garbage collection on restart is set to: [%s]",this._forceGarbageCollectionOnRestart)}},{key:"applySkipGarbageCollectionOnMobileDevicesFromParameterConfiguration",value:function(){this._skipGarbageCollectionOnMobileDevices=Y.getBooleanValue("phenix-skip-garbage-collection-on-mobile-devices"),this._logger.info("Skip garbage collection on mobile devices on restart is set to: [%s]",this._skipGarbageCollectionOnMobileDevices)}},{key:"applyDiscoveryUriDefaultFromParameterConfiguration",value:function(){e.discoveryUri.subscribe(function(t){e.telemetryUrl.value=e.getTelemetryUrl(t),e._environment.value=Ce.getEnvironmentFromUrl(t)});var t=Y.getStringValue("phenix-channel-token");if(t){var n=re.parseToken(t);return e._tenancy.value=n.tenancy,ke.uri.value=(n.uri||e.discoveryUri.value).toString(),void this._logger.info("Discovery URI set from configuration parameter to [%s]",e.discoveryUri.value)}var r=Y.getStringValue("phenix-uri");if(r)return ke.uri.value=r,void this._logger.info('Discovery URI set from "phenix-uri" configuration parameter tag to [%s]',e.discoveryUri.value);var i=Y.getStringValue("phenix-base-uri");if(i){var o=new(k.getInstance().value.URL)(i);return o.pathname="/pcast/endPoints",ke.uri.value=o.toString(),void this._logger.info('Discovery URI set from "phenix-base-uri" configuration parameter tag to [%s]',e.discoveryUri.value)}}},{key:"onLoad",value:function(t){t&&(this._initialized.value?this._logger.warn("SDK has already been loaded"):(t.addWindowEventListener("unload",function(){e.dispose()}),e.applyDiscoveryUriDefaultFromParameterConfiguration(),e.applyMetricsConfiguration(),e.applyTelemetryConfiguration(),this._applicationActivityMonitor=new ae,this._logger.info("Automatically retry on failure is set to: [%s]",this._automaticallyRetryOnFailure),this._logger.info("Automatically reconnect peer connection is set to: [%s]",this._automaticallyReconnectPeerConnection),this._logger.info("Force garbage collection on restart is set to: [%s]",this._forceGarbageCollectionOnRestart),this._logger.info("Skip garbage collection on mobile devices on restart is set to: [%s]",this._skipGarbageCollectionOnMobileDevices),this._initialized.value=!0))}},{key:"init",value:function(t){if(t){var n=t;if(n.globalScope&&k.setInstance(n.globalScope),t.discoveryUri&&(ke.uri.value=t.discoveryUri),t.peerConnectionFactory&&(_e.peerConnectionFactory.value=t.peerConnectionFactory),t.telemetryLevel&&K[t.telemetryLevel]&&(e._telemetryLevel.value=Z.convertTelemetryLevelTypeToTelemetryLevel(t.telemetryLevel)),t.loggingLevel&&R[t.loggingLevel]&&this._logger.threshold.setThreshold(X.convertLoggingLevelTypeToLoggingLevel(t.loggingLevel)),t.consoleLoggingLevel&&R[t.consoleLoggingLevel]){var r=this._logger.appenders.value.find(function(e){return e instanceof M});r&&this._logger.appenders.remove(r),"Off"!==t.consoleLoggingLevel&&this._logger.appenders.add(new M(X.convertLoggingLevelTypeToLoggingLevel(t.consoleLoggingLevel)))}"boolean"==typeof t.automaticallyPlayMediaStream&&(this._automaticallyPlayMediaStream=t.automaticallyPlayMediaStream),"boolean"==typeof t.automaticallyMuteVideoOnPlayFailure&&(this._automaticallyMuteVideoOnPlayFailure=t.automaticallyMuteVideoOnPlayFailure),t.webPlayerLoader&&(this._webPlayerLoader=t.webPlayerLoader),t.shakaPlayerLoader&&(this._shakaPlayerLoader=t.shakaPlayerLoader),t.hlsJsLoader&&(this._hlsJsLoader=t.hlsJsLoader)}}},{key:"dispose",value:function(){var t;e._initialized.value=!1,null===(t=this._applicationActivityMonitor)||void 0===t||t.dispose(),this._applicationActivityMonitor=null}},{key:"getTelemetryUrl",value:function(e){return be.getTelemetryUrl(e)}}])}();Ie=Ne,s()(Ne,"_automaticallyRetryOnFailure",Y.getBooleanValue("phenix-automatically-retry-on-failure")),s()(Ne,"_automaticallyReconnectPeerConnection",Y.getBooleanValue("phenix-automatically-reconnect-peer-connection")),s()(Ne,"_automaticallyPlayMediaStream",!0),s()(Ne,"_automaticallyMuteVideoOnPlayFailure",!0),s()(Ne,"_forceGarbageCollectionOnRestart",Y.getBooleanValue("phenix-force-garbage-collection-on-restart")),s()(Ne,"_skipGarbageCollectionOnMobileDevices",Y.getBooleanValue("phenix-skip-garbage-collection-on-mobile-devices")),s()(Ne,"_webPlayerLoader",void 0),s()(Ne,"_shakaPlayerLoader",void 0),s()(Ne,"_hlsJsLoader",void 0),s()(Ne,"_applicationActivityMonitor",void 0),s()(Ne,"_environment",new b("")),s()(Ne,"_telemetryUrl",new b("https://telemetry.phenixrts.com/telemetry")),s()(Ne,"_maximalNumberOfPeerConnectionReconnectAttempts",8),s()(Ne,"_telemetryLevel",new b(q.defaultTelemetryLevel)),s()(Ne,"_metricsService",void 0),s()(Ne,"_metricsConfiguration",void 0),s()(Ne,"_sendLocalCandidates",new b(F.sendLocalCandidates)),s()(Ne,"_tenancy",new b("")),s()(Ne,"_clientSessionId",te.random(32)),s()(Ne,"_loadedTimestamp",new Date),s()(Ne,"_logger",ee.getLogger("SDK")),s()(Ne,"_initialized",new b(!1)),s()(Ne,"_readOnlyInitialized",new C(Ie._initialized)),s()(Ne,"_readOnlyDiscoveryUri",new C(ke.uri)),s()(Ne,"_readOnlyPeerConnectionFactory",new C(_e.peerConnectionFactory)),k.subscribe(Ne.onLoad.bind(Ne));var Ge=function(e){return e[e.Initializing=0]="Initializing",e[e.Offline=1]="Offline",e[e.Starting=2]="Starting",e[e.Publishing=3]="Publishing",e[e.Recovering=4]="Recovering",e[e.Reconnecting=5]="Reconnecting",e[e.Stopped=6]="Stopped",e[e.Unauthorized=7]="Unauthorized",e[e.GeoRestricted=8]="GeoRestricted",e[e.GeoBlocked=9]="GeoBlocked",e[e.UnsupportedFeature=10]="UnsupportedFeature",e[e.NotFound=11]="NotFound",e[e.ConfigurationError=12]="ConfigurationError",e[e.TransientConfigurationError=13]="TransientConfigurationError",e[e.ConnectionError=14]="ConnectionError",e[e.ClientStartError=15]="ClientStartError",e[e.Error=16]="Error",e}(Ge||{}),Ve=Ge,Ue=function(){return o()(function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;t()(this,e),s()(this,"_duration",void 0),this._duration=n},[{key:"toIsoString",value:function(){if(0===this._duration)return"P0S";var e=this._duration<0,t=e?Math.abs(this._duration):this._duration,n=Math.floor(t),r=n%1e3,i=(n=Math.floor(n/1e3))%60,o=(n=Math.floor(n/60))%60,a=(n=Math.floor(n/60))%24,s=["PT"];return e&&s.unshift("-"),a&&s.push(a+"H"),o&&s.push(o+"M"),(i||r)&&(s.push(String(i)),r&&s.push("."+this.padStart(r.toString(),3,"0")),s.push("S")),s.join("")}},{key:"padStart",value:function(e,t,n){return t|=0,n=String(void 0!==n?n:" "),e.length>t?e:((t-=e.length)>n.length&&(n+=n.repeat(t/n.length)),n.slice(0,t)+e)}}])}(),Be=function(){return o()(function e(n){t()(this,e),s()(this,"_logger",ee.getLogger("StreamSetupListener")),s()(this,"metricsService",Ne.metricsService),s()(this,"_pageLoadTime",void 0),s()(this,"_startTime",void 0),s()(this,"_metricSubmitted",!1),this._startTime=Date.now(),this._pageLoadTime=n},[{key:"success",value:function(e){this.recordStreamMetric(Pe.SetupCompleted,e)}},{key:"fail",value:function(){this.recordStreamMetric(Pe.SetupFailed)}},{key:"recordStreamMetric",value:function(e,t){if(!this._metricSubmitted){this._metricSubmitted=!0;var n=Date.now(),r=n-this._startTime,i=new Ee(e).getName();this.metricsService.push({metricType:e,runtime:(n-this._pageLoadTime)/1e3,value:{uint64:r},streamId:t}),this._logger.info("[%s] [%s] Stream metric [%s] in [%s]",new Ue(n-this._pageLoadTime).toIsoString(),t,i,new Ue(r).toIsoString())}}}])}(),ze=function(){return o()(function e(){t()(this,e),s()(this,"_disposables",new ie),s()(this,"_isSupported",void 0!==O.value.navigatorConnection),s()(this,"_rtt",new b(void 0)),s()(this,"_effectiveType",new b(void 0)),s()(this,"_downlinkThroughputCapacity",new b(void 0)),this.isSupported&&(this.setupNetworkChangeListeners(),this.updateStatistics())},[{key:"isSupported",get:function(){return this._isSupported}},{key:"rtt",get:function(){return this._rtt}},{key:"effectiveType",get:function(){return this._effectiveType}},{key:"downlinkThroughputCapacity",get:function(){return this._downlinkThroughputCapacity}},{key:"dispose",value:function(){this._disposables.dispose()}},{key:"getDownlinkThroughputCapacity",value:function(){var e,t,n,r;return null!==(e=null!==(t=null===(n=O.value.navigatorConnection)||void 0===n?void 0:n.downlink)&&void 0!==t?t:null===(r=O.value.navigatorConnection)||void 0===r?void 0:r.downlinkMax)&&void 0!==e?e:-1}},{key:"getEffectiveType",value:function(){var e,t,n,r;return null!==(e=null!==(t=null===(n=O.value.navigatorConnection)||void 0===n?void 0:n.effectiveType)&&void 0!==t?t:null===(r=O.value.navigatorConnection)||void 0===r?void 0:r.type)&&void 0!==e?e:"Unknown"}},{key:"getRoundTripTime",value:function(){var e,t;return null!==(e=null===(t=O.value.navigatorConnection)||void 0===t?void 0:t.rtt)&&void 0!==e?e:-1}},{key:"setupNetworkChangeListeners",value:function(){var e,t=this,n=function(){return t.updateStatistics()};null===(e=O.value.navigatorConnection)||void 0===e||e.addEventListener("change",n),this._disposables.add(new g(function(){var e;return null===(e=O.value.navigatorConnection)||void 0===e?void 0:e.removeEventListener("change",n)}))}},{key:"updateStatistics",value:function(){this._rtt.value=this.getRoundTripTime(),this._effectiveType.value=this.getEffectiveType(),this._downlinkThroughputCapacity.value=this.getDownlinkThroughputCapacity()}}])}(),He=function(){return o()(function e(n,r){var i=this;if(t()(this,e),s()(this,"_logger",ee.getLogger("SessionTelemetry")),s()(this,"_metricsService",void 0),s()(this,"_applicationActivityMonitor",Ne.applicationActivityMonitor),s()(this,"_networkMonitor",new ze),s()(this,"_pageLoadTime",void 0),s()(this,"_disposables",new ie),s()(this,"_lastNetworkStatistics",{}),this._pageLoadTime=n,this._disposables.add(this._networkMonitor),this._metricsService=r,!this._applicationActivityMonitor)throw new Error("SessionTelemetry Failed: No application monitor initialized.");this._networkMonitor.isSupported&&(this._disposables.add(this._applicationActivityMonitor.isForeground.subscribe(function(e){i.recordForegroundChange(e)})),this._disposables.add(this._networkMonitor.rtt.subscribe(function(e){e&&i.recordNetworkRTTUpdate(e)})),this._disposables.add(this._networkMonitor.effectiveType.subscribe(function(e){e&&i.recordNetworkTypeChangeUpdate(e)})),this._disposables.add(this._networkMonitor.downlinkThroughputCapacity.subscribe(function(e){e&&i.recordNetworkDownlinkThroughputCapacityUpdate(e)})))},[{key:"listenOnStreamSetup",value:function(){return new Be(this._pageLoadTime)}},{key:"dispose",value:function(){this._disposables.dispose()}},{key:"recordForegroundChange",value:function(e){var t,n=Date.now(),r=null===(t=this._applicationActivityMonitor)||void 0===t?void 0:t.getTimeSinceLastChange();r&&(this._metricsService.push({metricType:e?Pe.ApplicationForeground:Pe.ApplicationBackground,runtime:(n-this._pageLoadTime)/1e3,value:{uint64:r}}),this._logger.info("Application has gone into the [%s] after [%s] ms",e?"foreground":"background",new Ue(r).toIsoString()))}},{key:"recordNetworkRTTUpdate",value:function(e){var t=Date.now(),n=this._lastNetworkStatistics.rtt;this._lastNetworkStatistics.rtt=e,this._metricsService.push({metricType:Pe.RoundTripTime,runtime:(t-this._pageLoadTime)/1e3,value:{uint64:e},previousValue:n?{uint64:n}:void 0,resource:"navigator"}),this._logger.info("[%s] Network RTT changed to [%s] from [%s]",new Ue(t-this._pageLoadTime).toIsoString(),e,n)}},{key:"recordNetworkTypeChangeUpdate",value:function(e){var t=Date.now(),n=this._lastNetworkStatistics.effectiveType;this._lastNetworkStatistics.effectiveType=e,this._metricsService.push({metricType:Pe.NetworkType,runtime:(t-this._pageLoadTime)/1e3,value:{string:e},previousValue:n?{string:n}:void 0}),this._logger.info("[%s] Network effective type has changed to [%s] from [%s]",new Ue(t-this._pageLoadTime).toIsoString(),e,n)}},{key:"recordNetworkDownlinkThroughputCapacityUpdate",value:function(e){var t=Date.now(),n=this._lastNetworkStatistics.downlinkThroughputCapacity;this._lastNetworkStatistics.downlinkThroughputCapacity=e,this._metricsService.push({metricType:Pe.DownlinkThroughputCapacity,runtime:(t-this._pageLoadTime)/1e3,value:{float:e},previousValue:n?{float:n}:void 0}),this._logger.info("[%s] Network downlink throughput capacity changed to [%s] from [%s]",new Ue(t-this._pageLoadTime).toIsoString(),e,n)}}])}(),We=o()(function e(n){t()(this,e),s()(this,"token",void 0),s()(this,"tokenExpiring",void 0),this.token=new b(n),this.tokenExpiring=new b(!1)}),Je=function(){return o()(function e(n){t()(this,e),s()(this,"publisherInitialization",void 0),s()(this,"disposables",void 0),s()(this,"publisherDisposables",void 0),s()(this,"state",void 0),s()(this,"authorized",void 0),s()(this,"online",void 0),s()(this,"loading",void 0),s()(this,"publishing",void 0),s()(this,"standby",void 0),s()(this,"stopped",void 0),s()(this,"failureCount",void 0),s()(this,"endPoint",void 0),s()(this,"stream",void 0),s()(this,"rtcStatistics",void 0),s()(this,"clearFailureCountTimeout",void 0),s()(this,"startReconnectionAttemptsTimeInMilliseconds",void 0),s()(this,"name",void 0),this.disposables=new ie,this.publisherDisposables=new ie,this.publisherInitialization=new Date,this.state=new b(Ve.Initializing),this.authorized=new b(!0),this.online=new b(!0),this.loading=new b(!1),this.publishing=new b(!1),this.standby=new b(!1),this.stopped=new b(!1),this.failureCount=new b(0),this.endPoint=new b(null),this.stream=new b(null),this.rtcStatistics=new b(null),this.clearFailureCountTimeout=0,this.name=n&&n.length?n:this.generateScreenName(),this.startReconnectionAttemptsTimeInMilliseconds=0},[{key:"streamId",get:function(){var e=this.stream.value;return e?e.streamId:"-"}},{key:"applyPublishStatus",value:function(e){switch(e){case"ok":return;case"unauthorized":case"geo-restricted":case"geo-blocked":return void this.applyUnauthorized();case"not-found":return void this.applyNotFound();default:return void this.applyUnhandledError()}}},{key:"applySetRemoteDescriptionStatus",value:function(e){switch(e){case"ok":return;case"unauthorized":return void this.applyUnauthorized();case"not-found":return void this.applyNotFound();default:return void this.applyUnhandledError()}}},{key:"applyAddIceCandidatesStatus",value:function(e){switch(e){case"ok":return;case"unauthorized":return void this.applyUnauthorized();case"not-found":return void this.applyNotFound();default:return void this.applyUnhandledError()}}},{key:"mapPublishStatusToPublisherStatus",value:function(e){switch(e){case"ok":return Ve.Starting;case"not-found":return Ve.NotFound;case"geo-restricted":return Ve.GeoRestricted;case"geo-blocked":return Ve.GeoBlocked;case"unauthorized":return Ve.Unauthorized;case"capacity":case"rate-limited":case"timeout":return Ve.Recovering;case"missing-channel-or-room-id":case"forbidden-tag":return Ve.ConfigurationError;case"port-in-range-not-found":return Ve.TransientConfigurationError;case"failed":return Ve.Error;default:$(e)}}},{key:"applyUnhandledError",value:function(){this.failureCount.value++,this.publishing.value=!1,this.standby.value=!0,this.stopped.value=!1,this.stream.value=null}},{key:"applyUnauthorized",value:function(){this.authorized.value=!1,this.failureCount.value=0,this.publishing.value=!1,this.standby.value=!0,this.stopped.value=!1,this.stream.value=null}},{key:"applyNotFound",value:function(){this.failureCount.value=0,this.publishing.value=!1,this.standby.value=!0,this.stopped.value=!1,this.stream.value=null}},{key:"generateScreenName",value:function(){return te.random(12)}}])}(),qe=function(){return o()(function e(){throw t()(this,e),new Error("GarbageCollectorManager is a static class that may not be instantiated")},null,[{key:"forceGarbageCollection",value:function(){E.isMobile&&Ne.skipGarbageCollectionOnMobileDevices||E.isForceChromeGarbageCollectionSupported&&this.forceChromeGarbageCollection()}},{key:"forceChromeGarbageCollection",value:function(){E.isQueueMicrotaskSupported?O.value.queueMicrotask(this.overloadMemoryToInvokeGarbageCollection.bind(this)):O.value.setTimeout(this.overloadMemoryToInvokeGarbageCollection.bind(this),0)}},{key:"overloadMemoryToInvokeGarbageCollection",value:function(){var e=O.value.documentCreateElement("img");e.src=O.value.URL.createObjectURL(new Blob([new ArrayBuffer(1e8)])),e.onerror=function(){O.value.URL.revokeObjectURL(this.src),e=null}}}])}(),Ke=function(){return o()(function e(n){t()(this,e),s()(this,"_forceGarbageCollectionOnRestart",void 0),s()(this,"mediaStream",void 0),s()(this,"peerConnection",void 0),s()(this,"peerConnectionReconnectAttempts",void 0),this._forceGarbageCollectionOnRestart=n.forceGarbageCollectionOnRestart,this.mediaStream=new b(null),this.peerConnection=new b(null),this.peerConnectionReconnectAttempts=0},[{key:"disposePeerConnection",value:function(){var e=this.peerConnection.value;e&&(this.peerConnection.value=null,e.close(),e.dispose(),this._forceGarbageCollectionOnRestart&&qe.forceGarbageCollection())}},{key:"disposeMediaStream",value:function(){var e;null===(e=this.mediaStream.value)||void 0===e||e.getTracks().forEach(function(e){return e.stop()}),this.mediaStream.value=null}}])}(),Qe=o()(function e(){t()(this,e),s()(this,"isStarting",void 0),s()(this,"isDisposed",void 0),this.isStarting=new b(!1),this.isDisposed=!1}),$e=function(e){return e[e.Keep=0]="Keep",e[e.Reset=1]="Reset",e}({}),Ze=function(e){return e[e.Normal=0]="Normal",e[e.Force=1]="Force",e[e.Reset=2]="Reset",e}({}),Xe=function(){return o()(function e(){t()(this,e)},null,[{key:"convertBitrateModeToBitrateModeType",value:function(e){switch(e){case Ze.Normal:return"Normal";case Ze.Force:return"Force";case Ze.Reset:return"Reset";default:$(e)}}}])}(),Ye=function(){return o()(function e(){t()(this,e)},null,[{key:"convertBitrateStateToBitrateStateType",value:function(e){switch(e){case $e.Keep:return"Keep";case $e.Reset:return"Reset";default:$(e)}}}])}(),et=n(981).A;function tt(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return nt(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,f={p:0,n:0,v:e,a:h,f:h.bind(e,4),d:function(t,n){return o=t,s=0,u=e,f.n=n,a}};function h(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],h=f.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=h&&((i=n<2&&h<o[1])?(s=0,f.v=r,f.n=o[1]):h<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,f.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&h(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(f.n=-1),h(s,u)):f.n=u:f.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=f.n<0)?u:n.call(r,f))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(nt(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,nt(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,nt(d,"constructor",c),nt(c,"constructor",u),u.displayName="GeneratorFunction",nt(c,i,"GeneratorFunction"),nt(d),nt(d,i,"Generator"),nt(d,r,function(){return this}),nt(d,"toString",function(){return"[object Generator]"}),(tt=function(){return{w:o,m:f}})()}function nt(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}nt=function(e,t,n,r){function o(t,n){nt(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},nt(e,t,n,r)}var rt=function(){return o()(function e(n,r){if(t()(this,e),s()(this,"_logger",ee.getLogger("EndPoint")),s()(this,"_uri",void 0),s()(this,"_timeout",void 0),s()(this,"_roundTripTime",0),this._uri=n,this._timeout=r,!r)throw new Error("End point requires a timeout")},[{key:"roundTripTime",get:function(){return this._roundTripTime}},{key:"toString",value:function(){return"EndPoint[uri=".concat(this._uri,"]")}},{key:"ping",value:(v=N()(tt().m(function e(){var t,n,r,i,o=this;return tt().w(function(e){for(;;)switch(e.n){case 0:return t=this.buildPingUrl(),n=Date.now(),e.n=1,et.race([O.value.fetch(t,{method:"GET",cache:"no-cache"}),new et(function(e,n){return O.value.setTimeout(function(){return n(new Error("Ping timed out [".concat(t,"]")))},o._timeout)})]);case 1:if(r=e.v,i=Date.now(),r.ok){e.n=2;break}throw new Error("Ping failed [".concat(t,"] [").concat(r.status,"]"));case 2:return this._roundTripTime=i-n,e.a(2,this._roundTripTime)}},e,this)})),function(){return v.apply(this,arguments)})},{key:"subscribe",value:(p=N()(tt().m(function e(t,n,r){var i,o,a,s,u,c,l,d,f,h,p,v,g,y,m,_,b,C,w,k,S=this,T=arguments;return tt().w(function(e){for(;;)switch(e.p=e.n){case 0:if(a=T.length>3&&void 0!==T[3]?T[3]:{},s=re.parseToken(t).tenancy){e.n=1;break}return this._logger.error("Failed to parse token [%s]",t),e.a(2,{status:"unauthorized"});case 1:return u=this.buildUrl([s,"stream","subscribe"]).toString(),c=new O.value.FormData,l=V.sdkVersion,d=0===r&&n?{apiVersion:7,clientVersion:l,bearerToken:t,failureCount:r,httpRoundTripTime:this._roundTripTime,setRemoteDescription:{apiVersion:7,sessionDescription:{type:n.type,sdp:n.sdp}},createAnswerDescription:{apiVersion:7}}:{apiVersion:7,clientVersion:l,bearerToken:t,failureCount:r,httpRoundTripTime:this._roundTripTime,createOfferDescription:{apiVersion:7}},e.n=2,null===(i=a.onSubscribeRequestCallback)||void 0===i?void 0:i.call(a,d);case 2:return c.append("jsonBody",JSON.stringify(d)),f=Date.now(),e.p=3,p=null,e.n=4,et.race([O.value.fetch(u,{method:"POST",body:c}),new et(function(e){return p=O.value.setTimeout(function(){S._logger.error("Failed to subscribe",new Error("Subscribe timed out [".concat(u,"]"))),e({status:408})},S._timeout)})]).finally(function(){p&&O.value.clearTimeout(p)});case 4:h=e.v,e.n=6;break;case 5:return e.p=5,k=e.v,this._logger.error("Failed to subscribe",k),e.a(2,{status:"failed"});case 6:return e.n=7,this.parseJsonBody(h);case 7:if(v=e.v,this.handleStreamResponseContext(null==v?void 0:v.streamResponseContext),"ok"===(g=this.mapHttpStatusToSubscribeStatus(h))){e.n=9;break}return m={status:g},e.n=8,null===(y=a.onSubscribeResponseCallback)||void 0===y?void 0:y.call(a,m);case 8:return e.a(2,m);case 9:if(v){e.n=11;break}return b={status:"failed"},e.n=10,null===(_=a.onSubscribeResponseCallback)||void 0===_?void 0:_.call(a,b);case 10:return e.a(2,b);case 11:return C=Date.now(),w=this.normalizeSubscribeResponse(s,v),this._logger.debug("Got subscribe response [%j] in [%s] ms",w,C-f),e.n=12,null===(o=a.onSubscribeResponseCallback)||void 0===o?void 0:o.call(a,w);case 12:return e.a(2,w)}},e,this,[[3,5]])})),function(e,t,n){return p.apply(this,arguments)})},{key:"publish",value:(h=N()(tt().m(function e(t,n,r,i){var o,a,s,u,c,l,d,f,h,p,v,g,y,m,_=this;return tt().w(function(e){for(;;)switch(e.p=e.n){case 0:if(o=re.parseToken(n).tenancy){e.n=1;break}return this._logger.error("Failed to parse token [%s]",n),e.a(2,{status:"unauthorized"});case 1:return a=this.buildUrl([o,"stream","publish"]).toString(),s=new O.value.FormData,u=V.sdkVersion,0===i&&r?(c={apiVersion:7,clientVersion:u,bearerToken:n,failureCount:i,httpRoundTripTime:this._roundTripTime,name:t,setRemoteDescription:{apiVersion:7,sessionDescription:{type:r.type,sdp:r.sdp}},createAnswerDescription:{streamId:"",apiVersion:7}},s.append("jsonBody",JSON.stringify(c))):(l={apiVersion:7,clientVersion:u,bearerToken:n,failureCount:i,httpRoundTripTime:this._roundTripTime,name:t,createOfferDescription:{streamId:"",apiVersion:7}},s.append("jsonBody",JSON.stringify(l))),d=Date.now(),e.p=2,h=null,e.n=3,et.race([O.value.fetch(a,{method:"POST",body:s}),new et(function(e){return h=O.value.setTimeout(function(){_._logger.error("Failed to publish",new Error("Publish timed out [".concat(a,"]"))),e({status:408})},_._timeout)})]).finally(function(){h&&O.value.clearTimeout(h)});case 3:f=e.v,e.n=5;break;case 4:return e.p=4,m=e.v,this._logger.error("Failed to publish",m),e.a(2,{status:"failed"});case 5:return e.n=6,this.parseJsonBody(f);case 6:if(p=e.v,this.handleStreamResponseContext(null==p?void 0:p.streamResponseContext),"ok"===(v=this.mapHttpStatusToPublishStatus(f))){e.n=7;break}return e.a(2,{status:v});case 7:if(p){e.n=8;break}return e.a(2,{status:"failed"});case 8:return g=Date.now(),y=this.normalizePublishResponse(o,p),this._logger.debug("Got publish response [%j] in [%s] ms",y,g-d),e.a(2,y)}},e,this,[[2,4]])})),function(e,t,n,r){return h.apply(this,arguments)})},{key:"setRemoteDescription",value:(f=N()(tt().m(function e(t,n){var r,i,o,a,s,u,c,l,d,f,h=this;return tt().w(function(e){for(;;)switch(e.p=e.n){case 0:return r=this.buildUrl([t.tenancy,"stream",t.streamId,"description","remote"]).toString(),i=new O.value.FormData,o={apiVersion:7,sharedSecret:null==t?void 0:t.sharedSecret,sessionDescription:{type:n.type,sdp:n.sdp}},i.append("jsonBody",JSON.stringify(o)),a=Date.now(),e.p=1,u=null,e.n=2,et.race([O.value.fetch(r,{method:"POST",body:i}),new et(function(e){return u=O.value.setTimeout(function(){h._logger.error("Failed to set remote description",new Error("Set remote description timed out [".concat(r,"]"))),e({status:408})},h._timeout)})]).finally(function(){u&&O.value.clearTimeout(u)});case 2:s=e.v,e.n=4;break;case 3:return e.p=3,f=e.v,this._logger.error("Failed to set remote description",f),e.a(2,{status:"failed"});case 4:if("ok"===(c=this.mapHttpStatusToSetRemoteDescriptionStatus(s))){e.n=5;break}return e.a(2,{status:c});case 5:return l=Date.now(),e.n=6,this.convertHttpResponseToSetRemoteDescription(s);case 6:return d=e.v,this._logger.debug("Got set remote description response [%j] in [%s] ms",d,l-a),e.a(2,d)}},e,this,[[1,3]])})),function(e,t){return f.apply(this,arguments)})},{key:"limitBitrate",value:(d=N()(tt().m(function e(t,n,r,i,o){var a,s,u,c,l,d,f,h,p,v=this;return tt().w(function(e){for(;;)switch(e.p=e.n){case 0:return a=this.buildUrl([t.tenancy,"stream",t.streamId,"bitrate"]).toString(),s=new O.value.FormData,u={apiVersion:7,sharedSecret:t.sharedSecret,elapsedInMilliseconds:n,bitrateInBitsPerSecond:r,bitrateState:Ye.convertBitrateStateToBitrateStateType(i),bitrateMode:Xe.convertBitrateModeToBitrateModeType(o)},s.append("jsonBody",JSON.stringify(u)),c=Date.now(),e.p=1,d=null,e.n=2,et.race([O.value.fetch(a,{method:"POST",body:s}),new et(function(e){return d=O.value.setTimeout(function(){v._logger.error("Failed to set limit bitrate timed",new Error("Set limit bitrate timed out [".concat(a,"]"))),e({status:408})},v._timeout)})]).finally(function(){d&&O.value.clearTimeout(d)});case 2:l=e.v,e.n=4;break;case 3:return e.p=3,p=e.v,this._logger.error("Failed to set limit bitrate timed",p),e.a(2,{status:"failed"});case 4:return f=this.mapHttpStatusToSetTemporaryMaximalBitrateStatus(l),h=Date.now(),this._logger.info("Got set limit bitrate response [%s] in [%s] ms",f,h-c),e.a(2,{status:f})}},e,this,[[1,3]])})),function(e,t,n,r,i){return d.apply(this,arguments)})},{key:"addIceCandidates",value:(l=N()(tt().m(function e(t,n,r){var i,o,a,s,u,c,l,d,f,h,p,v=this,g=arguments;return tt().w(function(e){for(;;)switch(e.p=e.n){case 0:return i=g.length>3&&void 0!==g[3]?g[3]:[],o=this.buildUrl([t.tenancy,"stream",t.streamId,"ice","candidates"]).toString(),a=new O.value.FormData,s={apiVersion:7,sharedSecret:t.sharedSecret,candidates:n,discoveryCompleted:r,options:i},a.append("jsonBody",JSON.stringify(s)),u=Date.now(),e.p=1,l=null,e.n=2,et.race([O.value.fetch(o,{method:"POST",body:a}),new et(function(e){return l=O.value.setTimeout(function(){v._logger.error("Failed to add ice candidates",new Error("Add ice candidates timed out [".concat(o,"]"))),e({status:408})},v._timeout)})]).finally(function(){l&&O.value.clearTimeout(l)});case 2:c=e.v,e.n=4;break;case 3:return e.p=3,p=e.v,this._logger.error("Failed to add ice candidates",p),e.a(2,{status:"failed"});case 4:if("ok"===(d=this.mapHttpStatusToAddIceCandidatesStatus(c))){e.n=5;break}return e.a(2,{status:d});case 5:return f=Date.now(),e.n=6,this.convertHttpResponseToAddIceCandidates(c);case 6:return h=e.v,this._logger.info("Got add ICE candidates response [%j] in [%s] ms",h,f-u),e.a(2,h)}},e,this,[[1,3]])})),function(e,t,n){return l.apply(this,arguments)})},{key:"destroyStream",value:(u=N()(tt().m(function e(t,n){var r,i,o,a,s,u,c,l,d,f,h=this;return tt().w(function(e){for(;;)switch(e.p=e.n){case 0:return r=this.buildUrl([t.tenancy,"stream",t.streamId,"destroy"]).toString(),i=new O.value.FormData,o={apiVersion:7,sharedSecret:t.sharedSecret,reason:n,options:[]},i.append("jsonBody",JSON.stringify(o)),a=Date.now(),e.p=1,u=null,e.n=2,et.race([O.value.fetch(r,{method:"POST",body:i,cache:"no-cache"}),new et(function(e){return u=O.value.setTimeout(function(){h._logger.error("Failed to subscribe",new Error("Delete stream timed out [".concat(r,"]"))),e({status:408})},h._timeout)})]).finally(function(){u&&O.value.clearTimeout(u)});case 2:s=e.v,e.n=4;break;case 3:return e.p=3,f=e.v,this._logger.error("Failed to delete stream",f),e.a(2,{status:"failed"});case 4:if("ok"===(c=this.mapHttpStatusToSetDestroyStreamStatus(s))){e.n=5;break}return e.a(2,{status:c});case 5:return l=Date.now(),e.n=6,this.convertHttpResponseToDestroyStream(s);case 6:return d=e.v,this._logger.info("Got destroy stream response [%j] in [%s] ms",d,l-a),e.a(2,d)}},e,this,[[1,3]])})),function(e,t){return u.apply(this,arguments)})},{key:"destroyStreamOnUnmount",value:(a=N()(tt().m(function e(t,n){var r,i,o,a,s=this;return tt().w(function(e){for(;;)switch(e.n){case 0:if(r=O.value.sendBeacon){e.n=1;break}return this.destroyStream(t,n).catch(function(e){s._logger.error("Failed to destroy stream on unmount",e)}),e.a(2);case 1:i=this.buildUrl([t.tenancy,"stream",t.streamId,"destroy"]).toString(),o=new O.value.FormData,a={apiVersion:7,sharedSecret:t.sharedSecret,reason:n,options:[]},o.append("jsonBody",JSON.stringify(a)),r(i,o);case 2:return e.a(2)}},e,this)})),function(e,t){return a.apply(this,arguments)})},{key:"buildUrl",value:function(e){var t=new O.value.URL(this._uri),n=t.pathname.split("/");return n.length=n.length-1,t.pathname=n.concat.apply(n,c()(e)).join("/"),t}},{key:"buildPingUrl",value:function(){var e=new O.value.URL(this._uri),t=V.sdkVersion,n=we.discoveryParameters.intentions;return e.searchParams.set("type","http"),e.searchParams.set("version",t),e.searchParams.set("intentions",n),e.searchParams.set("_","".concat(Date.now())),e.toString()}},{key:"parseJsonBody",value:(i=N()(tt().m(function e(t){return tt().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,t.json();case 1:return e.a(2,e.v);case 2:return e.p=2,e.v,e.a(2,void 0)}},e,null,[[0,2]])})),function(e){return i.apply(this,arguments)})},{key:"handleStreamResponseContext",value:function(e){e&&this._logger.info("stream response context [%j]",e)}},{key:"mapHttpStatusToPublishStatus",value:function(e){if(!e)return"failed";switch(e.status){case 200:return"ok";case 401:return"unauthorized";case 402:return"geo-restricted";case 403:return"geo-blocked";case 406:return"missing-channel-or-room-id";case 408:return"timeout";case 409:return"port-in-range-not-found";case 415:return"forbidden-tag";case 503:return"capacity";case 504:return"rate-limited";default:return"failed"}}},{key:"mapHttpStatusToSubscribeStatus",value:function(e){if(!e)return"failed";switch(e.status){case 200:return"ok";case 401:return"unauthorized";case 402:return"geo-restricted";case 403:return"geo-blocked";case 408:return"timeout";case 409:return"port-in-range-not-found";case 415:return"forbidden-tag";case 503:return"capacity";case 504:return"rate-limited";default:return"failed"}}},{key:"mapHttpStatusToSetRemoteDescriptionStatus",value:function(e){if(!e)return"failed";switch(e.status){case 200:return"ok";case 401:return"unauthorized";case 408:return"timeout";case 503:return"capacity";case 504:return"rate-limited";default:return"failed"}}},{key:"mapHttpStatusToSetTemporaryMaximalBitrateStatus",value:function(e){if(!e)return"failed";switch(e.status){case 200:return"ok";case 401:return"unauthorized";case 408:return"timeout";case 503:return"capacity";case 504:return"rate-limited";default:return"failed"}}},{key:"mapHttpStatusToAddIceCandidatesStatus",value:function(e){if(!e)return"failed";switch(e.status){case 200:return"ok";case 401:return"unauthorized";case 408:return"timeout";case 503:return"capacity";case 504:return"rate-limited";default:return"failed"}}},{key:"mapHttpStatusToSetDestroyStreamStatus",value:function(e){if(!e)return"failed";switch(e.status){case 200:return"ok";case 401:return"unauthorized";case 408:return"timeout";case 503:return"capacity";case 504:return"rate-limited";default:return"failed"}}},{key:"normalizeSubscribeResponse",value:function(e,t){var n=t.status,r=t.streamId,i=t.sharedSecret,o=t.lag,a=t.rtcConfiguration,s=t.setRemoteDescriptionResponse,u=t.createAnswerDescriptionResponse,c=t.createOfferDescriptionResponse,l={status:n,stream:{tenancy:e,streamId:r,sharedSecret:i},lag:o};return a&&(l.rtcConfiguration=this.convertIRtcConfigurationToRTCConfiguration(a)),null!=s&&s.sessionDescription&&(l.setRemoteDescriptionResponse={sessionDescription:s.sessionDescription}),null!=u&&u.sessionDescription&&(l.createAnswerDescriptionResponse={sessionDescription:u.sessionDescription}),null!=c&&c.sessionDescription&&(l.createOfferDescriptionResponse={sessionDescription:c.sessionDescription}),l}},{key:"normalizePublishResponse",value:function(e,t){var n={status:t.status,stream:{tenancy:e,streamId:t.streamId,sharedSecret:t.sharedSecret}};return t.rtcConfiguration&&(n.rtcConfiguration=this.convertIRtcConfigurationToRTCConfiguration(t.rtcConfiguration)),t.setRemoteDescriptionResponse&&t.setRemoteDescriptionResponse.sessionDescription&&(n.setRemoteDescriptionResponse={sessionDescription:t.setRemoteDescriptionResponse.sessionDescription}),t.createAnswerDescriptionResponse&&t.createAnswerDescriptionResponse.sessionDescription&&(n.createAnswerDescriptionResponse={sessionDescription:t.createAnswerDescriptionResponse.sessionDescription}),t.createOfferDescriptionResponse&&t.createOfferDescriptionResponse.sessionDescription&&(n.createOfferDescriptionResponse={sessionDescription:t.createOfferDescriptionResponse.sessionDescription}),n}},{key:"convertIRtcConfigurationToRTCConfiguration",value:function(e){var t={iceServers:[]};if(e.bundlePolicy&&(t.bundlePolicy=e.bundlePolicy),"number"==typeof e.iceCandidatePoolSize&&(t.iceCandidatePoolSize=e.iceCandidatePoolSize),e.iceServers){for(var n=[],r=0;r<e.iceServers.length;r++)n.push({urls:e.iceServers[r].urls,username:e.iceServers[r].username,credential:e.iceServers[r].credential});t.iceServers=n}return e.iceTransportPolicy&&(t.iceTransportPolicy=e.iceTransportPolicy),e.rtcpMuxPolicy&&(t.rtcpMuxPolicy=e.rtcpMuxPolicy),t}},{key:"convertHttpResponseToSetRemoteDescription",value:(r=N()(tt().m(function e(t){var n,r;return tt().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,t.json();case 1:return n=e.v,r={status:n.status},n&&n.sessionDescription&&(r.sessionDescription=n.sessionDescription),e.a(2,r)}},e)})),function(e){return r.apply(this,arguments)})},{key:"convertHttpResponseToAddIceCandidates",value:(n=N()(tt().m(function e(t){var n,r;return tt().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,t.json();case 1:return n=e.v,r={status:n.status,options:[]},n&&n.options&&(r.options=n.options),e.a(2,r)}},e)})),function(e){return n.apply(this,arguments)})},{key:"convertHttpResponseToDestroyStream",value:(e=N()(tt().m(function e(t){var n,r;return tt().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,t.json();case 1:return n=e.v,r={status:n.status},e.a(2,r)}},e)})),function(t){return e.apply(this,arguments)})}]);var e,n,r,i,a,u,l,d,f,h,p,v}(),it=n(981).A;function ot(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return at(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,f={p:0,n:0,v:e,a:h,f:h.bind(e,4),d:function(t,n){return o=t,s=0,u=e,f.n=n,a}};function h(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],h=f.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=h&&((i=n<2&&h<o[1])?(s=0,f.v=r,f.n=o[1]):h<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,f.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&h(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(f.n=-1),h(s,u)):f.n=u:f.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=f.n<0)?u:n.call(r,f))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(at(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,at(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,at(d,"constructor",c),at(c,"constructor",u),u.displayName="GeneratorFunction",at(c,i,"GeneratorFunction"),at(d),at(d,i,"Generator"),at(d,r,function(){return this}),at(d,"toString",function(){return"[object Generator]"}),(ot=function(){return{w:o,m:f}})()}function at(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}at=function(e,t,n,r){function o(t,n){at(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},at(e,t,n,r)}var st=function(){return o()(function e(n){if(t()(this,e),s()(this,"_logger",ee.getLogger("Discovery")),s()(this,"_metricsService",void 0),s()(this,"_uri",void 0),!n)throw new Error("Discovery requires uri");this._metricsService=Me.getMetricsService(n.toString()),this._uri=n},[{key:"discoverNearbyEndPoints",value:(n=N()(ot().m(function e(t,n){var r,i,o,a;return ot().w(function(e){for(;;)switch(e.n){case 0:if(n){e.n=1;break}throw new Error("Discovery requires timeout");case 1:return r=t.toString(),e.n=2,it.race([O.value.fetch(r,{method:"GET",cache:"no-cache"}),new it(function(e,t){return O.value.setTimeout(function(){return t(new Error("Discovery timed out [".concat(r,"]")))},n)})]);case 2:if((i=e.v).ok){e.n=3;break}throw new Error("Discovery failed [".concat(r,"] [").concat(i.status,"]"));case 3:if(null!==i.body){e.n=4;break}throw new Error("Discovery failed with no data [".concat(r,"]"));case 4:return e.n=5,i.text();case 5:return o=e.v,a=o.split(","),e.a(2,a.map(function(e){return new rt(e,n)}))}},e)})),function(e,t){return n.apply(this,arguments)})},{key:"discoverClosestEndPoint",value:(e=N()(ot().m(function e(){var t,n,r,i,o,a,s=this,u=arguments;return ot().w(function(e){for(;;)switch(e.n){case 0:return t=u.length>0&&void 0!==u[0]?u[0]:2e4,n=ke.buildDiscoveryUrl(this._uri),e.n=1,this.discoverNearbyEndPoints(new O.value.URL(n),t);case 1:return r=e.v,i=0,o=function(){return new it(function(e,t){i>=r.length&&t("Discovery of [".concat(r.length,"] endpoints from [").concat(n,"] failed, preventing it from completing"))})},e.n=2,it.race(r.map(function(e){return e.ping().catch(function(t){return s._logger.warn("Failed to ping end point [%s]",e,t),i++,o()}).then(function(t){var n=Date.now();return s._logger.info("Discovered end point [%s] with time [%s]",e.toString(),t),s._metricsService.push({metricType:Pe.RoundTripTime,runtime:(n-Ne.pageLoadTime)/1e3,value:{uint64:t||0},resource:e.toString(),kind:"ping"}),e})}));case 2:return a=e.v,e.a(2,a)}},e,this)})),function(){return e.apply(this,arguments)})}]);var e,n}(),ut=n(981).A;function ct(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return lt(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,f={p:0,n:0,v:e,a:h,f:h.bind(e,4),d:function(t,n){return o=t,s=0,u=e,f.n=n,a}};function h(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],h=f.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=h&&((i=n<2&&h<o[1])?(s=0,f.v=r,f.n=o[1]):h<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,f.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&h(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(f.n=-1),h(s,u)):f.n=u:f.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=f.n<0)?u:n.call(r,f))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(lt(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,lt(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,lt(d,"constructor",c),lt(c,"constructor",u),u.displayName="GeneratorFunction",lt(c,i,"GeneratorFunction"),lt(d),lt(d,i,"Generator"),lt(d,r,function(){return this}),lt(d,"toString",function(){return"[object Generator]"}),(ct=function(){return{w:o,m:f}})()}function lt(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}lt=function(e,t,n,r){function o(t,n){lt(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},lt(e,t,n,r)}var dt=function(){function e(){throw t()(this,e),new Error("Discovery is a static class that may not be instantiated")}return o()(e,null,[{key:"precacheClosestEndPointDiscovery",value:(r=N()(ct().m(function t(){return ct().w(function(t){for(;;)if(0===t.n)return t.a(2,new ut(function(t){var n=O.subscribe(function(r){if(r){var i=new r.URL(Ne.discoveryUri.value);return e.discoverClosestEndPointWithCaching(i).then(t).then(function(){return n.dispose()})}})}))},t)})),function(){return r.apply(this,arguments)})},{key:"discoverClosestEndPointWithCaching",value:(n=N()(ct().m(function t(n){var r,i,o;return ct().w(function(t){for(;;)switch(t.n){case 0:if(!((r=n.toString())in e._cache)){t.n=1;break}return t.a(2,e._cache[r]);case 1:return i=new st(n),o=e._cache[r]=i.discoverClosestEndPoint(),e._cache[r].then(function(){O.value.setTimeout(function(){e._cache[r]===o&&delete e._cache[r]},6e4)}).catch(function(){delete e._cache[r]}),t.a(2,o)}},t)})),function(e){return n.apply(this,arguments)})},{key:"clearCachedClosestEndpoint",value:function(t){var n=t.toString();n in e._cache&&delete e._cache[n]}}]);var n,r}();s()(dt,"_cache",{}),dt.precacheClosestEndPointDiscovery();var ft=n(715),ht=n.n(ft),pt=function(){return o()(function e(n){t()(this,e),s()(this,"_sdp",void 0),s()(this,"_audioCodec",void 0),s()(this,"_videoCodec",void 0),s()(this,"_isAudioTrackEnabled",void 0),s()(this,"_isVideoTrackEnabled",void 0),this._sdp=n;var r=this._sdp.split(/(\r\n|\r|\n)/),i=this._sdp.split(/(?:^|[\r\n])m=/);this._audioCodec=this.applyCodec("audio",r),this._videoCodec=this.applyCodec("video",r),this._isAudioTrackEnabled=this.isTrackByTypeEnabled("audio",i),this._isVideoTrackEnabled=this.isTrackByTypeEnabled("video",i)},[{key:"audioCodec",get:function(){return this._audioCodec}},{key:"videoCodec",get:function(){return this._videoCodec}},{key:"isAudioTrackEnabled",get:function(){return this._isAudioTrackEnabled}},{key:"isVideoTrackEnabled",get:function(){return this._isVideoTrackEnabled}},{key:"isTrackByTypeEnabled",value:function(e,t){var n=t.find(function(t){return t.startsWith(e)});return!!n&&!n.includes("a=inactive")}},{key:"applyCodec",value:function(e,t){var n,r=(null===(n=t.find(function(t){return t.includes("m=".concat(e))}))||void 0===n?void 0:n.split(" ")[3])||"",i=t.find(function(e){return e.includes("a=rtpmap:".concat(r))});return((null==i?void 0:i.split(" ")[1])||"").split("/")[0]}}])}(),vt=n(981).A;function gt(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return yt(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,f={p:0,n:0,v:e,a:h,f:h.bind(e,4),d:function(t,n){return o=t,s=0,u=e,f.n=n,a}};function h(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],h=f.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=h&&((i=n<2&&h<o[1])?(s=0,f.v=r,f.n=o[1]):h<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,f.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&h(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(f.n=-1),h(s,u)):f.n=u:f.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=f.n<0)?u:n.call(r,f))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(yt(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,yt(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,yt(d,"constructor",c),yt(c,"constructor",u),u.displayName="GeneratorFunction",yt(c,i,"GeneratorFunction"),yt(d),yt(d,i,"Generator"),yt(d,r,function(){return this}),yt(d,"toString",function(){return"[object Generator]"}),(gt=function(){return{w:o,m:f}})()}function yt(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}yt=function(e,t,n,r){function o(t,n){yt(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},yt(e,t,n,r)}var mt=function(){return o()(function e(n,r,i){var o,a,u,c,l=this;if(t()(this,e),s()(this,"_logger",ee.getLogger("RtcPublishMonitor")),s()(this,"_estimatedRoundTripTime",void 0),s()(this,"_estimatedVideoCodec","unknown"),s()(this,"_estimatedAudioCodec","unknown"),s()(this,"_rtcStatistic",new b({})),s()(this,"_disposables",new ie),s()(this,"_peerConnection",void 0),s()(this,"_isMonitorRunning",!0),s()(this,"_updateTimeout",void 0),s()(this,"_monitorGeneration",0),s()(this,"_availableTracks",null),this._peerConnection=n,this._estimatedRoundTripTime=r,this._peerConnection&&null!==(o=this._peerConnection)&&void 0!==o&&null!==(a=o.currentLocalDescription)&&void 0!==a&&a.sdp&&null!==(u=this._peerConnection)&&void 0!==u&&null!==(c=u.currentRemoteDescription)&&void 0!==c&&c.sdp){var d=new pt(this._peerConnection.currentLocalDescription.sdp),f=new pt(this._peerConnection.currentRemoteDescription.sdp);this._estimatedAudioCodec=f.audioCodec,this._estimatedVideoCodec=f.videoCodec,this._availableTracks={audio:d.isAudioTrackEnabled&&f.isAudioTrackEnabled,video:d.isVideoTrackEnabled&&f.isVideoTrackEnabled};var h=!0;this._disposables.add(i.subscribe(function(e){h?h=!1:e&&l._isMonitorRunning&&(l._monitorGeneration++,O.value.clearTimeout(l._updateTimeout),l._logger.debug("Restarting stats polling after foreground transition"),l.updateStatistic())})),this.updateStatistic()}},[{key:"rtcStatistic",get:function(){return this._rtcStatistic}},{key:"dispose",value:function(){this._monitorGeneration++,this._isMonitorRunning=!1,this._peerConnection=null,this._disposables.dispose(),O.value.clearTimeout(this._updateTimeout),this._updateTimeout=void 0}},{key:"updateStatistic",value:(e=N()(gt().m(function e(){var t,n,r,i,o,a,s,u,c,l,d,f=this;return gt().w(function(e){for(;;)switch(e.p=e.n){case 0:if(!E.getStatsPromiseBasedDisabled){e.n=1;break}return e.a(2);case 1:if(t=this._monitorGeneration,n=function(e){return e.id.includes("Audio")?"audio":e.id.includes("Video")?"video":""},e.p=2,o=null===(i=this._peerConnection)||void 0===i?void 0:i.getStats(null)){e.n=3;break}return e.a(2);case 3:return a=new vt(function(e){r=O.value.setTimeout(function(){return e(void 0)},5e3)}),e.n=4,vt.race([o,a]);case 4:if(s=e.v,t===this._monitorGeneration&&this._isMonitorRunning){e.n=5;break}return e.a(2);case 5:s?(u={},c=this._estimatedRoundTripTime,s.forEach(function(e){if("candidate-pair"===e.type&&e.currentRoundTripTime&&(c=1e3*e.currentRoundTripTime,u.audio&&(u.audio.roundTripTime=c),u.video&&(u.video.roundTripTime=c)),"candidate-pair"===e.type&&e.lastPacketSentTimestamp&&(l=e.lastPacketSentTimestamp,u.audio&&(u.audio.lastPacketSentTimestamp=l),u.video&&(u.video.lastPacketSentTimestamp=l)),"outbound-rtp"===e.type){var t,r=e.kind||e.mediaType||n(e),i="";if(s.forEach(function(t){t.id===e.codecId&&(i=t.mimeType)}),r&&null!==(t=f._availableTracks)&&void 0!==t&&t[r]){var o,a,d,h,p,v,g,y=(e.bytesSent||0)-(null!==(o=null===(a=f._rtcStatistic.value)||void 0===a||null===(d=a[r])||void 0===d?void 0:d.bytesSent)&&void 0!==o?o:0),m=e.timestamp-(null===(h=f._rtcStatistic.value)||void 0===h||null===(p=h[r])||void 0===p?void 0:p.timestamp),_=y&&m?Math.floor(8*y/m*1e3):0;if(u[r]={ssrc:e.ssrc,mediaType:r,timestamp:e.timestamp,bitrate:_,bytesSent:e.bytesSent,packetsSent:e.packetsSent,retransmittedBytesSent:e.retransmittedBytesSent,codec:i||f.getCodecByType(r),roundTripTime:c},(e.lastPacketSentTimestamp||l)&&(u[r].lastPacketSentTimestamp=e.lastPacketSentTimestamp||l),"video"===r&&(u[r].firCount=e.firCount,u[r].frameHeight=e.frameHeight,u[r].frameWidth=e.frameWidth,u[r].framesEncoded=e.framesEncoded,u[r].framesSent=e.framesSent,u[r].headerBytesSent=e.headerBytesSent,u[r].hugeFramesSent=e.hugeFramesSent,u[r].pliCount=e.pliCount,u[r].qpSum=e.qpSum,u[r].totalEncodeTime=e.totalEncodeTime,u[r].totalEncodedBytesTarget=e.totalEncodedBytesTarget,null!==(v=f._rtcStatistic.value)&&void 0!==v&&null!==(g=v.video)&&void 0!==g&&g.framesEncoded)){var b=(e.framesEncoded-f._rtcStatistic.value.video.framesEncoded)/(u[r].timestamp-f._rtcStatistic.value.video.timestamp)*1e3;u[r].fps=b?Math.round(100*b)/100:0}}}}),this._rtcStatistic.value=u):this._logger.debug("getStats() timed out, skipping stats processing"),e.n=8;break;case 6:if(e.p=6,d=e.v,t===this._monitorGeneration&&this._isMonitorRunning){e.n=7;break}return e.a(2);case 7:this._logger.warn("getStats() rejected",d);case 8:return e.p=8,O.value.clearTimeout(r),e.f(8);case 9:this._isMonitorRunning&&t===this._monitorGeneration&&(this._updateTimeout=O.value.setTimeout(function(){return f.updateStatistic()},1e3));case 10:return e.a(2)}},e,this,[[2,6,8,9]])})),function(){return e.apply(this,arguments)})},{key:"getCodecByType",value:function(e){switch(e){case"audio":return this._estimatedAudioCodec||"unknown";case"video":return this._estimatedVideoCodec||"unknown";default:return"unknown"}}}]);var e}(),_t=function(){return o()(function e(){throw t()(this,e),new Error("RtcConfigurationManager is a static class that may not be instantiated")},null,[{key:"truncateIceServers",value:function(e){var t=[];if(!e.iceServers)return e;for(var n=0;n<e.iceServers.length;n++){for(var r=[],i=0;i<2;i++)e.iceServers[n].urls[i]&&r.push(e.iceServers[n].urls[i]);t.push({urls:r,username:e.iceServers[n].username,credential:e.iceServers[n].credential})}return e.iceServers=t,e}}])}(),bt=n(981).A;function Ct(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return wt(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,f={p:0,n:0,v:e,a:h,f:h.bind(e,4),d:function(t,n){return o=t,s=0,u=e,f.n=n,a}};function h(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],h=f.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=h&&((i=n<2&&h<o[1])?(s=0,f.v=r,f.n=o[1]):h<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,f.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&h(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(f.n=-1),h(s,u)):f.n=u:f.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=f.n<0)?u:n.call(r,f))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(wt(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,wt(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,wt(d,"constructor",c),wt(c,"constructor",u),u.displayName="GeneratorFunction",wt(c,i,"GeneratorFunction"),wt(d),wt(d,i,"Generator"),wt(d,r,function(){return this}),wt(d,"toString",function(){return"[object Generator]"}),(Ct=function(){return{w:o,m:f}})()}function wt(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}wt=function(e,t,n,r){function o(t,n){wt(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},wt(e,t,n,r)}function kt(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?kt(Object(n),!0).forEach(function(t){s()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):kt(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var Tt=function(){return o()(function e(n,r,i){t()(this,e),s()(this,"_logger",ee.getLogger("RealTimePublisher")),s()(this,"_publisherContext",void 0),s()(this,"_peerConnectionContext",void 0),s()(this,"_handleStreamFailure",void 0),this._publisherContext=n,this._peerConnectionContext=r,this._handleStreamFailure=i},[{key:"start",value:function(e,t,n){var r=this;if(!O.value.navigatorIsOnLine)return this._publisherContext.state.value=Ve.Offline,bt.resolve();var i=this._peerConnectionContext.mediaStream.value;if(!i)return this._logger.error("Publish failed no media stream provided"),this._publisherContext.state.value=Ve.ConfigurationError,bt.resolve();var o=i.getTracks().reduce(function(e,t){return"audio"===t.kind||"video"===t.kind?e.push(t.kind):r._logger.warn("[%s] Track kind is not supported",t.kind),e},[]);return bt.all([dt.discoverClosestEndPointWithCaching(e),_e.createPeerConnectionOffer("sendonly",o).then(function(e){var t=e.localOffer,n=e.peerConnection;return r._peerConnectionContext.peerConnection.value=n,{localOffer:t,peerConnection:n}})]).then(function(e){var n=ht()(e,2),i=n[0],o=n[1],a=o.localOffer,s=o.peerConnection;return r._publisherContext.online.value=!0,r._publisherContext.endPoint.value=i,r._logger.info("Connecting to [%s]",i.toString()),r._logger.info("Local offer:\n"+a.sdp),E.clientOfferDisabled||!s.supportsSetConfiguration||!s.supportsGetConfiguration||r._publisherContext.failureCount.value>0?(r._peerConnectionContext.disposePeerConnection(),i.publish(r._publisherContext.name,t,null,r._publisherContext.failureCount.value)):i.publish(r._publisherContext.name,t,a,r._publisherContext.failureCount.value)}).then(function(e){var t=e.status;if(r._publisherContext.state.value=r._publisherContext.mapPublishStatusToPublisherStatus(t),r._publisherContext.applyPublishStatus(t),"ok"!==t)return r._publisherContext.stream.value=null,void r._logger.info("[%s] Publish failed with status [%s]",r._publisherContext.streamId,t);var i=e.stream,o=e.rtcConfiguration,a=e.setRemoteDescriptionResponse,s=e.createOfferDescriptionResponse,u=e.createAnswerDescriptionResponse;return r._publisherContext.stream.value=i,r._logger.debug("[%s] Publish completed [%s] [%j] [%j] [%j] [%j]",r._publisherContext.streamId,t,o,a,s,u),r._publisherContext.state.value=r._publisherContext.mapPublishStatusToPublisherStatus(t),r._publisherContext.applyPublishStatus(t),r.applyRtcConfiguration(r._peerConnectionContext.peerConnection.value,o).then(function(e){var t,o=!1,c=!1,l=[];return r._peerConnectionContext.peerConnection.value=e,e.addStream(r._peerConnectionContext.mediaStream.value),e.onicecandidate=function(n){r._publisherContext.stream.value===i&&r._peerConnectionContext.peerConnection.value===e&&(o||Ne.sendLocalCandidates.value&&(n.candidate&&n.candidate.candidate?l.push(n.candidate):c=!0,t||(t=O.value.setTimeout(function(){var t;r._publisherContext.stream.value!==i||o||null===(t=r._publisherContext.endPoint.value)||void 0===t||t.addIceCandidates(i,l,c).then(function(t){var n=t.status,a=t.options;if("ok"===n)null!=a&&a.includes("cancel")&&(o=!0),r._logger.info("[%s] Added ICE candidates with reason [%s] and options [%s]",r._publisherContext.streamId,n,a);else{if(r._publisherContext.stream.value!==i)return;if(r._peerConnectionContext.peerConnection.value!==e)return;r._publisherContext.state.value=r.mapAddIceCandidatesStatusToPublisherStatus(n),r._publisherContext.applyAddIceCandidatesStatus(n),r._logger.warn("[%s] Failed to add ICE candidates with reason [%s]",r._publisherContext.streamId,n),r._handleStreamFailure().catch(function(e){r._logger.error("[%s] Failed handling stream failure after peer connection failed to add ICE candidates with reason [%s]",r._publisherContext.streamId,n,e)})}}).catch(function(t){r._publisherContext.stream.value===i&&r._peerConnectionContext.peerConnection.value===e&&(r._logger.error("[%s] Failed to add ICE candidates",r._publisherContext.streamId,t),r._publisherContext.state.value=Ve.ConnectionError,r._publisherContext.applyUnhandledError(),r._handleStreamFailure().catch(function(e){r._logger.error("[%s] Failed handling stream failure after peer connection failed to add ICE candidates",r._publisherContext.streamId,e)}))})},100))))},e.oniceconnectionstatechange=function(){if(r._publisherContext.stream.value===i&&r._peerConnectionContext.peerConnection.value===e){var t=function(){r._publisherContext.state.value=Ve.ConnectionError,r._publisherContext.publishing.value=!1,r._publisherContext.loading.value=!0,r._handleStreamFailure().catch(function(t){r._logger.error("[%s] Failed handling stream failure after peer connection stopped with state [%s]",r._publisherContext.streamId,e.iceConnectionState,t)})};switch(e.iceConnectionState){case"checking":case"completed":case"connected":case"new":return;case"disconnected":case"failed":return r._logger.info("[%s] ICE connection state changed to [%s], trying to reconnect",r._publisherContext.streamId,e.iceConnectionState),void r.reconnectPeerConnection(e,t);case"closed":return r._logger.info("[%s] ICE connection state changed to [%s], retrying to connect",r._publisherContext.streamId,e.iceConnectionState),void t();default:$(e.iceConnectionState)}}},new bt(function(e){e()}).then(function(){if(a)return r._logger.info("[%s] Set local SDP offer [%s]",r._publisherContext.streamId,a.sessionDescription.sdp),e.setLocalDescription(a.sessionDescription).catch(function(e){throw r._logger.info("[%s] Failed to set local description [%j] with message [%s]",r._publisherContext.streamId,a.sessionDescription,e.message),e})}).then(function(){var t;if(u)return r._logger.info("[%s] Set remote SDP answer [%s]",r._publisherContext.streamId,null==u||null===(t=u.sessionDescription)||void 0===t?void 0:t.sdp),e.setRemoteDescription(u.sessionDescription).catch(function(e){throw r._logger.info("[%s] Failed to set remote description [%j] with message [%s]",r._publisherContext.streamId,null==u?void 0:u.sessionDescription,e.message),e})}).then(function(){if(s)return r._logger.info("[%s] Set remote SDP offer [%s]",r._publisherContext.streamId,s.sessionDescription.sdp),e.setRemoteDescription(s.sessionDescription).catch(function(e){throw r._logger.info("[%s] Failed to set remote description [%j] with message [%s]",r._publisherContext.streamId,null==u?void 0:u.sessionDescription,e.message),e}).then(function(){return e.createAnswer({offerToReceiveAudio:!1,offerToReceiveVideo:!1})}).then(function(e){r._logger.info("[%s] Set local SDP answer [%s]",r._publisherContext.streamId,e.sdp);var t=r._publisherContext.endPoint.value;if(!t)throw new Error("Failed to set remote description, EndPoint is not set");return t.setRemoteDescription(i,e)}).then(function(t){var n=t.status,i=t.sessionDescription;if(r._publisherContext.state.value=r.mapSetRemoteDescriptionStatusToPublisherStatus(n),r._publisherContext.applySetRemoteDescriptionStatus(n),"ok"===n)return r._logger.info("[%s] Set local SDP [%s]",r._publisherContext.streamId,null==i?void 0:i.sdp),e.setLocalDescription(i).catch(function(e){throw r._logger.info("[%s] Failed to set local description [%j] with message [%s]",r._publisherContext.streamId,i,e.message),e})})}).then(function(){var t;if(n.success(r._publisherContext.streamId),r._publisherContext.state.value!==Ve.Starting)return bt.resolve();r._publisherContext.state.value=Ve.Publishing,r._publisherContext.publishing.value=!0;var i=new mt(e,null!==(t=r._publisherContext.endPoint.value)&&void 0!==t&&t.roundTripTime?r._publisherContext.endPoint.value.roundTripTime/4:0,Ne.applicationActivityMonitor.isForeground);return r._publisherContext.disposables.add(i),i.rtcStatistic.subscribe(function(e){r._publisherContext.rtcStatistics.value=e}),bt.resolve()})})})}},{key:"applyRtcConfiguration",value:(e=N()(Ct().m(function e(t,n){var r;return Ct().w(function(e){for(;;)switch(e.n){case 0:if(t){e.n=1;break}return n=_t.truncateIceServers(n),e.a(2,Ne.peerConnectionFactory.value.createPeerConnection(n));case 1:return r=St(St({},t.getConfiguration()),n),t.setConfiguration(r),e.a(2,t)}},e)})),function(t,n){return e.apply(this,arguments)})},{key:"reconnectPeerConnection",value:function(e,t){var n=this;if("closed"!==e.iceConnectionState)if(this._publisherContext.state.value=Ve.Reconnecting,this._peerConnectionContext.peerConnectionReconnectAttempts<Ne.maximalNumberOfPeerConnectionReconnectAttempts||!Ne.automaticallyReconnectPeerConnection){var r;this._peerConnectionContext.peerConnectionReconnectAttempts++;var i="offer"===(null===(r=e.currentLocalDescription)||void 0===r?void 0:r.type);if(E.clientOfferDisabled||!e.supportsSetConfiguration||!e.supportsGetConfiguration||!i){var o=O.value.setTimeout(function(){n.reconnectPeerConnection(e,t)},1e3);return void this._publisherContext.disposables.add(new g(function(){return O.value.clearTimeout(o)}))}this._logger.info("Reconnecting peer connection by restarting ICE");var a=e.currentLocalDescription;e.createOffer({iceRestart:!0}).then(function(r){return e.setLocalDescription(r).then(function(){return e.setLocalDescription(a).then(function(){if("disconnected"===e.iceConnectionState||"failed"===e.iceConnectionState){var r=O.value.setTimeout(function(){n.reconnectPeerConnection(e,t)},1e3);n._publisherContext.disposables.add(new g(function(){return O.value.clearTimeout(r)}))}else n._publisherContext.state.value=Ve.Publishing})})}).catch(function(e){n._logger.error("Failed to reconnect peer connection",e),n._peerConnectionContext.peerConnectionReconnectAttempts=0,t()})}else this._logger.info("Failed to reconnect peer connection after [%s] attempts, performing full recovery",this._peerConnectionContext.peerConnectionReconnectAttempts),this._peerConnectionContext.peerConnectionReconnectAttempts=0,t()}},{key:"mapSetRemoteDescriptionStatusToPublisherStatus",value:function(e){switch(e){case"ok":return Ve.Starting;case"unauthorized":return Ve.Unauthorized;case"not-found":return Ve.NotFound;case"capacity":case"rate-limited":case"timeout":return Ve.Recovering;case"failed":return Ve.Error;default:$(e)}}},{key:"mapAddIceCandidatesStatusToPublisherStatus",value:function(e){switch(e){case"ok":return this._publisherContext.state.value;case"unauthorized":return Ve.Unauthorized;case"not-found":return Ve.NotFound;case"capacity":case"rate-limited":case"timeout":return Ve.Recovering;case"failed":return Ve.Error;default:$(e)}}}]);var e}(),xt=n(981).A;function Ot(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return Pt(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,f={p:0,n:0,v:e,a:h,f:h.bind(e,4),d:function(t,n){return o=t,s=0,u=e,f.n=n,a}};function h(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],h=f.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=h&&((i=n<2&&h<o[1])?(s=0,f.v=r,f.n=o[1]):h<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,f.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&h(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(f.n=-1),h(s,u)):f.n=u:f.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=f.n<0)?u:n.call(r,f))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(Pt(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,Pt(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,Pt(d,"constructor",c),Pt(c,"constructor",u),u.displayName="GeneratorFunction",Pt(c,i,"GeneratorFunction"),Pt(d),Pt(d,i,"Generator"),Pt(d,r,function(){return this}),Pt(d,"toString",function(){return"[object Generator]"}),(Ot=function(){return{w:o,m:f}})()}function Pt(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}Pt=function(e,t,n,r){function o(t,n){Pt(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},Pt(e,t,n,r)}var Et=function(){return o()(function e(n,r,i){var o=this;t()(this,e),s()(this,"_logger",ee.getLogger("Publisher")),s()(this,"_tokenContext",void 0),s()(this,"_publisherContext",void 0),s()(this,"_peerConnectionContext",void 0),s()(this,"_stateContext",void 0),s()(this,"_exponentialBackoff",void 0),s()(this,"_publisherStartTime",void 0),s()(this,"_readOnlyToken",void 0),s()(this,"_readOnlyPeerConnection",void 0),s()(this,"_readOnlyState",void 0),s()(this,"_readOnlyTokenExpiring",void 0),s()(this,"_readOnlyAuthorized",void 0),s()(this,"_readOnlyOnline",void 0),s()(this,"_readOnlyLoading",void 0),s()(this,"_readOnlyPublishing",void 0),s()(this,"_readOnlyStandby",void 0),s()(this,"_readOnlyStopped",void 0),s()(this,"_readOnlyFailureCount",void 0),s()(this,"_readOnlyEndPoint",void 0),s()(this,"_readOnlyStream",void 0),s()(this,"_readOnlyRtcStatistics",void 0),s()(this,"_readOnlyMediaStream",void 0),s()(this,"_metricsService",void 0),s()(this,"_sessionTelemetry",void 0);var a={forceGarbageCollectionOnRestart:Ne.forceGarbageCollectionOnRestart};this._tokenContext=new We(r),this._publisherContext=new Je(i),this._peerConnectionContext=new Ke(a),this._stateContext=new Qe,this._exponentialBackoff=new xe,this._publisherStartTime=Date.now(),this._readOnlyToken=new C(this._tokenContext.token),this._readOnlyPeerConnection=new C(this._peerConnectionContext.peerConnection),this._readOnlyState=new C(this._publisherContext.state),this._readOnlyTokenExpiring=new C(this._tokenContext.tokenExpiring),this._readOnlyAuthorized=new C(this._publisherContext.authorized),this._readOnlyOnline=new C(this._publisherContext.online),this._readOnlyLoading=new C(this._publisherContext.loading),this._readOnlyPublishing=new C(this._publisherContext.publishing),this._readOnlyStandby=new C(this._publisherContext.standby),this._readOnlyStopped=new C(this._publisherContext.stopped),this._readOnlyFailureCount=new C(this._publisherContext.failureCount),this._readOnlyEndPoint=new C(this._publisherContext.endPoint),this._readOnlyStream=new C(this._publisherContext.stream),this._readOnlyRtcStatistics=new C(this._publisherContext.rtcStatistics),this._readOnlyMediaStream=new C(this._peerConnectionContext.mediaStream),this._peerConnectionContext.mediaStream.value=n;var u=re.parseToken(this._tokenContext.token.value),c=(u.uri||Ne.discoveryUri.value).toString();Ne.tenancy.value=u.tenancy||Ne.tenancy.value,ke.uri.value=c,this._metricsService=Me.getMetricsService(c),this._sessionTelemetry=new He(Ne.pageLoadTime,this._metricsService),this._publisherContext.publisherDisposables.add(this._sessionTelemetry),this._publisherContext.publisherDisposables.add(this._publisherContext.state.subscribe(function(e){o._publisherContext.clearFailureCountTimeout&&O.value.clearTimeout(o._publisherContext.clearFailureCountTimeout),o._publisherContext.failureCount.value&&e===Ve.Publishing&&(o._publisherContext.clearFailureCountTimeout=O.value.setTimeout(function(){o._publisherContext.failureCount.value=0},3e3))}));var l=function(){o._publisherContext.stream.value&&o._publisherContext.endPoint.value&&o._publisherContext.endPoint.value.destroyStreamOnUnmount(o._publisherContext.stream.value,"client:termination-on-window-unload")};O.value.addWindowEventListener("beforeunload",l),this._publisherContext.publisherDisposables.add(new g(function(){O.value.removeWindowEventListener("beforeunload",l)})),this.start()},[{key:"token",get:function(){return this._tokenContext.token.value},set:function(e){this._publisherContext.disposables.dispose(),this._tokenContext.token.value=e,this._tokenContext.tokenExpiring.value=!1;var t=re.parseToken(this._tokenContext.token.value),n=(t.uri||Ne.discoveryUri.value).toString();Ne.tenancy.value=t.tenancy||Ne.tenancy.value,ke.uri.value=n,this._metricsService=Me.getMetricsService(n),this.start()}},{key:"peerConnection",get:function(){return this._readOnlyPeerConnection}},{key:"state",get:function(){return this._readOnlyState}},{key:"tokenExpiring",get:function(){return this._readOnlyTokenExpiring}},{key:"authorized",get:function(){return this._readOnlyAuthorized}},{key:"online",get:function(){return this._readOnlyOnline}},{key:"loading",get:function(){return this._readOnlyLoading}},{key:"publishing",get:function(){return this._readOnlyPublishing}},{key:"standby",get:function(){return this._readOnlyStandby}},{key:"stopped",get:function(){return this._readOnlyStopped}},{key:"failureCount",get:function(){return this._readOnlyFailureCount}},{key:"endPoint",get:function(){return this._readOnlyEndPoint}},{key:"stream",get:function(){return this._readOnlyStream}},{key:"streamId",get:function(){return this._publisherContext.streamId}},{key:"rtcStatistics",get:function(){return this._readOnlyRtcStatistics}},{key:"mediaStream",get:function(){return this._readOnlyMediaStream}},{key:"stop",value:(a=N()(Ot().m(function e(t){var n=this;return Ot().w(function(e){for(;;)if(0===e.n)return e.a(2,new xt(function(e){if(!n._stateContext.isStarting.value)return n.processStop(t),void e();n._publisherContext.disposables.add(n._stateContext.isStarting.subscribe(function(r){r||(n.processStop(t),e())}))}))},e)})),function(e){return a.apply(this,arguments)})},{key:"processStop",value:function(e){this.cleanUpResources(e),this._peerConnectionContext.peerConnection.value&&(this._peerConnectionContext.peerConnection.value.close(),this._peerConnectionContext.peerConnection.value=null),this._publisherContext.state.value=Ve.Stopped}},{key:"dispose",value:(i=N()(Ot().m(function e(){var t=this;return Ot().w(function(e){for(;;)if(0===e.n)return e.a(2,this.stop("client:channel-dispose").then(function(){t._publisherContext.publisherDisposables.dispose(),t._stateContext.isDisposed=!0}))},e,this)})),function(){return i.apply(this,arguments)})},{key:"getUri",value:function(e){return re.parseToken(e).uri||(this._logger.info("Fall back to the default discover URI [%s]",Ne.discoveryUri.value),new O.value.URL(Ne.discoveryUri.value))}},{key:"start",value:(r=N()(Ot().m(function e(){return Ot().w(function(e){for(;;)switch(e.n){case 0:if(!this._stateContext.isDisposed){e.n=1;break}throw new Error("Channel was already disposed");case 1:if(!this._stateContext.isStarting.value){e.n=2;break}return this._logger.info("Publisher is already starting, skipping start"),e.a(2);case 2:return this._stateContext.isStarting.value=!0,e.a(2,this.processStart())}},e,this)})),function(){return r.apply(this,arguments)})},{key:"processStart",value:(n=N()(Ot().m(function e(){var t,n,r,i,o,a=this;return Ot().w(function(e){for(;;)switch(e.n){case 0:if(this._publisherContext.state.value=Ve.Starting,this.cleanUpResources("client:start"),t=this._tokenContext.token.value,n=this._sessionTelemetry.listenOnStreamSetup(),re.isEncodedEdgeTokenValid(t)){e.n=1;break}return this._logger.error("Failed to parse token [%s]",t),this._publisherContext.state.value=Ve.Unauthorized,this._publisherContext.authorized.value=!1,this._stateContext.isStarting.value=!1,e.a(2);case 1:return this._publisherContext.loading.value=!0,r=this.getUri(t),this._publisherContext.disposables.add(this._publisherContext.state.subscribe(function(e){e!==Ve.Error&&e!==Ve.Recovering||dt.clearCachedClosestEndpoint(r)})),i=function(){return new xt(function(e){return a._stateContext.isStarting.value=!1,e(a.handleStreamFailure())})},o=new Tt(this._publisherContext,this._peerConnectionContext,i),e.a(2,o.start(r,t,n).then(function(){a._publisherContext.loading.value=!1}).catch(function(e){n.fail(),a._publisherContext.failureCount.value++,a._publisherContext.online.value=!1,a.cleanUpResources("client:cleanup-after-failed-setup"),a._publisherContext.state.value=Ve.ClientStartError,a._logger.error("Failed to start publishing",e)}).finally(function(){if(a._stateContext.isStarting.value=!1,a._publisherContext.state.value!==Ve.Publishing&&Ne.automaticRetryOnFailure){var e=O.value.setTimeout(function(){a.handleStreamFailure().catch(function(e){a._logger.error("Failed handling stream failure",e)})},a.getRetryInterval());a._publisherContext.disposables.add(new g(function(){O.value.clearTimeout(e)}))}else a._publisherContext.startReconnectionAttemptsTimeInMilliseconds=0}))}},e,this)})),function(){return n.apply(this,arguments)})},{key:"setMediaStream",value:function(e){var t=this;this._peerConnectionContext.mediaStream.value=e,this._peerConnectionContext.peerConnection.value&&e.getTracks().forEach(function(e){var n;null===(n=t._peerConnectionContext.peerConnection.value)||void 0===n||n.getSenders().forEach(function(t){var n;e.kind===(null==t||null===(n=t.track)||void 0===n?void 0:n.kind)&&e.id!==t.track.id&&t.replaceTrack(e)})})}},{key:"getRetryInterval",value:function(){switch(this._publisherContext.state.value){case Ve.Offline:return 15e3;case Ve.Initializing:case Ve.NotFound:case Ve.Error:case Ve.Recovering:case Ve.Unauthorized:case Ve.GeoRestricted:case Ve.GeoBlocked:case Ve.Stopped:case Ve.Starting:case Ve.Publishing:case Ve.Reconnecting:case Ve.UnsupportedFeature:case Ve.ConfigurationError:case Ve.TransientConfigurationError:case Ve.ConnectionError:case Ve.ClientStartError:return this._exponentialBackoff.getExponentialBackoffIntervalByFailureCount(this._publisherContext.failureCount.value);default:$(this._publisherContext.state.value)}}},{key:"handleStreamFailure",value:(e=N()(Ot().m(function e(){var t;return Ot().w(function(e){for(;;)switch(e.n){case 0:t=this._publisherContext.state.value,e.n=t===Ve.Error||t===Ve.Reconnecting||t===Ve.Offline||t===Ve.Recovering||t===Ve.TransientConfigurationError||t===Ve.ConnectionError||t===Ve.ClientStartError?1:t===Ve.Unauthorized?3:t===Ve.GeoRestricted?4:t===Ve.GeoBlocked?5:t===Ve.Stopped?6:t===Ve.Publishing?7:t===Ve.Initializing?8:t===Ve.Starting?9:t===Ve.UnsupportedFeature?10:t===Ve.NotFound?11:t===Ve.ConfigurationError?12:13;break;case 1:if(this._publisherContext.startReconnectionAttemptsTimeInMilliseconds||(this._publisherContext.startReconnectionAttemptsTimeInMilliseconds=Date.now()),!(72e5<=Date.now()-this._publisherContext.startReconnectionAttemptsTimeInMilliseconds)){e.n=2;break}return this._logger.info("Publisher stopped with state [%s] [%s] after exceeding timeout",this._publisherContext.state.value,Ve[this._publisherContext.state.value]),e.a(2);case 2:return this._logger.info("Retry start with initial state [%s] [%s]",this._publisherContext.state.value,Ve[this._publisherContext.state.value]),e.a(3,14);case 3:return this._logger.info("Publisher is unauthorized, skipping retry of start. Please provide a new token and invoke start()"),e.a(2);case 4:return this._logger.info("Publisher is geo restricted, skipping retry of start. Please provide a new token and invoke start()"),e.a(2);case 5:return this._logger.info("Publisher is geo blocked, skipping retry of start. Please provide a new token and invoke start()"),e.a(2);case 6:return this._logger.info("Publisher is stopped, skipping retry of start."),e.a(2);case 7:return this._logger.info("Publisher is publishing, skipping retry of start"),e.a(2);case 8:return this._logger.info("Publisher is initializing, skipping retry of start"),e.a(2);case 9:return this._logger.info("Publisher is already starting, skipping retry of start"),e.a(2);case 10:return this._logger.info("Publisher is stopped due to unsupported feature, skipping retry of start."),e.a(2);case 11:return this._logger.info("Publisher is stopped due to channel not found, skipping retry of start."),e.a(2);case 12:return this._logger.info("Publisher is stopped due to configuration error, skipping retry of start."),e.a(2);case 13:$(this._publisherContext.state.value);case 14:return e.a(2,this.start())}},e,this)})),function(){return e.apply(this,arguments)})},{key:"cleanUpResources",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"client:termination";this._publisherContext.disposables.dispose(),this._peerConnectionContext.disposePeerConnection(),this._publisherContext.publishing.value=!1,this._publisherContext.stopped.value=!0,this._publisherContext.standby.value=!1,this._publisherContext.stream.value&&this._publisherContext.endPoint.value&&this._publisherContext.endPoint.value.destroyStream(this._publisherContext.stream.value,t).then(function(t){var n=t.status;"ok"===n?e._logger.info("[%s] Destroyed stream with reason [%s]",e.streamId,n):e._logger.warn("[%s] Failed to destroy stream with reason [%s]",e.streamId,n)}).catch(function(t){e._logger.error("[%s] Failed to destroy stream",e.streamId,t)}),this._publisherContext.stream.value=null,this._publisherContext.endPoint.value=null,this._peerConnectionContext.peerConnectionReconnectAttempts=0}}]);var e,n,r,i,a}(),Rt=function(){return o()(function e(){throw t()(this,e),new Error("Publishers is a static class that may not be instantiated")},null,[{key:"createPublisher",value:function(e){if(!Ne.initialized.value)throw new Error("SDK is not loaded.");return new Et(e.mediaStream,e.token,e.name)}}])}(),Lt={SDK:Ne,Publishers:Rt,PublisherState:Ve}})(),r})());
2
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.phenix=t():e.phenix=t()}(self,()=>(()=>{var e={981:(e,t,n)=>{"use strict";n.d(t,{A:()=>f});var r=n(738),i=n.n(r),o=n(383),a=n.n(o),s=n(579),u=n.n(s),c=n(693),l=n.n(c),d=u()(function e(t,n,r){a()(this,e),l()(this,"onFulfilled",void 0),l()(this,"onRejected",void 0),l()(this,"promise",void 0),this.onFulfilled="function"==typeof t?t:null,this.onRejected="function"==typeof n?n:null,this.promise=r}),h=function(){function e(t){if(a()(this,e),l()(this,"_state",void 0),l()(this,"_handled",void 0),l()(this,"_value",void 0),l()(this,"_deferreds",void 0),!(this instanceof e))throw new TypeError("Promises must be constructed via new");if("function"!=typeof t)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=null,this._deferreds=[],this.doResolve(t)}return u()(e,[{key:"doResolve",value:function(e){var t=this,n=!1;try{e(function(e){n||(n=!0,t.promiseResolve(e))},function(e){n||(n=!0,t.promiseReject(e))})}catch(e){if(n)return;n=!0,this.promiseReject(e)}}},{key:"promiseResolve",value:function(t){var n=this;try{if(t===n)throw new TypeError("A Promise cannot be resolved with it self.");if(t&&("object"===i()(t)||"function"==typeof t)){var r=t.then;if(t instanceof e)return n._state=3,n._value=t,void n.finale();if("function"==typeof r)return void n.doResolve(function(){r.apply(t,arguments)})}n._state=1,n._value=t,n.finale()}catch(e){n.promiseReject(e)}}},{key:"promiseReject",value:function(e){this._state=2,this._value=e,this.finale()}},{key:"finale",value:function(){var t=this;2===this._state&&0===this._deferreds.length&&e._immediate(function(){t._handled||e._unhandledRejection(t._value)});for(var n=0,r=this._deferreds.length;n<r;n++)this.handle(this._deferreds[n]);this._deferreds=[]}},{key:"handle",value:function(t){for(var n=this;3===n._state;)n=n._value;0!==n._state?(n._handled=!0,e._immediate(function(){var e=1===n._state?t.onFulfilled:t.onRejected;if(null!==e){var r;try{r=e(n._value)}catch(e){return void t.promise.promiseReject(e)}t.promise.promiseResolve(r)}else 1===n._state?t.promise.promiseResolve(n._value):t.promise.promiseReject(n._value)})):n._deferreds.push(t)}}],[{key:"all",value:function(t){return new e(function(e,n){if(!Array.isArray(t))return n(new TypeError("Promise.all accepts an array"));var r=Array.prototype.slice.call(t);if(0===r.length)return e([]);for(var o=r.length,a=function(t,s){try{if(s&&("object"===i()(s)||"function"==typeof s)){var u=s.then;if("function"==typeof u)return void u.call(s,function(e){return a(t,e)},n)}r[t]=s,0===--o&&e(r)}catch(e){n(e)}},s=0;s<r.length;s++)a(s,r[s])})}},{key:"resolve",value:function(t){return t&&"object"===i()(t)&&t.constructor===e?t:new e(function(e){return e(t)})}},{key:"reject",value:function(t){return new e(function(e,n){return n(t)})}},{key:"race",value:function(t){return new e(function(n,r){if(!Array.isArray(t))return r(new TypeError("Promise.race accepts an array"));for(var i=0,o=t.length;i<o;i++)e.resolve(t[i]).then(n,r)})}},{key:"_immediate",value:function(e){window.setTimeout(e,0)}},{key:"_unhandledRejection",value:function(e){"undefined"!=typeof console&&console&&console.warn("Possible Unhandled Promise Rejection:",e)}}])}();h.prototype.catch=function(e){return this.then(null,e)},h.prototype.then=function(e,t){var n=new h(function(){return null});return this.handle(new d(e,t,n)),n},h.prototype.finally=function(e){return this.then(function(t){return h.resolve(e()).then(function(){return t},function(){return null})},function(t){return h.resolve(e()).then(function(){return h.reject(t)},function(){return null})})};var f=h},79:e=>{e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r},e.exports.__esModule=!0,e.exports.default=e.exports},987:e=>{e.exports=function(e){if(Array.isArray(e))return e},e.exports.__esModule=!0,e.exports.default=e.exports},901:(e,t,n)=>{var r=n(79);e.exports=function(e){if(Array.isArray(e))return r(e)},e.exports.__esModule=!0,e.exports.default=e.exports},475:e=>{e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.__esModule=!0,e.exports.default=e.exports},293:(e,t,n)=>{var r=n(981).A;function i(e,t,n,i,o,a,s){try{var u=e[a](s),c=u.value}catch(e){return void n(e)}u.done?t(c):r.resolve(c).then(i,o)}e.exports=function(e){return function(){var t=this,n=arguments;return new r(function(r,o){var a=e.apply(t,n);function s(e){i(a,r,o,s,u,"next",e)}function u(e){i(a,r,o,s,u,"throw",e)}s(void 0)})}},e.exports.__esModule=!0,e.exports.default=e.exports},383:e=>{e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.__esModule=!0,e.exports.default=e.exports},646:(e,t,n)=>{var r=n(550),i=n(636);e.exports=function(e,t,n){if(r())return Reflect.construct.apply(null,arguments);var o=[null];o.push.apply(o,t);var a=new(e.bind.apply(e,o));return n&&i(a,n.prototype),a},e.exports.__esModule=!0,e.exports.default=e.exports},579:(e,t,n)=>{var r=n(736);function i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,r(i.key),i)}}e.exports=function(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e},e.exports.__esModule=!0,e.exports.default=e.exports},693:(e,t,n)=>{var r=n(736);e.exports=function(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e},e.exports.__esModule=!0,e.exports.default=e.exports},72:e=>{function t(n){return e.exports=t=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},e.exports.__esModule=!0,e.exports.default=e.exports,t(n)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},511:(e,t,n)=>{var r=n(636);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&r(e,t)},e.exports.__esModule=!0,e.exports.default=e.exports},691:e=>{e.exports=function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}},e.exports.__esModule=!0,e.exports.default=e.exports},550:e=>{function t(){try{var n=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(n){}return(e.exports=t=function(){return!!n},e.exports.__esModule=!0,e.exports.default=e.exports)()}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},291:e=>{e.exports=function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)},e.exports.__esModule=!0,e.exports.default=e.exports},156:e=>{e.exports=function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o,a,s=[],u=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);u=!0);}catch(e){c=!0,i=e}finally{try{if(!u&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw i}}return s}},e.exports.__esModule=!0,e.exports.default=e.exports},752:e=>{e.exports=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.")},e.exports.__esModule=!0,e.exports.default=e.exports},869:e=>{e.exports=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.")},e.exports.__esModule=!0,e.exports.default=e.exports},847:(e,t,n)=>{var r=n(893);e.exports=function(e,t){if(null==e)return{};var n,i,o=r(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)n=a[i],t.indexOf(n)>=0||{}.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o},e.exports.__esModule=!0,e.exports.default=e.exports},893:e=>{e.exports=function(e,t){if(null==e)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n},e.exports.__esModule=!0,e.exports.default=e.exports},452:(e,t,n)=>{var r=n(738).default,i=n(475);e.exports=function(e,t){if(t&&("object"==r(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return i(e)},e.exports.__esModule=!0,e.exports.default=e.exports},636:e=>{function t(n,r){return e.exports=t=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},e.exports.__esModule=!0,e.exports.default=e.exports,t(n,r)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},715:(e,t,n)=>{var r=n(987),i=n(156),o=n(122),a=n(752);e.exports=function(e,t){return r(e)||i(e,t)||o(e,t)||a()},e.exports.__esModule=!0,e.exports.default=e.exports},132:(e,t,n)=>{var r=n(901),i=n(291),o=n(122),a=n(869);e.exports=function(e){return r(e)||i(e)||o(e)||a()},e.exports.__esModule=!0,e.exports.default=e.exports},45:(e,t,n)=>{var r=n(738).default;e.exports=function(e,t){if("object"!=r(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!=r(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)},e.exports.__esModule=!0,e.exports.default=e.exports},736:(e,t,n)=>{var r=n(738).default,i=n(45);e.exports=function(e){var t=i(e,"string");return"symbol"==r(t)?t:t+""},e.exports.__esModule=!0,e.exports.default=e.exports},738:e=>{function t(n){return e.exports=t="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.exports.__esModule=!0,e.exports.default=e.exports,t(n)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},122:(e,t,n)=>{var r=n(79);e.exports=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n={}.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)?r(e,t):void 0}},e.exports.__esModule=!0,e.exports.default=e.exports},837:(e,t,n)=>{var r=n(72),i=n(636),o=n(691),a=n(646);function s(t){var n="function"==typeof Map?new Map:void 0;return e.exports=s=function(e){if(null===e||!o(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==n){if(n.has(e))return n.get(e);n.set(e,t)}function t(){return a(e,arguments,r(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),i(t,e)},e.exports.__esModule=!0,e.exports.default=e.exports,s(t)}e.exports=s,e.exports.__esModule=!0,e.exports.default=e.exports}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={exports:{}};return e[r](o,o.exports,n),o.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{"use strict";n.r(r),n.d(r,{PublisherState:()=>Be,Publishers:()=>Gt,SDK:()=>Ne,default:()=>Bt});var e=n(383),t=n.n(e),i=n(579),o=n.n(i),a=n(693),s=n.n(a),u=n(132),c=n.n(u),l=n(452),d=n.n(l),h=n(72),f=n.n(h),p=n(511),v=n.n(p),g=function(){return o()(function e(n){t()(this,e),s()(this,"_disposed",void 0),s()(this,"_disposable",void 0),this._disposed=!1,this._disposable=n},[{key:"dispose",value:function(){if(!this._disposed)return this._disposed=!0,this._disposable.call(this)}}])}();function y(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(y=function(){return!!e})()}var m,_=function(e){function n(e,r){return t()(this,n),i=this,o=n,a=[function(){var t=e.indexOf(r);t>=0&&e.splice(t,1)}],o=f()(o),d()(i,y()?Reflect.construct(o,a||[],f()(i).constructor):o.apply(i,a));var i,o,a}return v()(n,e),o()(n)}(g),b=function(){return o()(function e(n){t()(this,e),s()(this,"_listeners",void 0),s()(this,"_value",void 0),this._listeners=[],this._value=n},[{key:"value",get:function(){return this._value},set:function(e){var t=this._value!==e;if(t&&e){var n=e;"function"==typeof n.equals&&(t=!n.equals(this._value))}if(t){this._value=e;for(var r=0,i=c()(this._listeners);r<i.length;r++)(0,i[r])(e)}}},{key:"subscribe",value:function(e){return this._listeners.push(e),e(this._value),new _(this._listeners,e)}}])}(),C=function(){return o()(function e(n){t()(this,e),s()(this,"_subject",void 0),this._subject=n},[{key:"value",get:function(){return this._subject.value}},{key:"subscribe",value:function(e){return this._subject.subscribe(e)}}])}(),w={document,location,navigator,window},k=function(){function e(n){t()(this,e),s()(this,"_document",void 0),s()(this,"_location",void 0),s()(this,"_navigator",void 0),s()(this,"_window",void 0),this._document=n.document,this._location=n.location,this._navigator=n.navigator,this._window=n.window}return o()(e,[{key:"AbortController",get:function(){return this._window.AbortController}},{key:"FormData",get:function(){return this._window.FormData}},{key:"HTMLVideoElement",get:function(){return this._window.HTMLVideoElement}},{key:"MediaStream",get:function(){return this._window.MediaStream}},{key:"MediaStreamTrack",get:function(){return this._window.MediaStreamTrack}},{key:"MediaSource",get:function(){return this._window.MediaSource}},{key:"RTCPeerConnection",get:function(){return this._window.RTCPeerConnection}},{key:"RTCSessionDescription",get:function(){return this._window.RTCSessionDescription}},{key:"RTCIceCandidate",get:function(){return this._window.RTCIceCandidate}},{key:"URL",get:function(){return this._window.URL}},{key:"URLSearchParams",get:function(){return this._window.URLSearchParams}},{key:"addDocumentEventListener",get:function(){return this._document.addEventListener.bind(this._document)}},{key:"addWindowEventListener",get:function(){return this._window.addEventListener.bind(this._window)}},{key:"clearInterval",get:function(){return this._window.clearInterval.bind(this._window)}},{key:"clearTimeout",get:function(){return this._window.clearTimeout.bind(this._window)}},{key:"documentCreateElement",get:function(){return this._document.createElement.bind(this._document)}},{key:"documentHasFocus",get:function(){return this._document.hasFocus.bind(this._document)}},{key:"documentIsHidden",get:function(){return!!this._document.hidden}},{key:"documentQuerySelector",get:function(){return this._document.querySelector.bind(this._document)}},{key:"fetch",get:function(){return this._window.fetch.bind(this._window)}},{key:"locationHostname",get:function(){return this._location.hostname}},{key:"locationSearch",get:function(){return this._location.search}},{key:"navigatorConnection",get:function(){return this._navigator.connection}},{key:"navigatorIsOnLine",get:function(){return this._navigator.onLine}},{key:"pageLoadTime",get:function(){return this._window.__phenixPageLoadTime||this._window.__pageLoadTime}},{key:"sendBeacon",get:function(){var e=this;return this._navigator.sendBeacon?function(t,n){return e._navigator.sendBeacon(t,void 0===n?null:n)}:void 0}},{key:"queueMicrotask",get:function(){return this._window.queueMicrotask.bind(this._window)}},{key:"removeDocumentEventListener",get:function(){return this._document.removeEventListener.bind(this._document)}},{key:"requestAnimationFrame",get:function(){return this._window.requestAnimationFrame.bind(this._window)}},{key:"removeWindowEventListener",get:function(){return this._window.removeEventListener.bind(this._window)}},{key:"setInterval",get:function(){return this._window.setInterval.bind(this._window)}},{key:"setTimeout",get:function(){return this._window.setTimeout.bind(this._window)}}],[{key:"setInstance",value:function(e){throw new Error("This build does not support setting the GlobalScope")}},{key:"getInstance",value:function(){return e._readOnlyInstance}},{key:"subscribe",value:function(t){return e._readOnlyInstance.subscribe(t)}}])}();m=k,s()(k,"_instance",new b(new m(w))),s()(k,"_readOnlyInstance",new C(m._instance));var S,T,x,O=k.getInstance(),P=function(){function e(){t()(this,e)}return o()(e,null,[{key:"browserNameAndVersion",get:function(){return e._browserNameAndVersion}},{key:"browserName",get:function(){return this._browserName}},{key:"browserMajorVersion",get:function(){return this._browserMajorVersion}},{key:"isAndroid",get:function(){return e._isAndroid}},{key:"isChrome69",get:function(){return e._isChrome69}},{key:"isChrome70",get:function(){return e._isChrome70}},{key:"isChrome71",get:function(){return e._isChrome71}},{key:"isChrome72",get:function(){return e._isChrome72}},{key:"isChrome74",get:function(){return e._isChrome74}},{key:"isChrome75",get:function(){return e._isChrome75}},{key:"isChrome76",get:function(){return e._isChrome76}},{key:"isChrome77",get:function(){return e._isChrome77}},{key:"isMobile",value:function(){return e._isMobile}},{key:"parseBrowserNameAndVersion",value:function(){if(!navigator||!navigator.userAgent)return"";var t=navigator.userAgent.match(e._browserNameAndVersionRegex);return t&&t[0]?t[0]:e.parseBrowserNameAndVersionForIE()}},{key:"parseBrowserName",value:function(){if(!e._browserNameAndVersion)return"";var t=e._browserNameAndVersion.split("/");return t&&t[0]?t[0]:""}},{key:"parseBrowserMajorVersion",value:function(){if(!e._browserNameAndVersion)return 0;var t=e._browserNameAndVersion.split("/");if(!t||!t[1])return 0;var n=t[1];return n&&Number(n.split(".")[0])||0}},{key:"parseBrowserNameAndVersionForIE",value:function(){if(!navigator||!navigator.userAgent)return"";var e=navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return"IE/".concat(parseInt(e.substring(t+5,e.indexOf(".",t)),10));if(e.indexOf("Trident/")>0){var n=e.indexOf("rv:");return"IE/".concat(parseInt(e.substring(n+3,e.indexOf(".",n)),10))}return""}}])}();S=P,s()(P,"_browserNameAndVersionRegex",/(MSIE|(?!Gecko.+)Firefox|(?!AppleWebKit.+Chrome.+)Safari|(?!AppleWebKit.+)Chrome|AppleWebKit(?!.+Chrome|.+Safari)|Gecko(?!.+Firefox))(?: |\/)([\d.apre]+)/g),s()(P,"_browserNameAndVersion",S.parseBrowserNameAndVersion()),s()(P,"_browserName",S.parseBrowserName()),s()(P,"_browserMajorVersion",S.parseBrowserMajorVersion()),s()(P,"_isMobile",/Android|iPhone|iPad|iPod|BlackBerry|Opera Mini/i.test(null===(T=navigator)||void 0===T?void 0:T.userAgent)),s()(P,"_isAndroid",/Android/i.test(null===(x=navigator)||void 0===x?void 0:x.userAgent)),s()(P,"_isChrome69",S._browserNameAndVersion.includes("Chrome/69.")),s()(P,"_isChrome70",S._browserNameAndVersion.includes("Chrome/70.")),s()(P,"_isChrome71",S._browserNameAndVersion.includes("Chrome/71.")),s()(P,"_isChrome72",S._browserNameAndVersion.includes("Chrome/72.")),s()(P,"_isChrome74",S._browserNameAndVersion.includes("Chrome/74.")),s()(P,"_isChrome75",S._browserNameAndVersion.includes("Chrome/75.")),s()(P,"_isChrome76",S._browserNameAndVersion.includes("Chrome/76.")),s()(P,"_isChrome77",S._browserNameAndVersion.includes("Chrome/77."));var R=function(){function e(){t()(this,e)}return o()(e,null,[{key:"clientOfferDisabled",get:function(){return P.isChrome74||P.isChrome75||P.isChrome76||P.isChrome77}},{key:"getTransceiversDisabled",get:function(){return e.addTranceiverDisabled}},{key:"addTranceiverDisabled",get:function(){return P.isChrome69||P.isChrome70||P.isChrome71||P.isChrome72}},{key:"getStatsPromiseBasedDisabled",get:function(){return"Chrome"===P.browserName&&P.browserMajorVersion<=66}},{key:"getCurrentOfferDisabled",get:function(){return"Chrome"===P.browserName&&P.browserMajorVersion<=69||"Firefox"===P.browserName&&P.browserMajorVersion<=56}},{key:"onTrackDisabled",get:function(){return"Chrome"===P.browserName&&P.browserMajorVersion<=63||"Firefox"===P.browserName&&P.browserMajorVersion<=52}},{key:"webkitRTCPeerConnectionEnabled",get:function(){return"Chrome"===P.browserName&&P.browserMajorVersion<=55}},{key:"promiseBasedPCMethodsDisabled",get:function(){return"Firefox"===P.browserName&&P.browserMajorVersion<=52}},{key:"shouldUseNativeHls",get:function(){return"Safari"===P.browserName||"SamsungBrowser"===P.browserName}},{key:"isPrecachingEnabled",get:function(){return"IE"!==P.browserName}},{key:"isForceChromeGarbageCollectionSupported",get:function(){var e;return"Chrome"===P.browserName&&"function"==typeof(null===(e=O.value)||void 0===e?void 0:e.documentCreateElement)}},{key:"isQueueMicrotaskSupported",get:function(){return"Chrome"===P.browserName&&P.browserMajorVersion>=71||"Firefox"===P.browserName&&P.browserMajorVersion>=69||"Safari"===P.browserName}},{key:"isMobile",get:function(){return P.isMobile()}},{key:"isInsertableStreamsSupported",get:function(){return!("undefined"==typeof MediaStreamTrackProcessor||"undefined"==typeof MediaStreamTrackGenerator)}},{key:"isEncodedInsertableStreamsSupported",get:function(){return"undefined"!=typeof RTCRtpReceiver&&void 0!==RTCRtpReceiver.prototype.createEncodedStreams}},{key:"isRTCRtpScriptTransformSupported",get:function(){return"undefined"!=typeof RTCRtpScriptTransform}},{key:"isRequestVideoFrameCallbackSupported",get:function(){var e;return void 0!==(null===(e=O.value)||void 0===e?void 0:e.HTMLVideoElement.prototype.requestVideoFrameCallback)}},{key:"isRequestAnimationFrameSupported",get:function(){var e;return"function"==typeof(null===(e=O.value)||void 0===e?void 0:e.requestAnimationFrame)}},{key:"isChannelFrameTimingInformationSupported",get:function(){return e.isRequestVideoFrameCallbackSupported&&(e.isEncodedInsertableStreamsSupported||e.isRTCRtpScriptTransformSupported)}},{key:"errorStackAlsoHasErrorMessage",get:function(){return"Firefox"!==P.browserName&&"Safari"!==P.browserName}}])}(),E=function(e){return e[e.All=-1]="All",e[e.Trace=10]="Trace",e[e.Debug=20]="Debug",e[e.Info=30]="Info",e[e.Warn=40]="Warn",e[e.Error=50]="Error",e[e.Fatal=60]="Fatal",e[e.Off=100]="Off",e}({}),D=function(){return o()(function e(n,r,i){t()(this,e),s()(this,"_category",void 0),s()(this,"_appenders",void 0),s()(this,"_threshold",void 0),this._category=n,this._appenders=r,this._threshold=i},[{key:"category",get:function(){return this._category}},{key:"appenders",get:function(){return this._appenders}},{key:"threshold",get:function(){return this._threshold}},{key:"trace",value:function(){if(this._threshold.value&&!(this._threshold.value>E.Trace)){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this.log(E.Trace,t)}}},{key:"debug",value:function(){if(this._threshold.value&&!(this._threshold.value>E.Debug)){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this.log(E.Debug,t)}}},{key:"info",value:function(){if(this._threshold.value&&!(this._threshold.value>E.Info)){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this.log(E.Info,t)}}},{key:"warn",value:function(){if(this._threshold.value&&!(this._threshold.value>E.Warn)){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this.log(E.Warn,t)}}},{key:"error",value:function(){if(this._threshold.value&&!(this._threshold.value>E.Error)){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this.log(E.Error,t)}}},{key:"fatal",value:function(){if(this._threshold.value&&!(this._threshold.value>E.Fatal)){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this.log(E.Fatal,t)}}},{key:"log",value:function(e,t){var n=this,r=new Date,i=this.replacePlaceholders(t);this._appenders.value.forEach(function(t){t.log(e,i,n.category,r)})}},{key:"replacePlaceholders",value:function(e){for(var t=this,n=e[0],r=0;n.indexOf&&e.length>1&&r>=0;)if((r=n.indexOf("%",r))>0)switch(n.substring(r+1,r+2)){case"%":n=n.substring(0,r)+n.substring(r+1),r++;break;case"s":case"d":e[0]=n=this.replaceArgument(this.toString(e[1]),n,r),e.splice(1,1);break;case"j":e[0]=n=this.replaceArgument(this.stringify(e[1]),n,r),e.splice(1,1);break;default:return e.toString()}return e.length>1&&(e=e.reduce(function(e,n,r,i){return r+1===i.length&&n instanceof Error?R.errorStackAlsoHasErrorMessage?e+"\n"+t.toString(n.stack):e+"\n"+t.toString(n.message)+"\n"+t.toString(n.stack):e+"[".concat(t.toString(n),"]")})),e.toString()}},{key:"stringify",value:function(e){var t=[];try{return JSON.stringify(e instanceof Error?this.toString(e):e,function(e,n){if(n&&n instanceof Object){if(t.includes(n))return"<recursive>";t.push(n)}return n},2)}catch(e){return"[object invalid JSON.stringify]"}}},{key:"replaceArgument",value:function(e,t,n){return t.substring(0,n)+this.toString(e)+t.substring(n+2)}},{key:"toString",value:function(e){if("string"==typeof e)return e;if("boolean"==typeof e)return e?"true":"false";if("number"==typeof e)return e.toString();var t="";if(e)if("function"==typeof e)t=e.toString();else if(e instanceof Object)try{t=e.toString()}catch(e){t="[object invalid toString()]"}return t}}])}(),L=function(){return o()(function e(){t()(this,e),s()(this,"_appenders",[])},[{key:"value",get:function(){return this._appenders}},{key:"add",value:function(e){this._appenders.push(e)}},{key:"remove",value:function(e){this._appenders=this._appenders.reduce(function(t,n){return n!==e&&t.push(n),t},[])}}])}(),F=function(){return o()(function e(){t()(this,e)},null,[{key:"sendLocalCandidates",get:function(){return this._sendLocalCandidates}},{key:"sendLogs",get:function(){return this._sendLogs}},{key:"sendMetrics",get:function(){return this._sendMetrics}},{key:"logToConsole",get:function(){return this._logToConsole}},{key:"applyFeatures",value:function(){try{var e={sendLocalCandidates:!1,sendLogs:"Off",sendMetrics:"Essential",logToConsole:"Off"};this._sendLocalCandidates=!("sendLocalCandidates"in e)||e.sendLocalCandidates,this._sendLogs="sendLogs"in e?e.sendLogs:"All",this._sendMetrics="sendMetrics"in e?e.sendMetrics:"All",this._logToConsole="logToConsole"in e?e.logToConsole:"All"}catch(e){this._sendLocalCandidates=!0,this._sendLogs="All",this._sendMetrics="All",this._logToConsole="All"}}}])}();s()(F,"_sendLocalCandidates",void 0),s()(F,"_sendLogs",void 0),s()(F,"_sendMetrics",void 0),s()(F,"_logToConsole",void 0),F.applyFeatures();var j=function(){return o()(function e(){t()(this,e)},null,[{key:"defaultLoggingLevel",get:function(){return E[F.sendLogs]}},{key:"defaultConsoleLoggingLevel",get:function(){return E[F.logToConsole]}},{key:"defaultTelemetryLoggingLevel",get:function(){return E.Info}}])}(),I=function(){return o()(function e(){t()(this,e),s()(this,"_threshold",j.defaultLoggingLevel)},[{key:"value",get:function(){return this._threshold}},{key:"setThreshold",value:function(e){this._threshold=e}}])}(),M=function(){return o()(function e(n){t()(this,e),s()(this,"_threshold",void 0),this._threshold=n},[{key:"log",value:function(e,t,n,r){if(!(e<this._threshold)){var i="".concat(r.toISOString()," [").concat(n,"] [").concat(E[e],"] ").concat(t);e<E.Warn?console.log(i):console.error(i)}}}])}(),A=n(293),N=n.n(A),G=function(){function e(){throw t()(this,e),new Error("Numbers is a static class that may not be instantiated")}return o()(e,null,[{key:"countNumberLength",value:function(t){var n=0,r=t;return r<0&&(r*=-1,n++),e.countDigitsBeforeDecimal(r)+n+(r!==Math.floor(r)?e.countDigitsAfterDecimal(r)+1:0)}},{key:"fixRounding",value:function(e,t){var n=Math.pow(10,t);return Math.round(e*n)/n}},{key:"countDigitsBeforeDecimal",value:function(e){for(var t=1,n=e;n>=10;)n/=10,t++;return t}},{key:"countDigitsAfterDecimal",value:function(t){for(var n=t,r=Math.floor(t),i=0;r!==n&&i<15;)i++,r=e.fixRounding(n,i);return i}}])}(),B=function(){return o()(function e(){t()(this,e)},null,[{key:"sdkVersion",get:function(){try{return"2026-07-14T17:28:59.842Z (2025.2.4-beta.621)"}catch(e){return this._defaultVersion}}}])}();s()(B,"_defaultVersion",(new Date).toISOString());var V=n(981).A;function U(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return z(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,h={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,n){return o=t,s=0,u=e,h.n=n,a}};function f(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],f=h.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=f&&((i=n<2&&f<o[1])?(s=0,h.v=r,h.n=o[1]):f<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,h.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&f(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(h.n=-1),f(s,u)):h.n=u:h.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=h.n<0)?u:n.call(r,h))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(z(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,z(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,z(d,"constructor",c),z(c,"constructor",u),u.displayName="GeneratorFunction",z(c,i,"GeneratorFunction"),z(d),z(d,i,"Generator"),z(d,r,function(){return this}),z(d,"toString",function(){return"[object Generator]"}),(U=function(){return{w:o,m:h}})()}function z(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}z=function(e,t,n,r){function o(t,n){z(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},z(e,t,n,r)}var H=function(){return o()(function e(n){var r=this;t()(this,e),s()(this,"_telemetryConfiguration",void 0),s()(this,"_logs",[]),s()(this,"_isSending",!1),s()(this,"_domain",""),this._telemetryConfiguration=n,this.getLocationHostnameFromGlobalScope().then(function(e){r._domain=e})},[{key:"push",value:function(e,t,n,r){var i=(r.valueOf()-this._telemetryConfiguration.pageLoadTime)/1e3,o={timestamp:r.toISOString(),tenancy:this._telemetryConfiguration.tenancy,level:E[e],category:n,message:t,sessionId:this._telemetryConfiguration.sessionId,version:B.sdkVersion,environment:this._telemetryConfiguration.environment,fullQualifiedName:this._domain,runtime:i};e<E.Error?this._logs.push(o):this._logs.unshift(o),this.sendLogsIfAble()}},{key:"getLocationHostnameFromGlobalScope",value:function(){return new V(function(e){var t=O.subscribe(function(n){n&&(e(n.locationHostname),n.setTimeout(function(){return t.dispose()},0))})})}},{key:"sendLogs",value:(n=N()(U().m(function e(t){var n;return U().w(function(e){for(;;)switch(e.n){case 0:return(n=new O.value.FormData).append("jsonBody",JSON.stringify({records:t})),e.n=1,O.value.fetch(this._telemetryConfiguration.url,{method:"POST",body:n});case 1:return e.a(2,e.v)}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"sendLogsIfAble",value:(e=N()(U().m(function e(){var t,n,r,i,o,a=this;return U().w(function(e){for(;;)switch(e.n){case 0:if(!(this._logs.length<=0||this._isSending)&&O.value){e.n=1;break}return e.a(2);case 1:for(t=0,n=0,this._isSending=!0,r=function(e){return"number"==typeof e?G.countNumberLength(e):e.length},i=function(e){return Object.values(e).reduce(function(e,t){return e+(t?r(t):0)},0)};this._logs.length>t&&i(this._logs[t])+n<8192;)n+=i(this._logs[t]),t++;return t||(this._logs[t].message=this._logs[t].message.substring(0,i(this._logs[t])+(8192-i(this._logs[t]))),t=1),o=this._logs.slice(0,t),this._logs=this._logs.slice(t),e.a(2,this.sendLogs(o).then(function(e){return a._isSending=!1,a.sendLogsIfAble(),e}).catch(function(){a._isSending=!1,a.sendLogsIfAble()}))}},e,this)})),function(){return e.apply(this,arguments)})}]);var e,n}(),W=function(){return o()(function e(n){t()(this,e),s()(this,"_telemetryService",void 0),s()(this,"_tenancy",void 0),s()(this,"_sessionId",void 0),s()(this,"_threshold",void 0),this._tenancy=n.tenancy,this._sessionId=n.sessionId,this._threshold=n.threshold,this._telemetryService=new H(n)},[{key:"log",value:function(e,t,n,r){e<this._threshold||this._telemetryService.push(e,t,n,r)}}])}(),q=function(){return o()(function e(){t()(this,e),s()(this,"_url","https://telemetry.phenixrts.com/telemetry/logs"),s()(this,"_tenancy","-"),s()(this,"_sessionId","-"),s()(this,"_environment","-"),s()(this,"_pageLoadTime",0),s()(this,"_threshold",j.defaultTelemetryLoggingLevel)},[{key:"url",get:function(){return this._url},set:function(e){var t=new O.value.URL(e);t.pathname=t.pathname+"/logs",this._url=t.toString()}},{key:"environment",get:function(){return this._environment},set:function(e){this._environment=e}},{key:"tenancy",get:function(){return this._tenancy},set:function(e){this._tenancy=e}},{key:"sessionId",get:function(){return this._sessionId},set:function(e){this._sessionId=e}},{key:"pageLoadTime",get:function(){return this._pageLoadTime},set:function(e){this._pageLoadTime=e}},{key:"threshold",get:function(){return this._threshold},set:function(e){this._threshold=e}}])}(),J=function(){return o()(function e(){t()(this,e)},null,[{key:"defaultTelemetryLevel",get:function(){return K[F.sendMetrics]}}])}(),K=function(e){return e[e.Off=100]="Off",e[e.Essential=10]="Essential",e[e.All=-1]="All",e}({}),Q=function(){return o()(function e(){t()(this,e),s()(this,"_url","https://telemetry.phenixrts.com/telemetry/metrics"),s()(this,"_tenancy","-"),s()(this,"_sessionId","-"),s()(this,"_environment","-"),s()(this,"_threshold",J.defaultTelemetryLevel)},[{key:"url",get:function(){return this._url},set:function(e){var t=new O.value.URL(e);t.pathname=t.pathname+"/metrics",this._url=t.toString()}},{key:"environment",get:function(){return this._environment},set:function(e){this._environment=e}},{key:"tenancy",get:function(){return this._tenancy},set:function(e){this._tenancy=e}},{key:"sessionId",get:function(){return this._sessionId},set:function(e){this._sessionId=e}},{key:"threshold",get:function(){return this._threshold},set:function(e){this._threshold=e}}])}(),$=function(e){throw new Error("Unexpected value [".concat(e,"]. This should never be reached"))},Z=function(){return o()(function e(){t()(this,e)},null,[{key:"convertTelemetryLevelToTelemetryLevelType",value:function(e){switch(e){case K.Off:return"Off";case K.Essential:return"Essential";case K.All:return"All";default:$(e)}}},{key:"convertTelemetryLevelTypeToTelemetryLevel",value:function(e){switch(e){case"Off":return K.Off;case"Essential":return K.Essential;case"All":return K.All;default:$(e)}}}])}(),X=function(){return o()(function e(){t()(this,e)},null,[{key:"convertLoggingLevelToLoggingLevelType",value:function(e){switch(e){case E.Off:return"Off";case E.Trace:return"Trace";case E.Debug:return"Debug";case E.Info:return"Info";case E.Warn:return"Warn";case E.Error:return"Error";case E.Fatal:return"Fatal";case E.All:return"All";default:$(e)}}},{key:"convertLoggingLevelTypeToLoggingLevel",value:function(e){switch(e){case"Off":return E.Off;case"Trace":return E.Trace;case"Debug":return E.Debug;case"Info":return E.Info;case"Warn":return E.Warn;case"Error":return E.Error;case"Fatal":return E.Fatal;case"All":return E.All;default:$(e)}}}])}(),Y=function(){function e(){t()(this,e)}return o()(e,null,[{key:"getStringValue",value:function(t){return e.defaultStringValue[t]}},{key:"getBooleanValue",value:function(t){return e.defaultBooleanValue[t]}},{key:"defaultStringValue",get:function(){return{"phenix-metrics-level":Z.convertTelemetryLevelToTelemetryLevelType(J.defaultTelemetryLevel),"phenix-logging-level":X.convertLoggingLevelToLoggingLevelType(j.defaultLoggingLevel),"phenix-console-logging-level":X.convertLoggingLevelToLoggingLevelType(j.defaultConsoleLoggingLevel),"phenix-telemetry-logging-level":X.convertLoggingLevelToLoggingLevelType(j.defaultTelemetryLoggingLevel),"phenix-channel-token":"","phenix-uri":"","phenix-base-uri":""}}},{key:"defaultBooleanValue",get:function(){return{"phenix-automatically-retry-on-failure":!0,"phenix-automatically-reconnect-peer-connection":!0,"phenix-force-garbage-collection-on-restart":!0,"phenix-skip-garbage-collection-on-mobile-devices":!0}}}])}(),ee=function(){function e(){throw t()(this,e),new Error("LoggerFactory is a static class that may not be instantiated")}return o()(e,null,[{key:"telemetryConfiguration",get:function(){return e._telemetryConfiguration}},{key:"getLogger",value:function(t){return"string"!=typeof t&&(t="SDK"),e._loggers[t]||(e._loggers[t]=new D(t,this._appenders,this._threshold))}},{key:"applyLoggerConfigFromParameterConfiguration",value:function(){e.applyLoggingLevel(),e.applyAppenderLoggingLevel("console",e.applyConsoleLogger.bind(this)),e.applyAppenderLoggingLevel("telemetry",e.applyTelemetryLogger.bind(this))}},{key:"applyLoggingLevel",value:function(){var e=Y.getStringValue("phenix-logging-level");E[e]&&this._threshold.setThreshold(E[e])}},{key:"applyAppenderLoggingLevel",value:function(e,t){var n=Y.getStringValue("phenix-".concat(e,"-logging-level"));"Off"!==n&&t(E[n])}},{key:"applyConsoleLogger",value:function(e){this._appenders.add(new M(e||j.defaultConsoleLoggingLevel))}},{key:"applyTelemetryLogger",value:function(e){this._telemetryConfiguration.threshold=e||j.defaultTelemetryLoggingLevel,this._appenders.add(new W(this._telemetryConfiguration))}}])}();s()(ee,"_loggers",{}),s()(ee,"_appenders",new L),s()(ee,"_threshold",new I),s()(ee,"_telemetryConfiguration",new q),ee.applyLoggerConfigFromParameterConfiguration();var te=function(){return o()(function e(){throw t()(this,e),new Error("Strings is a static class that may not be instantiated")},null,[{key:"random",value:function(e){var t=Math.ceil(e/13);return new Array(t).fill(function(){return Math.random().toString(16).substring(2,15)}).reduce(function(e,t){return e+t()},"").substring(0,e)}}])}(),ne=function(){return o()(function e(n){var r,i;t()(this,e),s()(this,"_applicationId",void 0),s()(this,"_token",void 0),this._applicationId=(null==n?void 0:n.applicationId)||"",this._token={uri:null!=n&&null!==(r=n.token)&&void 0!==r&&r.uri?new O.value.URL(n.token.uri):null,capabilities:(null==n||null===(i=n.token)||void 0===i?void 0:i.capabilities)||[]}},[{key:"uri",get:function(){return this._token.uri}},{key:"capabilities",get:function(){return this._token.capabilities}},{key:"tenancy",get:function(){return this._applicationId}}])}(),re=function(){function e(){t()(this,e)}return o()(e,null,[{key:"parseToken",value:function(t){if(!this.isEncodedEdgeTokenValid(t))return e._logger.error("Token is not valid [%s]",t),new ne(null);try{var n=atob(t.substr(7)),r=JSON.parse(n);return r.token=JSON.parse(r.token),new ne(r)}catch(t){return e._logger.error("Cannot parse token value",t),new ne(null)}}},{key:"isEncodedEdgeTokenValid",value:function(e){return!!e&&e.startsWith("DIGEST:")}}])}();s()(re,"_logger",ee.getLogger("EdgeAuthParser"));var ie=function(){return o()(function e(){t()(this,e),s()(this,"_list",[])},[{key:"add",value:function(e){this._list.push(e)}},{key:"dispose",value:function(){this._list.forEach(function(e){return e.dispose()}),this._list.length=0}},{key:"toString",value:function(){return"DisposableList[disposables=".concat(this._list.length,"]")}}])}(),oe="visibilitychange",ae=function(){return o()(function e(){t()(this,e),s()(this,"_disposables",new ie),s()(this,"_readOnlyIsForeground",void 0),s()(this,"_isForeground",void 0),s()(this,"_timeOfLastTabFocusChange",Date.now()),s()(this,"_lastBackgroundDuration",null),this._isForeground=new b(!0),this._readOnlyIsForeground=new C(this._isForeground),this.initialize()},[{key:"isForeground",get:function(){return this._readOnlyIsForeground}},{key:"getTimeSinceLastChange",value:function(){return Date.now()-this._timeOfLastTabFocusChange}},{key:"getLastBackgroundDuration",value:function(){return this._lastBackgroundDuration}},{key:"dispose",value:function(){this._disposables.dispose()}},{key:"initialize",value:function(){var e=this,t=null,n=function(){var n=!O.value.documentIsHidden;n?t&&(e._lastBackgroundDuration=Date.now()-t):(t=Date.now(),e._lastBackgroundDuration=null),e._isForeground.value=n},r=!1;O.value.addDocumentEventListener(oe,n,r),this._disposables.add(new g(function(){return O.value.removeDocumentEventListener(oe,n,r)}))}}])}(),se=n(981).A;function ue(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return ce(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,h={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,n){return o=t,s=0,u=e,h.n=n,a}};function f(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],f=h.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=f&&((i=n<2&&f<o[1])?(s=0,h.v=r,h.n=o[1]):f<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,h.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&f(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(h.n=-1),f(s,u)):h.n=u:h.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=h.n<0)?u:n.call(r,h))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(ce(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,ce(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,ce(d,"constructor",c),ce(c,"constructor",u),u.displayName="GeneratorFunction",ce(c,i,"GeneratorFunction"),ce(d),ce(d,i,"Generator"),ce(d,r,function(){return this}),ce(d,"toString",function(){return"[object Generator]"}),(ue=function(){return{w:o,m:h}})()}function ce(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}ce=function(e,t,n,r){function o(t,n){ce(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},ce(e,t,n,r)}var le=function(){return o()(function e(n){t()(this,e),s()(this,"_logger",ee.getLogger("VanillaPeerConnection")),s()(this,"_peerConnection",void 0),R.webkitRTCPeerConnectionEnabled?this._peerConnection=new webkitRTCPeerConnection(n):this._peerConnection=new O.value.RTCPeerConnection(n)},[{key:"native",get:function(){return this._peerConnection}},{key:"currentLocalDescription",get:function(){var e;return(null===(e=this._peerConnection)||void 0===e?void 0:e.currentLocalDescription)||null}},{key:"currentRemoteDescription",get:function(){var e;return(null===(e=this._peerConnection)||void 0===e?void 0:e.currentRemoteDescription)||null}},{key:"connectionState",get:function(){var e;return(null===(e=this._peerConnection)||void 0===e?void 0:e.connectionState)||null}},{key:"iceConnectionState",get:function(){var e;return(null===(e=this._peerConnection)||void 0===e?void 0:e.iceConnectionState)||null}},{key:"supportsGetConfiguration",get:function(){var e;return"function"==typeof(null===(e=this._peerConnection)||void 0===e?void 0:e.getConfiguration)}},{key:"supportsSetConfiguration",get:function(){var e;return"function"==typeof(null===(e=this._peerConnection)||void 0===e?void 0:e.setConfiguration)}},{key:"supportsGetTransceivers",get:function(){var e;return!R.getTransceiversDisabled&&"function"==typeof(null===(e=this._peerConnection)||void 0===e?void 0:e.getTransceivers)}},{key:"supportsAddTransceiver",get:function(){var e;return!R.addTranceiverDisabled&&"function"==typeof(null===(e=this._peerConnection)||void 0===e?void 0:e.addTransceiver)}},{key:"createOffer",value:(i=N()(ue().m(function e(t){var n=this;return ue().w(function(e){for(;;)switch(e.n){case 0:if(this._peerConnection){e.n=1;break}throw new Error("No PeerConnection initialized");case 1:if(!R.promiseBasedPCMethodsDisabled){e.n=2;break}return e.a(2,new se(function(e,r){return n._peerConnection.createOffer(e,r,t)}));case 2:return e.a(2,this._peerConnection.createOffer(t))}},e,this)})),function(e){return i.apply(this,arguments)})},{key:"createAnswer",value:(r=N()(ue().m(function e(t){var n=this;return ue().w(function(e){for(;;)switch(e.n){case 0:if(this._peerConnection){e.n=1;break}throw new Error("No PeerConnection initialized");case 1:if(!R.promiseBasedPCMethodsDisabled){e.n=2;break}return e.a(2,new se(function(e,r){return n._peerConnection.createAnswer(e,r,t)}));case 2:return e.a(2,this._peerConnection.createAnswer(t))}},e,this)})),function(e){return r.apply(this,arguments)})},{key:"setLocalDescription",value:(n=N()(ue().m(function e(t){return ue().w(function(e){for(;;)switch(e.n){case 0:if(this._peerConnection){e.n=1;break}throw new Error("No PeerConnection initialized");case 1:return e.a(2,this._peerConnection.setLocalDescription(R.promiseBasedPCMethodsDisabled?new RTCSessionDescription(t):t))}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"setRemoteDescription",value:(e=N()(ue().m(function e(t){var n;return ue().w(function(e){for(;;)switch(e.n){case 0:if(this._peerConnection){e.n=1;break}throw new Error("No PeerConnection initialized");case 1:return(null===(n=t.sdp)||void 0===n?void 0:n.match(/a=crypto:/i))&&this._logger.warn("SDP a=crypto is not supported"),e.a(2,this._peerConnection.setRemoteDescription(R.promiseBasedPCMethodsDisabled?new RTCSessionDescription(t):t))}},e,this)})),function(t){return e.apply(this,arguments)})},{key:"getSenders",value:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.getSenders()}},{key:"getReceivers",value:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.getReceivers()}},{key:"getStats",value:function(e){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.getStats(e)}},{key:"getStatsLegacy",value:function(){var e=this;if(!this._peerConnection)throw new Error("No PeerConnection initialized");return new se(function(t){e._peerConnection.getStats(t)})}},{key:"addEventListener",value:function(e,t,n){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.addEventListener(e,t,n)}},{key:"removeEventListener",value:function(e,t,n){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.removeEventListener(e,t,n)}},{key:"getTransceivers",value:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.getTransceivers()}},{key:"addTransceiver",value:function(e,t){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.addTransceiver(e,t)}},{key:"addStream",value:function(e){var t=this;e.getTracks().forEach(function(e){if(!t._peerConnection)throw new Error("No PeerConnection initialized");t._peerConnection.addTrack(e)})}},{key:"getConfiguration",value:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.getConfiguration()}},{key:"setConfiguration",value:function(e){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.setConfiguration(e)}},{key:"ontrack",get:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.ontrack},set:function(e){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.ontrack=e}},{key:"onicecandidate",get:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.onicecandidate},set:function(e){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.onicecandidate=e}},{key:"onconnectionstatechange",get:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.onconnectionstatechange},set:function(e){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.onconnectionstatechange=e}},{key:"oniceconnectionstatechange",get:function(){if(!this._peerConnection)throw new Error("No PeerConnection initialized");return this._peerConnection.oniceconnectionstatechange},set:function(e){if(!this._peerConnection)throw new Error("No PeerConnection initialized");this._peerConnection.oniceconnectionstatechange=e}},{key:"close",value:function(){var e;null===(e=this._peerConnection)||void 0===e||e.close()}},{key:"dispose",value:function(){this._peerConnection=null}}]);var e,n,r,i}(),de=n(981).A;function he(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return fe(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,h={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,n){return o=t,s=0,u=e,h.n=n,a}};function f(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],f=h.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=f&&((i=n<2&&f<o[1])?(s=0,h.v=r,h.n=o[1]):f<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,h.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&f(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(h.n=-1),f(s,u)):h.n=u:h.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=h.n<0)?u:n.call(r,h))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(fe(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,fe(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,fe(d,"constructor",c),fe(c,"constructor",u),u.displayName="GeneratorFunction",fe(c,i,"GeneratorFunction"),fe(d),fe(d,i,"Generator"),fe(d,r,function(){return this}),fe(d,"toString",function(){return"[object Generator]"}),(he=function(){return{w:o,m:h}})()}function fe(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}fe=function(e,t,n,r){function o(t,n){fe(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},fe(e,t,n,r)}var pe=function(){return o()(function e(){t()(this,e)},[{key:"createPeerConnection",value:(e=N()(he().m(function e(t){return he().w(function(e){for(;;)if(0===e.n)return e.a(2,new de(function(e){var n=O.subscribe(function(r){r&&(e(new le(t)),n.dispose())})}))},e)})),function(t){return e.apply(this,arguments)})}]);var e}();function ve(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return ge(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,h={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,n){return o=t,s=0,u=e,h.n=n,a}};function f(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],f=h.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=f&&((i=n<2&&f<o[1])?(s=0,h.v=r,h.n=o[1]):f<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,h.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&f(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(h.n=-1),f(s,u)):h.n=u:h.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=h.n<0)?u:n.call(r,h))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(ge(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,ge(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,ge(d,"constructor",c),ge(c,"constructor",u),u.displayName="GeneratorFunction",ge(c,i,"GeneratorFunction"),ge(d),ge(d,i,"Generator"),ge(d,r,function(){return this}),ge(d,"toString",function(){return"[object Generator]"}),(ve=function(){return{w:o,m:h}})()}function ge(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}ge=function(e,t,n,r){function o(t,n){ge(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},ge(e,t,n,r)}var ye=function(e){return e[e.Disabled=0]="Disabled",e[e.Enabled=1]="Enabled",e}({}),me=["audio","video"],_e=function(){function e(){throw t()(this,e),new Error("PeerConnectionService is a static class that may not be instantiated")}return o()(e,null,[{key:"peerConnectionFactory",get:function(){return e._peerConnectionFactory}},{key:"initiateInitialPrecaching",value:function(){R.isPrecachingEnabled&&e.precacheCreatePeerConnectionOffer().catch(function(t){return e._logger.error("Failed to pre-cache peer connection offer",t)})}},{key:"precacheCreatePeerConnectionOffer",value:(r=N()(ve().m(function t(){return ve().w(function(t){for(;;)if(0===t.n)return t.a(2,e._cached={direction:"recvonly",peerConnection:e.createPeerConnectionOffer().catch(function(t){throw e._cached=null,t})})},t)})),function(){return r.apply(this,arguments)})},{key:"createPeerConnectionOffer",value:(n=N()(ve().m(function t(){var n,r,i,o,a,s=arguments;return ve().w(function(t){for(;;)switch(t.n){case 0:if(n=s.length>0&&void 0!==s[0]?s[0]:"recvonly",r=s.length>1&&void 0!==s[1]?s[1]:me,i=s.length>2&&void 0!==s[2]?s[2]:ye.Disabled,!e._cached||e._cached.direction!==n||i!==ye.Disabled||!this.isTracksKindsEquivalentToDefault(r)){t.n=1;break}return o=e._cached.peerConnection,e._cached=null,t.a(2,o);case 1:return a=R.isEncodedInsertableStreamsSupported?{encodedInsertableStreams:i===ye.Enabled}:void 0,t.a(2,e._peerConnectionFactory.value.createPeerConnection(a).then(function(){var e=N()(ve().m(function e(t){var i,o,a,s,u,c,l,d,h,f;return ve().w(function(e){for(;;)switch(e.n){case 0:if(i=t.supportsAddTransceiver,o=[],a=[],!i){e.n=2;break}return r.forEach(function(e){"audio"!==e?"video"!==e||a.push(t.addTransceiver(e,{direction:n})):o.push(t.addTransceiver(e,{direction:n}))}),u=o,c=a,l=t,e.n=1,t.createOffer(void 0);case 1:return d=e.v,e.a(2,{audioTransceivers:u,videoTransceivers:c,peerConnection:l,localOffer:d});case 2:return s="recvonly"===n?{offerToReceiveAudio:!0,offerToReceiveVideo:!0}:{},h=t,e.n=3,t.createOffer(s);case 3:return f=e.v,e.a(2,{peerConnection:h,localOffer:f})}},e)}));return function(t){return e.apply(this,arguments)}}()))}},t,this)})),function(){return n.apply(this,arguments)})},{key:"isTracksKindsEquivalentToDefault",value:function(e){if(e.length!==me.length)return!1;var t=function(e){return e.reduce(function(e,t){return e[t]=(e[t]||0)+1,e},{audio:0,video:0})},n=t(e),r=t(me);return n.audio===r.audio&&n.video===r.video}}]);var n,r}();s()(_e,"_logger",ee.getLogger("PeerConnectionService")),s()(_e,"_peerConnectionFactory",new b(new pe)),s()(_e,"_cached",void 0),_e.initiateInitialPrecaching();var be=function(){return o()(function e(){t()(this,e)},null,[{key:"getTelemetryUrl",value:function(e){try{var t=new O.value.URL(e),n=t.hostname.split(".");switch(t.protocol){case"ws:":t.protocol="http:";break;case"wss:":t.protocol="https:"}return 2===n.length||3===n.length&&n[n.length-2].length<=2&&n[n.length-1].length<=3?n.unshift("telemetry"):n[0].startsWith("stg-")||n[0].endsWith("-stg")||n[0].includes("-stg-")||"stg"===n[0]?n[0]="telemetry-stg":n[0].startsWith("local")||n[0].endsWith("-local")||(n[0]="telemetry"),t.hostname=n.join("."),"".concat(t.origin,"/telemetry")}catch(t){return e}}}])}(),Ce=function(){return o()(function e(){t()(this,e)},null,[{key:"getEnvironmentFromUrl",value:function(e){try{return new O.value.URL(e).origin}catch(e){return""}}}])}(),we=function(){return o()(function e(){t()(this,e)},null,[{key:"discoveryParameters",get:function(){return this._discoveryParameters}},{key:"applyParameters",value:function(){try{var e={discovery:{intentions:"contribution"}};this._discoveryParameters="discovery"in e?e.discovery:{intentions:""}}catch(e){this._discoveryParameters={intentions:""}}}}])}();s()(we,"_discoveryParameters",void 0),we.applyParameters();var ke=function(){function e(){throw t()(this,e),new Error("DiscoveryUri is a static class that may not be instantiated")}return o()(e,null,[{key:"uri",get:function(){return e._discoveryUri}},{key:"buildDiscoveryUrl",value:function(e){var t=new O.value.URL(e.toString()),n=B.sdkVersion,r=we.discoveryParameters.intentions;return t.searchParams.set("version",n),t.searchParams.set("intentions",r),t.searchParams.set("_","".concat(Date.now())),"/"===t.pathname&&(t.pathname="/pcast/endPoints"),t.toString()}}])}();s()(ke,"_discoveryUri",new b("https://pcast.phenixrts.com/pcast/endPoints"));var Se=n(738),Te=n.n(Se),xe=function(){return o()(function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2e3,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:3e5;t()(this,e),s()(this,"_backoffIntervalInMillisecond",void 0),s()(this,"_minBackoffIntervalInMillisecond",void 0),s()(this,"_maxBackoffIntervalInMillisecond",void 0),this._backoffIntervalInMillisecond=n,this._minBackoffIntervalInMillisecond=r,this._maxBackoffIntervalInMillisecond=i},[{key:"getExponentialBackoffIntervalByFailureCount",value:function(e){var t=this._backoffIntervalInMillisecond/1e3,n=.5+.5*Math.random(),r=Math.pow(t,e-2),i=Math.floor(r)*n,o=Math.ceil(Math.max(1e3*i,this._minBackoffIntervalInMillisecond));return Math.min(o,this._maxBackoffIntervalInMillisecond)}}])}(),Oe=function(e){return e[e.TimeToFirstFrame=0]="TimeToFirstFrame",e[e.ChannelCreationTimeToFirstFrame=1]="ChannelCreationTimeToFirstFrame",e[e.Stalled=2]="Stalled",e[e.Buffering=3]="Buffering",e[e.SetupCompleted=4]="SetupCompleted",e[e.SetupFailed=5]="SetupFailed",e[e.RoundTripTime=6]="RoundTripTime",e[e.DownlinkThroughputCapacity=7]="DownlinkThroughputCapacity",e[e.NetworkType=8]="NetworkType",e[e.ResolutionChanged=9]="ResolutionChanged",e[e.ApplicationForeground=10]="ApplicationForeground",e[e.ApplicationBackground=11]="ApplicationBackground",e}(Oe||{}),Pe=Oe,Re=function(){return o()(function e(n){t()(this,e),s()(this,"_metrics",void 0),this._metrics=n},[{key:"getName",value:function(){return Pe[this._metrics]}},{key:"getTelemetryLevel",value:function(){switch(this._metrics){case Pe.TimeToFirstFrame:case Pe.ChannelCreationTimeToFirstFrame:return K.Essential;case Pe.Stalled:case Pe.Buffering:case Pe.SetupCompleted:case Pe.SetupFailed:case Pe.RoundTripTime:case Pe.DownlinkThroughputCapacity:case Pe.NetworkType:case Pe.ResolutionChanged:case Pe.ApplicationForeground:case Pe.ApplicationBackground:return K.All;default:$(this._metrics)}}}])}(),Ee=n(981).A;function De(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return Le(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,h={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,n){return o=t,s=0,u=e,h.n=n,a}};function f(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],f=h.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=f&&((i=n<2&&f<o[1])?(s=0,h.v=r,h.n=o[1]):f<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,h.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&f(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(h.n=-1),f(s,u)):h.n=u:h.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=h.n<0)?u:n.call(r,h))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(Le(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,Le(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,Le(d,"constructor",c),Le(c,"constructor",u),u.displayName="GeneratorFunction",Le(c,i,"GeneratorFunction"),Le(d),Le(d,i,"Generator"),Le(d,r,function(){return this}),Le(d,"toString",function(){return"[object Generator]"}),(De=function(){return{w:o,m:h}})()}function Le(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}Le=function(e,t,n,r){function o(t,n){Le(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},Le(e,t,n,r)}var Fe,je,Ie=function(){return o()(function e(n){var r=this;t()(this,e),s()(this,"_logger",ee.getLogger("MetricsService")),s()(this,"_metricsConfiguration",void 0),s()(this,"_exponentialBackoff",void 0),s()(this,"_metrics",[]),s()(this,"_isSending",!1),s()(this,"_failureCount",0),s()(this,"_domain",""),this._metricsConfiguration=n,this._exponentialBackoff=new xe,this.getLocationHostnameFromGlobalScope().then(function(e){r._domain=e})},[{key:"metricsConfiguration",get:function(){return this._metricsConfiguration}},{key:"push",value:function(e){var t=e.streamId,n=e.value,r=e.previousValue,i=e.runtime,o=e.resource,a=e.kind,s=new Re(e.metricType);if(!(this._metricsConfiguration.threshold>s.getTelemetryLevel())){var u={timestamp:(new Date).toISOString(),tenancy:this._metricsConfiguration.tenancy,sessionId:this._metricsConfiguration.sessionId,streamId:t,metric:s.getName(),value:n,previousValue:r,fullQualifiedName:this._domain,environment:this._metricsConfiguration.environment,version:B.sdkVersion,runtime:i,resource:o,kind:a};this._metrics.push(u),this.sendMetricsIfAble()}}},{key:"getLocationHostnameFromGlobalScope",value:function(){return new Ee(function(e){var t=O.subscribe(function(n){n&&(e(n.locationHostname),n.setTimeout(function(){return t.dispose()},0))})})}},{key:"sendMetrics",value:(n=N()(De().m(function e(t){var n;return De().w(function(e){for(;;)switch(e.n){case 0:return(n=new O.value.FormData).append("jsonBody",JSON.stringify({records:t})),e.n=1,O.value.fetch(this._metricsConfiguration.url,{method:"POST",body:n});case 1:return e.a(2,e.v)}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"sendMetricsIfAble",value:(e=N()(De().m(function e(){var t,n=this;return De().w(function(e){for(;;)switch(e.n){case 0:if(!(this._metrics.length<=0||this._isSending)&&O.value){e.n=1;break}return e.a(2);case 1:return this._isSending=!0,t=this._metrics.slice(0,1024),this._metrics=this._metrics.slice(1024),e.a(2,this.sendMetrics(t).then(function(e){if(n.isResponseStatusCodeRetryable(e)){if(n._metrics.length<=2048)return n._failureCount++,void O.value.setTimeout(function(){n._metrics=[].concat(c()(t),c()(n._metrics)),n._isSending=!1,n.sendMetricsIfAble()},n._exponentialBackoff.getExponentialBackoffIntervalByFailureCount(n._failureCount));n._logger.error("Too many cached metric records [%s], dropping [%s] records",n._metrics.length,t.length)}return n._isSending=!1,n._failureCount=0,n.sendMetricsIfAble(),e}).catch(function(){n._isSending=!1,n.sendMetricsIfAble()}))}},e,this)})),function(){return e.apply(this,arguments)})},{key:"isResponseStatusCodeRetryable",value:function(e){var t=e.status;return/^5\d{2}$/.test(t.toString())}}]);var e,n}(),Me=function(){function e(){throw t()(this,e),new Error("MetricsFactory is a static class that may not be instantiated")}return o()(e,null,[{key:"getMetricsService",value:function(t){if("string"!=typeof t)throw new Error("url must be a string instead received [".concat(Te()(t),"]"));var n=e._metricsServices[t];if(n)return n;var r=new Q;return r.sessionId=Ne.clientSessionId,r.tenancy=Ne.tenancy.value,r.url=be.getTelemetryUrl(t),r.environment=Ce.getEnvironmentFromUrl(t),r.threshold=Z.convertTelemetryLevelTypeToTelemetryLevel(Ne.telemetryLevel),e._metricsServices[t]=new Ie(r)}},{key:"setTelemetryLevel",value:function(t){var n=Object.values(e._metricsServices);n&&n.length&&n.forEach(function(e){e.metricsConfiguration.threshold=t})}}])}();s()(Me,"_metricsServices",{});var Ae=(null===(Fe=k.getInstance().value)||void 0===Fe?void 0:Fe.pageLoadTime)||Date.now(),Ne=function(){function e(){throw t()(this,e),new Error("SDK is a static class that may not be instantiated")}return o()(e,null,[{key:"pageLoadTime",get:function(){return Ae}},{key:"sendLocalCandidates",get:function(){return this._sendLocalCandidates}},{key:"tenancy",get:function(){return this._tenancy}},{key:"clientSessionId",get:function(){return e._clientSessionId}},{key:"loadedTimestamp",get:function(){return e._loadedTimestamp}},{key:"initialized",get:function(){return e._readOnlyInitialized}},{key:"discoveryUri",get:function(){return e._readOnlyDiscoveryUri}},{key:"peerConnectionFactory",get:function(){return e._readOnlyPeerConnectionFactory}},{key:"automaticRetryOnFailure",get:function(){return e._automaticallyRetryOnFailure}},{key:"automaticallyReconnectPeerConnection",get:function(){return e._automaticallyReconnectPeerConnection}},{key:"automaticallyPlayMediaStream",get:function(){return e._automaticallyPlayMediaStream}},{key:"automaticallyMuteVideoOnPlayFailure",get:function(){return e._automaticallyMuteVideoOnPlayFailure}},{key:"forceGarbageCollectionOnRestart",get:function(){return this._forceGarbageCollectionOnRestart}},{key:"skipGarbageCollectionOnMobileDevices",get:function(){return this._skipGarbageCollectionOnMobileDevices}},{key:"webPlayerLoader",get:function(){return this._webPlayerLoader}},{key:"shakaPlayerLoader",get:function(){return this._shakaPlayerLoader}},{key:"hlsJsLoader",get:function(){return this._hlsJsLoader}},{key:"metricsService",get:function(){return e._metricsService}},{key:"applicationActivityMonitor",get:function(){return this._applicationActivityMonitor}},{key:"telemetryUrl",get:function(){return this._telemetryUrl}},{key:"maximalNumberOfPeerConnectionReconnectAttempts",get:function(){return this._maximalNumberOfPeerConnectionReconnectAttempts},set:function(e){this._maximalNumberOfPeerConnectionReconnectAttempts=e}},{key:"loggingLevel",get:function(){return X.convertLoggingLevelToLoggingLevelType(this._logger.threshold.value)}},{key:"telemetryLevel",get:function(){return Z.convertTelemetryLevelToTelemetryLevelType(e._telemetryLevel.value)}},{key:"browserDetector",get:function(){return P}},{key:"applyTelemetryConfiguration",value:function(){var t=this,n=ee.telemetryConfiguration;n.sessionId=e.clientSessionId,n.pageLoadTime=e.pageLoadTime,e._environment.subscribe(function(e){n.environment=e}),e.telemetryUrl.subscribe(function(e){var r=t._logger.appenders.value.find(function(e){return e instanceof W});r&&(n.url=e,t._logger.appenders.remove(r),t._logger.appenders.add(new W(n)),t._logger.info("Telemetry URL was set to [%s]",n.url))}),e._tenancy.subscribe(function(e){var r=t._logger.appenders.value.find(function(e){return e instanceof W});r&&e&&(n.tenancy=e,t._logger.appenders.remove(r),t._logger.appenders.add(new W(n)),t._logger.info("Telemetry tenancy was set to [%s]",n.tenancy))})}},{key:"applyMetricsConfiguration",value:function(){e._metricsService=Me.getMetricsService(ke.uri.value),e._metricsConfiguration=e._metricsService.metricsConfiguration,e._metricsConfiguration.sessionId=e.clientSessionId,e._environment.subscribe(function(t){e._metricsConfiguration.environment=t}),e.telemetryUrl.subscribe(function(t){e._metricsConfiguration.url=t}),e._tenancy.subscribe(function(t){e._metricsConfiguration.tenancy=t});var t=Y.getStringValue("phenix-metrics-level");t&&Me.setTelemetryLevel(K[t]),e._telemetryLevel.subscribe(function(e){Me.setTelemetryLevel(e)})}},{key:"applyAutomaticallyRetryOnFailureFromParameterConfiguration",value:function(){this._automaticallyRetryOnFailure=Y.getBooleanValue("phenix-automatically-retry-on-failure"),this._logger.info("Automatically retry on failure is set to: [%s]",this._automaticallyRetryOnFailure)}},{key:"applyAutomaticallyReconnectPeerConnectionFromParameterConfiguration",value:function(){this._automaticallyReconnectPeerConnection=Y.getBooleanValue("phenix-automatically-reconnect-peer-connection"),this._logger.info("Automatically reconnect peer connection is set to: [%s]",this._automaticallyReconnectPeerConnection)}},{key:"applyForceGarbageCollectionOnRestartFromParameterConfiguration",value:function(){this._forceGarbageCollectionOnRestart=Y.getBooleanValue("phenix-force-garbage-collection-on-restart"),this._logger.info("Force garbage collection on restart is set to: [%s]",this._forceGarbageCollectionOnRestart)}},{key:"applySkipGarbageCollectionOnMobileDevicesFromParameterConfiguration",value:function(){this._skipGarbageCollectionOnMobileDevices=Y.getBooleanValue("phenix-skip-garbage-collection-on-mobile-devices"),this._logger.info("Skip garbage collection on mobile devices on restart is set to: [%s]",this._skipGarbageCollectionOnMobileDevices)}},{key:"applyDiscoveryUriDefaultFromParameterConfiguration",value:function(){e.discoveryUri.subscribe(function(t){e.telemetryUrl.value=e.getTelemetryUrl(t),e._environment.value=Ce.getEnvironmentFromUrl(t)});var t=Y.getStringValue("phenix-channel-token");if(t){var n=re.parseToken(t);return e._tenancy.value=n.tenancy,ke.uri.value=(n.uri||e.discoveryUri.value).toString(),void this._logger.info("Discovery URI set from configuration parameter to [%s]",e.discoveryUri.value)}var r=Y.getStringValue("phenix-uri");if(r)return ke.uri.value=r,void this._logger.info('Discovery URI set from "phenix-uri" configuration parameter tag to [%s]',e.discoveryUri.value);var i=Y.getStringValue("phenix-base-uri");if(i){var o=new(k.getInstance().value.URL)(i);return o.pathname="/pcast/endPoints",ke.uri.value=o.toString(),void this._logger.info('Discovery URI set from "phenix-base-uri" configuration parameter tag to [%s]',e.discoveryUri.value)}}},{key:"onLoad",value:function(t){t&&(this._initialized.value?this._logger.warn("SDK has already been loaded"):(t.addWindowEventListener("unload",function(){e.dispose()}),e.applyDiscoveryUriDefaultFromParameterConfiguration(),e.applyMetricsConfiguration(),e.applyTelemetryConfiguration(),this._applicationActivityMonitor=new ae,this._logger.info("Automatically retry on failure is set to: [%s]",this._automaticallyRetryOnFailure),this._logger.info("Automatically reconnect peer connection is set to: [%s]",this._automaticallyReconnectPeerConnection),this._logger.info("Force garbage collection on restart is set to: [%s]",this._forceGarbageCollectionOnRestart),this._logger.info("Skip garbage collection on mobile devices on restart is set to: [%s]",this._skipGarbageCollectionOnMobileDevices),this._initialized.value=!0))}},{key:"init",value:function(t){if(t){var n=t;if(n.globalScope&&k.setInstance(n.globalScope),t.discoveryUri&&(ke.uri.value=t.discoveryUri),t.peerConnectionFactory&&(_e.peerConnectionFactory.value=t.peerConnectionFactory),t.telemetryLevel&&K[t.telemetryLevel]&&(e._telemetryLevel.value=Z.convertTelemetryLevelTypeToTelemetryLevel(t.telemetryLevel)),t.loggingLevel&&E[t.loggingLevel]&&this._logger.threshold.setThreshold(X.convertLoggingLevelTypeToLoggingLevel(t.loggingLevel)),t.consoleLoggingLevel&&E[t.consoleLoggingLevel]){var r=this._logger.appenders.value.find(function(e){return e instanceof M});r&&this._logger.appenders.remove(r),"Off"!==t.consoleLoggingLevel&&this._logger.appenders.add(new M(X.convertLoggingLevelTypeToLoggingLevel(t.consoleLoggingLevel)))}"boolean"==typeof t.automaticallyPlayMediaStream&&(this._automaticallyPlayMediaStream=t.automaticallyPlayMediaStream),"boolean"==typeof t.automaticallyMuteVideoOnPlayFailure&&(this._automaticallyMuteVideoOnPlayFailure=t.automaticallyMuteVideoOnPlayFailure),t.webPlayerLoader&&(this._webPlayerLoader=t.webPlayerLoader),t.shakaPlayerLoader&&(this._shakaPlayerLoader=t.shakaPlayerLoader),t.hlsJsLoader&&(this._hlsJsLoader=t.hlsJsLoader)}}},{key:"dispose",value:function(){var t;e._initialized.value=!1,null===(t=this._applicationActivityMonitor)||void 0===t||t.dispose(),this._applicationActivityMonitor=null}},{key:"getTelemetryUrl",value:function(e){return be.getTelemetryUrl(e)}}])}();je=Ne,s()(Ne,"_automaticallyRetryOnFailure",Y.getBooleanValue("phenix-automatically-retry-on-failure")),s()(Ne,"_automaticallyReconnectPeerConnection",Y.getBooleanValue("phenix-automatically-reconnect-peer-connection")),s()(Ne,"_automaticallyPlayMediaStream",!0),s()(Ne,"_automaticallyMuteVideoOnPlayFailure",!0),s()(Ne,"_forceGarbageCollectionOnRestart",Y.getBooleanValue("phenix-force-garbage-collection-on-restart")),s()(Ne,"_skipGarbageCollectionOnMobileDevices",Y.getBooleanValue("phenix-skip-garbage-collection-on-mobile-devices")),s()(Ne,"_webPlayerLoader",void 0),s()(Ne,"_shakaPlayerLoader",void 0),s()(Ne,"_hlsJsLoader",void 0),s()(Ne,"_applicationActivityMonitor",void 0),s()(Ne,"_environment",new b("")),s()(Ne,"_telemetryUrl",new b("https://telemetry.phenixrts.com/telemetry")),s()(Ne,"_maximalNumberOfPeerConnectionReconnectAttempts",8),s()(Ne,"_telemetryLevel",new b(J.defaultTelemetryLevel)),s()(Ne,"_metricsService",void 0),s()(Ne,"_metricsConfiguration",void 0),s()(Ne,"_sendLocalCandidates",new b(F.sendLocalCandidates)),s()(Ne,"_tenancy",new b("")),s()(Ne,"_clientSessionId",te.random(32)),s()(Ne,"_loadedTimestamp",new Date),s()(Ne,"_logger",ee.getLogger("SDK")),s()(Ne,"_initialized",new b(!1)),s()(Ne,"_readOnlyInitialized",new C(je._initialized)),s()(Ne,"_readOnlyDiscoveryUri",new C(ke.uri)),s()(Ne,"_readOnlyPeerConnectionFactory",new C(_e.peerConnectionFactory)),k.subscribe(Ne.onLoad.bind(Ne));var Ge=function(e){return e[e.Initializing=0]="Initializing",e[e.Offline=1]="Offline",e[e.Starting=2]="Starting",e[e.Publishing=3]="Publishing",e[e.Recovering=4]="Recovering",e[e.Reconnecting=5]="Reconnecting",e[e.Stopped=6]="Stopped",e[e.Unauthorized=7]="Unauthorized",e[e.GeoRestricted=8]="GeoRestricted",e[e.GeoBlocked=9]="GeoBlocked",e[e.UnsupportedFeature=10]="UnsupportedFeature",e[e.NotFound=11]="NotFound",e[e.ConfigurationError=12]="ConfigurationError",e[e.TransientConfigurationError=13]="TransientConfigurationError",e[e.ConnectionError=14]="ConnectionError",e[e.ClientStartError=15]="ClientStartError",e[e.Error=16]="Error",e}(Ge||{}),Be=Ge,Ve=function(){return o()(function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;t()(this,e),s()(this,"_duration",void 0),this._duration=n},[{key:"toIsoString",value:function(){if(0===this._duration)return"P0S";var e=this._duration<0,t=e?Math.abs(this._duration):this._duration,n=Math.floor(t),r=n%1e3,i=(n=Math.floor(n/1e3))%60,o=(n=Math.floor(n/60))%60,a=(n=Math.floor(n/60))%24,s=["PT"];return e&&s.unshift("-"),a&&s.push(a+"H"),o&&s.push(o+"M"),(i||r)&&(s.push(String(i)),r&&s.push("."+this.padStart(r.toString(),3,"0")),s.push("S")),s.join("")}},{key:"padStart",value:function(e,t,n){return t|=0,n=String(void 0!==n?n:" "),e.length>t?e:((t-=e.length)>n.length&&(n+=n.repeat(t/n.length)),n.slice(0,t)+e)}}])}(),Ue=function(){return o()(function e(n){t()(this,e),s()(this,"_logger",ee.getLogger("StreamSetupListener")),s()(this,"metricsService",Ne.metricsService),s()(this,"_pageLoadTime",void 0),s()(this,"_startTime",void 0),s()(this,"_metricSubmitted",!1),this._startTime=Date.now(),this._pageLoadTime=n},[{key:"success",value:function(e){this.recordStreamMetric(Pe.SetupCompleted,e)}},{key:"fail",value:function(){this.recordStreamMetric(Pe.SetupFailed)}},{key:"recordStreamMetric",value:function(e,t){if(!this._metricSubmitted){this._metricSubmitted=!0;var n=Date.now(),r=n-this._startTime,i=new Re(e).getName();this.metricsService.push({metricType:e,runtime:(n-this._pageLoadTime)/1e3,value:{uint64:r},streamId:t}),this._logger.info("[%s] [%s] Stream metric [%s] in [%s]",new Ve(n-this._pageLoadTime).toIsoString(),t,i,new Ve(r).toIsoString())}}}])}(),ze=function(){return o()(function e(){t()(this,e),s()(this,"_disposables",new ie),s()(this,"_isSupported",void 0!==O.value.navigatorConnection),s()(this,"_rtt",new b(void 0)),s()(this,"_effectiveType",new b(void 0)),s()(this,"_downlinkThroughputCapacity",new b(void 0)),this.isSupported&&(this.setupNetworkChangeListeners(),this.updateStatistics())},[{key:"isSupported",get:function(){return this._isSupported}},{key:"rtt",get:function(){return this._rtt}},{key:"effectiveType",get:function(){return this._effectiveType}},{key:"downlinkThroughputCapacity",get:function(){return this._downlinkThroughputCapacity}},{key:"dispose",value:function(){this._disposables.dispose()}},{key:"getDownlinkThroughputCapacity",value:function(){var e,t,n,r;return null!==(e=null!==(t=null===(n=O.value.navigatorConnection)||void 0===n?void 0:n.downlink)&&void 0!==t?t:null===(r=O.value.navigatorConnection)||void 0===r?void 0:r.downlinkMax)&&void 0!==e?e:-1}},{key:"getEffectiveType",value:function(){var e,t,n,r;return null!==(e=null!==(t=null===(n=O.value.navigatorConnection)||void 0===n?void 0:n.effectiveType)&&void 0!==t?t:null===(r=O.value.navigatorConnection)||void 0===r?void 0:r.type)&&void 0!==e?e:"Unknown"}},{key:"getRoundTripTime",value:function(){var e,t;return null!==(e=null===(t=O.value.navigatorConnection)||void 0===t?void 0:t.rtt)&&void 0!==e?e:-1}},{key:"setupNetworkChangeListeners",value:function(){var e,t=this,n=function(){return t.updateStatistics()};null===(e=O.value.navigatorConnection)||void 0===e||e.addEventListener("change",n),this._disposables.add(new g(function(){var e;return null===(e=O.value.navigatorConnection)||void 0===e?void 0:e.removeEventListener("change",n)}))}},{key:"updateStatistics",value:function(){this._rtt.value=this.getRoundTripTime(),this._effectiveType.value=this.getEffectiveType(),this._downlinkThroughputCapacity.value=this.getDownlinkThroughputCapacity()}}])}(),He=function(){return o()(function e(n,r){var i=this;if(t()(this,e),s()(this,"_logger",ee.getLogger("SessionTelemetry")),s()(this,"_metricsService",void 0),s()(this,"_applicationActivityMonitor",Ne.applicationActivityMonitor),s()(this,"_networkMonitor",new ze),s()(this,"_pageLoadTime",void 0),s()(this,"_disposables",new ie),s()(this,"_lastNetworkStatistics",{}),this._pageLoadTime=n,this._disposables.add(this._networkMonitor),this._metricsService=r,!this._applicationActivityMonitor)throw new Error("SessionTelemetry Failed: No application monitor initialized.");this._networkMonitor.isSupported&&(this._disposables.add(this._applicationActivityMonitor.isForeground.subscribe(function(e){i.recordForegroundChange(e)})),this._disposables.add(this._networkMonitor.rtt.subscribe(function(e){e&&i.recordNetworkRTTUpdate(e)})),this._disposables.add(this._networkMonitor.effectiveType.subscribe(function(e){e&&i.recordNetworkTypeChangeUpdate(e)})),this._disposables.add(this._networkMonitor.downlinkThroughputCapacity.subscribe(function(e){e&&i.recordNetworkDownlinkThroughputCapacityUpdate(e)})))},[{key:"listenOnStreamSetup",value:function(){return new Ue(this._pageLoadTime)}},{key:"dispose",value:function(){this._disposables.dispose()}},{key:"recordForegroundChange",value:function(e){var t,n=Date.now(),r=null===(t=this._applicationActivityMonitor)||void 0===t?void 0:t.getTimeSinceLastChange();r&&(this._metricsService.push({metricType:e?Pe.ApplicationForeground:Pe.ApplicationBackground,runtime:(n-this._pageLoadTime)/1e3,value:{uint64:r}}),this._logger.info("Application has gone into the [%s] after [%s] ms",e?"foreground":"background",new Ve(r).toIsoString()))}},{key:"recordNetworkRTTUpdate",value:function(e){var t=Date.now(),n=this._lastNetworkStatistics.rtt;this._lastNetworkStatistics.rtt=e,this._metricsService.push({metricType:Pe.RoundTripTime,runtime:(t-this._pageLoadTime)/1e3,value:{uint64:e},previousValue:n?{uint64:n}:void 0,resource:"navigator"}),this._logger.info("[%s] Network RTT changed to [%s] from [%s]",new Ve(t-this._pageLoadTime).toIsoString(),e,n)}},{key:"recordNetworkTypeChangeUpdate",value:function(e){var t=Date.now(),n=this._lastNetworkStatistics.effectiveType;this._lastNetworkStatistics.effectiveType=e,this._metricsService.push({metricType:Pe.NetworkType,runtime:(t-this._pageLoadTime)/1e3,value:{string:e},previousValue:n?{string:n}:void 0}),this._logger.info("[%s] Network effective type has changed to [%s] from [%s]",new Ve(t-this._pageLoadTime).toIsoString(),e,n)}},{key:"recordNetworkDownlinkThroughputCapacityUpdate",value:function(e){var t=Date.now(),n=this._lastNetworkStatistics.downlinkThroughputCapacity;this._lastNetworkStatistics.downlinkThroughputCapacity=e,this._metricsService.push({metricType:Pe.DownlinkThroughputCapacity,runtime:(t-this._pageLoadTime)/1e3,value:{float:e},previousValue:n?{float:n}:void 0}),this._logger.info("[%s] Network downlink throughput capacity changed to [%s] from [%s]",new Ve(t-this._pageLoadTime).toIsoString(),e,n)}}])}(),We=o()(function e(n){t()(this,e),s()(this,"token",void 0),s()(this,"tokenExpiring",void 0),this.token=new b(n),this.tokenExpiring=new b(!1)}),qe=function(){return o()(function e(n){t()(this,e),s()(this,"publisherInitialization",void 0),s()(this,"disposables",void 0),s()(this,"publisherDisposables",void 0),s()(this,"state",void 0),s()(this,"authorized",void 0),s()(this,"online",void 0),s()(this,"loading",void 0),s()(this,"publishing",void 0),s()(this,"standby",void 0),s()(this,"stopped",void 0),s()(this,"failureCount",void 0),s()(this,"endPoint",void 0),s()(this,"stream",void 0),s()(this,"rtcStatistics",void 0),s()(this,"clearFailureCountTimeout",void 0),s()(this,"startReconnectionAttemptsTimeInMilliseconds",void 0),s()(this,"name",void 0),this.disposables=new ie,this.publisherDisposables=new ie,this.publisherInitialization=new Date,this.state=new b(Be.Initializing),this.authorized=new b(!0),this.online=new b(!0),this.loading=new b(!1),this.publishing=new b(!1),this.standby=new b(!1),this.stopped=new b(!1),this.failureCount=new b(0),this.endPoint=new b(null),this.stream=new b(null),this.rtcStatistics=new b(null),this.clearFailureCountTimeout=0,this.name=n&&n.length?n:this.generateScreenName(),this.startReconnectionAttemptsTimeInMilliseconds=0},[{key:"streamId",get:function(){var e=this.stream.value;return e?e.streamId:"-"}},{key:"applyPublishStatus",value:function(e){switch(e){case"ok":return;case"unauthorized":case"geo-restricted":case"geo-blocked":return void this.applyUnauthorized();case"not-found":return void this.applyNotFound();default:return void this.applyUnhandledError()}}},{key:"applySetRemoteDescriptionStatus",value:function(e){switch(e){case"ok":return;case"unauthorized":return void this.applyUnauthorized();case"not-found":return void this.applyNotFound();default:return void this.applyUnhandledError()}}},{key:"applyAddIceCandidatesStatus",value:function(e){switch(e){case"ok":return;case"unauthorized":return void this.applyUnauthorized();case"not-found":return void this.applyNotFound();default:return void this.applyUnhandledError()}}},{key:"mapPublishStatusToPublisherStatus",value:function(e){switch(e){case"ok":return Be.Starting;case"not-found":return Be.NotFound;case"geo-restricted":return Be.GeoRestricted;case"geo-blocked":return Be.GeoBlocked;case"unauthorized":return Be.Unauthorized;case"capacity":case"rate-limited":case"timeout":return Be.Recovering;case"missing-channel-or-room-id":case"forbidden-tag":return Be.ConfigurationError;case"port-in-range-not-found":return Be.TransientConfigurationError;case"failed":return Be.Error;default:$(e)}}},{key:"applyUnhandledError",value:function(){this.failureCount.value++,this.publishing.value=!1,this.standby.value=!0,this.stopped.value=!1,this.stream.value=null}},{key:"applyUnauthorized",value:function(){this.authorized.value=!1,this.failureCount.value=0,this.publishing.value=!1,this.standby.value=!0,this.stopped.value=!1,this.stream.value=null}},{key:"applyNotFound",value:function(){this.failureCount.value=0,this.publishing.value=!1,this.standby.value=!0,this.stopped.value=!1,this.stream.value=null}},{key:"generateScreenName",value:function(){return te.random(12)}}])}(),Je=function(){return o()(function e(){throw t()(this,e),new Error("GarbageCollectorManager is a static class that may not be instantiated")},null,[{key:"forceGarbageCollection",value:function(){R.isMobile&&Ne.skipGarbageCollectionOnMobileDevices||R.isForceChromeGarbageCollectionSupported&&this.forceChromeGarbageCollection()}},{key:"forceChromeGarbageCollection",value:function(){R.isQueueMicrotaskSupported?O.value.queueMicrotask(this.overloadMemoryToInvokeGarbageCollection.bind(this)):O.value.setTimeout(this.overloadMemoryToInvokeGarbageCollection.bind(this),0)}},{key:"overloadMemoryToInvokeGarbageCollection",value:function(){var e=O.value.documentCreateElement("img");e.src=O.value.URL.createObjectURL(new Blob([new ArrayBuffer(1e8)])),e.onerror=function(){O.value.URL.revokeObjectURL(this.src),e=null}}}])}(),Ke=function(){return o()(function e(n){t()(this,e),s()(this,"_forceGarbageCollectionOnRestart",void 0),s()(this,"mediaStream",void 0),s()(this,"peerConnection",void 0),s()(this,"peerConnectionReconnectAttempts",void 0),this._forceGarbageCollectionOnRestart=n.forceGarbageCollectionOnRestart,this.mediaStream=new b(null),this.peerConnection=new b(null),this.peerConnectionReconnectAttempts=0},[{key:"disposePeerConnection",value:function(){var e=this.peerConnection.value;e&&(this.peerConnection.value=null,e.close(),e.dispose(),this._forceGarbageCollectionOnRestart&&Je.forceGarbageCollection())}},{key:"disposeMediaStream",value:function(){var e;null===(e=this.mediaStream.value)||void 0===e||e.getTracks().forEach(function(e){return e.stop()}),this.mediaStream.value=null}}])}(),Qe=o()(function e(){t()(this,e),s()(this,"isStarting",void 0),s()(this,"isDisposed",void 0),this.isStarting=new b(!1),this.isDisposed=!1}),$e=n(847),Ze=n.n($e),Xe=n(837),Ye=n.n(Xe),et=function(e){return e[e.Keep=0]="Keep",e[e.Reset=1]="Reset",e}({}),tt=function(e){return e[e.Normal=0]="Normal",e[e.Force=1]="Force",e[e.Reset=2]="Reset",e}({}),nt=function(){return o()(function e(){t()(this,e)},null,[{key:"convertBitrateModeToBitrateModeType",value:function(e){switch(e){case tt.Normal:return"Normal";case tt.Force:return"Force";case tt.Reset:return"Reset";default:$(e)}}}])}(),rt=function(){return o()(function e(){t()(this,e)},null,[{key:"convertBitrateStateToBitrateStateType",value:function(e){switch(e){case et.Keep:return"Keep";case et.Reset:return"Reset";default:$(e)}}}])}(),it=n(981).A,ot=["status","streamId","sharedSecret","lag","rtcConfiguration","setRemoteDescriptionResponse","createAnswerDescriptionResponse","createOfferDescriptionResponse","streamResponseContext"];function at(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?at(Object(n),!0).forEach(function(t){s()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):at(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function ut(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return ct(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,h={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,n){return o=t,s=0,u=e,h.n=n,a}};function f(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],f=h.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=f&&((i=n<2&&f<o[1])?(s=0,h.v=r,h.n=o[1]):f<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,h.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&f(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(h.n=-1),f(s,u)):h.n=u:h.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=h.n<0)?u:n.call(r,h))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(ct(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,ct(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,ct(d,"constructor",c),ct(c,"constructor",u),u.displayName="GeneratorFunction",ct(c,i,"GeneratorFunction"),ct(d),ct(d,i,"Generator"),ct(d,r,function(){return this}),ct(d,"toString",function(){return"[object Generator]"}),(ut=function(){return{w:o,m:h}})()}function ct(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}ct=function(e,t,n,r){function o(t,n){ct(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},ct(e,t,n,r)}function lt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(lt=function(){return!!e})()}var dt=function(e){function n(){return t()(this,n),e=this,r=n,i=arguments,r=f()(r),d()(e,lt()?Reflect.construct(r,i||[],f()(e).constructor):r.apply(e,i));var e,r,i}return v()(n,e),o()(n)}(Ye()(Error)),ht=function(){return o()(function e(n,r){if(t()(this,e),s()(this,"_logger",ee.getLogger("EndPoint")),s()(this,"_uri",void 0),s()(this,"_timeoutDuration",void 0),s()(this,"_roundTripTime",0),this._uri=n,this._timeoutDuration=r,!r)throw new Error("End point requires a timeout")},[{key:"roundTripTime",get:function(){return this._roundTripTime}},{key:"toString",value:function(){return"EndPoint[uri=".concat(this._uri,"]")}},{key:"ping",value:(y=N()(ut().m(function e(){var t,n,r,i;return ut().w(function(e){for(;;)switch(e.n){case 0:return t=this.buildPingUrl(),n=Date.now(),r={method:"GET",cache:"no-cache"},e.n=1,this.fetchWithTimeout(t,r,this._timeoutDuration).catch(function(e){if(e instanceof dt)throw new Error("Ping timed out [".concat(t,"]"));throw e});case 1:if((i=e.v).ok){e.n=2;break}throw new Error("Ping failed [".concat(t,"] [").concat(i.status,"]"));case 2:return this._roundTripTime=Date.now()-n,e.a(2,this._roundTripTime)}},e,this)})),function(){return y.apply(this,arguments)})},{key:"subscribe",value:(g=N()(ut().m(function e(t,n,r){var i,o,a,s,u,c,l,d,h,f,p,v,g,y,m,_,b,C,w,k=arguments;return ut().w(function(e){for(;;)switch(e.n){case 0:if(a=k.length>3&&void 0!==k[3]?k[3]:{},s=re.parseToken(t).tenancy){e.n=1;break}return this._logger.error("Failed to parse token [%s]",t),e.a(2,{status:"unauthorized"});case 1:return u=this.buildUrl([s,"stream","subscribe"]).toString(),c=new O.value.FormData,l=B.sdkVersion,d=0===r&&n?{apiVersion:7,clientVersion:l,bearerToken:t,failureCount:r,httpRoundTripTime:this._roundTripTime,setRemoteDescription:{apiVersion:7,sessionDescription:{type:n.type,sdp:n.sdp}},createAnswerDescription:{apiVersion:7}}:{apiVersion:7,clientVersion:l,bearerToken:t,failureCount:r,httpRoundTripTime:this._roundTripTime,createOfferDescription:{apiVersion:7}},e.n=2,null===(i=a.onSubscribeRequestCallback)||void 0===i?void 0:i.call(a,d);case 2:return c.append("jsonBody",JSON.stringify(d)),h=Date.now(),f={method:"POST",body:c},e.n=3,this.executeFetchRequest(u,f,"subscribe");case 3:return p=e.v,e.n=4,this.parseJsonBody(p);case 4:if(v=e.v,this.handleStreamResponseContext(null==v?void 0:v.streamResponseContext),"ok"===(g=this.mapHttpStatusToSubscribeStatus(p))){e.n=6;break}return m={status:g},e.n=5,null===(y=a.onSubscribeResponseCallback)||void 0===y?void 0:y.call(a,m);case 5:return e.a(2,m);case 6:if(v){e.n=8;break}return b={status:"failed"},e.n=7,null===(_=a.onSubscribeResponseCallback)||void 0===_?void 0:_.call(a,b);case 7:return e.a(2,b);case 8:return C=Date.now(),w=this.normalizeSubscribeResponse(s,v),this._logger.debug("Got subscribe response [%j] in [%s] ms",w,C-h),e.n=9,null===(o=a.onSubscribeResponseCallback)||void 0===o?void 0:o.call(a,w);case 9:return e.a(2,w)}},e,this)})),function(e,t,n){return g.apply(this,arguments)})},{key:"publish",value:(v=N()(ut().m(function e(t,n,r,i){var o,a,s,u,c,l,d,h,f,p,v,g,y;return ut().w(function(e){for(;;)switch(e.n){case 0:if(o=re.parseToken(n).tenancy){e.n=1;break}return this._logger.error("Failed to parse token [%s]",n),e.a(2,{status:"unauthorized"});case 1:return a=this.buildUrl([o,"stream","publish"]).toString(),s=new O.value.FormData,u=B.sdkVersion,0===i&&r?(c={apiVersion:7,clientVersion:u,bearerToken:n,failureCount:i,httpRoundTripTime:this._roundTripTime,name:t,setRemoteDescription:{apiVersion:7,sessionDescription:{type:r.type,sdp:r.sdp}},createAnswerDescription:{streamId:"",apiVersion:7}},s.append("jsonBody",JSON.stringify(c))):(l={apiVersion:7,clientVersion:u,bearerToken:n,failureCount:i,httpRoundTripTime:this._roundTripTime,name:t,createOfferDescription:{streamId:"",apiVersion:7}},s.append("jsonBody",JSON.stringify(l))),d=Date.now(),h={method:"POST",body:s},e.n=2,this.executeFetchRequest(a,h,"publish");case 2:return f=e.v,e.n=3,this.parseJsonBody(f);case 3:if(p=e.v,this.handleStreamResponseContext(null==p?void 0:p.streamResponseContext),"ok"===(v=this.mapHttpStatusToPublishStatus(f))){e.n=4;break}return e.a(2,{status:v});case 4:if(p){e.n=5;break}return e.a(2,{status:"failed"});case 5:return g=Date.now(),y=this.normalizePublishResponse(o,p),this._logger.debug("Got publish response [%j] in [%s] ms",y,g-d),e.a(2,y)}},e,this)})),function(e,t,n,r){return v.apply(this,arguments)})},{key:"setRemoteDescription",value:(p=N()(ut().m(function e(t,n){var r,i,o,a,s,u,c,l,d;return ut().w(function(e){for(;;)switch(e.n){case 0:return r=this.buildUrl([t.tenancy,"stream",t.streamId,"description","remote"]).toString(),i=new O.value.FormData,o={apiVersion:7,sharedSecret:t.sharedSecret,sessionDescription:{type:n.type,sdp:n.sdp}},i.append("jsonBody",JSON.stringify(o)),a=Date.now(),s={method:"POST",body:i},e.n=1,this.executeFetchRequest(r,s,"set remote description");case 1:if(u=e.v,"ok"===(c=this.mapHttpStatusToSetRemoteDescriptionStatus(u))){e.n=2;break}return e.a(2,{status:c});case 2:return l=Date.now(),e.n=3,this.convertHttpResponseToSetRemoteDescription(u);case 3:return d=e.v,this._logger.debug("Got set remote description response [%j] in [%s] ms",d,l-a),e.a(2,d)}},e,this)})),function(e,t){return p.apply(this,arguments)})},{key:"limitBitrate",value:(f=N()(ut().m(function e(t,n,r,i,o){var a,s,u,c,l,d,h,f;return ut().w(function(e){for(;;)switch(e.n){case 0:return a=this.buildUrl([t.tenancy,"stream",t.streamId,"bitrate"]).toString(),s=new O.value.FormData,u={apiVersion:7,sharedSecret:t.sharedSecret,elapsedInMilliseconds:n,bitrateInBitsPerSecond:r,bitrateState:rt.convertBitrateStateToBitrateStateType(i),bitrateMode:nt.convertBitrateModeToBitrateModeType(o)},s.append("jsonBody",JSON.stringify(u)),c=Date.now(),l={method:"POST",body:s},e.n=1,this.executeFetchRequest(a,l,"set limit bitrate");case 1:return d=e.v,h=this.mapHttpStatusToSetTemporaryMaximalBitrateStatus(d),f=Date.now(),this._logger.info("Got set limit bitrate response [%s] in [%s] ms",h,f-c),e.a(2,{status:h})}},e,this)})),function(e,t,n,r,i){return f.apply(this,arguments)})},{key:"addIceCandidates",value:(h=N()(ut().m(function e(t,n,r){var i,o,a,s,u,c,l,d,h,f,p=arguments;return ut().w(function(e){for(;;)switch(e.n){case 0:return i=p.length>3&&void 0!==p[3]?p[3]:[],o=this.buildUrl([t.tenancy,"stream",t.streamId,"ice","candidates"]).toString(),a=new O.value.FormData,s={apiVersion:7,sharedSecret:t.sharedSecret,candidates:n,discoveryCompleted:r,options:i},a.append("jsonBody",JSON.stringify(s)),u=Date.now(),c={method:"POST",body:a},e.n=1,this.executeFetchRequest(o,c,"add ice candidates");case 1:if(l=e.v,"ok"===(d=this.mapHttpStatusToAddIceCandidatesStatus(l))){e.n=2;break}return e.a(2,{status:d});case 2:return h=Date.now(),e.n=3,this.convertHttpResponseToAddIceCandidates(l);case 3:return f=e.v,this._logger.info("Got add ICE candidates response [%j] in [%s] ms",f,h-u),e.a(2,f)}},e,this)})),function(e,t,n){return h.apply(this,arguments)})},{key:"destroyStream",value:(d=N()(ut().m(function e(t,n){var r,i,o,a,s,u,c,l,d;return ut().w(function(e){for(;;)switch(e.n){case 0:return r=this.buildUrl([t.tenancy,"stream",t.streamId,"destroy"]).toString(),i=new O.value.FormData,o={apiVersion:7,sharedSecret:t.sharedSecret,reason:n,options:[]},a={method:"POST",body:i,cache:"no-cache"},i.append("jsonBody",JSON.stringify(o)),s=Date.now(),e.n=1,this.executeFetchRequest(r,a,"destroy stream");case 1:if(u=e.v,"ok"===(c=this.mapHttpStatusToSetDestroyStreamStatus(u))){e.n=2;break}return e.a(2,{status:c});case 2:return l=Date.now(),e.n=3,this.convertHttpResponseToDestroyStream(u);case 3:return d=e.v,this._logger.info("Got destroy stream response [%j] in [%s] ms",d,l-s),e.a(2,d)}},e,this)})),function(e,t){return d.apply(this,arguments)})},{key:"destroyStreamOnUnmount",value:(l=N()(ut().m(function e(t,n){var r,i,o,a,s=this;return ut().w(function(e){for(;;)switch(e.n){case 0:if(r=O.value.sendBeacon){e.n=1;break}return this.destroyStream(t,n).catch(function(e){s._logger.error("Failed to destroy stream on unmount",e)}),e.a(2);case 1:i=this.buildUrl([t.tenancy,"stream",t.streamId,"destroy"]).toString(),o=new O.value.FormData,a={apiVersion:7,sharedSecret:t.sharedSecret,reason:n,options:[]},o.append("jsonBody",JSON.stringify(a)),r(i,o);case 2:return e.a(2)}},e,this)})),function(e,t){return l.apply(this,arguments)})},{key:"fetchWithTimeout",value:(u=N()(ut().m(function e(t,n,r){var i,o;return ut().w(function(e){for(;;)switch(e.p=e.n){case 0:return i=new O.value.AbortController,o=null,e.p=1,e.n=2,it.race([O.value.fetch(t,st(st({},n),{},{signal:i.signal})),new it(function(e,n){o=O.value.setTimeout(function(){i.abort(),n(new dt("Timed out [".concat(t,"]")))},r)})]);case 2:return e.a(2,e.v);case 3:return e.p=3,o&&O.value.clearTimeout(o),e.f(3);case 4:return e.a(2)}},e,null,[[1,,3,4]])})),function(e,t,n){return u.apply(this,arguments)})},{key:"executeFetchRequest",value:(a=N()(ut().m(function e(t,n,r){var i;return ut().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,this.fetchWithTimeout(t,n,this._timeoutDuration);case 1:return e.a(2,e.v);case 2:return e.p=2,i=e.v,this._logger.error("Failed to ".concat(r," [").concat(n.method||"GET","] [").concat(t,"]"),i),e.a(2,{status:i instanceof dt?408:500})}},e,this,[[0,2]])})),function(e,t,n){return a.apply(this,arguments)})},{key:"buildUrl",value:function(e){var t=new O.value.URL(this._uri),n=t.pathname.split("/");return n.length=n.length-1,t.pathname=n.concat.apply(n,c()(e)).join("/"),t}},{key:"buildPingUrl",value:function(){var e=new O.value.URL(this._uri),t=B.sdkVersion,n=we.discoveryParameters.intentions;return e.searchParams.set("type","http"),e.searchParams.set("version",t),e.searchParams.set("intentions",n),e.searchParams.set("_","".concat(Date.now())),e.toString()}},{key:"parseJsonBody",value:(i=N()(ut().m(function e(t){return ut().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,t.json();case 1:return e.a(2,e.v);case 2:return e.p=2,e.v,e.a(2,void 0)}},e,null,[[0,2]])})),function(e){return i.apply(this,arguments)})},{key:"handleStreamResponseContext",value:function(e){e&&this._logger.info("stream response context [%j]",e)}},{key:"mapHttpStatusToPublishStatus",value:function(e){switch(e.status){case 200:return"ok";case 401:return"unauthorized";case 402:return"geo-restricted";case 403:return"geo-blocked";case 406:return"missing-channel-or-room-id";case 408:return"timeout";case 409:return"port-in-range-not-found";case 415:return"forbidden-tag";case 503:return"capacity";case 504:return"rate-limited";default:return"failed"}}},{key:"mapHttpStatusToSubscribeStatus",value:function(e){switch(e.status){case 200:return"ok";case 401:return"unauthorized";case 402:return"geo-restricted";case 403:return"geo-blocked";case 408:return"timeout";case 409:return"port-in-range-not-found";case 415:return"forbidden-tag";case 503:return"capacity";case 504:return"rate-limited";default:return"failed"}}},{key:"mapHttpStatusToSetRemoteDescriptionStatus",value:function(e){switch(e.status){case 200:return"ok";case 401:return"unauthorized";case 408:return"timeout";case 503:return"capacity";case 504:return"rate-limited";default:return"failed"}}},{key:"mapHttpStatusToSetTemporaryMaximalBitrateStatus",value:function(e){switch(e.status){case 200:return"ok";case 401:return"unauthorized";case 408:return"timeout";case 503:return"capacity";case 504:return"rate-limited";default:return"failed"}}},{key:"mapHttpStatusToAddIceCandidatesStatus",value:function(e){switch(e.status){case 200:return"ok";case 401:return"unauthorized";case 408:return"timeout";case 503:return"capacity";case 504:return"rate-limited";default:return"failed"}}},{key:"mapHttpStatusToSetDestroyStreamStatus",value:function(e){switch(e.status){case 200:return"ok";case 401:return"unauthorized";case 408:return"timeout";case 503:return"capacity";case 504:return"rate-limited";default:return"failed"}}},{key:"normalizeSubscribeResponse",value:function(e,t){var n=t.status,r=t.streamId,i=t.sharedSecret,o=t.lag,a=t.rtcConfiguration,s=t.setRemoteDescriptionResponse,u=t.createAnswerDescriptionResponse,c=t.createOfferDescriptionResponse,l=(t.streamResponseContext,st(st({},Ze()(t,ot)),{},{status:n,stream:{tenancy:e,streamId:r,sharedSecret:i},lag:o}));return a&&(l.rtcConfiguration=this.convertIRtcConfigurationToRTCConfiguration(a)),null!=s&&s.sessionDescription&&(l.setRemoteDescriptionResponse={sessionDescription:s.sessionDescription}),null!=u&&u.sessionDescription&&(l.createAnswerDescriptionResponse={sessionDescription:u.sessionDescription}),null!=c&&c.sessionDescription&&(l.createOfferDescriptionResponse={sessionDescription:c.sessionDescription}),l}},{key:"normalizePublishResponse",value:function(e,t){var n={status:t.status,stream:{tenancy:e,streamId:t.streamId,sharedSecret:t.sharedSecret}};return t.rtcConfiguration&&(n.rtcConfiguration=this.convertIRtcConfigurationToRTCConfiguration(t.rtcConfiguration)),t.setRemoteDescriptionResponse&&t.setRemoteDescriptionResponse.sessionDescription&&(n.setRemoteDescriptionResponse={sessionDescription:t.setRemoteDescriptionResponse.sessionDescription}),t.createAnswerDescriptionResponse&&t.createAnswerDescriptionResponse.sessionDescription&&(n.createAnswerDescriptionResponse={sessionDescription:t.createAnswerDescriptionResponse.sessionDescription}),t.createOfferDescriptionResponse&&t.createOfferDescriptionResponse.sessionDescription&&(n.createOfferDescriptionResponse={sessionDescription:t.createOfferDescriptionResponse.sessionDescription}),n}},{key:"convertIRtcConfigurationToRTCConfiguration",value:function(e){var t={iceServers:[]};if(e.bundlePolicy&&(t.bundlePolicy=e.bundlePolicy),"number"==typeof e.iceCandidatePoolSize&&(t.iceCandidatePoolSize=e.iceCandidatePoolSize),e.iceServers){for(var n=[],r=0;r<e.iceServers.length;r++)n.push({urls:e.iceServers[r].urls,username:e.iceServers[r].username,credential:e.iceServers[r].credential});t.iceServers=n}return e.iceTransportPolicy&&(t.iceTransportPolicy=e.iceTransportPolicy),e.rtcpMuxPolicy&&(t.rtcpMuxPolicy=e.rtcpMuxPolicy),t}},{key:"convertHttpResponseToSetRemoteDescription",value:(r=N()(ut().m(function e(t){var n,r,i;return ut().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.parseJsonBody(t);case 1:return n=e.v,r=n?n.status:this.mapHttpStatusToSetRemoteDescriptionStatus(t),i={status:r},n&&n.sessionDescription&&(i.sessionDescription=n.sessionDescription),e.a(2,i)}},e,this)})),function(e){return r.apply(this,arguments)})},{key:"convertHttpResponseToAddIceCandidates",value:(n=N()(ut().m(function e(t){var n,r,i;return ut().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.parseJsonBody(t);case 1:return n=e.v,r=n?n.status:this.mapHttpStatusToAddIceCandidatesStatus(t),i={status:r,options:[]},n&&n.options&&(i.options=n.options),e.a(2,i)}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"convertHttpResponseToDestroyStream",value:(e=N()(ut().m(function e(t){var n,r,i;return ut().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.parseJsonBody(t);case 1:return n=e.v,r=n?n.status:this.mapHttpStatusToSetDestroyStreamStatus(t),i={status:r},e.a(2,i)}},e,this)})),function(t){return e.apply(this,arguments)})}]);var e,n,r,i,a,u,l,d,h,f,p,v,g,y}(),ft=n(981).A;function pt(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return vt(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,h={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,n){return o=t,s=0,u=e,h.n=n,a}};function f(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],f=h.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=f&&((i=n<2&&f<o[1])?(s=0,h.v=r,h.n=o[1]):f<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,h.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&f(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(h.n=-1),f(s,u)):h.n=u:h.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=h.n<0)?u:n.call(r,h))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(vt(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,vt(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,vt(d,"constructor",c),vt(c,"constructor",u),u.displayName="GeneratorFunction",vt(c,i,"GeneratorFunction"),vt(d),vt(d,i,"Generator"),vt(d,r,function(){return this}),vt(d,"toString",function(){return"[object Generator]"}),(pt=function(){return{w:o,m:h}})()}function vt(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}vt=function(e,t,n,r){function o(t,n){vt(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},vt(e,t,n,r)}var gt=function(){return o()(function e(n){if(t()(this,e),s()(this,"_logger",ee.getLogger("Discovery")),s()(this,"_metricsService",void 0),s()(this,"_uri",void 0),!n)throw new Error("Discovery requires uri");this._metricsService=Me.getMetricsService(n.toString()),this._uri=n},[{key:"discoverNearbyEndPoints",value:(n=N()(pt().m(function e(t,n){var r,i,o,a;return pt().w(function(e){for(;;)switch(e.n){case 0:if(n){e.n=1;break}throw new Error("Discovery requires timeout");case 1:return r=t.toString(),e.n=2,ft.race([O.value.fetch(r,{method:"GET",cache:"no-cache"}),new ft(function(e,t){return O.value.setTimeout(function(){return t(new Error("Discovery timed out [".concat(r,"]")))},n)})]);case 2:if((i=e.v).ok){e.n=3;break}throw new Error("Discovery failed [".concat(r,"] [").concat(i.status,"]"));case 3:if(null!==i.body){e.n=4;break}throw new Error("Discovery failed with no data [".concat(r,"]"));case 4:return e.n=5,i.text();case 5:return o=e.v,a=o.split(","),e.a(2,a.map(function(e){return new ht(e,n)}))}},e)})),function(e,t){return n.apply(this,arguments)})},{key:"discoverClosestEndPoint",value:(e=N()(pt().m(function e(){var t,n,r,i,o,a,s=this,u=arguments;return pt().w(function(e){for(;;)switch(e.n){case 0:return t=u.length>0&&void 0!==u[0]?u[0]:2e4,n=ke.buildDiscoveryUrl(this._uri),e.n=1,this.discoverNearbyEndPoints(new O.value.URL(n),t);case 1:return r=e.v,i=0,o=function(){return new ft(function(e,t){i>=r.length&&t("Discovery of [".concat(r.length,"] endpoints from [").concat(n,"] failed, preventing it from completing"))})},e.n=2,ft.race(r.map(function(e){return e.ping().catch(function(t){return s._logger.warn("Failed to ping end point [%s]",e,t),i++,o()}).then(function(t){var n=Date.now();return s._logger.info("Discovered end point [%s] with time [%s]",e.toString(),t),s._metricsService.push({metricType:Pe.RoundTripTime,runtime:(n-Ne.pageLoadTime)/1e3,value:{uint64:t||0},resource:e.toString(),kind:"ping"}),e})}));case 2:return a=e.v,e.a(2,a)}},e,this)})),function(){return e.apply(this,arguments)})}]);var e,n}(),yt=n(981).A;function mt(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return _t(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,h={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,n){return o=t,s=0,u=e,h.n=n,a}};function f(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],f=h.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=f&&((i=n<2&&f<o[1])?(s=0,h.v=r,h.n=o[1]):f<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,h.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&f(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(h.n=-1),f(s,u)):h.n=u:h.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=h.n<0)?u:n.call(r,h))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(_t(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,_t(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,_t(d,"constructor",c),_t(c,"constructor",u),u.displayName="GeneratorFunction",_t(c,i,"GeneratorFunction"),_t(d),_t(d,i,"Generator"),_t(d,r,function(){return this}),_t(d,"toString",function(){return"[object Generator]"}),(mt=function(){return{w:o,m:h}})()}function _t(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}_t=function(e,t,n,r){function o(t,n){_t(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},_t(e,t,n,r)}var bt=function(){function e(){throw t()(this,e),new Error("Discovery is a static class that may not be instantiated")}return o()(e,null,[{key:"precacheClosestEndPointDiscovery",value:(r=N()(mt().m(function t(){return mt().w(function(t){for(;;)if(0===t.n)return t.a(2,new yt(function(t){var n=O.subscribe(function(r){if(r){var i=new r.URL(Ne.discoveryUri.value);return e.discoverClosestEndPointWithCaching(i).then(t).then(function(){return n.dispose()})}})}))},t)})),function(){return r.apply(this,arguments)})},{key:"discoverClosestEndPointWithCaching",value:(n=N()(mt().m(function t(n){var r,i,o;return mt().w(function(t){for(;;)switch(t.n){case 0:if(!((r=n.toString())in e._cache)){t.n=1;break}return t.a(2,e._cache[r]);case 1:return i=new gt(n),o=e._cache[r]=i.discoverClosestEndPoint(),e._cache[r].then(function(){O.value.setTimeout(function(){e._cache[r]===o&&delete e._cache[r]},6e4)}).catch(function(){delete e._cache[r]}),t.a(2,o)}},t)})),function(e){return n.apply(this,arguments)})},{key:"clearCachedClosestEndpoint",value:function(t){var n=t.toString();n in e._cache&&delete e._cache[n]}}]);var n,r}();s()(bt,"_cache",{}),bt.precacheClosestEndPointDiscovery();var Ct=n(715),wt=n.n(Ct),kt=function(){return o()(function e(n){t()(this,e),s()(this,"_sdp",void 0),s()(this,"_audioCodec",void 0),s()(this,"_videoCodec",void 0),s()(this,"_isAudioTrackEnabled",void 0),s()(this,"_isVideoTrackEnabled",void 0),this._sdp=n;var r=this._sdp.split(/(\r\n|\r|\n)/),i=this._sdp.split(/(?:^|[\r\n])m=/);this._audioCodec=this.applyCodec("audio",r),this._videoCodec=this.applyCodec("video",r),this._isAudioTrackEnabled=this.isTrackByTypeEnabled("audio",i),this._isVideoTrackEnabled=this.isTrackByTypeEnabled("video",i)},[{key:"audioCodec",get:function(){return this._audioCodec}},{key:"videoCodec",get:function(){return this._videoCodec}},{key:"isAudioTrackEnabled",get:function(){return this._isAudioTrackEnabled}},{key:"isVideoTrackEnabled",get:function(){return this._isVideoTrackEnabled}},{key:"isTrackByTypeEnabled",value:function(e,t){var n=t.find(function(t){return t.startsWith(e)});return!!n&&!n.includes("a=inactive")}},{key:"applyCodec",value:function(e,t){var n,r=(null===(n=t.find(function(t){return t.includes("m=".concat(e))}))||void 0===n?void 0:n.split(" ")[3])||"",i=t.find(function(e){return e.includes("a=rtpmap:".concat(r))});return((null==i?void 0:i.split(" ")[1])||"").split("/")[0]}}])}(),St=n(981).A;function Tt(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return xt(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,h={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,n){return o=t,s=0,u=e,h.n=n,a}};function f(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],f=h.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=f&&((i=n<2&&f<o[1])?(s=0,h.v=r,h.n=o[1]):f<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,h.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&f(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(h.n=-1),f(s,u)):h.n=u:h.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=h.n<0)?u:n.call(r,h))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(xt(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,xt(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,xt(d,"constructor",c),xt(c,"constructor",u),u.displayName="GeneratorFunction",xt(c,i,"GeneratorFunction"),xt(d),xt(d,i,"Generator"),xt(d,r,function(){return this}),xt(d,"toString",function(){return"[object Generator]"}),(Tt=function(){return{w:o,m:h}})()}function xt(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}xt=function(e,t,n,r){function o(t,n){xt(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},xt(e,t,n,r)}var Ot=function(){return o()(function e(n,r,i){var o,a,u,c,l=this;if(t()(this,e),s()(this,"_logger",ee.getLogger("RtcPublishMonitor")),s()(this,"_estimatedRoundTripTime",void 0),s()(this,"_estimatedVideoCodec","unknown"),s()(this,"_estimatedAudioCodec","unknown"),s()(this,"_rtcStatistic",new b({})),s()(this,"_disposables",new ie),s()(this,"_peerConnection",void 0),s()(this,"_isMonitorRunning",!0),s()(this,"_updateTimeout",void 0),s()(this,"_monitorGeneration",0),s()(this,"_availableTracks",null),this._peerConnection=n,this._estimatedRoundTripTime=r,this._peerConnection&&null!==(o=this._peerConnection)&&void 0!==o&&null!==(a=o.currentLocalDescription)&&void 0!==a&&a.sdp&&null!==(u=this._peerConnection)&&void 0!==u&&null!==(c=u.currentRemoteDescription)&&void 0!==c&&c.sdp){var d=new kt(this._peerConnection.currentLocalDescription.sdp),h=new kt(this._peerConnection.currentRemoteDescription.sdp);this._estimatedAudioCodec=h.audioCodec,this._estimatedVideoCodec=h.videoCodec,this._availableTracks={audio:d.isAudioTrackEnabled&&h.isAudioTrackEnabled,video:d.isVideoTrackEnabled&&h.isVideoTrackEnabled};var f=!0;this._disposables.add(i.subscribe(function(e){f?f=!1:e&&l._isMonitorRunning&&(l._monitorGeneration++,O.value.clearTimeout(l._updateTimeout),l._logger.debug("Restarting stats polling after foreground transition"),l.updateStatistic())})),this.updateStatistic()}},[{key:"rtcStatistic",get:function(){return this._rtcStatistic}},{key:"dispose",value:function(){this._monitorGeneration++,this._isMonitorRunning=!1,this._peerConnection=null,this._disposables.dispose(),O.value.clearTimeout(this._updateTimeout),this._updateTimeout=void 0}},{key:"updateStatistic",value:(e=N()(Tt().m(function e(){var t,n,r,i,o,a,s,u,c,l,d,h=this;return Tt().w(function(e){for(;;)switch(e.p=e.n){case 0:if(!R.getStatsPromiseBasedDisabled){e.n=1;break}return e.a(2);case 1:if(t=this._monitorGeneration,n=function(e){return e.id.includes("Audio")?"audio":e.id.includes("Video")?"video":""},e.p=2,o=null===(i=this._peerConnection)||void 0===i?void 0:i.getStats(null)){e.n=3;break}return e.a(2);case 3:return a=new St(function(e){r=O.value.setTimeout(function(){return e(void 0)},5e3)}),e.n=4,St.race([o,a]);case 4:if(s=e.v,t===this._monitorGeneration&&this._isMonitorRunning){e.n=5;break}return e.a(2);case 5:s?(u={},c=this._estimatedRoundTripTime,s.forEach(function(e){if("candidate-pair"===e.type&&e.currentRoundTripTime&&(c=1e3*e.currentRoundTripTime,u.audio&&(u.audio.roundTripTime=c),u.video&&(u.video.roundTripTime=c)),"candidate-pair"===e.type&&e.lastPacketSentTimestamp&&(l=e.lastPacketSentTimestamp,u.audio&&(u.audio.lastPacketSentTimestamp=l),u.video&&(u.video.lastPacketSentTimestamp=l)),"outbound-rtp"===e.type){var t,r=e.kind||e.mediaType||n(e),i="";if(s.forEach(function(t){t.id===e.codecId&&(i=t.mimeType)}),r&&null!==(t=h._availableTracks)&&void 0!==t&&t[r]){var o,a,d,f,p,v,g,y=(e.bytesSent||0)-(null!==(o=null===(a=h._rtcStatistic.value)||void 0===a||null===(d=a[r])||void 0===d?void 0:d.bytesSent)&&void 0!==o?o:0),m=e.timestamp-(null===(f=h._rtcStatistic.value)||void 0===f||null===(p=f[r])||void 0===p?void 0:p.timestamp),_=y&&m?Math.floor(8*y/m*1e3):0;if(u[r]={ssrc:e.ssrc,mediaType:r,timestamp:e.timestamp,bitrate:_,bytesSent:e.bytesSent,packetsSent:e.packetsSent,retransmittedBytesSent:e.retransmittedBytesSent,codec:i||h.getCodecByType(r),roundTripTime:c},(e.lastPacketSentTimestamp||l)&&(u[r].lastPacketSentTimestamp=e.lastPacketSentTimestamp||l),"video"===r&&(u[r].firCount=e.firCount,u[r].frameHeight=e.frameHeight,u[r].frameWidth=e.frameWidth,u[r].framesEncoded=e.framesEncoded,u[r].framesSent=e.framesSent,u[r].headerBytesSent=e.headerBytesSent,u[r].hugeFramesSent=e.hugeFramesSent,u[r].pliCount=e.pliCount,u[r].qpSum=e.qpSum,u[r].totalEncodeTime=e.totalEncodeTime,u[r].totalEncodedBytesTarget=e.totalEncodedBytesTarget,null!==(v=h._rtcStatistic.value)&&void 0!==v&&null!==(g=v.video)&&void 0!==g&&g.framesEncoded)){var b=(e.framesEncoded-h._rtcStatistic.value.video.framesEncoded)/(u[r].timestamp-h._rtcStatistic.value.video.timestamp)*1e3;u[r].fps=b?Math.round(100*b)/100:0}}}}),this._rtcStatistic.value=u):this._logger.debug("getStats() timed out, skipping stats processing"),e.n=8;break;case 6:if(e.p=6,d=e.v,t===this._monitorGeneration&&this._isMonitorRunning){e.n=7;break}return e.a(2);case 7:this._logger.warn("getStats() rejected",d);case 8:return e.p=8,O.value.clearTimeout(r),e.f(8);case 9:this._isMonitorRunning&&t===this._monitorGeneration&&(this._updateTimeout=O.value.setTimeout(function(){return h.updateStatistic()},1e3));case 10:return e.a(2)}},e,this,[[2,6,8,9]])})),function(){return e.apply(this,arguments)})},{key:"getCodecByType",value:function(e){switch(e){case"audio":return this._estimatedAudioCodec||"unknown";case"video":return this._estimatedVideoCodec||"unknown";default:return"unknown"}}}]);var e}(),Pt=function(){return o()(function e(){throw t()(this,e),new Error("RtcConfigurationManager is a static class that may not be instantiated")},null,[{key:"truncateIceServers",value:function(e){var t=[];if(!e.iceServers)return e;for(var n=0;n<e.iceServers.length;n++){for(var r=[],i=0;i<2;i++)e.iceServers[n].urls[i]&&r.push(e.iceServers[n].urls[i]);t.push({urls:r,username:e.iceServers[n].username,credential:e.iceServers[n].credential})}return e.iceServers=t,e}}])}(),Rt=n(981).A;function Et(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return Dt(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,h={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,n){return o=t,s=0,u=e,h.n=n,a}};function f(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],f=h.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=f&&((i=n<2&&f<o[1])?(s=0,h.v=r,h.n=o[1]):f<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,h.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&f(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(h.n=-1),f(s,u)):h.n=u:h.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=h.n<0)?u:n.call(r,h))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(Dt(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,Dt(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,Dt(d,"constructor",c),Dt(c,"constructor",u),u.displayName="GeneratorFunction",Dt(c,i,"GeneratorFunction"),Dt(d),Dt(d,i,"Generator"),Dt(d,r,function(){return this}),Dt(d,"toString",function(){return"[object Generator]"}),(Et=function(){return{w:o,m:h}})()}function Dt(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}Dt=function(e,t,n,r){function o(t,n){Dt(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},Dt(e,t,n,r)}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 Ft(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){s()(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 jt=function(){return o()(function e(n,r,i){t()(this,e),s()(this,"_logger",ee.getLogger("RealTimePublisher")),s()(this,"_publisherContext",void 0),s()(this,"_peerConnectionContext",void 0),s()(this,"_handleStreamFailure",void 0),this._publisherContext=n,this._peerConnectionContext=r,this._handleStreamFailure=i},[{key:"start",value:function(e,t,n){var r=this;if(!O.value.navigatorIsOnLine)return this._publisherContext.state.value=Be.Offline,Rt.resolve();var i=this._peerConnectionContext.mediaStream.value;if(!i)return this._logger.error("Publish failed no media stream provided"),this._publisherContext.state.value=Be.ConfigurationError,Rt.resolve();var o=i.getTracks().reduce(function(e,t){return"audio"===t.kind||"video"===t.kind?e.push(t.kind):r._logger.warn("[%s] Track kind is not supported",t.kind),e},[]);return Rt.all([bt.discoverClosestEndPointWithCaching(e),_e.createPeerConnectionOffer("sendonly",o).then(function(e){var t=e.localOffer,n=e.peerConnection;return r._peerConnectionContext.peerConnection.value=n,{localOffer:t,peerConnection:n}})]).then(function(e){var n=wt()(e,2),i=n[0],o=n[1],a=o.localOffer,s=o.peerConnection;return r._publisherContext.online.value=!0,r._publisherContext.endPoint.value=i,r._logger.info("Connecting to [%s]",i.toString()),r._logger.info("Local offer:\n"+a.sdp),R.clientOfferDisabled||!s.supportsSetConfiguration||!s.supportsGetConfiguration||r._publisherContext.failureCount.value>0?(r._peerConnectionContext.disposePeerConnection(),i.publish(r._publisherContext.name,t,null,r._publisherContext.failureCount.value)):i.publish(r._publisherContext.name,t,a,r._publisherContext.failureCount.value)}).then(function(e){var t=e.status;if(r._publisherContext.state.value=r._publisherContext.mapPublishStatusToPublisherStatus(t),r._publisherContext.applyPublishStatus(t),"ok"!==t)return r._publisherContext.stream.value=null,void r._logger.info("[%s] Publish failed with status [%s]",r._publisherContext.streamId,t);var i=e.stream,o=e.rtcConfiguration,a=e.setRemoteDescriptionResponse,s=e.createOfferDescriptionResponse,u=e.createAnswerDescriptionResponse;return r._publisherContext.stream.value=i,r._logger.debug("[%s] Publish completed [%s] [%j] [%j] [%j] [%j]",r._publisherContext.streamId,t,o,a,s,u),r._publisherContext.state.value=r._publisherContext.mapPublishStatusToPublisherStatus(t),r._publisherContext.applyPublishStatus(t),r.applyRtcConfiguration(r._peerConnectionContext.peerConnection.value,o).then(function(e){var t,o=!1,c=!1,l=[];return r._peerConnectionContext.peerConnection.value=e,e.addStream(r._peerConnectionContext.mediaStream.value),e.onicecandidate=function(n){r._publisherContext.stream.value===i&&r._peerConnectionContext.peerConnection.value===e&&(o||Ne.sendLocalCandidates.value&&(n.candidate&&n.candidate.candidate?l.push(n.candidate):c=!0,t||(t=O.value.setTimeout(function(){var t;r._publisherContext.stream.value!==i||o||null===(t=r._publisherContext.endPoint.value)||void 0===t||t.addIceCandidates(i,l,c).then(function(t){var n=t.status,a=t.options;if("ok"===n)null!=a&&a.includes("cancel")&&(o=!0),r._logger.info("[%s] Added ICE candidates with reason [%s] and options [%s]",r._publisherContext.streamId,n,a);else{if(r._publisherContext.stream.value!==i)return;if(r._peerConnectionContext.peerConnection.value!==e)return;r._publisherContext.state.value=r.mapAddIceCandidatesStatusToPublisherStatus(n),r._publisherContext.applyAddIceCandidatesStatus(n),r._logger.warn("[%s] Failed to add ICE candidates with reason [%s]",r._publisherContext.streamId,n),r._handleStreamFailure().catch(function(e){r._logger.error("[%s] Failed handling stream failure after peer connection failed to add ICE candidates with reason [%s]",r._publisherContext.streamId,n,e)})}}).catch(function(t){r._publisherContext.stream.value===i&&r._peerConnectionContext.peerConnection.value===e&&(r._logger.error("[%s] Failed to add ICE candidates",r._publisherContext.streamId,t),r._publisherContext.state.value=Be.ConnectionError,r._publisherContext.applyUnhandledError(),r._handleStreamFailure().catch(function(e){r._logger.error("[%s] Failed handling stream failure after peer connection failed to add ICE candidates",r._publisherContext.streamId,e)}))})},100))))},e.oniceconnectionstatechange=function(){if(r._publisherContext.stream.value===i&&r._peerConnectionContext.peerConnection.value===e){var t=function(){r._publisherContext.state.value=Be.ConnectionError,r._publisherContext.publishing.value=!1,r._publisherContext.loading.value=!0,r._handleStreamFailure().catch(function(t){r._logger.error("[%s] Failed handling stream failure after peer connection stopped with state [%s]",r._publisherContext.streamId,e.iceConnectionState,t)})};switch(e.iceConnectionState){case"checking":case"completed":case"connected":case"new":return;case"disconnected":case"failed":return r._logger.info("[%s] ICE connection state changed to [%s], trying to reconnect",r._publisherContext.streamId,e.iceConnectionState),void r.reconnectPeerConnection(e,t);case"closed":return r._logger.info("[%s] ICE connection state changed to [%s], retrying to connect",r._publisherContext.streamId,e.iceConnectionState),void t();default:$(e.iceConnectionState)}}},new Rt(function(e){e()}).then(function(){if(a)return r._logger.info("[%s] Set local SDP offer [%s]",r._publisherContext.streamId,a.sessionDescription.sdp),e.setLocalDescription(a.sessionDescription).catch(function(e){throw r._logger.info("[%s] Failed to set local description [%j] with message [%s]",r._publisherContext.streamId,a.sessionDescription,e.message),e})}).then(function(){var t;if(u)return r._logger.info("[%s] Set remote SDP answer [%s]",r._publisherContext.streamId,null==u||null===(t=u.sessionDescription)||void 0===t?void 0:t.sdp),e.setRemoteDescription(u.sessionDescription).catch(function(e){throw r._logger.info("[%s] Failed to set remote description [%j] with message [%s]",r._publisherContext.streamId,null==u?void 0:u.sessionDescription,e.message),e})}).then(function(){if(s)return r._logger.info("[%s] Set remote SDP offer [%s]",r._publisherContext.streamId,s.sessionDescription.sdp),e.setRemoteDescription(s.sessionDescription).catch(function(e){throw r._logger.info("[%s] Failed to set remote description [%j] with message [%s]",r._publisherContext.streamId,null==u?void 0:u.sessionDescription,e.message),e}).then(function(){return e.createAnswer({offerToReceiveAudio:!1,offerToReceiveVideo:!1})}).then(function(e){r._logger.info("[%s] Set local SDP answer [%s]",r._publisherContext.streamId,e.sdp);var t=r._publisherContext.endPoint.value;if(!t)throw new Error("Failed to set remote description, EndPoint is not set");return t.setRemoteDescription(i,e)}).then(function(t){var n=t.status,i=t.sessionDescription;if(r._publisherContext.state.value=r.mapSetRemoteDescriptionStatusToPublisherStatus(n),r._publisherContext.applySetRemoteDescriptionStatus(n),"ok"===n)return r._logger.info("[%s] Set local SDP [%s]",r._publisherContext.streamId,null==i?void 0:i.sdp),e.setLocalDescription(i).catch(function(e){throw r._logger.info("[%s] Failed to set local description [%j] with message [%s]",r._publisherContext.streamId,i,e.message),e})})}).then(function(){var t;if(n.success(r._publisherContext.streamId),r._publisherContext.state.value!==Be.Starting)return Rt.resolve();r._publisherContext.state.value=Be.Publishing,r._publisherContext.publishing.value=!0;var i=new Ot(e,null!==(t=r._publisherContext.endPoint.value)&&void 0!==t&&t.roundTripTime?r._publisherContext.endPoint.value.roundTripTime/4:0,Ne.applicationActivityMonitor.isForeground);return r._publisherContext.disposables.add(i),i.rtcStatistic.subscribe(function(e){r._publisherContext.rtcStatistics.value=e}),Rt.resolve()})})})}},{key:"applyRtcConfiguration",value:(e=N()(Et().m(function e(t,n){var r;return Et().w(function(e){for(;;)switch(e.n){case 0:if(t){e.n=1;break}return n=Pt.truncateIceServers(n),e.a(2,Ne.peerConnectionFactory.value.createPeerConnection(n));case 1:return r=Ft(Ft({},t.getConfiguration()),n),t.setConfiguration(r),e.a(2,t)}},e)})),function(t,n){return e.apply(this,arguments)})},{key:"reconnectPeerConnection",value:function(e,t){var n=this;if("closed"!==e.iceConnectionState)if(this._publisherContext.state.value=Be.Reconnecting,this._peerConnectionContext.peerConnectionReconnectAttempts<Ne.maximalNumberOfPeerConnectionReconnectAttempts||!Ne.automaticallyReconnectPeerConnection){var r;this._peerConnectionContext.peerConnectionReconnectAttempts++;var i="offer"===(null===(r=e.currentLocalDescription)||void 0===r?void 0:r.type);if(R.clientOfferDisabled||!e.supportsSetConfiguration||!e.supportsGetConfiguration||!i){var o=O.value.setTimeout(function(){n.reconnectPeerConnection(e,t)},1e3);return void this._publisherContext.disposables.add(new g(function(){return O.value.clearTimeout(o)}))}this._logger.info("Reconnecting peer connection by restarting ICE");var a=e.currentLocalDescription;e.createOffer({iceRestart:!0}).then(function(r){return e.setLocalDescription(r).then(function(){return e.setLocalDescription(a).then(function(){if("disconnected"===e.iceConnectionState||"failed"===e.iceConnectionState){var r=O.value.setTimeout(function(){n.reconnectPeerConnection(e,t)},1e3);n._publisherContext.disposables.add(new g(function(){return O.value.clearTimeout(r)}))}else n._publisherContext.state.value=Be.Publishing})})}).catch(function(e){n._logger.error("Failed to reconnect peer connection",e),n._peerConnectionContext.peerConnectionReconnectAttempts=0,t()})}else this._logger.info("Failed to reconnect peer connection after [%s] attempts, performing full recovery",this._peerConnectionContext.peerConnectionReconnectAttempts),this._peerConnectionContext.peerConnectionReconnectAttempts=0,t()}},{key:"mapSetRemoteDescriptionStatusToPublisherStatus",value:function(e){switch(e){case"ok":return Be.Starting;case"unauthorized":return Be.Unauthorized;case"not-found":return Be.NotFound;case"capacity":case"rate-limited":case"timeout":return Be.Recovering;case"failed":return Be.Error;default:$(e)}}},{key:"mapAddIceCandidatesStatusToPublisherStatus",value:function(e){switch(e){case"ok":return this._publisherContext.state.value;case"unauthorized":return Be.Unauthorized;case"not-found":return Be.NotFound;case"capacity":case"rate-limited":case"timeout":return Be.Recovering;case"failed":return Be.Error;default:$(e)}}}]);var e}(),It=n(981).A;function Mt(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function o(n,r,i,o){var u=r&&r.prototype instanceof s?r:s,c=Object.create(u.prototype);return At(c,"_invoke",function(n,r,i){var o,s,u,c=0,l=i||[],d=!1,h={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,n){return o=t,s=0,u=e,h.n=n,a}};function f(n,r){for(s=n,u=r,t=0;!d&&c&&!i&&t<l.length;t++){var i,o=l[t],f=h.p,p=o[2];n>3?(i=p===r)&&(u=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=f&&((i=n<2&&f<o[1])?(s=0,h.v=r,h.n=o[1]):f<p&&(i=n<3||o[0]>r||r>p)&&(o[4]=n,o[5]=r,h.n=p,s=0))}if(i||n>1)return a;throw d=!0,r}return function(i,l,p){if(c>1)throw TypeError("Generator is already running");for(d&&1===l&&f(l,p),s=l,u=p;(t=s<2?e:u)||!d;){o||(s?s<3?(s>1&&(h.n=-1),f(s,u)):h.n=u:h.v=u);try{if(c=2,o){if(s||(i="next"),t=o[i]){if(!(t=t.call(o,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(u=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((t=(d=h.n<0)?u:n.call(r,h))!==a)break}catch(t){o=e,s=1,u=t}finally{c=1}}return{value:t,done:d}}}(n,i,o),!0),c}var a={};function s(){}function u(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(At(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(l);function h(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,At(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return u.prototype=c,At(d,"constructor",c),At(c,"constructor",u),u.displayName="GeneratorFunction",At(c,i,"GeneratorFunction"),At(d),At(d,i,"Generator"),At(d,r,function(){return this}),At(d,"toString",function(){return"[object Generator]"}),(Mt=function(){return{w:o,m:h}})()}function At(e,t,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}At=function(e,t,n,r){function o(t,n){At(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(o("next",0),o("throw",1),o("return",2))},At(e,t,n,r)}var Nt=function(){return o()(function e(n,r,i){var o=this;t()(this,e),s()(this,"_logger",ee.getLogger("Publisher")),s()(this,"_tokenContext",void 0),s()(this,"_publisherContext",void 0),s()(this,"_peerConnectionContext",void 0),s()(this,"_stateContext",void 0),s()(this,"_exponentialBackoff",void 0),s()(this,"_publisherStartTime",void 0),s()(this,"_readOnlyToken",void 0),s()(this,"_readOnlyPeerConnection",void 0),s()(this,"_readOnlyState",void 0),s()(this,"_readOnlyTokenExpiring",void 0),s()(this,"_readOnlyAuthorized",void 0),s()(this,"_readOnlyOnline",void 0),s()(this,"_readOnlyLoading",void 0),s()(this,"_readOnlyPublishing",void 0),s()(this,"_readOnlyStandby",void 0),s()(this,"_readOnlyStopped",void 0),s()(this,"_readOnlyFailureCount",void 0),s()(this,"_readOnlyEndPoint",void 0),s()(this,"_readOnlyStream",void 0),s()(this,"_readOnlyRtcStatistics",void 0),s()(this,"_readOnlyMediaStream",void 0),s()(this,"_metricsService",void 0),s()(this,"_sessionTelemetry",void 0);var a={forceGarbageCollectionOnRestart:Ne.forceGarbageCollectionOnRestart};this._tokenContext=new We(r),this._publisherContext=new qe(i),this._peerConnectionContext=new Ke(a),this._stateContext=new Qe,this._exponentialBackoff=new xe,this._publisherStartTime=Date.now(),this._readOnlyToken=new C(this._tokenContext.token),this._readOnlyPeerConnection=new C(this._peerConnectionContext.peerConnection),this._readOnlyState=new C(this._publisherContext.state),this._readOnlyTokenExpiring=new C(this._tokenContext.tokenExpiring),this._readOnlyAuthorized=new C(this._publisherContext.authorized),this._readOnlyOnline=new C(this._publisherContext.online),this._readOnlyLoading=new C(this._publisherContext.loading),this._readOnlyPublishing=new C(this._publisherContext.publishing),this._readOnlyStandby=new C(this._publisherContext.standby),this._readOnlyStopped=new C(this._publisherContext.stopped),this._readOnlyFailureCount=new C(this._publisherContext.failureCount),this._readOnlyEndPoint=new C(this._publisherContext.endPoint),this._readOnlyStream=new C(this._publisherContext.stream),this._readOnlyRtcStatistics=new C(this._publisherContext.rtcStatistics),this._readOnlyMediaStream=new C(this._peerConnectionContext.mediaStream),this._peerConnectionContext.mediaStream.value=n;var u=re.parseToken(this._tokenContext.token.value),c=(u.uri||Ne.discoveryUri.value).toString();Ne.tenancy.value=u.tenancy||Ne.tenancy.value,ke.uri.value=c,this._metricsService=Me.getMetricsService(c),this._sessionTelemetry=new He(Ne.pageLoadTime,this._metricsService),this._publisherContext.publisherDisposables.add(this._sessionTelemetry),this._publisherContext.publisherDisposables.add(this._publisherContext.state.subscribe(function(e){o._publisherContext.clearFailureCountTimeout&&O.value.clearTimeout(o._publisherContext.clearFailureCountTimeout),o._publisherContext.failureCount.value&&e===Be.Publishing&&(o._publisherContext.clearFailureCountTimeout=O.value.setTimeout(function(){o._publisherContext.failureCount.value=0},3e3))}));var l=function(){o._publisherContext.stream.value&&o._publisherContext.endPoint.value&&o._publisherContext.endPoint.value.destroyStreamOnUnmount(o._publisherContext.stream.value,"client:termination-on-window-unload")};O.value.addWindowEventListener("beforeunload",l),this._publisherContext.publisherDisposables.add(new g(function(){O.value.removeWindowEventListener("beforeunload",l)})),this.start()},[{key:"token",get:function(){return this._tokenContext.token.value},set:function(e){this._publisherContext.disposables.dispose(),this._tokenContext.token.value=e,this._tokenContext.tokenExpiring.value=!1;var t=re.parseToken(this._tokenContext.token.value),n=(t.uri||Ne.discoveryUri.value).toString();Ne.tenancy.value=t.tenancy||Ne.tenancy.value,ke.uri.value=n,this._metricsService=Me.getMetricsService(n),this.start()}},{key:"peerConnection",get:function(){return this._readOnlyPeerConnection}},{key:"state",get:function(){return this._readOnlyState}},{key:"tokenExpiring",get:function(){return this._readOnlyTokenExpiring}},{key:"authorized",get:function(){return this._readOnlyAuthorized}},{key:"online",get:function(){return this._readOnlyOnline}},{key:"loading",get:function(){return this._readOnlyLoading}},{key:"publishing",get:function(){return this._readOnlyPublishing}},{key:"standby",get:function(){return this._readOnlyStandby}},{key:"stopped",get:function(){return this._readOnlyStopped}},{key:"failureCount",get:function(){return this._readOnlyFailureCount}},{key:"endPoint",get:function(){return this._readOnlyEndPoint}},{key:"stream",get:function(){return this._readOnlyStream}},{key:"streamId",get:function(){return this._publisherContext.streamId}},{key:"rtcStatistics",get:function(){return this._readOnlyRtcStatistics}},{key:"mediaStream",get:function(){return this._readOnlyMediaStream}},{key:"stop",value:(a=N()(Mt().m(function e(t){var n=this;return Mt().w(function(e){for(;;)if(0===e.n)return e.a(2,new It(function(e){if(!n._stateContext.isStarting.value)return n.processStop(t),void e();n._publisherContext.disposables.add(n._stateContext.isStarting.subscribe(function(r){r||(n.processStop(t),e())}))}))},e)})),function(e){return a.apply(this,arguments)})},{key:"processStop",value:function(e){this.cleanUpResources(e),this._peerConnectionContext.peerConnection.value&&(this._peerConnectionContext.peerConnection.value.close(),this._peerConnectionContext.peerConnection.value=null),this._publisherContext.state.value=Be.Stopped}},{key:"dispose",value:(i=N()(Mt().m(function e(){var t=this;return Mt().w(function(e){for(;;)if(0===e.n)return e.a(2,this.stop("client:channel-dispose").then(function(){t._publisherContext.publisherDisposables.dispose(),t._stateContext.isDisposed=!0}))},e,this)})),function(){return i.apply(this,arguments)})},{key:"getUri",value:function(e){return re.parseToken(e).uri||(this._logger.info("Fall back to the default discover URI [%s]",Ne.discoveryUri.value),new O.value.URL(Ne.discoveryUri.value))}},{key:"start",value:(r=N()(Mt().m(function e(){return Mt().w(function(e){for(;;)switch(e.n){case 0:if(!this._stateContext.isDisposed){e.n=1;break}throw new Error("Channel was already disposed");case 1:if(!this._stateContext.isStarting.value){e.n=2;break}return this._logger.info("Publisher is already starting, skipping start"),e.a(2);case 2:return this._stateContext.isStarting.value=!0,e.a(2,this.processStart())}},e,this)})),function(){return r.apply(this,arguments)})},{key:"processStart",value:(n=N()(Mt().m(function e(){var t,n,r,i,o,a=this;return Mt().w(function(e){for(;;)switch(e.n){case 0:if(this._publisherContext.state.value=Be.Starting,this.cleanUpResources("client:start"),t=this._tokenContext.token.value,n=this._sessionTelemetry.listenOnStreamSetup(),re.isEncodedEdgeTokenValid(t)){e.n=1;break}return this._logger.error("Failed to parse token [%s]",t),this._publisherContext.state.value=Be.Unauthorized,this._publisherContext.authorized.value=!1,this._stateContext.isStarting.value=!1,e.a(2);case 1:return this._publisherContext.loading.value=!0,r=this.getUri(t),this._publisherContext.disposables.add(this._publisherContext.state.subscribe(function(e){e!==Be.Error&&e!==Be.Recovering||bt.clearCachedClosestEndpoint(r)})),i=function(){return new It(function(e){return a._stateContext.isStarting.value=!1,e(a.handleStreamFailure())})},o=new jt(this._publisherContext,this._peerConnectionContext,i),e.a(2,o.start(r,t,n).then(function(){a._publisherContext.loading.value=!1}).catch(function(e){n.fail(),a._publisherContext.failureCount.value++,a._publisherContext.online.value=!1,a.cleanUpResources("client:cleanup-after-failed-setup"),a._publisherContext.state.value=Be.ClientStartError,a._logger.error("Failed to start publishing",e)}).finally(function(){if(a._stateContext.isStarting.value=!1,a._publisherContext.state.value!==Be.Publishing&&Ne.automaticRetryOnFailure){var e=O.value.setTimeout(function(){a.handleStreamFailure().catch(function(e){a._logger.error("Failed handling stream failure",e)})},a.getRetryInterval());a._publisherContext.disposables.add(new g(function(){O.value.clearTimeout(e)}))}else a._publisherContext.startReconnectionAttemptsTimeInMilliseconds=0}))}},e,this)})),function(){return n.apply(this,arguments)})},{key:"setMediaStream",value:function(e){var t=this;this._peerConnectionContext.mediaStream.value=e,this._peerConnectionContext.peerConnection.value&&e.getTracks().forEach(function(e){var n;null===(n=t._peerConnectionContext.peerConnection.value)||void 0===n||n.getSenders().forEach(function(t){var n;e.kind===(null==t||null===(n=t.track)||void 0===n?void 0:n.kind)&&e.id!==t.track.id&&t.replaceTrack(e)})})}},{key:"getRetryInterval",value:function(){switch(this._publisherContext.state.value){case Be.Offline:return 15e3;case Be.Initializing:case Be.NotFound:case Be.Error:case Be.Recovering:case Be.Unauthorized:case Be.GeoRestricted:case Be.GeoBlocked:case Be.Stopped:case Be.Starting:case Be.Publishing:case Be.Reconnecting:case Be.UnsupportedFeature:case Be.ConfigurationError:case Be.TransientConfigurationError:case Be.ConnectionError:case Be.ClientStartError:return this._exponentialBackoff.getExponentialBackoffIntervalByFailureCount(this._publisherContext.failureCount.value);default:$(this._publisherContext.state.value)}}},{key:"handleStreamFailure",value:(e=N()(Mt().m(function e(){var t;return Mt().w(function(e){for(;;)switch(e.n){case 0:t=this._publisherContext.state.value,e.n=t===Be.Error||t===Be.Reconnecting||t===Be.Offline||t===Be.Recovering||t===Be.TransientConfigurationError||t===Be.ConnectionError||t===Be.ClientStartError?1:t===Be.Unauthorized?3:t===Be.GeoRestricted?4:t===Be.GeoBlocked?5:t===Be.Stopped?6:t===Be.Publishing?7:t===Be.Initializing?8:t===Be.Starting?9:t===Be.UnsupportedFeature?10:t===Be.NotFound?11:t===Be.ConfigurationError?12:13;break;case 1:if(this._publisherContext.startReconnectionAttemptsTimeInMilliseconds||(this._publisherContext.startReconnectionAttemptsTimeInMilliseconds=Date.now()),!(72e5<=Date.now()-this._publisherContext.startReconnectionAttemptsTimeInMilliseconds)){e.n=2;break}return this._logger.info("Publisher stopped with state [%s] [%s] after exceeding timeout",this._publisherContext.state.value,Be[this._publisherContext.state.value]),e.a(2);case 2:return this._logger.info("Retry start with initial state [%s] [%s]",this._publisherContext.state.value,Be[this._publisherContext.state.value]),e.a(3,14);case 3:return this._logger.info("Publisher is unauthorized, skipping retry of start. Please provide a new token and invoke start()"),e.a(2);case 4:return this._logger.info("Publisher is geo restricted, skipping retry of start. Please provide a new token and invoke start()"),e.a(2);case 5:return this._logger.info("Publisher is geo blocked, skipping retry of start. Please provide a new token and invoke start()"),e.a(2);case 6:return this._logger.info("Publisher is stopped, skipping retry of start."),e.a(2);case 7:return this._logger.info("Publisher is publishing, skipping retry of start"),e.a(2);case 8:return this._logger.info("Publisher is initializing, skipping retry of start"),e.a(2);case 9:return this._logger.info("Publisher is already starting, skipping retry of start"),e.a(2);case 10:return this._logger.info("Publisher is stopped due to unsupported feature, skipping retry of start."),e.a(2);case 11:return this._logger.info("Publisher is stopped due to channel not found, skipping retry of start."),e.a(2);case 12:return this._logger.info("Publisher is stopped due to configuration error, skipping retry of start."),e.a(2);case 13:$(this._publisherContext.state.value);case 14:return e.a(2,this.start())}},e,this)})),function(){return e.apply(this,arguments)})},{key:"cleanUpResources",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"client:termination";this._publisherContext.disposables.dispose(),this._peerConnectionContext.disposePeerConnection(),this._publisherContext.publishing.value=!1,this._publisherContext.stopped.value=!0,this._publisherContext.standby.value=!1,this._publisherContext.stream.value&&this._publisherContext.endPoint.value&&this._publisherContext.endPoint.value.destroyStream(this._publisherContext.stream.value,t).then(function(t){var n=t.status;"ok"===n?e._logger.info("[%s] Destroyed stream with reason [%s]",e.streamId,n):e._logger.warn("[%s] Failed to destroy stream with reason [%s]",e.streamId,n)}).catch(function(t){e._logger.error("[%s] Failed to destroy stream",e.streamId,t)}),this._publisherContext.stream.value=null,this._publisherContext.endPoint.value=null,this._peerConnectionContext.peerConnectionReconnectAttempts=0}}]);var e,n,r,i,a}(),Gt=function(){return o()(function e(){throw t()(this,e),new Error("Publishers is a static class that may not be instantiated")},null,[{key:"createPublisher",value:function(e){if(!Ne.initialized.value)throw new Error("SDK is not loaded.");return new Nt(e.mediaStream,e.token,e.name)}}])}(),Bt={SDK:Ne,Publishers:Gt,PublisherState:Be}})(),r})());
3
3
  //# sourceMappingURL=publish.js.map