@100mslive/hms-video-store 0.11.2-alpha.1 → 0.11.2-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- var ga=Object.defineProperty,Ta=Object.defineProperties;var fa=Object.getOwnPropertyDescriptors;var Ot=Object.getOwnPropertySymbols,va=Object.getPrototypeOf,Fr=Object.prototype.hasOwnProperty,Gr=Object.prototype.propertyIsEnumerable,Ma=Reflect.get;var Br=(a,e,t)=>e in a?ga(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,m=(a,e)=>{for(var t in e||(e={}))Fr.call(e,t)&&Br(a,t,e[t]);if(Ot)for(var t of Ot(e))Gr.call(e,t)&&Br(a,t,e[t]);return a},k=(a,e)=>Ta(a,fa(e));var Qi=(a,e)=>{var t={};for(var i in a)Fr.call(a,i)&&e.indexOf(i)<0&&(t[i]=a[i]);if(a!=null&&Ot)for(var i of Ot(a))e.indexOf(i)<0&&Gr.call(a,i)&&(t[i]=a[i]);return t};var ya=(a,e)=>()=>(e||a((e={exports:{}}).exports,e),e.exports);var W=(a,e,t)=>Ma(va(a),t,e);var c=(a,e,t)=>new Promise((i,r)=>{var s=l=>{try{n(t.next(l))}catch(u){r(u)}},o=l=>{try{n(t.throw(l))}catch(u){r(u)}},n=l=>l.done?i(l.value):Promise.resolve(l.value).then(s,o);n((t=t.apply(a,e)).next())});var nr=ya((jc,Va)=>{Va.exports={version:"0.11.2-alpha.1",license:"MIT",repository:{type:"git",url:"https://github.com/100mslive/web-sdks.git",directory:"packages/hms-video-store"},main:"dist/index.cjs.js",module:"dist/index.js",typings:"dist/index.d.ts",files:["dist","src"],engines:{node:">=12"},exports:{".":{require:"./dist/index.cjs.js",import:"./dist/index.js",default:"./dist/index.js"}},sideEffects:!1,scripts:{prestart:"rm -rf dist && yarn types:build",start:'concurrently "yarn dev" "yarn types"',dev:"node ../../scripts/dev","build:only":"node ../../scripts/build",build:"yarn build:only && yarn types:build",types:"tsc -w","types:build":"tsc -p tsconfig.json",format:"prettier --write src/**/*.ts",test:"jest --maxWorkers=1","test:watch":"jest --watch","test:coverage":"jest --coverage",lint:"eslint -c ../../.eslintrc .","lint:fix":"yarn lint --fix",prepare:"yarn build",size:"size-limit",analyze:"size-limit --why",docs:"rm -rf ./docs && typedoc && rm -f ./docs/README.md && mkdir ./docs/home &&mv ./docs/modules.md ./docs/home/content.md && node ../../scripts/docs-store && npx prettier --write './docs/**/*'"},name:"@100mslive/hms-video-store",author:"100ms",dependencies:{eventemitter2:"^6.4.9",immer:"^9.0.6",reselect:"4.0.0","sdp-transform":"^2.14.1","ua-parser-js":"^1.0.1",uuid:"^8.3.2","webrtc-adapter":"^8.0.0",zustand:"3.5.7"},devDependencies:{"@types/dom-screen-wake-lock":"^1.0.1","@types/sdp-transform":"^2.4.4","@types/ua-parser-js":"^0.7.36","@types/uuid":"^8.3.0","jest-canvas-mock":"^2.3.1","jsdom-worker":"^0.3.0",tslib:"^2.2.0"},description:"@100mslive Core SDK which abstracts the complexities of webRTC while providing a reactive store for data management with a unidirectional data flow",keywords:["video","webrtc","conferencing","100ms"],gitHead:"470903541e619aa64cfa01ec9b3a59b32445e29d"}});var zi=(n=>(n.Disconnected="Disconnected",n.Preview="Preview",n.Connecting="Connecting",n.Connected="Connected",n.Reconnecting="Reconnecting",n.Disconnecting="Disconnecting",n.Failed="Failed",n))(zi||{});var xt=()=>({room:{id:"",isConnected:!1,name:"",peers:[],localPeer:"",roomState:"Disconnected",recording:{browser:{running:!1},server:{running:!1},hls:{running:!1}},rtmp:{running:!1},hls:{running:!1,variants:[]},sessionId:""},peers:{},tracks:{},playlist:{audio:{list:{},selection:{id:"",hasPrevious:!1,hasNext:!1},progress:0,volume:0,currentTime:0,playbackRate:1},video:{list:{},selection:{id:"",hasPrevious:!1,hasNext:!1},progress:0,volume:0,currentTime:0,playbackRate:1}},messages:{byID:{},allIDs:[]},speakers:{},connectionQualities:{},settings:{audioInputDeviceId:"",audioOutputDeviceId:"",videoInputDeviceId:""},devices:{audioInput:[],audioOutput:[],videoInput:[]},roles:{},roleChangeRequests:[],errors:[],sessionStore:{},templateAppData:{},polls:{},whiteboards:{},hideLocalPeer:!1}),Ut=()=>({peerStats:{},remoteTrackStats:{},localTrackStats:{},localPeer:{id:""}});var ka=(e=>(e.CHAT="chat",e))(ka||{});var $r=(t=>(t.INFO="info",t.ERROR="error",t))($r||{}),Yi=(C=>(C.PEER_JOINED="PEER_JOINED",C.PEER_LEFT="PEER_LEFT",C.PEER_LIST="PEER_LIST",C.NEW_MESSAGE="NEW_MESSAGE",C.ERROR="ERROR",C.RECONNECTING="RECONNECTING",C.RECONNECTED="RECONNECTED",C.TRACK_ADDED="TRACK_ADDED",C.TRACK_REMOVED="TRACK_REMOVED",C.TRACK_MUTED="TRACK_MUTED",C.TRACK_UNMUTED="TRACK_UNMUTED",C.TRACK_DEGRADED="TRACK_DEGRADED",C.TRACK_RESTORED="TRACK_RESTORED",C.TRACK_DESCRIPTION_CHANGED="TRACK_DESCRIPTION_CHANGED",C.ROLE_UPDATED="ROLE_UPDATED",C.CHANGE_TRACK_STATE_REQUEST="CHANGE_TRACK_STATE_REQUEST",C.CHANGE_MULTI_TRACK_STATE_REQUEST="CHANGE_MULTI_TRACK_STATE_REQUEST",C.ROOM_ENDED="ROOM_ENDED",C.REMOVED_FROM_ROOM="REMOVED_FROM_ROOM",C.DEVICE_CHANGE_UPDATE="DEVICE_CHANGE_UPDATE",C.PLAYLIST_TRACK_ENDED="PLAYLIST_TRACK_ENDED",C.NAME_UPDATED="NAME_UPDATED",C.METADATA_UPDATED="METADATA_UPDATED",C.POLL_CREATED="POLL_CREATED",C.POLL_STARTED="POLL_STARTED",C.POLL_STOPPED="POLL_STOPPED",C.POLL_VOTES_UPDATED="POLL_VOTES_UPDATED",C.HAND_RAISE_CHANGED="HAND_RAISE_CHANGED",C))(Yi||{});var Wr=(t=>(t.audio="audio",t.video="video",t))(Wr||{});import{createSelector as P}from"reselect";function He(a,e){let t,i;if(e)for(let r of e.auxiliaryTracks){let s=a[r];Pa(s)&&(i=Ze(s)?s:i,t=et(s)?s:t)}return{video:t,audio:i}}function Ze(a){return a&&a.type==="audio"}function et(a){return a&&a.type==="video"}function Pa(a){return a&&a.source==="screen"}function Vt(a){return a&&a.source==="audioplaylist"}function tt(a){return a&&a.source==="videoplaylist"}function Kr(a){return a?!!(a!=null&&a.degraded):!1}function Oe(a,e){return e&&a.tracks[e]?a.tracks[e].enabled:!1}function qr(a,e){return e&&a.tracks[e]?a.tracks[e].displayEnabled:!1}function it(a){var r;let e=!1,t=!1,i=!1;return(r=a==null?void 0:a.publishParams)!=null&&r.allowed&&(e=a.publishParams.allowed.includes("video"),t=a.publishParams.allowed.includes("audio"),i=a.publishParams.allowed.includes("screen")),{video:e,audio:t,screen:i}}var U=a=>a.room,Ea=a=>a.errors,yn=P(Ea,a=>a.length===0?null:a.at(-1)),kn=P(U,a=>a.id),G=a=>a.peers,Bt=a=>a.messages.byID,jr=a=>a.messages.allIDs,w=a=>a.tracks,Jr=a=>a.settings,Xi=a=>a.appData,Pn=a=>a.devices,Aa=a=>a.speakers,En=a=>a.connectionQualities,ye=P([U],a=>a&&a.isConnected),An=P([ye,U],(a,e)=>a?e.peerCount!==void 0?e.peerCount||1:e.peers.length:Math.max(e.peerCount!==void 0?e.peerCount:e.peers.length-1,0)),ba=a=>a.hideLocalPeer,ae=P([U,G,ba],(a,e,t)=>t?a.peers.filter(i=>a.localPeer!==i).map(i=>e[i]):a.peers.map(i=>e[i])),Ra=P(w,a=>Object.values(a)),Q=P(U,G,(a,e)=>e[a.localPeer]),ue=P(U,a=>a.localPeer),bn=P(Q,a=>a==null?void 0:a.name),Rn=P(Q,a=>a==null?void 0:a.roleName),Z=P(Q,a=>a==null?void 0:a.audioTrack),K=P(Q,a=>a==null?void 0:a.videoTrack),Ha=P(Q,a=>a==null?void 0:a.auxiliaryTracks),Qr=P([Z,K,Ha],(a,e,t)=>{let i=t?[...t]:[];return a&&i.unshift(a),e&&i.unshift(e),i}),Hn=P(ae,a=>a.filter(e=>!e.isLocal)),In=P(G,Aa,(a,e)=>{let t=Object.entries(e).sort((i,r)=>{var n,l;let s=((n=i[1])==null?void 0:n.audioLevel)||0;return(((l=r[1])==null?void 0:l.audioLevel)||0)>s?1:-1});if(t.length>0&&t[0][1].audioLevel&&t[0][1].audioLevel>0){let i=t[0][1].peerID;if(i in a)return a[i]}return null}),Cn=a=>{let e=Q(a);return Oe(a,e==null?void 0:e.audioTrack)},Zi=a=>{let e=Q(a);return Oe(a,e==null?void 0:e.videoTrack)},zr=a=>{let e=Q(a);return qr(a,e==null?void 0:e.videoTrack)},er=P(Q,w,(a,e)=>{let{video:t,audio:i}=He(e,a);return!!(t||i)}),Ia=P(G,w,(a,e)=>{let t;for(let i in a){let r=a[i],{video:s,audio:o}=He(e,r);if(s)return r;o&&!t&&(t=r)}return t}),Ln=P(Ia,a=>!!a),wn=P(G,w,(a,e)=>{for(let t in a){let i=a[t],{audio:r,video:s}=He(e,i);if(!s&&r)return i}}),Dn=P(G,w,(a,e)=>{let t=[],i=[];for(let r in a){let s=a[r],{video:o,audio:n}=He(e,s);o?t.push(s):n&&i.push(s)}return t.concat(i)}),_n=P(G,w,(a,e)=>{for(let t in e){let i=e[t];if(tt(i)&&et(i)&&i.peerId)return a[i.peerId]}}),Nn=P(G,w,(a,e)=>{for(let t in e){let i=e[t];if(Vt(i)&&i.peerId)return a[i.peerId]}}),On=P(Ra,a=>a.filter(Kr)),xn=P(jr,a=>a.length),Un=P(Bt,a=>Object.values(a).filter(e=>!e.read).length),rt=P(jr,Bt,(a,e)=>{let t=[];return a.forEach(i=>{t.push(e[i])}),t}),Ca=P(rt,a=>a.filter(e=>{var t;return!e.recipientPeer&&!(e.recipientRoles&&((t=e.recipientRoles)==null?void 0:t.length)>0)})),Vn=P(Ca,a=>a.filter(e=>!e.read).length),z=P([U],a=>a&&a.roomState),Yr=P(z,a=>a==="Preview"),Bn=P(U,a=>a.roomState!=="Disconnected"),oe=a=>a.roles,Fn=P([oe],a=>Object.keys(a)),Ft=P([Q,oe],(a,e)=>a!=null&&a.roleName?e[a.roleName]:null),La=a=>{var e;return(e=a.preview)==null?void 0:e.asRole},Xr=P([La,oe],(a,e)=>a?e[a]:null),Gn=P([Ft],a=>{var e;return(e=a==null?void 0:a.subscribeParams)!=null&&e.subscribeToRoles?a.subscribeParams.subscribeToRoles.length>0:!1}),Zr=P(Ft,a=>a==null?void 0:a.permissions),$n=P(U,a=>a.recording),Wn=P(U,a=>a.rtmp),Kn=P(U,a=>a.hls),qn=P(U,a=>a.sessionId),jn=P(U,a=>a.startedAt),Jn=P(U,a=>!!a.isLargeRoom),Qn=P(U,a=>!!a.isEffectsEnabled),zn=P(U,a=>a.effectsKey),Yn=a=>a.templateAppData,Xn=a=>a.sessionMetadata,es=a=>a.polls,Zn=a=>Object.values(a.polls),ec=P(ae,a=>a.filter(e=>e.isHandRaised)),wa=a=>a.whiteboards,tc=P(wa,a=>Object.values(a)[0]);import{createSelector as ts}from"reselect";var is=(a="audio")=>e=>e.playlist[a].list,tr=(a="audio")=>e=>e.playlist[a].selection,rs=(a="audio")=>e=>e.playlist[a].progress,ss=(a="audio")=>e=>e.playlist[a].currentTime,as=(a="audio")=>e=>e.playlist[a].playbackRate,os=(a="audio")=>e=>e.playlist[a].volume,ns=(a="audio")=>ts(is(a),e=>Object.values(e)),cs=(a="audio")=>ts(is(a),tr(a),(e,t)=>{if(t.id)return e[t.id]}),ds={selection:tr("audio"),progress:rs("audio"),currentTime:ss("audio"),playbackRate:as("audio"),volume:os("audio"),list:ns("audio"),selectedItem:cs("audio")},ls={selection:tr("video"),progress:rs("video"),currentTime:ss("video"),playbackRate:as("video"),volume:os("video"),list:ns("video"),selectedItem:cs("video")};import{createSelector as I}from"reselect";function A(a){return e=>t=>a(t,e)}var us=(l=>(l[l.VERBOSE=0]="VERBOSE",l[l.DEBUG=1]="DEBUG",l[l.INFO=2]="INFO",l[l.WARN=3]="WARN",l[l.TIME=4]="TIME",l[l.TIMEEND=5]="TIMEEND",l[l.ERROR=6]="ERROR",l[l.NONE=7]="NONE",l))(us||{}),Da=typeof window!="undefined"&&typeof window.expect!="undefined",d=class{static v(e,...t){this.log(0,e,...t)}static d(e,...t){this.log(1,e,...t)}static i(e,...t){this.log(2,e,...t)}static w(e,...t){this.log(3,e,...t)}static e(e,...t){this.log(6,e,...t)}static time(e){this.log(4,"[HMSPerformanceTiming]",e)}static timeEnd(e){this.log(5,"[HMSPerformanceTiming]",e,e)}static cleanup(){performance.clearMarks(),performance.clearMeasures()}static log(e,t,...i){if(!(this.level.valueOf()>e.valueOf()))switch(e){case 0:{console.log(t,...i);break}case 1:{console.debug(t,...i);break}case 2:{console.info(t,...i);break}case 3:{console.warn(t,...i);break}case 6:{console.error(t,...i);break}case 4:{performance.mark(i[0]);break}case 5:{let r=i[0];try{let s=performance.measure(r,r);this.log(1,t,r,s==null?void 0:s.duration),performance.clearMarks(r),performance.clearMeasures(r)}catch(s){this.log(1,t,r,s)}break}}}};d.level=Da?7:0;var xe=class{constructor(e){this.tracks=new Array;this.nativeStream=e,this.id=e.id}updateId(e){this.id=e}};import{UAParser as _a}from"ua-parser-js";var pe=new _a,N=typeof window!="undefined",ps,Ie=typeof window=="undefined"&&!((ps=pe.getBrowser().name)!=null&&ps.toLowerCase().includes("electron"));var Na=()=>!Ie,dc=Na(),Gt=()=>pe.getDevice().type==="mobile",Ss=()=>typeof document!="undefined"&&document.hidden,ir=()=>{var a;return((a=pe.getOS().name)==null?void 0:a.toLowerCase())==="ios"},hs,ms,gs=((ms=(hs=pe.getBrowser())==null?void 0:hs.name)==null?void 0:ms.toLowerCase())==="firefox";var $t=a=>a?`{
1
+ var ga=Object.defineProperty,Ta=Object.defineProperties;var fa=Object.getOwnPropertyDescriptors;var Ot=Object.getOwnPropertySymbols,va=Object.getPrototypeOf,Fr=Object.prototype.hasOwnProperty,Gr=Object.prototype.propertyIsEnumerable,Ma=Reflect.get;var Br=(a,e,t)=>e in a?ga(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,m=(a,e)=>{for(var t in e||(e={}))Fr.call(e,t)&&Br(a,t,e[t]);if(Ot)for(var t of Ot(e))Gr.call(e,t)&&Br(a,t,e[t]);return a},k=(a,e)=>Ta(a,fa(e));var Qi=(a,e)=>{var t={};for(var i in a)Fr.call(a,i)&&e.indexOf(i)<0&&(t[i]=a[i]);if(a!=null&&Ot)for(var i of Ot(a))e.indexOf(i)<0&&Gr.call(a,i)&&(t[i]=a[i]);return t};var ya=(a,e)=>()=>(e||a((e={exports:{}}).exports,e),e.exports);var W=(a,e,t)=>Ma(va(a),t,e);var c=(a,e,t)=>new Promise((i,r)=>{var s=l=>{try{n(t.next(l))}catch(u){r(u)}},o=l=>{try{n(t.throw(l))}catch(u){r(u)}},n=l=>l.done?i(l.value):Promise.resolve(l.value).then(s,o);n((t=t.apply(a,e)).next())});var nr=ya((jc,Va)=>{Va.exports={version:"0.11.2-alpha.3",license:"MIT",repository:{type:"git",url:"https://github.com/100mslive/web-sdks.git",directory:"packages/hms-video-store"},main:"dist/index.cjs.js",module:"dist/index.js",typings:"dist/index.d.ts",files:["dist","src"],engines:{node:">=12"},exports:{".":{require:"./dist/index.cjs.js",import:"./dist/index.js",default:"./dist/index.js"}},sideEffects:!1,scripts:{prestart:"rm -rf dist && yarn types:build",start:'concurrently "yarn dev" "yarn types"',dev:"node ../../scripts/dev","build:only":"node ../../scripts/build",build:"yarn build:only && yarn types:build",types:"tsc -w","types:build":"tsc -p tsconfig.json",format:"prettier --write src/**/*.ts",test:"jest --maxWorkers=1","test:watch":"jest --watch","test:coverage":"jest --coverage",lint:"eslint -c ../../.eslintrc .","lint:fix":"yarn lint --fix",prepare:"yarn build",size:"size-limit",analyze:"size-limit --why",docs:"rm -rf ./docs && typedoc && rm -f ./docs/README.md && mkdir ./docs/home &&mv ./docs/modules.md ./docs/home/content.md && node ../../scripts/docs-store && npx prettier --write './docs/**/*'"},name:"@100mslive/hms-video-store",author:"100ms",dependencies:{eventemitter2:"^6.4.9",immer:"^9.0.6",reselect:"4.0.0","sdp-transform":"^2.14.1","ua-parser-js":"^1.0.1",uuid:"^8.3.2","webrtc-adapter":"^8.0.0",zustand:"3.5.7"},devDependencies:{"@types/dom-screen-wake-lock":"^1.0.1","@types/sdp-transform":"^2.4.4","@types/ua-parser-js":"^0.7.36","@types/uuid":"^8.3.0","jest-canvas-mock":"^2.3.1","jsdom-worker":"^0.3.0",tslib:"^2.2.0"},description:"@100mslive Core SDK which abstracts the complexities of webRTC while providing a reactive store for data management with a unidirectional data flow",keywords:["video","webrtc","conferencing","100ms"],gitHead:"a8ba9a5b8f03574b1b398575dced298fd1a9fab5"}});var zi=(n=>(n.Disconnected="Disconnected",n.Preview="Preview",n.Connecting="Connecting",n.Connected="Connected",n.Reconnecting="Reconnecting",n.Disconnecting="Disconnecting",n.Failed="Failed",n))(zi||{});var xt=()=>({room:{id:"",isConnected:!1,name:"",peers:[],localPeer:"",roomState:"Disconnected",recording:{browser:{running:!1},server:{running:!1},hls:{running:!1}},rtmp:{running:!1},hls:{running:!1,variants:[]},sessionId:""},peers:{},tracks:{},playlist:{audio:{list:{},selection:{id:"",hasPrevious:!1,hasNext:!1},progress:0,volume:0,currentTime:0,playbackRate:1},video:{list:{},selection:{id:"",hasPrevious:!1,hasNext:!1},progress:0,volume:0,currentTime:0,playbackRate:1}},messages:{byID:{},allIDs:[]},speakers:{},connectionQualities:{},settings:{audioInputDeviceId:"",audioOutputDeviceId:"",videoInputDeviceId:""},devices:{audioInput:[],audioOutput:[],videoInput:[]},roles:{},roleChangeRequests:[],errors:[],sessionStore:{},templateAppData:{},polls:{},whiteboards:{},hideLocalPeer:!1}),Ut=()=>({peerStats:{},remoteTrackStats:{},localTrackStats:{},localPeer:{id:""}});var ka=(e=>(e.CHAT="chat",e))(ka||{});var $r=(t=>(t.INFO="info",t.ERROR="error",t))($r||{}),Yi=(C=>(C.PEER_JOINED="PEER_JOINED",C.PEER_LEFT="PEER_LEFT",C.PEER_LIST="PEER_LIST",C.NEW_MESSAGE="NEW_MESSAGE",C.ERROR="ERROR",C.RECONNECTING="RECONNECTING",C.RECONNECTED="RECONNECTED",C.TRACK_ADDED="TRACK_ADDED",C.TRACK_REMOVED="TRACK_REMOVED",C.TRACK_MUTED="TRACK_MUTED",C.TRACK_UNMUTED="TRACK_UNMUTED",C.TRACK_DEGRADED="TRACK_DEGRADED",C.TRACK_RESTORED="TRACK_RESTORED",C.TRACK_DESCRIPTION_CHANGED="TRACK_DESCRIPTION_CHANGED",C.ROLE_UPDATED="ROLE_UPDATED",C.CHANGE_TRACK_STATE_REQUEST="CHANGE_TRACK_STATE_REQUEST",C.CHANGE_MULTI_TRACK_STATE_REQUEST="CHANGE_MULTI_TRACK_STATE_REQUEST",C.ROOM_ENDED="ROOM_ENDED",C.REMOVED_FROM_ROOM="REMOVED_FROM_ROOM",C.DEVICE_CHANGE_UPDATE="DEVICE_CHANGE_UPDATE",C.PLAYLIST_TRACK_ENDED="PLAYLIST_TRACK_ENDED",C.NAME_UPDATED="NAME_UPDATED",C.METADATA_UPDATED="METADATA_UPDATED",C.POLL_CREATED="POLL_CREATED",C.POLL_STARTED="POLL_STARTED",C.POLL_STOPPED="POLL_STOPPED",C.POLL_VOTES_UPDATED="POLL_VOTES_UPDATED",C.HAND_RAISE_CHANGED="HAND_RAISE_CHANGED",C))(Yi||{});var Wr=(t=>(t.audio="audio",t.video="video",t))(Wr||{});import{createSelector as P}from"reselect";function He(a,e){let t,i;if(e)for(let r of e.auxiliaryTracks){let s=a[r];Pa(s)&&(i=Ze(s)?s:i,t=et(s)?s:t)}return{video:t,audio:i}}function Ze(a){return a&&a.type==="audio"}function et(a){return a&&a.type==="video"}function Pa(a){return a&&a.source==="screen"}function Vt(a){return a&&a.source==="audioplaylist"}function tt(a){return a&&a.source==="videoplaylist"}function Kr(a){return a?!!(a!=null&&a.degraded):!1}function Oe(a,e){return e&&a.tracks[e]?a.tracks[e].enabled:!1}function qr(a,e){return e&&a.tracks[e]?a.tracks[e].displayEnabled:!1}function it(a){var r;let e=!1,t=!1,i=!1;return(r=a==null?void 0:a.publishParams)!=null&&r.allowed&&(e=a.publishParams.allowed.includes("video"),t=a.publishParams.allowed.includes("audio"),i=a.publishParams.allowed.includes("screen")),{video:e,audio:t,screen:i}}var U=a=>a.room,Ea=a=>a.errors,yn=P(Ea,a=>a.length===0?null:a.at(-1)),kn=P(U,a=>a.id),G=a=>a.peers,Bt=a=>a.messages.byID,jr=a=>a.messages.allIDs,w=a=>a.tracks,Jr=a=>a.settings,Xi=a=>a.appData,Pn=a=>a.devices,Aa=a=>a.speakers,En=a=>a.connectionQualities,ye=P([U],a=>a&&a.isConnected),An=P([ye,U],(a,e)=>a?e.peerCount!==void 0?e.peerCount||1:e.peers.length:Math.max(e.peerCount!==void 0?e.peerCount:e.peers.length-1,0)),ba=a=>a.hideLocalPeer,ae=P([U,G,ba],(a,e,t)=>t?a.peers.filter(i=>a.localPeer!==i).map(i=>e[i]):a.peers.map(i=>e[i])),Ra=P(w,a=>Object.values(a)),Q=P(U,G,(a,e)=>e[a.localPeer]),ue=P(U,a=>a.localPeer),bn=P(Q,a=>a==null?void 0:a.name),Rn=P(Q,a=>a==null?void 0:a.roleName),Z=P(Q,a=>a==null?void 0:a.audioTrack),K=P(Q,a=>a==null?void 0:a.videoTrack),Ha=P(Q,a=>a==null?void 0:a.auxiliaryTracks),Qr=P([Z,K,Ha],(a,e,t)=>{let i=t?[...t]:[];return a&&i.unshift(a),e&&i.unshift(e),i}),Hn=P(ae,a=>a.filter(e=>!e.isLocal)),In=P(G,Aa,(a,e)=>{let t=Object.entries(e).sort((i,r)=>{var n,l;let s=((n=i[1])==null?void 0:n.audioLevel)||0;return(((l=r[1])==null?void 0:l.audioLevel)||0)>s?1:-1});if(t.length>0&&t[0][1].audioLevel&&t[0][1].audioLevel>0){let i=t[0][1].peerID;if(i in a)return a[i]}return null}),Cn=a=>{let e=Q(a);return Oe(a,e==null?void 0:e.audioTrack)},Zi=a=>{let e=Q(a);return Oe(a,e==null?void 0:e.videoTrack)},zr=a=>{let e=Q(a);return qr(a,e==null?void 0:e.videoTrack)},er=P(Q,w,(a,e)=>{let{video:t,audio:i}=He(e,a);return!!(t||i)}),Ia=P(G,w,(a,e)=>{let t;for(let i in a){let r=a[i],{video:s,audio:o}=He(e,r);if(s)return r;o&&!t&&(t=r)}return t}),Ln=P(Ia,a=>!!a),wn=P(G,w,(a,e)=>{for(let t in a){let i=a[t],{audio:r,video:s}=He(e,i);if(!s&&r)return i}}),Dn=P(G,w,(a,e)=>{let t=[],i=[];for(let r in a){let s=a[r],{video:o,audio:n}=He(e,s);o?t.push(s):n&&i.push(s)}return t.concat(i)}),_n=P(G,w,(a,e)=>{for(let t in e){let i=e[t];if(tt(i)&&et(i)&&i.peerId)return a[i.peerId]}}),Nn=P(G,w,(a,e)=>{for(let t in e){let i=e[t];if(Vt(i)&&i.peerId)return a[i.peerId]}}),On=P(Ra,a=>a.filter(Kr)),xn=P(jr,a=>a.length),Un=P(Bt,a=>Object.values(a).filter(e=>!e.read).length),rt=P(jr,Bt,(a,e)=>{let t=[];return a.forEach(i=>{t.push(e[i])}),t}),Ca=P(rt,a=>a.filter(e=>{var t;return!e.recipientPeer&&!(e.recipientRoles&&((t=e.recipientRoles)==null?void 0:t.length)>0)})),Vn=P(Ca,a=>a.filter(e=>!e.read).length),z=P([U],a=>a&&a.roomState),Yr=P(z,a=>a==="Preview"),Bn=P(U,a=>a.roomState!=="Disconnected"),oe=a=>a.roles,Fn=P([oe],a=>Object.keys(a)),Ft=P([Q,oe],(a,e)=>a!=null&&a.roleName?e[a.roleName]:null),La=a=>{var e;return(e=a.preview)==null?void 0:e.asRole},Xr=P([La,oe],(a,e)=>a?e[a]:null),Gn=P([Ft],a=>{var e;return(e=a==null?void 0:a.subscribeParams)!=null&&e.subscribeToRoles?a.subscribeParams.subscribeToRoles.length>0:!1}),Zr=P(Ft,a=>a==null?void 0:a.permissions),$n=P(U,a=>a.recording),Wn=P(U,a=>a.rtmp),Kn=P(U,a=>a.hls),qn=P(U,a=>a.sessionId),jn=P(U,a=>a.startedAt),Jn=P(U,a=>!!a.isLargeRoom),Qn=P(U,a=>!!a.isEffectsEnabled),zn=P(U,a=>a.effectsKey),Yn=a=>a.templateAppData,Xn=a=>a.sessionMetadata,es=a=>a.polls,Zn=a=>Object.values(a.polls),ec=P(ae,a=>a.filter(e=>e.isHandRaised)),wa=a=>a.whiteboards,tc=P(wa,a=>Object.values(a)[0]);import{createSelector as ts}from"reselect";var is=(a="audio")=>e=>e.playlist[a].list,tr=(a="audio")=>e=>e.playlist[a].selection,rs=(a="audio")=>e=>e.playlist[a].progress,ss=(a="audio")=>e=>e.playlist[a].currentTime,as=(a="audio")=>e=>e.playlist[a].playbackRate,os=(a="audio")=>e=>e.playlist[a].volume,ns=(a="audio")=>ts(is(a),e=>Object.values(e)),cs=(a="audio")=>ts(is(a),tr(a),(e,t)=>{if(t.id)return e[t.id]}),ds={selection:tr("audio"),progress:rs("audio"),currentTime:ss("audio"),playbackRate:as("audio"),volume:os("audio"),list:ns("audio"),selectedItem:cs("audio")},ls={selection:tr("video"),progress:rs("video"),currentTime:ss("video"),playbackRate:as("video"),volume:os("video"),list:ns("video"),selectedItem:cs("video")};import{createSelector as I}from"reselect";function A(a){return e=>t=>a(t,e)}var us=(l=>(l[l.VERBOSE=0]="VERBOSE",l[l.DEBUG=1]="DEBUG",l[l.INFO=2]="INFO",l[l.WARN=3]="WARN",l[l.TIME=4]="TIME",l[l.TIMEEND=5]="TIMEEND",l[l.ERROR=6]="ERROR",l[l.NONE=7]="NONE",l))(us||{}),Da=typeof window!="undefined"&&typeof window.expect!="undefined",d=class{static v(e,...t){this.log(0,e,...t)}static d(e,...t){this.log(1,e,...t)}static i(e,...t){this.log(2,e,...t)}static w(e,...t){this.log(3,e,...t)}static e(e,...t){this.log(6,e,...t)}static time(e){this.log(4,"[HMSPerformanceTiming]",e)}static timeEnd(e){this.log(5,"[HMSPerformanceTiming]",e,e)}static cleanup(){performance.clearMarks(),performance.clearMeasures()}static log(e,t,...i){if(!(this.level.valueOf()>e.valueOf()))switch(e){case 0:{console.log(t,...i);break}case 1:{console.debug(t,...i);break}case 2:{console.info(t,...i);break}case 3:{console.warn(t,...i);break}case 6:{console.error(t,...i);break}case 4:{performance.mark(i[0]);break}case 5:{let r=i[0];try{let s=performance.measure(r,r);this.log(1,t,r,s==null?void 0:s.duration),performance.clearMarks(r),performance.clearMeasures(r)}catch(s){this.log(1,t,r,s)}break}}}};d.level=Da?7:0;var xe=class{constructor(e){this.tracks=new Array;this.nativeStream=e,this.id=e.id}updateId(e){this.id=e}};import{UAParser as _a}from"ua-parser-js";var pe=new _a,N=typeof window!="undefined",ps,Ie=typeof window=="undefined"&&!((ps=pe.getBrowser().name)!=null&&ps.toLowerCase().includes("electron"));var Na=()=>!Ie,dc=Na(),Gt=()=>pe.getDevice().type==="mobile",Ss=()=>typeof document!="undefined"&&document.hidden,ir=()=>{var a;return((a=pe.getOS().name)==null?void 0:a.toLowerCase())==="ios"},hs,ms,gs=((ms=(hs=pe.getBrowser())==null?void 0:hs.name)==null?void 0:ms.toLowerCase())==="firefox";var $t=a=>a?`{
2
2
  trackId: ${a.id};
3
3
  kind: ${a.kind};
4
4
  enabled: ${a.enabled};