UNPKG

@salutejs/jazz-sdk-web-plugins

Version:

Jazz SDK plugins

1 lines 212 kB
"use strict";var e=require("@salutejs/jazz-sdk-web"),t=require("ditox"),r=require("nrgy/mvc"),n=require("rxjs"),o=require("rx-effects"),i=require("nrgy"),a=require("nrgy/rx-effects"),c=require("nrgy/rxjs"),u=require("immer");function s(e){return s="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},s(e)}function d(e){var t=function(e,t){if("object"!=s(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=s(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==s(t)?t:t+""}function l(e,t,r){return t&&function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,d(n.key),n)}}(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function f(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function p(e,t){if(t&&("object"==s(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function v(e){return v=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},v(e)}function m(e,t){return m=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},m(e,t)}function h(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&&m(e,t)}function y(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(y=function(){return!!e})()}function g(e){var t="function"==typeof Map?new Map:void 0;return g=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return function(e,t,r){if(y())return Reflect.construct.apply(null,arguments);var n=[null];n.push.apply(n,t);var o=new(e.bind.apply(e,n));return r&&m(o,r.prototype),o}(e,arguments,v(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),m(r,e)},g(e)}function b(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(b=function(){return!!e})()}var S=function(){function e(t,r){var n;return f(this,e),n=function(e,t,r){return t=v(t),p(e,b()?Reflect.construct(t,r,v(e).constructor):t.apply(e,r))}(this,e,[r]),n.code=t,n.name="ServerRecordingError",n.error=r,n}return h(e,g(Error)),l(e)}(),k={logger:t.token({key:"SERVER_RECORDING_LOGGER_TOKEN"})},E={RoomRecordingServiceClient:t.token("RoomRecordingServiceClient"),InternalRoomRecordingServiceClient:t.token("InternalRoomRecordingServiceClient")},w={RecordRoomService:t.token({key:"SERVER_RECORDING_ROOM_SERVICE_TOKEN"})};function O(e,t,r,n,o,i,a){try{var c=e[i](a),u=c.value}catch(e){return void r(e)}c.done?t(u):Promise.resolve(u).then(n,o)}function _(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){O(i,n,o,a,c,"next",e)}function c(e){O(i,n,o,a,c,"throw",e)}a(void 0)}))}}var x,T=Object.prototype,R=T.hasOwnProperty,P="function"==typeof Symbol?Symbol:{},C=P.iterator||"@@iterator",M=P.asyncIterator||"@@asyncIterator",A=P.toStringTag||"@@toStringTag";function I(e,t,r,n){var o=t&&t.prototype instanceof F?t:F,i=Object.create(o.prototype),a=new Y(n||[]);return i._invoke=function(e,t,r){var n=j;return function(o,i){if(n===L)throw new Error("Generator is already running");if(n===z){if("throw"===o)throw i;return te()}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=X(a,r);if(c){if(c===N)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(n===j)throw n=z,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n=L;var u=D(e,t,r);if("normal"===u.type){if(n=r.done?z:V,u.arg===N)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n=z,r.method="throw",r.arg=u.arg)}}}(e,r,a),i}function D(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}var j="suspendedStart",V="suspendedYield",L="executing",z="completed",N={};function F(){}function B(){}function U(){}var q={};q[C]=function(){return this};var $=Object.getPrototypeOf,H=$&&$($(ee([])));H&&H!==T&&R.call(H,C)&&(q=H);var J=U.prototype=F.prototype=Object.create(q);function Q(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function K(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===B||"GeneratorFunction"===(t.displayName||t.name))}function G(e,t){function r(n,o,i,a){var c=D(e[n],e,o);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"===s(d)&&R.call(d,"__await")?t.resolve(d.__await).then((function(e){r("next",e,i,a)}),(function(e){r("throw",e,i,a)})):t.resolve(d).then((function(e){u.value=e,i(u)}),(function(e){return r("throw",e,i,a)}))}a(c.arg)}var n;this._invoke=function(e,o){function i(){return new t((function(t,n){r(e,o,t,n)}))}return n=n?n.then(i,i):i()}}function X(e,t){var r=e.iterator[t.method];if(r===x){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=x,X(e,t),"throw"===t.method))return N;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return N}var n=D(r,e.iterator,t.arg);if("throw"===n.type)return t.method="throw",t.arg=n.arg,t.delegate=null,N;var o=n.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=x),t.delegate=null,N):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,N)}function W(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function Z(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function Y(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(W,this),this.reset(!0)}function ee(e){if(e){var t=e[C];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,n=function t(){for(;++r<e.length;)if(R.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=x,t.done=!0,t};return n.next=n}}return{next:te}}function te(){return{value:x,done:!0}}B.prototype=J.constructor=U,U.constructor=B,U[A]=B.displayName="GeneratorFunction",Q(G.prototype),G.prototype[M]=function(){return this},Q(J),J[A]="Generator",J[C]=function(){return this},J.toString=function(){return"[object Generator]"},Y.prototype={constructor:Y,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=x,this.done=!1,this.delegate=null,this.method="next",this.arg=x,this.tryEntries.forEach(Z),!e)for(var t in this)"t"===t.charAt(0)&&R.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=x)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(r,n){return i.type="throw",i.arg=e,t.next=r,n&&(t.method="next",t.arg=x),!!n}for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n],i=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var a=R.call(o,"catchLoc"),c=R.call(o,"finallyLoc");if(a&&c){if(this.prev<o.catchLoc)return r(o.catchLoc,!0);if(this.prev<o.finallyLoc)return r(o.finallyLoc)}else if(a){if(this.prev<o.catchLoc)return r(o.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return r(o.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&R.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var o=n;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=e,i.arg=t,o?(this.method="next",this.next=o.finallyLoc,N):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),N},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),Z(r),N}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;Z(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:ee(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=x),N}};var re={wrap:I,isGeneratorFunction:K,AsyncIterator:G,mark:function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,U):(e.__proto__=U,A in e||(e[A]="GeneratorFunction")),e.prototype=Object.create(J),e},awrap:function(e){return{__await:e}},async:function(e,t,r,n,o){void 0===o&&(o=Promise);var i=new G(I(e,t,r,n),o);return K(t)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},keys:function(e){var t=[];for(var r in e)t.push(r);return t.reverse(),function r(){for(;t.length;){var n=t.pop();if(n in e)return r.value=n,r.done=!1,r}return r.done=!0,r}},values:ee};function ne(e,t,r){return(t=d(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var oe=Symbol("@ts-pattern/matcher"),ie="@ts-pattern/anonymous-select-key",ae=function(e){return Boolean(e&&"object"==s(e))},ce=function(e){return e&&!!e[oe]},ue=function e(t,r,n){if(ae(t)){if(ce(t)){var o=t[oe]().match(r),i=o.matched,a=o.selections;return i&&a&&Object.keys(a).forEach((function(e){return n(e,a[e])})),i}if(!ae(r))return!1;if(Array.isArray(t))return!!Array.isArray(r)&&t.length===r.length&&t.every((function(t,o){return e(t,r[o],n)}));if(t instanceof Map)return r instanceof Map&&Array.from(t.keys()).every((function(o){return e(t.get(o),r.get(o),n)}));if(t instanceof Set){if(!(r instanceof Set))return!1;if(0===t.size)return 0===r.size;if(1===t.size){var c=Array.from(t.values())[0];return ce(c)?Array.from(r.values()).every((function(t){return e(c,t,n)})):r.has(c)}return Array.from(t.values()).every((function(e){return r.has(e)}))}return Object.keys(t).every((function(o){var i,a=t[o];return(o in r||ce(i=a)&&"optional"===i[oe]().matcherType)&&e(a,r[o],n)}))}return Object.is(r,t)},se=function e(t){var r,n,o;return ae(t)?ce(t)?null!=(r=null==(n=(o=t[oe]()).getSelectionKeys)?void 0:n.call(o))?r:[]:Array.isArray(t)?de(t,e):de(Object.values(t),e):[]},de=function(e,t){return e.reduce((function(e,r){return e.concat(t(r))}),[])};function le(e){var t;return(t={})[oe]=function(){return{match:function(t){var r={},n=function(e,t){r[e]=t};return void 0===t?(se(e).forEach((function(e){return n(e,void 0)})),{matched:!0,selections:r}):{matched:ue(e,t,n),selections:r}},getSelectionKeys:function(){return se(e)},matcherType:"optional"}},t}function fe(e){var t;return(t={})[oe]=function(){return{match:function(t){if(!Array.isArray(t))return{matched:!1};var r={};if(0===t.length)return se(e).forEach((function(e){r[e]=[]})),{matched:!0,selections:r};var n=function(e,t){r[e]=(r[e]||[]).concat([t])};return{matched:t.every((function(t){return ue(e,t,n)})),selections:r}},getSelectionKeys:function(){return se(e)}}},t}function pe(){var e,t=[].slice.call(arguments);return(e={})[oe]=function(){return{match:function(e){var r={},n=function(e,t){r[e]=t};return{matched:t.every((function(t){return ue(t,e,n)})),selections:r}},getSelectionKeys:function(){return de(t,se)},matcherType:"and"}},e}function ve(){var e,t=[].slice.call(arguments);return(e={})[oe]=function(){return{match:function(e){var r={},n=function(e,t){r[e]=t};return de(t,se).forEach((function(e){return n(e,void 0)})),{matched:t.some((function(t){return ue(t,e,n)})),selections:r}},getSelectionKeys:function(){return de(t,se)},matcherType:"or"}},e}function me(e){var t;return(t={})[oe]=function(){return{match:function(t){return{matched:!ue(e,t,(function(){}))}},getSelectionKeys:function(){return[]},matcherType:"not"}},t}function he(e){var t;return(t={})[oe]=function(){return{match:function(t){return{matched:Boolean(e(t))}}}},t}function ye(){var e,t=[].slice.call(arguments),r="string"==typeof t[0]?t[0]:void 0,n=2===t.length?t[1]:"string"==typeof t[0]?void 0:t[0];return(e={})[oe]=function(){return{match:function(e){var t,o=((t={})[null!=r?r:ie]=e,t);return{matched:void 0===n||ue(n,e,(function(e,t){o[e]=t})),selections:o}},getSelectionKeys:function(){return[null!=r?r:ie].concat(void 0===n?[]:se(n))}}},e}var ge=he((function(e){return!0})),be=ge,Se=he((function(e){return"string"==typeof e})),ke=he((function(e){return"number"==typeof e})),Ee=he((function(e){return"boolean"==typeof e})),we=he((function(e){return"bigint"==typeof e})),Oe=he((function(e){return"symbol"==s(e)})),_e=he((function(e){return null==e})),xe={__proto__:null,optional:le,array:fe,intersection:pe,union:ve,not:me,when:he,select:ye,any:ge,_:be,string:Se,number:ke,boolean:Ee,bigint:we,symbol:Oe,nullish:_e,instanceOf:function(e){return he(function(e){return function(t){return t instanceof e}}(e))},typed:function(){return{array:fe,optional:le,intersection:pe,union:ve,not:me,select:ye,when:he}}};function Te(){var e=[].slice.call(arguments);if(1===e.length){var t=e[0];return function(e){return ue(t,e,(function(){}))}}if(2===e.length){var r=e,n=r[0],o=r[1];return ue(n,o,(function(){}))}throw new Error("isMatching wasn't given the right number of arguments: expected 1 or 2, received "+e.length+".")}var Re={id:xe.number,publicId:xe.optional(xe.string),title:xe.string,createdAt:xe.string,durationSeconds:xe.number,sizeMb:xe.optional(xe.number),publicAccess:xe.optional(xe.boolean),watchUrl:xe.optional(xe.union(xe.nullish,xe.string)),downloadUrl:xe.optional(xe.string),permissions:xe.optional({canTogglePublicAccess:xe.boolean})},Pe={totalPages:xe.number,records:xe.array(Re),pageSize:xe.optional(xe.number),pageNumber:xe.optional(xe.number)},Ce={usedMb:xe.number,availableMb:xe.optional(xe.number),capacityMb:xe.number};function Me(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ae(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Me(Object(r),!0).forEach((function(t){ne(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Me(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ie(e){var t,r;return Ae(Ae({},e),{},{permissions:{canTogglePublicAccess:null!==(t=null===(r=e.permissions)||void 0===r?void 0:r.canTogglePublicAccess)&&void 0!==t&&t}})}var De=r.declareController().params().apply((function(t){var r=t.params.jazzClientContext,o=function(t){var r=t.httpClient,o=t.endpoints,i=t.apiScheduler,a=t.retryBackoff;return{getVideoStorage:function(t){var c=e.resolveServerUrl(t,o).pipe(n.switchMap((function(o){var i="".concat(o,"/video/storage");return r.get({url:i,requestConfig:e.getRequestConfig(t)}).pipe(n.map((function(e){if(Te(Ce,e.data))return e.data;throw new Error("Incorrect format of the server response [/video/storage]")})))})));return i.scheduleHttpRequest(c,{retryBackoff:a})},startVideoRecord:function(t,c){var u=e.resolveServerUrl(c,o).pipe(n.switchMap((function(o){var i="".concat(o,"/video/record/start");return r.post({url:i,body:{roomId:t},requestConfig:e.getRequestConfig(c)}).pipe(n.switchMap(_(re.mark((function t(){return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",e.success(void 0));case 1:case"end":return t.stop()}}),t)})))),n.catchError((function(t){if(t instanceof e.HttpClientFetchError)return n.of(e.failure(t));var r,o=e.parseHttpErrorResponse(t.data);return r=403===t.status&&"STORAGE_QUOTA_EXCEEDED"===(null==o?void 0:o.code)?{type:"storageQuotaExceeded"}:{type:"clientError"},n.of(e.failure(new e.HttpClientResponseError(t.name,t,r)))})))})));return i.scheduleHttpRequest(u,{retryBackoff:a})},stopVideoRecord:function(t,c){var u=e.resolveServerUrl(c,o).pipe(n.switchMap((function(o){var i="".concat(o,"/video/record/stop");return r.post({url:i,body:{roomId:t},requestConfig:e.getRequestConfig(c)}).pipe(n.map((function(){})))})));return i.scheduleHttpRequest(u,{retryBackoff:a})},getVideoFind:function(t,c){var u=e.resolveServerUrl(c,o).pipe(n.switchMap((function(o){var i=new URLSearchParams(t).toString(),a="".concat(o,"/video/find?").concat(i);return r.get({url:a,requestConfig:e.getRequestConfig(c)}).pipe(n.map((function(e){if(Te(Pe,e.data))return Ae(Ae({},e.data),{},{records:e.data.records.map((function(e){return Ie(e)}))});throw new Error("Incorrect format of the server response [".concat(a,"]"))})))})));return i.scheduleHttpRequest(u,{retryBackoff:a})},getVideo:function(t,c){var u=e.resolveServerUrl(c,o).pipe(n.switchMap((function(o){var i="".concat(o,"/video/public/").concat(t);return r.get({url:i,requestConfig:e.getRequestConfig(c)}).pipe(n.map((function(e){if(Te(Re,e.data))return Ie(e.data);throw new Error("Incorrect format of the server response [".concat(i,"]"))})))})));return i.scheduleHttpRequest(u,{retryBackoff:a})},updateVideoTitle:function(t,c,u){var s=e.resolveServerUrl(u,o).pipe(n.switchMap((function(o){var i="".concat(o,"/video/").concat(t,"/update-title");return r.post({url:i,body:{title:c},requestConfig:e.getRequestConfig(u)}).pipe(n.map((function(){})))})));return i.scheduleHttpRequest(s,{retryBackoff:a})},updateVideoPublicAccess:function(t,c,u){var s=e.resolveServerUrl(u,o).pipe(n.switchMap((function(o){var i="".concat(o,"/video/").concat(t,"/update-public-access");return r.post({url:i,body:{publicAccess:c},requestConfig:e.getRequestConfig(u)}).pipe(n.map((function(){})))})));return i.scheduleHttpRequest(s,{retryBackoff:a})},deleteVideo:function(t,c){var u=e.resolveServerUrl(c,o).pipe(n.switchMap((function(o){var i="".concat(o,"/video/").concat(t,"/delete");return r.post({url:i,requestConfig:e.getRequestConfig(c)}).pipe(n.map((function(){})))})));return i.scheduleHttpRequest(u,{retryBackoff:a})},getDownloadLink:function(t,c){var u=e.resolveServerUrl(c,o).pipe(n.switchMap((function(o){var i="".concat(o,"/video/public/contentUrl/").concat(t);return r.get({url:i,responseType:"text",requestConfig:e.getRequestConfig(c)}).pipe(n.map((function(e){return e.data})))})));return i.scheduleHttpRequest(u,{retryBackoff:a})},getS3DownloadLink:function(t,c){var u=e.resolveServerUrl(c,o).pipe(n.switchMap((function(){return r.get({url:t,responseType:"stream",requestConfig:e.getRequestConfig(c)}).pipe(n.map((function(e){if(e.redirected)return e.originalResponse.url})))})));return i.scheduleHttpRequest(u,{retryBackoff:a})}}}({apiScheduler:r.apiScheduler,endpoints:r.endpoints,httpClient:r.httpClient,retryBackoff:r.retryBackoff}),i=function(e){return{getVideoStorage:(l=_(re.mark((function t(){return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",n.firstValueFrom(e.getVideoStorage()));case 1:case"end":return t.stop()}}),t)}))),function(){return l.apply(this,arguments)}),startVideoRecord:(d=_(re.mark((function t(r){return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",n.firstValueFrom(e.startVideoRecord(r)));case 1:case"end":return t.stop()}}),t)}))),function(e){return d.apply(this,arguments)}),stopVideoRecord:(s=_(re.mark((function t(r){return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",n.firstValueFrom(e.stopVideoRecord(r)));case 1:case"end":return t.stop()}}),t)}))),function(e){return s.apply(this,arguments)}),getVideoFind:(u=_(re.mark((function t(r){return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",n.firstValueFrom(e.getVideoFind(r)));case 1:case"end":return t.stop()}}),t)}))),function(e){return u.apply(this,arguments)}),getVideo:(c=_(re.mark((function t(r){return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",n.firstValueFrom(e.getVideo(r)));case 1:case"end":return t.stop()}}),t)}))),function(e){return c.apply(this,arguments)}),updateVideoTitle:(a=_(re.mark((function t(r,o){return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",n.firstValueFrom(e.updateVideoTitle(r,o)));case 1:case"end":return t.stop()}}),t)}))),function(e,t){return a.apply(this,arguments)}),updateVideoPublicAccess:(i=_(re.mark((function t(r,o){return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",n.firstValueFrom(e.updateVideoPublicAccess(r,o)));case 1:case"end":return t.stop()}}),t)}))),function(e,t){return i.apply(this,arguments)}),deleteVideo:(o=_(re.mark((function t(r){return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",n.firstValueFrom(e.deleteVideo(r)));case 1:case"end":return t.stop()}}),t)}))),function(e){return o.apply(this,arguments)}),getDownloadLink:(r=_(re.mark((function t(r){return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",n.firstValueFrom(e.getDownloadLink(r)));case 1:case"end":return t.stop()}}),t)}))),function(e){return r.apply(this,arguments)}),getS3DownloadLink:(t=_(re.mark((function t(r){return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",n.firstValueFrom(e.getS3DownloadLink(r)));case 1:case"end":return t.stop()}}),t)}))),function(e){return t.apply(this,arguments)})};var t,r,o,i,a,c,u,s,d,l}(o);return{client:i,internalClient:o}})),je=e.declareRuntimeModule({factory:t.injectableClass(De,{jazzClientContext:e.JAZZ_CLIENT_CONTEXT_TOKEN,logger:k.logger}),exports:{client:E.RoomRecordingServiceClient,internalClient:E.InternalRoomRecordingServiceClient}}),Ve=r.declareController().params().apply((function(t){var r=t.scope,n=t.params,o=n.roomContext,i=n.roomRecordingServiceClient,a=n.status,u=n.logger,s=o.roomServerEvents$,d=u.getLogger("next"),l=r.signal();function f(){return(f=_(re.mark((function t(){var r,n;return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(t.prev=0,r=o.room.params.conferenceId){t.next=4;break}throw new Error("Room not initialize for start server record");case 4:return a.set("processStarting"),t.next=7,i.startVideoRecord(r);case 7:if(n=t.sent,!e.isSuccess(n)){t.next=10;break}return t.abrupt("return");case 10:if(a.set("inactive"),!n.error||!("data"in n.error)||"storageQuotaExceeded"!==n.error.data.type){t.next=16;break}throw l({type:"serverRecordStartError",payload:{error:"storageCapacityExceeded"}}),new S("VIDEO_RECORD_STORAGE_CAPACITY_EXCEEDED");case 16:if(!e.isHttpClientFetchError(n.error)){t.next=20;break}throw new S("NETWORK_ERROR");case 20:if(!(n.error instanceof e.HttpClientResponseError)){t.next=24;break}throw new S("VIDEO_RECORD_START_ERROR");case 24:throw l({type:"serverRecordStartError"}),new S("VIDEO_RECORD_START_ERROR");case 26:t.next=33;break;case 28:throw t.prev=28,t.t0=t.catch(0),d.error("fail start server record",t.t0),l({type:"serverRecordStartError"}),new S("VIDEO_RECORD_START_ERROR");case 33:case"end":return t.stop()}}),t,null,[[0,28]])})))).apply(this,arguments)}function p(){return(p=_(re.mark((function e(){var t;return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,t=o.room.params.conferenceId){e.next=4;break}throw new S("VIDEO_RECORD_STOP_ERROR","Room not initialize for stop server record");case 4:return a.set("processStopping"),e.next=7,i.stopVideoRecord(t);case 7:e.next=15;break;case 9:throw e.prev=9,e.t0=e.catch(0),d.error("fail stop server record",e.t0),a.set("recording"),l({type:"serverRecordStopError"}),new S("VIDEO_RECORD_STOP_ERROR");case 15:case"end":return e.stop()}}),e,null,[[0,9]])})))).apply(this,arguments)}return r.effect(c.fromObservable(s),(function(e){if(e)switch(e.type){case"serverVideoRecordStarted":var t=e.payload.videoRecordOwnerId;a.set("recording"),l({type:"serverRecordStarted"}),d.debug("Recording was started by ".concat(t));break;case"serverVideoRecordStopped":var r=e.payload,n=r.videoRecordOwnerId,o=r.reason,i="manual"===o||"STOP_MANUALLY"===o?"STOP_MANUALLY":"DURATION_LIMIT_EXCEEDED";a.set("inactive"),l({type:"serverRecordStopped",payload:{reason:i}}),d.debug("Recording was stopped by ".concat(n,", reason ").concat(o));break;case"serverVideoRecordAutoStartError":var c=e.payload.error;a.set("inactive"),l({type:"serverRecordAutoStartError",payload:{error:c}}),d.error("Auto-start recording failed",c)}})),{events:l,startServerRecording:function(){return f.apply(this,arguments)},stopServerRecording:function(){return p.apply(this,arguments)}}})),Le={"video-record-started":!0,"video-record-stopped":!0,"video-record-uploaded":!0,"video-record-error":!0};var ze=r.declareController().params().apply((function(e){var t=e.scope,r=e.params,o=r.roomConnection,i=r.status,a=r.logger.getLogger("next"),u=t.signal();function s(){return(s=_(re.mark((function e(){var t;return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i.set("processStarting"),e.next=3,n.firstValueFrom(o.request({event:"start-video-record"}).pipe(n.filter((function(e){return"failure"===e.type||"success"===e.type}))));case 3:if("failure"===(t=e.sent).type){e.next=6;break}return e.abrupt("return");case 6:i.set("inactive"),a.error("Fail start video record",t.error.code,t.error.message),e.t0=t.error.code,e.next="FORBIDDEN"===e.t0?11:"VIDEO_RECORD_ALREADY_STARTED"===e.t0?13:"VIDEO_RECORD_STORAGE_CAPACITY_EXCEEDED"===e.t0?15:"VIDEO_RECORD_START_ERROR"===e.t0?17:19;break;case 11:throw u({type:"serverRecordStartError",payload:{error:"forbidden"}}),new S("FORBIDDEN");case 13:throw u({type:"serverRecordStartError",payload:{error:"alreadyStarted"}}),new S("VIDEO_RECORD_ALREADY_STARTED");case 15:throw u({type:"serverRecordStartError",payload:{error:"storageCapacityExceeded"}}),new S("VIDEO_RECORD_STORAGE_CAPACITY_EXCEEDED");case 17:throw u({type:"serverRecordStartError"}),new S("VIDEO_RECORD_START_ERROR");case 19:u({type:"serverRecordStartError"});case 20:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function d(){return(d=_(re.mark((function e(){var t;return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i.set("processStopping"),e.next=3,n.firstValueFrom(o.request({event:"stop-video-record"}).pipe(n.filter((function(e){return"failure"===e.type||"success"===e.type}))));case 3:if("failure"===(t=e.sent).type){e.next=6;break}return e.abrupt("return");case 6:a.error("Fail stop video record",t.error.code,t.error.message),i.set("recording"),e.t0=t.error.code,e.next="FORBIDDEN"===e.t0?11:"VIDEO_RECORD_STOP_ERROR"===e.t0?13:"VIDEO_RECORD_NOT_STARTED"===e.t0?15:17;break;case 11:throw u({type:"serverRecordStopError",payload:{error:"forbidden"}}),new S("FORBIDDEN");case 13:throw u({type:"serverRecordStopError"}),new S("VIDEO_RECORD_STOP_ERROR");case 15:throw u({type:"serverRecordStopError",payload:{error:"notStarted"}}),new S("VIDEO_RECORD_NOT_STARTED");case 17:u({type:"serverRecordStopError"});case 18:case"end":return e.stop()}}),e)})))).apply(this,arguments)}return t.effect(c.fromObservable(o.event$),(function(e){if(e&&function(e){return e.event in Le}(e))switch(a.info("connection event",e.event,e.payload),e.event){case"video-record-started":i.set("recording"),u({type:"serverRecordStarted"});break;case"video-record-stopped":i.set("inactive"),u({type:"serverRecordStopped",payload:{reason:e.payload.reason}});break;case"video-record-uploaded":u({type:"serverRecordUploaded"});break;case"video-record-error":switch(i.set("inactive"),e.payload.code){case"START_ERROR":throw u({type:"serverRecordStartError"}),new S("START_ERROR");case"UPLOAD_ERROR":throw u({type:"serverRecordUploadedError"}),new S("UPLOAD_ERROR");case"RECORD_ERROR":throw u({type:"serverRecordError"}),new S("RECORD_ERROR");case"AUTOSTART_ERROR":throw u({type:"serverRecordAutoStartError"}),new S("AUTOSTART_ERROR")}}})),{events:u,startServerRecording:function(){return s.apply(this,arguments)},stopServerRecording:function(){return d.apply(this,arguments)}}})),Ne=r.declareController().params().apply((function(e){var t=e.scope,r=e.params,n=r.authQueries,o=r.roomContext,c=n.$userInfo,u=t.add(a.fromQuery(c)),s=o.room.userPermissions,d=t.add(a.fromQuery(s));return{canManageServerRecordList:i.compute((function(){var e=u();if(!e)return!1;var t=e.features,r=(null!=t?t:{}).serverVideoRecordAvailable;return null!=r&&r})),canManageServerRecord:i.compute((function(){var e=d();return void 0!==e&&e.canStartServerVideoRecord}))}})),Fe=r.declareController().params().apply((function(e){var t=e.scope,r=e.params,n=r.clientContext,i=r.roomContext,a=r.roomConnection,c=r.roomRecordingServiceClient,u=r.nextFlags,s=r.logger,d=t.atom("pending"),l=s.getLogger("room[".concat(i.room.params.conferenceId,"]")),f=o.createScope();t.onDestroy((function(){return f.destroy()}));var p=t.atom(!1),v=t.atom("inactive"),m=t.signal();t.onDestroy((function(){return v.set("inactive")}));var h=t.add(new Ne({authQueries:n.authQueries,roomContext:i})),y=void 0,g=t.effect(a.isNext,(function(e){if(void 0!==e){if(g.destroy(),e){var r=t.add(new ze({roomConnection:a,status:v,logger:l})),n=u.get();d.set(n.supportedServerRecordingInNextRoom?"supported":"unsupported"),t.effect(r.events,m),y=r}else{var o=t.add(new Ve({roomContext:i,roomRecordingServiceClient:c,status:v,logger:l}));t.effect(o.events,m),y=o,d.set("supported")}p.set(!0)}}));function b(){return(b=_(re.mark((function e(){return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("supported"===d()){e.next=3;break}return l.error("Server recording service is disabled"),e.abrupt("return");case 3:if(y){e.next=6;break}return l.error("Server recording service is not initialize"),e.abrupt("return");case 6:return e.abrupt("return",y.startServerRecording());case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function S(){return(S=_(re.mark((function e(){return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("supported"===d()){e.next=3;break}return l.error("Server recording service is disabled"),e.abrupt("return");case 3:if(y){e.next=6;break}return l.error("Server recording service is not initialize"),e.abrupt("return");case 6:return e.abrupt("return",y.stopServerRecording());case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}return{service:{serverSupportedStatus:d,isReady:p,events:m,status:v,canManageServerRecordList:h.canManageServerRecordList,canManageServerRecord:h.canManageServerRecord,startServerRecording:function(){return b.apply(this,arguments)},stopServerRecording:function(){return S.apply(this,arguments)}}}})),Be=e.declareRuntimeModule({factory:t.injectableClass(Fe,{clientContext:e.JAZZ_CLIENT_CONTEXT_TOKEN,roomContext:e.JAZZ_ROOM_CONTEXT_TOKEN,roomConnection:e.JazzRoomConnectionTokens.Connection,roomRecordingServiceClient:E.RoomRecordingServiceClient,nextFlags:e.NEXT_FLAGS_TOKEN,logger:k.logger}),exports:{service:w.RecordRoomService}}),Ue=r.declareController().params().apply((function(e){var t=e.params.deps.sdkContext,r=t.moduleManager,n=t.logger.getLogger("serverRecordingPlugin");return r.registerModule("addRoom",Be),r.registerModule("addClient",je),{logger:n}}));function qe(){return(qe=_(re.mark((function t(){return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",e.createModule({name:"serverRecordingPlugin",imports:{sdkContext:e.JAZZ_SDK_CONTEXT_TOKEN},factory:function(e){return new Ue(e)},exports:{logger:k.logger}}));case 1:case"end":return t.stop()}}),t)})))).apply(this,arguments)}var $e=r.declareController().params().apply((function(t){var r=t.scope,o=t.params,i=o.userInteraction,a=o.logger.getLogger("AudioCore"),u=r.atom(!0),s=r.atom(!1),d=r.signal(),l=new AudioContext({latencyHint:"interactive"}),f=new Set,p=e.createHooks(["startAudio","startedAudio","stopAudio","stoppedAudio"]),v=p.destroy,m=p.hooks;r.onDestroy(v);var h=!1,y=i.detectUserInteraction(),g=r.add(e.createKeyQueue());function b(){return S.apply(this,arguments)}function S(){return(S=_(re.mark((function e(){return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return g.deleteKey("stopAudio"),e.next=3,g.add({key:"startAudio",cb:k});case 3:s()||s.set(!0);case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function k(){return E.apply(this,arguments)}function E(){return(E=_(re.mark((function e(){return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!h){e.next=2;break}return e.abrupt("return");case 2:return h=!0,d({type:"startAudio"}),e.next=6,m.startAudio.exec();case 6:if(a.debug("AudioContext",{state:l.state,baseLatency:l.baseLatency,sampleRate:l.sampleRate}),u.set("suspended"===l.state),"suspended"!==l.state){e.next=11;break}return e.next=11,R();case 11:return d({type:"startedAudio"}),e.next=14,m.startedAudio.exec();case 14:a.debug("Started audio processes");case 15:case"end":return e.stop()}}),e)})))).apply(this,arguments)}r.onDestroy((function(){f.clear(),"closed"!==l.state&&l.close()})),r.add(y.pipe(n.switchMap((function(){return s()?n.EMPTY:n.from(b())})),n.tap((function(){s.set(!0),0===f.size&&C()}))).subscribe());var w,O,x=!1;function T(){return(T=_(re.mark((function t(){var r,n;return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if("interrupted"===(r=l.state)&&(a.debug("Resume interrupted context"),R()),o=void 0,i=void 0,i=(null===(o=window.navigator)||void 0===o||null===(o=o.userAgentData)||void 0===o?void 0:o.platform)||window.navigator.platform,!(["iPhone","iPad","iPod"].includes(i)||navigator.userAgent.includes("Mac")&&navigator.maxTouchPoints>1)||"running"!==r||!x){t.next=14;break}return t.prev=3,t.next=6,navigator.mediaDevices.getUserMedia({audio:!0,video:!1});case 6:n=t.sent,e.releaseMediaStream(n),R(),t.next=14;break;case 11:t.prev=11,t.t0=t.catch(3),a.error("Failed restart audio play",t.t0);case 14:x="interrupted"===r;case 15:case"end":return t.stop()}var o,i}),t,null,[[3,11]])})))).apply(this,arguments)}function R(){return P.apply(this,arguments)}function P(){return(P=_(re.mark((function e(){return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,a.log("AudioContext resume start:",l.state),e.next=4,He(l,1e3);case 4:a.log("AudioContext resume done:",l.state),e.next=10;break;case 7:e.prev=7,e.t0=e.catch(0),a.error("Failed to resume the audio context",e.t0);case 10:u.set("suspended"===l.state);case 11:case"end":return e.stop()}}),e,null,[[0,7]])})))).apply(this,arguments)}function C(){return M.apply(this,arguments)}function M(){return M=_(re.mark((function e(){return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return g.deleteKey("startAudio"),e.next=3,g.add({key:"stopAudio",cb:function(){var e=_(re.mark((function e(){return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(h){e.next=2;break}return e.abrupt("return");case 2:return h=!1,d({type:"stopAudio"}),e.next=6,m.stopAudio.exec();case 6:return e.next=8,l.suspend();case 8:return d({type:"stoppedAudio"}),e.next=11,m.stoppedAudio.exec();case 11:a.debug("Stopped audio processes");case 12:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()});case 3:case"end":return e.stop()}}),e)}))),M.apply(this,arguments)}return r.add(n.fromEvent(l,"statechange").subscribe((function(){a.debug("AudioContext statechange",l.state),u.set("suspended"===l.state),function(){T.apply(this,arguments)}()}))),{isSuspended:e.toQueryAtom(u),isReady:e.toQueryAtom(s),addUsage:(O=_(re.mark((function e(t){return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return f.add(t),e.next=3,n.firstValueFrom(c.observe(s).pipe(n.filter(Boolean)));case 3:return e.next=5,b();case 5:case"end":return e.stop()}}),e)}))),function(e){return O.apply(this,arguments)}),audioContext:l,event:d,hooks:m,removeUsage:(w=_(re.mark((function e(t){return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(f.delete(t),0!==f.size){e.next=4;break}return e.next=4,C();case 4:case"end":return e.stop()}}),e)}))),function(e){return w.apply(this,arguments)}),startAudio:b,stopAudio:C}}));function He(e,t){return new Promise((function(r){e.resume(),"running"===e.state&&r();var n=setInterval((function(){e.resume(),"running"===e.state&&(clearInterval(n),r())}),t)}))}function Je(e){return{enabled:e.enabled,id:e.id,kind:e.kind,label:e.label,muted:e.muted,readyState:e.readyState}}function Qe(e){var t=e.getAudioTracks()[0];return!(!t||"ended"===t.readyState)}var Ke,Ge,Xe="audioLevel",We=r.declareController().params().apply((function(t){var r=t.scope,n=t.params,o=n.logger,a=n.audioCore,c=n.localTrackManager,u=void 0,s=!1,d=new WeakMap,l=r.add(e.createKeyQueue()),f=r.atom(new Map),p=function(e){if(Qe(e)){if(!f().has(e.id)){var t=a.audioContext.createAnalyser();t.smoothingTimeConstant=.85,t.fftSize=1024;var r=t.frequencyBinCount,n=new Uint8Array(r);t.getByteTimeDomainData(n);var i=a.audioContext.createMediaStreamSource(e);i.connect(t);var c={analyser:t,bufferLength:r,dataArray:n,source:i,stream:e};f.update((function(t){var r=new Map(t);return r.set(e.id,c),r}))}}else o.error("Stream has not lives MediaStreamTracks")},v=function(e){var t=f().get(e.id);if(t){t.source.disconnect(),f.update((function(t){var r=new Map(t);return r.delete(e.id),r}));var r=d.get(e);r&&r.setLevel(0)}};r.effect(f,(function(e){0!==e.size?(l.deleteKey("stop"),l.add({key:"start",cb:m})):l.add({key:"stop",cb:g})}));function m(){return h.apply(this,arguments)}function h(){return(h=_(re.mark((function e(){return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!s){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,a.addUsage(Xe);case 4:s=!0,y();case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function y(){u=requestAnimationFrame(y),f().forEach((function(e){var t=e.analyser,r=e.dataArray,n=e.bufferLength,o=e.stream,i=d.get(o);if(i){t.getByteFrequencyData(r);for(var a=0,c=0;c<n;c++)a+=r[c];var u=a/r.length,s=Math.min(u,100);i.setLevel(Math.round(s))}}))}function g(){return b.apply(this,arguments)}function b(){return(b=_(re.mark((function e(){return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(s){e.next=2;break}return e.abrupt("return");case 2:s=!1,a.removeUsage(Xe),u&&(cancelAnimationFrame(u),u=void 0);case 5:case"end":return e.stop()}}),e)})))).apply(this,arguments)}return r.onDestroy((function(){f().forEach((function(e){e.source.disconnect()}))})),{addMediaStream:function(t){var r=d.get(t);if(p(t),!r){var n=i.createScope(),o=n.atom(0),a={isActive:e.toQueryAtom(i.compute((function(){return f().has(t.id)}))),level:e.toQueryAtom(o)},u={audioLevel:a,setLevel:function(e){o()!==e&&o.set(e)},scope:n},s=function(e){"audio"===e.track.kind&&p(t)},l=function(e){"audio"===e.track.kind&&v(t)};return c.isLocalMediaStream(t)&&n.add(c.event$.pipe(e.filterByType("muteTrackChanged")).subscribe((function(e){if(e.payload.stream.id===t.id){if(e.payload.isMuted)return void v(t);p(t)}}))),t.addEventListener("addtrack",s),t.addEventListener("removetrack",l),n.onDestroy((function(){t.removeEventListener("addtrack",s),t.removeEventListener("removetrack",l)})),d.set(t,u),a}return r.audioLevel},removeMediaStream:function(e){var t;v(e),null===(t=d.get(e))||void 0===t||t.scope.destroy(),d.delete(e)}}})),Ze=2e3,Ye="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function et(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function tt(){if(Ge)return Ke;return Ge=1,Ke=function(){}}var rt=et(tt());function nt(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function ot(e,t){if(e){if("string"==typeof e)return nt(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?nt(e,t):void 0}}function it(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==t);u=!0);}catch(e){s=!0,o=e}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(e,t)||ot(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var at=["failed","disconnected"];function ct(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return ut(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ut(e,t):void 0}}(e))||t){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){c=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(c)throw i}}}}function ut(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function st(e,t){var r;if("host"===e.type&&e.address&&e.priority){var n,o=e.address.startsWith("192.16"),i=ct(t);try{for(i.s();!(n=i.n()).done;){var a=n.value;"host"===a.type&&(a.protocol===e.protocol&&(o?a.address&&!a.address.startsWith("192.16")&&a.priority&&e.priority<a.priority&&(r=a.priority+1):a.address&&a.address.startsWith("192.16")&&a.priority&&e.priority>a.priority&&(r=a.priority-1)))}}catch(e){i.e(e)}finally{i.f()}if(r)for(;t.findIndex((function(e){return e.priority===r}))>=0;)o?r+=1:r-=1;return r}}function dt(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return lt(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?lt(e,t):void 0}}(e))||t){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){c=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(c)throw i}}}}function lt(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var ft,pt=(ft=0,function(){return(ft+=1)>=Number.MAX_SAFE_INTEGER&&(ft=0),ft});function vt(e){return mt.apply(this,arguments)}function mt(){return mt=_(re.mark((function t(r){var i,c,u,s,d,l,f,p,v,m,h,y,g,b,S,k,E,w,O,x,T,R,P,C;return re.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:x=function(){return(x=_(re.mark((function e(t,r,n){var o,i,a,c;return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(p.debug("".concat(n,".icecandidate"),t.candidate),t.candidate){e.next=3;break}return e.abrupt("return");case 3:if("closed"!==r.iceConnectionState){e.next=6;break}return p.debug("Target PC is closed, dropping candidate"),e.abrupt("return");case 6:return o="sender"===n?E:w,i=t.candidate,s&&((a=st(i,o))&&i.priority&&(c=i.toJSON()).candidate&&(c.candidate=c.candidate.replace(i.priority.toString(),a.toString()),i=new RTCIceCandidate(c),p.debug("Changed candidate priority",i)),o.push(i)),e.prev=9,e.next=12,r.addIceCandidate(i);case 12:e.next=17;break;case 14:e.prev=14,e.t0=e.catch(9),p.error("Failed to add ICE candidate",e.t0,i);case 17:case"end":return e.stop()}}),e,null,[[9,14]])})))).apply(this,arguments)},O=function(e,t,r){return x.apply(this,arguments)},b=function(){g&&(clearTimeout(g),g=void 0)},i=r.inputStream,c=r.onDisconnect,u=r.stunServer,s=r.mungeCandidates,d=r.logger,l=r.wakeupMonitor,f=r.pageVisibility,p=d.getLogger("LoopbackConnection"),v=pt(),m=o.createScope(),h=new MediaStream,u&&p.debug("Using a local stun server: ".concat(u)),y=u?{iceServers:[{urls:"stun:".concat(u)}]}:void 0,g=void 0,m.add((function(){var e,t;p.debug("Destroy",v),b(),null===(e=S)||void 0===e||e.close(),null===(t=k)||void 0===t||t.close()})),t.prev=12,S=new RTCPeerConnection(y),k=new RTCPeerConnection(y),t.next=21;break;case 17:throw t.prev=17,t.t0=t.catch(12),m.destroy(),t.t0;case 21:if(S&&k){t.next=23;break}throw new Error("Could not initialize connections");case 23:return ht(S,"sender-"+v,p),ht(k,"receiver-"+v,p),E=[],w=[],S.addEventListener("icecandidate",(function(e){k&&O(e,k,"sender")})),k.addEventListener("icecandidate",(function(e){S&&O(e,S,"receiver")})),k.addEventListener("track",(function(e){h.getTracks().forEach((function(e){h.removeTrack(e)})),h.addTrack(e.track)})),i.getTracks().forEach((function(e){S&&S.addTrack(e)})),t.prev=31,t.next=34,S.createOffer({offerToReceiveAudio:!1,offerToReceiveVideo:!1});case 34:return T=t.sent,p.debug("Created offer",T),t.next=38,S.setLocalDescription(T);case 38:return t.next=40,k.setRemoteDescription(T);case 40:return t.next=42,k.createAnswer();case 42:return(R=t.sent).sdp&&(R.sdp=R.sdp.replace("useinbandfec=1","useinbandfec=1; stereo=1")),p.debug("Created answer",R),t.next=47,k.setLocalDescription(R);case 47:return t.next=49,S.setRemoteDescription(R);case 49:t.next=56;break;case 51:throw t.prev=51,t.t1=t.catch(31),p.error("Failed OA cycle",t.t1),m.destroy(),t.t1;case 56:return P=new Promise((function(e,t){if(S){var r=function(e){b(),g=setTimeout((function(){t("Connection timed out on ".concat(e))}),16e3)},n=function(){var o,i,a=null===(o=S)||void 0===o?void 0:o.connectionState;a&&"connected"!==a&&"failed"!==a||(b(),null===(i=S)||void 0===i||i.removeEventListener("connectionstatechange",n));"connected"===a&&e(),"failed"===a&&t("Connection failed"),"connecting"!==a&&"new"!==a||r(a)};S.addEventListener("connectionstatechange",n),r("new")}})),t.prev=57,t.next=60,P;case 60:t.next=66;break;case 62:throw t.prev=62,t.t2=t.catch(57),m.destroy(),t.t2;case 66:return c&&(C=n.merge(n.interval(2e3),a.toQuery(f.isVisible).value$.pipe(n.filter(Boolean)),l.event$.pipe(e.filterByType("wakeup"))),m.handle(C.pipe(n.map((function(){var e;return null===(e=S)||void 0===e?void 0:e.connectionState})),n.filter(Boolean),n.filter((function(e){return at.includes(e)})),n.take(1)),(function(e){c(e,v),m.destroy()}))),yt(S,p),t.abrupt("return",{id:v,stream:h,destroy:m.destroy});case 69:case"end":return t.stop()}}),t,null,[[12,17],[31,51],[57,62]])}))),mt.apply(this,arguments)}function ht(e,t,r){e.addEventListener("iceconnectionstatechange",(function(){return r.debug("".concat(t,".iceconnectionstatechange: ").concat(e.iceConnectionState))})),e.addEventListener("icecandidateerror",(function(e){return r.error("".concat(t,".icecandidateerror"),e)}))}function yt(e,t){return gt.apply(this,arguments)}function gt(){return(gt=_(re.mark((function e(t,r){var n,o,i,a,c,u,s,d,l,f,p,v,m,h,y,g;return re.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.getStats();case 2:n=e.sent,o=null,i=dt(n),e.prev=5,i.s();case 7:if((a=i.n()).done){e.next=14;break}if(c=it(a.value,2),"transport"!==(u=c[1]).type){e.next=12;break}return o=u.selectedCandidatePairId,e.abrupt("break",14);case 12:e.next=7;break;case 14:e.next=19;break;case 16:e.prev=16,e.t0=e.catch(5),i.e(e.t0);case 19:return e.prev=19,i.f(),e.finish(19);case 22:if(o){e.next=25;break}return r.debug("No selectedPairId in connection stats"),e.abrupt("return");case 25:if(s=n.get(o)){e.next=45;break}d=dt(n),e.prev=28,d.s();case 30:if((l=d.n()).done){e.next=37;break}if(f=it(l.value,2),"candidate-pair"!==(p=f[1]).type||!p.selected){e.next=35;break}return s=p,e.abrupt("break",37);case 35:e.next=30;break;case 37:e.next=42;break;case 39:e.prev=39,e.t1=e.catch(28),d.e(e.t1);case 42:return e.prev=42,d.f(),e.finish(42);case 45:if(s){e.next=48;break}return r.debug("No candidatePair in connection stats"),e.abrupt("return");case 48:v=dt(n);try{for(v.s();!(m=v.n()).done;)h=it(m.value,2),y=h[0],g=h[1],y!==s.localCandidateId&&y!==s.remoteCandidateId||r.debug("Selected candidate",g)}catch(e){v.e(e)}finally{v.f()}case 50:case"end":return e.stop()}}),e,null,[[5,16,19,22],[28,39,42,45]])})))).apply(this,arguments)}function bt(e){return e>=0&&e<=10}var St="audioMixer";function kt(t){var r=t.flags,c=t.debugStateRegistry,u=t.logger,d=t.coreMetrics,l=t.userInteraction,f=t.wakeupMonitor,p=t.pageVisibility,v=t.loopbackEnabled,m=t.forceDestinationPipeline,h=t.audioCore,y=t.outputGain,g=void 0===y?1:y,b=o.createScope(),S=i.createScope();b.add((function(){return S.destroy()}));var k=u.getLogger("WebAudioMixer"),E=e.createEventBus();bt(g)||(k.debug("The output gain should be in the range from 0 to 10"),g=1);var w,O=b.createStore(g),x=void 0,T=b.createStore(!1),R=new Map,P=void 0,C=void 0,M=vo