UNPKG

@salutejs/jazz-sdk-electron

Version:

Jazz SDK Electron

2 lines (1 loc) 17.1 kB
"use strict";var t=require("@salutejs/jazz-sdk-web"),e=require("ditox"),r=require("nrgy/mvc"),n=require("rxjs"),o=require("nrgy/rxjs");function a(t){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},a(t)}function i(t){var e=function(t,e){if("object"!=a(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,e||"default");if("object"!=a(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}(t,"string");return"symbol"==a(e)?e:e+""}function c(t,e,r){return(e=i(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function p(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function u(t){return function(t){if(Array.isArray(t))return p(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return p(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?p(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function s(t,e,r,n,o,a,i){try{var c=t[a](i),p=c.value}catch(t){return void r(t)}c.done?e(p):Promise.resolve(p).then(n,o)}function l(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var a=t.apply(e,r);function i(t){s(a,n,o,i,c,"next",t)}function c(t){s(a,n,o,i,c,"throw",t)}i(void 0)}))}}var d,f=Object.prototype,y=f.hasOwnProperty,h="function"==typeof Symbol?Symbol:{},v=h.iterator||"@@iterator",m=h.asyncIterator||"@@asyncIterator",g=h.toStringTag||"@@toStringTag";function b(t,e,r,n){var o=e&&e.prototype instanceof k?e:k,a=Object.create(o.prototype),i=new Z(n||[]);return a._invoke=function(t,e,r){var n=O;return function(o,a){if(n===w)throw new Error("Generator is already running");if(n===_){if("throw"===o)throw a;return J()}for(r.method=o,r.arg=a;;){var i=r.delegate;if(i){var c=M(i,r);if(c){if(c===j)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(n===O)throw n=_,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n=w;var p=T(t,e,r);if("normal"===p.type){if(n=r.done?_:E,p.arg===j)continue;return{value:p.arg,done:r.done}}"throw"===p.type&&(n=_,r.method="throw",r.arg=p.arg)}}}(t,r,i),a}function T(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}var O="suspendedStart",E="suspendedYield",w="executing",_="completed",j={};function k(){}function z(){}function S(){}var N={};N[v]=function(){return this};var P=Object.getPrototypeOf,x=P&&P(P(K([])));x&&x!==f&&y.call(x,v)&&(N=x);var L=S.prototype=k.prototype=Object.create(N);function C(t){["next","throw","return"].forEach((function(e){t[e]=function(t){return this._invoke(e,t)}}))}function A(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===z||"GeneratorFunction"===(e.displayName||e.name))}function D(t,e){function r(n,o,i,c){var p=T(t[n],t,o);if("throw"!==p.type){var u=p.arg,s=u.value;return s&&"object"===a(s)&&y.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,i,c)}),(function(t){r("throw",t,i,c)})):e.resolve(s).then((function(t){u.value=t,i(u)}),(function(t){return r("throw",t,i,c)}))}c(p.arg)}var n;this._invoke=function(t,o){function a(){return new e((function(e,n){r(t,o,e,n)}))}return n=n?n.then(a,a):a()}}function M(t,e){var r=t.iterator[e.method];if(r===d){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=d,M(t,e),"throw"===e.method))return j;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return j}var n=T(r,t.iterator,e.arg);if("throw"===n.type)return e.method="throw",e.arg=n.arg,e.delegate=null,j;var o=n.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=d),e.delegate=null,j):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,j)}function R(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function I(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function Z(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(R,this),this.reset(!0)}function K(t){if(t){var e=t[v];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,n=function e(){for(;++r<t.length;)if(y.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=d,e.done=!0,e};return n.next=n}}return{next:J}}function J(){return{value:d,done:!0}}z.prototype=L.constructor=S,S.constructor=z,S[g]=z.displayName="GeneratorFunction",C(D.prototype),D.prototype[m]=function(){return this},C(L),L[g]="Generator",L[v]=function(){return this},L.toString=function(){return"[object Generator]"},Z.prototype={constructor:Z,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=d,this.done=!1,this.delegate=null,this.method="next",this.arg=d,this.tryEntries.forEach(I),!t)for(var e in this)"t"===e.charAt(0)&&y.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=d)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=d),!!n}for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n],a=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var i=y.call(o,"catchLoc"),c=y.call(o,"finallyLoc");if(i&&c){if(this.prev<o.catchLoc)return r(o.catchLoc,!0);if(this.prev<o.finallyLoc)return r(o.finallyLoc)}else if(i){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(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&y.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var o=n;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method="next",this.next=o.finallyLoc,j):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),j},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),I(r),j}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:K(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=d),j}};var $={wrap:b,isGeneratorFunction:A,AsyncIterator:D,mark:function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,S):(t.__proto__=S,g in t||(t[g]="GeneratorFunction")),t.prototype=Object.create(L),t},awrap:function(t){return{__await:t}},async:function(t,e,r,n,o){void 0===o&&(o=Promise);var a=new D(b(t,e,r,n),o);return A(e)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},keys:function(t){var e=[];for(var r in t)e.push(r);return e.reverse(),function r(){for(;e.length;){var n=e.pop();if(n in t)return r.value=n,r.done=!1,r}return r.done=!0,r}},values:K};function B(){var t=window.JAZZ_SDK_ELECTRON_BRIDGE;if(void 0===t)throw new Error("Failed connect to the preload layer. Please setup createJazzSdkElectronPreload from @salutejs/jazz-sdk-electron/preload to preload layer of electron");return t}var G=e.token({key:"JAZZ_SDK_ELECTRON_CONTEXT_TOKEN"}),X={Transport:e.token({key:"JAZZ_SDK_ELECTRON_TOKENS_TRANSPORT_TOKEN"})},F=e.token({key:"JAZZ_SDK_ELECTRON_ENDPOINT_CONTEXT_TOKEN"}),V={Transport:e.token({key:"JAZZ_SDK_ELECTRON_ENDPOINT_TOKENS_TRANSPORT_TOKEN"})};function q(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function U(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?q(Object(r),!0).forEach((function(e){c(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):q(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}var H=r.declareController().params().apply((function(e){var r=e.params,o=e.scope,a=r.jazzActivity,i=r.transport,c=r.event$,p=r.participants,s=r.jazzRoomContext,l=r.jazzSdkContext;o.add(a.event$.pipe(t.filterByType("reaction","raiseHand","releaseHand"),n.tap((function(t){i.send(t)}))).subscribe()),o.add(c.pipe(t.filterByType("participantLeft","participantJoined","participantUpdate","participants","localParticipantChanged","participantUpdate","localParticipantId","disconnecting"),n.tap(i.send)).subscribe()),o.add(s.roomTrackManager.event$.pipe(t.filterByType("addTrack","trackMuteChanged"),n.tap((function(t){i.send({type:"roomTrackManager:".concat(t.type),payload:{isLocal:t.payload.isLocal,isMuted:t.payload.isMuted,mediaType:t.payload.mediaType,participantId:t.payload.participantId,streamId:t.payload.stream.id}})}))).subscribe()),o.add(s.roomTrackManager.event$.pipe(t.filterByType("trackUpdated"),n.tap((function(t){i.send({type:"roomTrackManager:".concat(t.type),payload:{isMuted:t.payload.isMuted,mediaType:t.payload.mediaType,streamId:t.payload.stream.id,isLocal:t.payload.isLocal,participantId:t.payload.participantId}})}))).subscribe()),o.add(s.roomTrackManager.event$.pipe(t.filterByType("removeTrack"),n.tap((function(t){i.send({type:"roomTrackManager:".concat(t.type),payload:{isLocal:t.payload.isLocal,mediaType:t.payload.mediaType,participantId:t.payload.participantId,streamId:t.payload.stream.id,isMuted:t.payload.isMuted}})}))).subscribe()),o.add(l.localTrackManager.event$.pipe(t.filterByType("addTrack","muteTrackChanged","localTrackUpdated"),n.tap((function(t){i.send({type:"localTrackManager:".concat(t.type),payload:{mediaType:t.payload.mediaType,isMuted:t.payload.isMuted,streamId:t.payload.stream.id}})}))).subscribe()),o.add(l.localTrackManager.event$.pipe(t.filterByType("removeTrack"),n.tap((function(t){i.send({type:"localTrackManager:".concat(t.type),payload:{mediaType:t.payload.mediaType,streamId:t.payload.stream.id}})}))).subscribe()),o.add(l.localTrackManager.event$.pipe(t.filterByType("disposeTrack"),n.tap((function(t){i.send({type:"localTrackManager:".concat(t.type),payload:{mediaType:t.payload.mediaType,streamId:t.payload.stream.id}})}))).subscribe()),o.onDestroy(i.on("registerEndpoint",(function(t){var e=t.endpointName,r=p.localParticipantId();r&&i.send({type:"localParticipantId",payload:{participantId:r},to:e}),i.send({type:"participants",payload:{participants:u(p.participantIds()).map((function(t){var e=p.getParticipant(t);return U(U({},e),{},{name:e.name()})}))},to:e}),i.send({type:"handsRaised",payload:{handsRaised:u(a.handsRaised())},to:e});var n=p.$localParticipant.get();n&&i.send({type:"localParticipantChanged",payload:{participant:n},to:e})})))})),Y=t.declareRuntimeModule({factory:e.injectable((function(t){var e=t.jazzActivity,r=t.jazzRoom,n=t.transport,o=t.participants,a=t.jazzSdkContext,i=t.jazzRoomContext;return new H({event$:r.event$,jazzActivity:e,participants:o,transport:n,jazzSdkContext:a,jazzRoomContext:i})}),{transport:X.Transport,jazzActivity:t.JAZZ_ACTIVITY_TOKEN,jazzRoom:t.JazzRoomTokens.Room,participants:t.JazzRoomTokens.Participants,jazzRoomContext:t.JAZZ_ROOM_CONTEXT_TOKEN,jazzSdkContext:t.JAZZ_SDK_CONTEXT_TOKEN})});function Q(){return(Q=l($.mark((function e(){return $.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",t.createModule({name:"TransportEndpointSenderPlugin",imports:{jazzSdkContext:t.JAZZ_SDK_CONTEXT_TOKEN},factory:function(t){return t.deps.jazzSdkContext.moduleManager.registerModule("addRoom",Y),{}}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function W(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function tt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?W(Object(r),!0).forEach((function(e){c(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):W(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}var et=[function(){return Q.apply(this,arguments)}()];function rt(){return rt=l($.mark((function r(){var n,o,a,i,c,p,s,l,d,f,y=arguments;return $.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return o=(n=y.length>0&&void 0!==y[0]?y[0]:{}).container,a=n.plugins,i=void 0===a?[]:a,(c=null!=o?o:e.createContainer()).bindValue(t.JAZZ_SDK_PLATFORM_TOKEN,"desktop"),p=B(),s=p.transport,l={transport:s},c.bindValue(G,l),c.bindValue(X.Transport,s),d=[].concat(et,u(i)),r.next=11,t.createJazzSdk(tt(tt({},n),{},{plugins:d,container:c}));case 11:return f=r.sent,r.abrupt("return",{container:f.container,event$:f.event$,destroy:function(){f.destroy()}});case 13:case"end":return r.stop()}}),r)}))),rt.apply(this,arguments)}function nt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function ot(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?nt(Object(r),!0).forEach((function(e){c(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):nt(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function at(){return(at=l($.mark((function r(n){var o,a,i,c,p,u,s,l,d,f,y;return $.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return o=n.container,a=n.endpointName,i=n.plugins,c=void 0===i?[]:i,p=n.bridge,(u=null!=o?o:e.createContainer()).bindValue(t.JAZZ_SDK_PLATFORM_TOKEN,"desktop"),s=p?p():B(),l=s.transport,d={transport:l},u.bindValue(F,d),u.bindValue(V.Transport,l),r.next=9,t.createJazzSdk(ot(ot({},n),{},{plugins:c,container:u}));case 9:return f=r.sent,y=f.container.resolve(t.JAZZ_SDK_CONTEXT_TOKEN),y.logger.log("=== Started the JazzSdkElectronEndpoint:".concat(a," ===")),l.send({type:"registerEndpoint",payload:{endpointName:a}}),r.abrupt("return",{container:f.container,destroy:function(){f.destroy()}});case 14:case"end":return r.stop()}}),r)})))).apply(this,arguments)}var it="JAZZ_SDK_ELECTRON_IPC_CHANNEL",ct=r.declareController().params().apply((function(t){var e=t.scope,r=t.params.ipcRenderer,a=e.signal(),i=function(t,e){a(e)};r.on(it,i),e.onDestroy((function(){r.off(it,i)}));var c=new Map,p=function(t,e){var r=c.get(t);if(r){var n=r.get(e);n&&(n.unsubscribe(),r.delete(e),0===r.size&&c.delete(t))}},u=function(t,e,r){var n,o=c.get(t);return o?(o.get(e)||null===(n=c.get(t))||void 0===n||n.set(e,r),function(){return p(t,e)}):(c.set(t,new Map([[e,r]])),function(){return p(t,e)})};e.onDestroy((function(){c.forEach((function(t){t.forEach((function(t){t.unsubscribe()})),t.clear()})),c.clear()}));var s,d=function(t,e){var r=o.observe(a).pipe(n.filter((function(e){return e.type===t}))).subscribe((function(t){"payload"in t?e(t.payload):e()}));return u(t,e,r)},f={send:function(t){r.send(it,t)},once:function(t,e){var r=o.observe(a).pipe(n.filter((function(e){return e.type===t})),n.take(1)).subscribe((function(r){p(t,e),"payload"in r?e(r.payload):e()}));return u(t,e,r)},on:d,subscribe:d,addListener:function(){d.apply(void 0,arguments)},off:p,removeListener:p,__invoke:(s=l($.mark((function t(e){return $.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",r.invoke(it,e).then((function(t){return t.payload})));case 1:case"end":return t.stop()}}),t)}))),function(t){return s.apply(this,arguments)}),withType:function(){return f}};return f}));exports.JAZZ_SDK_ELECTRON_CONTEXT_TOKEN=G,exports.JAZZ_SDK_ELECTRON_ENDPOINT_CONTEXT_TOKEN=F,exports.JazzSdkElectronEndpointTokens=V,exports.JazzSdkElectronTokens=X,exports.TransportController=ct,exports.createJazzSdkElectron=function(){return rt.apply(this,arguments)},exports.createJazzSdkElectronEndpoint=function(t){return at.apply(this,arguments)};