@100mslive/hms-video-store 0.12.5-alpha.7 → 0.12.5

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.cjs.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var oo=Object.create;var at=Object.defineProperty,no=Object.defineProperties,co=Object.getOwnPropertyDescriptor,lo=Object.getOwnPropertyDescriptors,uo=Object.getOwnPropertyNames,Qt=Object.getOwnPropertySymbols,vs=Object.getPrototypeOf,ur=Object.prototype.hasOwnProperty,Ms=Object.prototype.propertyIsEnumerable,po=Reflect.get;var fs=(a,e,t)=>e in a?at(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,m=(a,e)=>{for(var t in e||(e={}))ur.call(e,t)&&fs(a,t,e[t]);if(Qt)for(var t of Qt(e))Ms.call(e,t)&&fs(a,t,e[t]);return a},v=(a,e)=>no(a,lo(e));var pr=(a,e)=>{var t={};for(var i in a)ur.call(a,i)&&e.indexOf(i)<0&&(t[i]=a[i]);if(a!=null&&Qt)for(var i of Qt(a))e.indexOf(i)<0&&Ms.call(a,i)&&(t[i]=a[i]);return t};var ho=(a,e)=>()=>(e||a((e={exports:{}}).exports,e),e.exports),mo=(a,e)=>{for(var t in e)at(a,t,{get:e[t],enumerable:!0})},ys=(a,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of uo(e))!ur.call(a,r)&&r!==t&&at(a,r,{get:()=>e[r],enumerable:!(i=co(e,r))||i.enumerable});return a};var Ce=(a,e,t)=>(t=a!=null?oo(vs(a)):{},ys(e||!a||!a.__esModule?at(t,"default",{value:a,enumerable:!0}):t,a)),So=a=>ys(at({},"__esModule",{value:!0}),a);var j=(a,e,t)=>po(vs(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 _r=ho((tl,on)=>{on.exports={version:"0.12.5-alpha.7",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","lodash.isequal":"^4.5.0",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/lodash.isequal":"^4.5.8","@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:"b5685b9b186d4ad7d826ef99eea2305cf6007074"}});var rd={};mo(rd,{DeviceType:()=>Vr,DomainCategory:()=>Hr,EventBus:()=>et,HLSPlaylistType:()=>Br,HMSAudioPluginType:()=>ri,HMSLogLevel:()=>Rr,HMSMessageType:()=>ks,HMSNotificationSeverity:()=>hr,HMSNotificationTypes:()=>Yt,HMSPeerType:()=>ci,HMSPlaylistType:()=>mr,HMSPluginUnsupportedTypes:()=>si,HMSReactiveStore:()=>Be,HMSRecordingState:()=>Ur,HMSRoomState:()=>zt,HMSStats:()=>st,HMSVideoPluginCanvasContextType:()=>li,HMSVideoPluginType:()=>di,createDefaultStatsStore:()=>nt,createDefaultStoreState:()=>ot,parsedUserAgent:()=>de,selectAppData:()=>Rn,selectAppDataByPath:()=>Hn,selectAudioPlaylist:()=>br,selectAudioPlaylistTrackByPeerID:()=>$n,selectAudioTrackByID:()=>wn,selectAudioTrackByPeerID:()=>Aa,selectAudioTrackVolume:()=>ss,selectAudioVolumeByPeerID:()=>zn,selectAuxiliaryAudioByPeerID:()=>Fn,selectAuxiliaryTracksByPeerID:()=>On,selectAvailableRoleNames:()=>Vo,selectBroadcastMessages:()=>Ca,selectBroadcastMessagesUnreadCount:()=>tc,selectCameraStreamByPeerID:()=>Nn,selectConnectionQualities:()=>Mo,selectConnectionQualityByPeerID:()=>Vn,selectDegradedTracks:()=>No,selectDevices:()=>vo,selectDidIJoinWithin:()=>Ec,selectDominantSpeaker:()=>Io,selectEffectsKey:()=>Qo,selectErrors:()=>bs,selectFullAppData:()=>Zt,selectHLSState:()=>$o,selectHMSBroadcastMessages:()=>Is,selectHMSMessages:()=>Fe,selectHMSMessagesCount:()=>Oo,selectHMSStats:()=>ao,selectHandRaisedPeers:()=>Zo,selectHasPeerHandRaised:()=>dc,selectIsAllowedToPreviewMedia:()=>gc,selectIsAllowedToPublish:()=>Sc,selectIsAllowedToSubscribe:()=>Fo,selectIsAudioLocallyMuted:()=>rs,selectIsConnectedToRoom:()=>me,selectIsEffectsEnabled:()=>Jo,selectIsInPreview:()=>vr,selectIsLargeRoom:()=>jo,selectIsLocalAudioEnabled:()=>Ho,selectIsLocalAudioPluginPresent:()=>yc,selectIsLocalScreenShared:()=>ti,selectIsLocalVideoDisplayEnabled:()=>fr,selectIsLocalVideoEnabled:()=>ei,selectIsLocalVideoPluginPresent:()=>Mc,selectIsLocallyMutedByPeerID:()=>Jn,selectIsPeerAudioEnabled:()=>qn,selectIsPeerVideoEnabled:()=>jn,selectIsRoleAllowedToPublish:()=>Tc,selectIsScreenShareLocallyMutedByPeerID:()=>Qn,selectIsSomeoneScreenSharing:()=>Co,selectLocalAudioTrackID:()=>X,selectLocalMediaSettings:()=>gr,selectLocalPeer:()=>J,selectLocalPeerID:()=>ce,selectLocalPeerName:()=>Eo,selectLocalPeerRole:()=>ht,selectLocalPeerRoleName:()=>bo,selectLocalTrackIDs:()=>Tr,selectLocalVideoTrackID:()=>W,selectMessageByMessageID:()=>uc,selectMessageIDsInOrder:()=>Sr,selectMessagesByPeerID:()=>ic,selectMessagesByRole:()=>rc,selectMessagesMap:()=>pt,selectMessagesUnreadCountByPeerID:()=>ac,selectMessagesUnreadCountByRole:()=>sc,selectPeerAudioByID:()=>Bn,selectPeerByCondition:()=>kc,selectPeerByID:()=>K,selectPeerCount:()=>yo,selectPeerMetadata:()=>cc,selectPeerName:()=>lc,selectPeerNameByID:()=>Cn,selectPeerScreenSharing:()=>Rs,selectPeerSharingAudio:()=>Lo,selectPeerSharingAudioPlaylist:()=>_o,selectPeerSharingVideoPlaylist:()=>Do,selectPeerTypeByID:()=>Ln,selectPeers:()=>ie,selectPeersByCondition:()=>Pc,selectPeersByRole:()=>oc,selectPeersByRoles:()=>nc,selectPeersMap:()=>G,selectPeersScreenSharing:()=>wo,selectPeersWithAudioStatus:()=>pc,selectPermissions:()=>yr,selectPollByID:()=>as,selectPolls:()=>Xo,selectPollsMap:()=>kr,selectPreviewRole:()=>Mr,selectPreviewRoleName:()=>Hs,selectRTMPState:()=>Wo,selectRecentError:()=>To,selectRecordingState:()=>Go,selectRemotePeers:()=>Ro,selectRoleByRoleName:()=>La,selectRoleChangeRequest:()=>mc,selectRolesMap:()=>re,selectRoom:()=>U,selectRoomID:()=>fo,selectRoomStartTime:()=>qo,selectRoomStarted:()=>Bo,selectRoomState:()=>Q,selectScreenAudioTrackByID:()=>Dn,selectScreenShareAudioByPeerID:()=>is,selectScreenShareByPeerID:()=>Kn,selectScreenSharesByPeerId:()=>ts,selectScreenVideoTrackByID:()=>_n,selectScreenshareAudioVolumeByPeerID:()=>Yn,selectSessionId:()=>Ko,selectSessionMetadata:()=>Yo,selectSessionStore:()=>In,selectSimulcastLayerByTrack:()=>Xn,selectSpeakers:()=>As,selectTemplateAppData:()=>zo,selectTrackAudioByID:()=>xn,selectTrackByID:()=>At,selectTracksMap:()=>w,selectUnreadHMSBroadcastMessagesCount:()=>Uo,selectUnreadHMSMessagesCount:()=>xo,selectVideoPlaylist:()=>Ar,selectVideoPlaylistAudioTrackByPeerID:()=>Wn,selectVideoPlaylistVideoTrackByPeerID:()=>Gn,selectVideoTrackByID:()=>es,selectVideoTrackByPeerID:()=>ba,selectWhiteboard:()=>en,selectWhiteboards:()=>Cs,simulcastMapping:()=>Re});module.exports=So(rd);var zt=(n=>(n.Disconnected="Disconnected",n.Preview="Preview",n.Connecting="Connecting",n.Connected="Connected",n.Reconnecting="Reconnecting",n.Disconnecting="Disconnecting",n.Failed="Failed",n))(zt||{});var ot=()=>({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}),nt=()=>({peerStats:{},remoteTrackStats:{},localTrackStats:{},localPeer:{id:""}});var ks=(e=>(e.CHAT="chat",e))(ks||{});var hr=(t=>(t.INFO="info",t.ERROR="error",t))(hr||{}),Yt=(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.POLLS_LIST="POLLS_LIST",C.HAND_RAISE_CHANGED="HAND_RAISE_CHANGED",C))(Yt||{});var mr=(t=>(t.audio="audio",t.video="video",t))(mr||{});var E=require("reselect");function Le(a,e){let t,i;if(e)for(let r of e.auxiliaryTracks){let s=a[r];go(s)&&(i=ct(s)?s:i,t=dt(s)?s:t)}return{video:t,audio:i}}function ct(a){return a&&a.type==="audio"}function dt(a){return a&&a.type==="video"}function go(a){return a&&a.source==="screen"}function Xt(a){return a&&a.source==="audioplaylist"}function lt(a){return a&&a.source==="videoplaylist"}function Ps(a){return a?!!(a!=null&&a.degraded):!1}function Ve(a,e){return e&&a.tracks[e]?a.tracks[e].enabled:!1}function Es(a,e){return e&&a.tracks[e]?a.tracks[e].displayEnabled:!1}function ut(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,bs=a=>a.errors,To=(0,E.createSelector)(bs,a=>a.length===0?null:a.at(-1)),fo=(0,E.createSelector)(U,a=>a.id),G=a=>a.peers,pt=a=>a.messages.byID,Sr=a=>a.messages.allIDs,w=a=>a.tracks,gr=a=>a.settings,Zt=a=>a.appData,vo=a=>a.devices,As=a=>a.speakers,Mo=a=>a.connectionQualities,me=(0,E.createSelector)([U],a=>a&&a.isConnected),yo=(0,E.createSelector)([me,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)),ko=a=>a.hideLocalPeer,ie=(0,E.createSelector)([U,G,ko],(a,e,t)=>t?a.peers.filter(i=>a.localPeer!==i).map(i=>e[i]):a.peers.map(i=>e[i])),Po=(0,E.createSelector)(w,a=>Object.values(a)),J=(0,E.createSelector)(U,G,(a,e)=>e[a.localPeer]),ce=(0,E.createSelector)(U,a=>a.localPeer),Eo=(0,E.createSelector)(J,a=>a==null?void 0:a.name),bo=(0,E.createSelector)(J,a=>a==null?void 0:a.roleName),X=(0,E.createSelector)(J,a=>a==null?void 0:a.audioTrack),W=(0,E.createSelector)(J,a=>a==null?void 0:a.videoTrack),Ao=(0,E.createSelector)(J,a=>a==null?void 0:a.auxiliaryTracks),Tr=(0,E.createSelector)([X,W,Ao],(a,e,t)=>{let i=t?[...t]:[];return a&&i.unshift(a),e&&i.unshift(e),i}),Ro=(0,E.createSelector)(ie,a=>a.filter(e=>!e.isLocal)),Io=(0,E.createSelector)(G,As,(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}),Ho=a=>{let e=J(a);return Ve(a,e==null?void 0:e.audioTrack)},ei=a=>{let e=J(a);return Ve(a,e==null?void 0:e.videoTrack)},fr=a=>{let e=J(a);return Es(a,e==null?void 0:e.videoTrack)},ti=(0,E.createSelector)(J,w,(a,e)=>{let{video:t,audio:i}=Le(e,a);return!!(t||i)}),Rs=(0,E.createSelector)(G,w,(a,e)=>{let t;for(let i in a){let r=a[i],{video:s,audio:o}=Le(e,r);if(s)return r;o&&!t&&(t=r)}return t}),Co=(0,E.createSelector)(Rs,a=>!!a),Lo=(0,E.createSelector)(G,w,(a,e)=>{for(let t in a){let i=a[t],{audio:r,video:s}=Le(e,i);if(!s&&r)return i}}),wo=(0,E.createSelector)(G,w,(a,e)=>{let t=[],i=[];for(let r in a){let s=a[r],{video:o,audio:n}=Le(e,s);o?t.push(s):n&&i.push(s)}return t.concat(i)}),Do=(0,E.createSelector)(G,w,(a,e)=>{for(let t in e){let i=e[t];if(lt(i)&&dt(i)&&i.peerId)return a[i.peerId]}}),_o=(0,E.createSelector)(G,w,(a,e)=>{for(let t in e){let i=e[t];if(Xt(i)&&i.peerId)return a[i.peerId]}}),No=(0,E.createSelector)(Po,a=>a.filter(Ps)),Oo=(0,E.createSelector)(Sr,a=>a.length),xo=(0,E.createSelector)(pt,a=>Object.values(a).filter(e=>!e.read).length),Fe=(0,E.createSelector)(Sr,pt,(a,e)=>{let t=[];return a.forEach(i=>{t.push(e[i])}),t}),Is=(0,E.createSelector)(Fe,a=>a.filter(e=>{var t;return!e.recipientPeer&&!(e.recipientRoles&&((t=e.recipientRoles)==null?void 0:t.length)>0)})),Uo=(0,E.createSelector)(Is,a=>a.filter(e=>!e.read).length),Q=(0,E.createSelector)([U],a=>a&&a.roomState),vr=(0,E.createSelector)(Q,a=>a==="Preview"),Bo=(0,E.createSelector)(U,a=>a.roomState!=="Disconnected"),re=a=>a.roles,Vo=(0,E.createSelector)([re],a=>Object.keys(a)),ht=(0,E.createSelector)([J,re],(a,e)=>a!=null&&a.roleName?e[a.roleName]:null),Hs=a=>{var e;return(e=a.preview)==null?void 0:e.asRole},Mr=(0,E.createSelector)([Hs,re],(a,e)=>a?e[a]:null),Fo=(0,E.createSelector)([ht],a=>{var e;return(e=a==null?void 0:a.subscribeParams)!=null&&e.subscribeToRoles?a.subscribeParams.subscribeToRoles.length>0:!1}),yr=(0,E.createSelector)(ht,a=>a==null?void 0:a.permissions),Go=(0,E.createSelector)(U,a=>a.recording),Wo=(0,E.createSelector)(U,a=>a.rtmp),$o=(0,E.createSelector)(U,a=>a.hls),Ko=(0,E.createSelector)(U,a=>a.sessionId),qo=(0,E.createSelector)(U,a=>a.startedAt),jo=(0,E.createSelector)(U,a=>!!a.isLargeRoom),Jo=(0,E.createSelector)(U,a=>!!a.isEffectsEnabled),Qo=(0,E.createSelector)(U,a=>a.effectsKey),zo=a=>a.templateAppData,Yo=a=>a.sessionMetadata,kr=a=>a.polls,Xo=a=>Object.values(a.polls),Zo=(0,E.createSelector)(ie,a=>a.filter(e=>e.isHandRaised)),Cs=a=>a.whiteboards,en=(0,E.createSelector)(Cs,a=>Object.values(a)[0]);var Pr=require("reselect");var Ls=(a="audio")=>e=>e.playlist[a].list,Er=(a="audio")=>e=>e.playlist[a].selection,ws=(a="audio")=>e=>e.playlist[a].progress,Ds=(a="audio")=>e=>e.playlist[a].currentTime,_s=(a="audio")=>e=>e.playlist[a].playbackRate,Ns=(a="audio")=>e=>e.playlist[a].volume,Os=(a="audio")=>(0,Pr.createSelector)(Ls(a),e=>Object.values(e)),xs=(a="audio")=>(0,Pr.createSelector)(Ls(a),Er(a),(e,t)=>{if(t.id)return e[t.id]}),br={selection:Er("audio"),progress:ws("audio"),currentTime:Ds("audio"),playbackRate:_s("audio"),volume:Ns("audio"),list:Os("audio"),selectedItem:xs("audio")},Ar={selection:Er("video"),progress:ws("video"),currentTime:Ds("video"),playbackRate:_s("video"),volume:Ns("video"),list:Os("video"),selectedItem:xs("video")};var H=require("reselect");function R(a){return e=>t=>a(t,e)}var Rr=(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))(Rr||{}),tn=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=tn?7:0;var Ge=class{constructor(e){this.tracks=new Array;this.nativeStream=e,this.id=e.id}updateId(e){this.id=e}};var Fs=require("ua-parser-js"),de=new Fs.UAParser,_=typeof window!="undefined",Us,we=typeof window=="undefined"&&!((Us=de.getBrowser().name)!=null&&Us.toLowerCase().includes("electron"));var rn=()=>!we,Td=rn(),De=()=>de.getDevice().type==="mobile",Gs=()=>typeof document!="undefined"&&document.hidden,Ir=()=>{var a;return((a=de.getOS().name)==null?void 0:a.toLowerCase())==="ios"},Bs,Vs,Ws=((Vs=(Bs=de.getBrowser())==null?void 0:Bs.name)==null?void 0:Vs.toLowerCase())==="firefox";var ii=a=>a?`{
1
+ "use strict";var oo=Object.create;var at=Object.defineProperty,no=Object.defineProperties,co=Object.getOwnPropertyDescriptor,lo=Object.getOwnPropertyDescriptors,uo=Object.getOwnPropertyNames,Qt=Object.getOwnPropertySymbols,vs=Object.getPrototypeOf,ur=Object.prototype.hasOwnProperty,Ms=Object.prototype.propertyIsEnumerable,po=Reflect.get;var fs=(a,e,t)=>e in a?at(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,m=(a,e)=>{for(var t in e||(e={}))ur.call(e,t)&&fs(a,t,e[t]);if(Qt)for(var t of Qt(e))Ms.call(e,t)&&fs(a,t,e[t]);return a},v=(a,e)=>no(a,lo(e));var pr=(a,e)=>{var t={};for(var i in a)ur.call(a,i)&&e.indexOf(i)<0&&(t[i]=a[i]);if(a!=null&&Qt)for(var i of Qt(a))e.indexOf(i)<0&&Ms.call(a,i)&&(t[i]=a[i]);return t};var ho=(a,e)=>()=>(e||a((e={exports:{}}).exports,e),e.exports),mo=(a,e)=>{for(var t in e)at(a,t,{get:e[t],enumerable:!0})},ys=(a,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of uo(e))!ur.call(a,r)&&r!==t&&at(a,r,{get:()=>e[r],enumerable:!(i=co(e,r))||i.enumerable});return a};var Ce=(a,e,t)=>(t=a!=null?oo(vs(a)):{},ys(e||!a||!a.__esModule?at(t,"default",{value:a,enumerable:!0}):t,a)),So=a=>ys(at({},"__esModule",{value:!0}),a);var j=(a,e,t)=>po(vs(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 _r=ho((tl,on)=>{on.exports={version:"0.12.5",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","lodash.isequal":"^4.5.0",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/lodash.isequal":"^4.5.8","@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:"241ab71aeb92a9c516a30a7c51bc7af2ca80f347"}});var rd={};mo(rd,{DeviceType:()=>Vr,DomainCategory:()=>Hr,EventBus:()=>et,HLSPlaylistType:()=>Br,HMSAudioPluginType:()=>ri,HMSLogLevel:()=>Rr,HMSMessageType:()=>ks,HMSNotificationSeverity:()=>hr,HMSNotificationTypes:()=>Yt,HMSPeerType:()=>ci,HMSPlaylistType:()=>mr,HMSPluginUnsupportedTypes:()=>si,HMSReactiveStore:()=>Be,HMSRecordingState:()=>Ur,HMSRoomState:()=>zt,HMSStats:()=>st,HMSVideoPluginCanvasContextType:()=>li,HMSVideoPluginType:()=>di,createDefaultStatsStore:()=>nt,createDefaultStoreState:()=>ot,parsedUserAgent:()=>de,selectAppData:()=>Rn,selectAppDataByPath:()=>Hn,selectAudioPlaylist:()=>br,selectAudioPlaylistTrackByPeerID:()=>$n,selectAudioTrackByID:()=>wn,selectAudioTrackByPeerID:()=>Aa,selectAudioTrackVolume:()=>ss,selectAudioVolumeByPeerID:()=>zn,selectAuxiliaryAudioByPeerID:()=>Fn,selectAuxiliaryTracksByPeerID:()=>On,selectAvailableRoleNames:()=>Vo,selectBroadcastMessages:()=>Ca,selectBroadcastMessagesUnreadCount:()=>tc,selectCameraStreamByPeerID:()=>Nn,selectConnectionQualities:()=>Mo,selectConnectionQualityByPeerID:()=>Vn,selectDegradedTracks:()=>No,selectDevices:()=>vo,selectDidIJoinWithin:()=>Ec,selectDominantSpeaker:()=>Io,selectEffectsKey:()=>Qo,selectErrors:()=>bs,selectFullAppData:()=>Zt,selectHLSState:()=>$o,selectHMSBroadcastMessages:()=>Is,selectHMSMessages:()=>Fe,selectHMSMessagesCount:()=>Oo,selectHMSStats:()=>ao,selectHandRaisedPeers:()=>Zo,selectHasPeerHandRaised:()=>dc,selectIsAllowedToPreviewMedia:()=>gc,selectIsAllowedToPublish:()=>Sc,selectIsAllowedToSubscribe:()=>Fo,selectIsAudioLocallyMuted:()=>rs,selectIsConnectedToRoom:()=>me,selectIsEffectsEnabled:()=>Jo,selectIsInPreview:()=>vr,selectIsLargeRoom:()=>jo,selectIsLocalAudioEnabled:()=>Ho,selectIsLocalAudioPluginPresent:()=>yc,selectIsLocalScreenShared:()=>ti,selectIsLocalVideoDisplayEnabled:()=>fr,selectIsLocalVideoEnabled:()=>ei,selectIsLocalVideoPluginPresent:()=>Mc,selectIsLocallyMutedByPeerID:()=>Jn,selectIsPeerAudioEnabled:()=>qn,selectIsPeerVideoEnabled:()=>jn,selectIsRoleAllowedToPublish:()=>Tc,selectIsScreenShareLocallyMutedByPeerID:()=>Qn,selectIsSomeoneScreenSharing:()=>Co,selectLocalAudioTrackID:()=>X,selectLocalMediaSettings:()=>gr,selectLocalPeer:()=>J,selectLocalPeerID:()=>ce,selectLocalPeerName:()=>Eo,selectLocalPeerRole:()=>ht,selectLocalPeerRoleName:()=>bo,selectLocalTrackIDs:()=>Tr,selectLocalVideoTrackID:()=>W,selectMessageByMessageID:()=>uc,selectMessageIDsInOrder:()=>Sr,selectMessagesByPeerID:()=>ic,selectMessagesByRole:()=>rc,selectMessagesMap:()=>pt,selectMessagesUnreadCountByPeerID:()=>ac,selectMessagesUnreadCountByRole:()=>sc,selectPeerAudioByID:()=>Bn,selectPeerByCondition:()=>kc,selectPeerByID:()=>K,selectPeerCount:()=>yo,selectPeerMetadata:()=>cc,selectPeerName:()=>lc,selectPeerNameByID:()=>Cn,selectPeerScreenSharing:()=>Rs,selectPeerSharingAudio:()=>Lo,selectPeerSharingAudioPlaylist:()=>_o,selectPeerSharingVideoPlaylist:()=>Do,selectPeerTypeByID:()=>Ln,selectPeers:()=>ie,selectPeersByCondition:()=>Pc,selectPeersByRole:()=>oc,selectPeersByRoles:()=>nc,selectPeersMap:()=>G,selectPeersScreenSharing:()=>wo,selectPeersWithAudioStatus:()=>pc,selectPermissions:()=>yr,selectPollByID:()=>as,selectPolls:()=>Xo,selectPollsMap:()=>kr,selectPreviewRole:()=>Mr,selectPreviewRoleName:()=>Hs,selectRTMPState:()=>Wo,selectRecentError:()=>To,selectRecordingState:()=>Go,selectRemotePeers:()=>Ro,selectRoleByRoleName:()=>La,selectRoleChangeRequest:()=>mc,selectRolesMap:()=>re,selectRoom:()=>U,selectRoomID:()=>fo,selectRoomStartTime:()=>qo,selectRoomStarted:()=>Bo,selectRoomState:()=>Q,selectScreenAudioTrackByID:()=>Dn,selectScreenShareAudioByPeerID:()=>is,selectScreenShareByPeerID:()=>Kn,selectScreenSharesByPeerId:()=>ts,selectScreenVideoTrackByID:()=>_n,selectScreenshareAudioVolumeByPeerID:()=>Yn,selectSessionId:()=>Ko,selectSessionMetadata:()=>Yo,selectSessionStore:()=>In,selectSimulcastLayerByTrack:()=>Xn,selectSpeakers:()=>As,selectTemplateAppData:()=>zo,selectTrackAudioByID:()=>xn,selectTrackByID:()=>At,selectTracksMap:()=>w,selectUnreadHMSBroadcastMessagesCount:()=>Uo,selectUnreadHMSMessagesCount:()=>xo,selectVideoPlaylist:()=>Ar,selectVideoPlaylistAudioTrackByPeerID:()=>Wn,selectVideoPlaylistVideoTrackByPeerID:()=>Gn,selectVideoTrackByID:()=>es,selectVideoTrackByPeerID:()=>ba,selectWhiteboard:()=>en,selectWhiteboards:()=>Cs,simulcastMapping:()=>Re});module.exports=So(rd);var zt=(n=>(n.Disconnected="Disconnected",n.Preview="Preview",n.Connecting="Connecting",n.Connected="Connected",n.Reconnecting="Reconnecting",n.Disconnecting="Disconnecting",n.Failed="Failed",n))(zt||{});var ot=()=>({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}),nt=()=>({peerStats:{},remoteTrackStats:{},localTrackStats:{},localPeer:{id:""}});var ks=(e=>(e.CHAT="chat",e))(ks||{});var hr=(t=>(t.INFO="info",t.ERROR="error",t))(hr||{}),Yt=(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.POLLS_LIST="POLLS_LIST",C.HAND_RAISE_CHANGED="HAND_RAISE_CHANGED",C))(Yt||{});var mr=(t=>(t.audio="audio",t.video="video",t))(mr||{});var E=require("reselect");function Le(a,e){let t,i;if(e)for(let r of e.auxiliaryTracks){let s=a[r];go(s)&&(i=ct(s)?s:i,t=dt(s)?s:t)}return{video:t,audio:i}}function ct(a){return a&&a.type==="audio"}function dt(a){return a&&a.type==="video"}function go(a){return a&&a.source==="screen"}function Xt(a){return a&&a.source==="audioplaylist"}function lt(a){return a&&a.source==="videoplaylist"}function Ps(a){return a?!!(a!=null&&a.degraded):!1}function Ve(a,e){return e&&a.tracks[e]?a.tracks[e].enabled:!1}function Es(a,e){return e&&a.tracks[e]?a.tracks[e].displayEnabled:!1}function ut(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,bs=a=>a.errors,To=(0,E.createSelector)(bs,a=>a.length===0?null:a.at(-1)),fo=(0,E.createSelector)(U,a=>a.id),G=a=>a.peers,pt=a=>a.messages.byID,Sr=a=>a.messages.allIDs,w=a=>a.tracks,gr=a=>a.settings,Zt=a=>a.appData,vo=a=>a.devices,As=a=>a.speakers,Mo=a=>a.connectionQualities,me=(0,E.createSelector)([U],a=>a&&a.isConnected),yo=(0,E.createSelector)([me,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)),ko=a=>a.hideLocalPeer,ie=(0,E.createSelector)([U,G,ko],(a,e,t)=>t?a.peers.filter(i=>a.localPeer!==i).map(i=>e[i]):a.peers.map(i=>e[i])),Po=(0,E.createSelector)(w,a=>Object.values(a)),J=(0,E.createSelector)(U,G,(a,e)=>e[a.localPeer]),ce=(0,E.createSelector)(U,a=>a.localPeer),Eo=(0,E.createSelector)(J,a=>a==null?void 0:a.name),bo=(0,E.createSelector)(J,a=>a==null?void 0:a.roleName),X=(0,E.createSelector)(J,a=>a==null?void 0:a.audioTrack),W=(0,E.createSelector)(J,a=>a==null?void 0:a.videoTrack),Ao=(0,E.createSelector)(J,a=>a==null?void 0:a.auxiliaryTracks),Tr=(0,E.createSelector)([X,W,Ao],(a,e,t)=>{let i=t?[...t]:[];return a&&i.unshift(a),e&&i.unshift(e),i}),Ro=(0,E.createSelector)(ie,a=>a.filter(e=>!e.isLocal)),Io=(0,E.createSelector)(G,As,(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}),Ho=a=>{let e=J(a);return Ve(a,e==null?void 0:e.audioTrack)},ei=a=>{let e=J(a);return Ve(a,e==null?void 0:e.videoTrack)},fr=a=>{let e=J(a);return Es(a,e==null?void 0:e.videoTrack)},ti=(0,E.createSelector)(J,w,(a,e)=>{let{video:t,audio:i}=Le(e,a);return!!(t||i)}),Rs=(0,E.createSelector)(G,w,(a,e)=>{let t;for(let i in a){let r=a[i],{video:s,audio:o}=Le(e,r);if(s)return r;o&&!t&&(t=r)}return t}),Co=(0,E.createSelector)(Rs,a=>!!a),Lo=(0,E.createSelector)(G,w,(a,e)=>{for(let t in a){let i=a[t],{audio:r,video:s}=Le(e,i);if(!s&&r)return i}}),wo=(0,E.createSelector)(G,w,(a,e)=>{let t=[],i=[];for(let r in a){let s=a[r],{video:o,audio:n}=Le(e,s);o?t.push(s):n&&i.push(s)}return t.concat(i)}),Do=(0,E.createSelector)(G,w,(a,e)=>{for(let t in e){let i=e[t];if(lt(i)&&dt(i)&&i.peerId)return a[i.peerId]}}),_o=(0,E.createSelector)(G,w,(a,e)=>{for(let t in e){let i=e[t];if(Xt(i)&&i.peerId)return a[i.peerId]}}),No=(0,E.createSelector)(Po,a=>a.filter(Ps)),Oo=(0,E.createSelector)(Sr,a=>a.length),xo=(0,E.createSelector)(pt,a=>Object.values(a).filter(e=>!e.read).length),Fe=(0,E.createSelector)(Sr,pt,(a,e)=>{let t=[];return a.forEach(i=>{t.push(e[i])}),t}),Is=(0,E.createSelector)(Fe,a=>a.filter(e=>{var t;return!e.recipientPeer&&!(e.recipientRoles&&((t=e.recipientRoles)==null?void 0:t.length)>0)})),Uo=(0,E.createSelector)(Is,a=>a.filter(e=>!e.read).length),Q=(0,E.createSelector)([U],a=>a&&a.roomState),vr=(0,E.createSelector)(Q,a=>a==="Preview"),Bo=(0,E.createSelector)(U,a=>a.roomState!=="Disconnected"),re=a=>a.roles,Vo=(0,E.createSelector)([re],a=>Object.keys(a)),ht=(0,E.createSelector)([J,re],(a,e)=>a!=null&&a.roleName?e[a.roleName]:null),Hs=a=>{var e;return(e=a.preview)==null?void 0:e.asRole},Mr=(0,E.createSelector)([Hs,re],(a,e)=>a?e[a]:null),Fo=(0,E.createSelector)([ht],a=>{var e;return(e=a==null?void 0:a.subscribeParams)!=null&&e.subscribeToRoles?a.subscribeParams.subscribeToRoles.length>0:!1}),yr=(0,E.createSelector)(ht,a=>a==null?void 0:a.permissions),Go=(0,E.createSelector)(U,a=>a.recording),Wo=(0,E.createSelector)(U,a=>a.rtmp),$o=(0,E.createSelector)(U,a=>a.hls),Ko=(0,E.createSelector)(U,a=>a.sessionId),qo=(0,E.createSelector)(U,a=>a.startedAt),jo=(0,E.createSelector)(U,a=>!!a.isLargeRoom),Jo=(0,E.createSelector)(U,a=>!!a.isEffectsEnabled),Qo=(0,E.createSelector)(U,a=>a.effectsKey),zo=a=>a.templateAppData,Yo=a=>a.sessionMetadata,kr=a=>a.polls,Xo=a=>Object.values(a.polls),Zo=(0,E.createSelector)(ie,a=>a.filter(e=>e.isHandRaised)),Cs=a=>a.whiteboards,en=(0,E.createSelector)(Cs,a=>Object.values(a)[0]);var Pr=require("reselect");var Ls=(a="audio")=>e=>e.playlist[a].list,Er=(a="audio")=>e=>e.playlist[a].selection,ws=(a="audio")=>e=>e.playlist[a].progress,Ds=(a="audio")=>e=>e.playlist[a].currentTime,_s=(a="audio")=>e=>e.playlist[a].playbackRate,Ns=(a="audio")=>e=>e.playlist[a].volume,Os=(a="audio")=>(0,Pr.createSelector)(Ls(a),e=>Object.values(e)),xs=(a="audio")=>(0,Pr.createSelector)(Ls(a),Er(a),(e,t)=>{if(t.id)return e[t.id]}),br={selection:Er("audio"),progress:ws("audio"),currentTime:Ds("audio"),playbackRate:_s("audio"),volume:Ns("audio"),list:Os("audio"),selectedItem:xs("audio")},Ar={selection:Er("video"),progress:ws("video"),currentTime:Ds("video"),playbackRate:_s("video"),volume:Ns("video"),list:Os("video"),selectedItem:xs("video")};var H=require("reselect");function R(a){return e=>t=>a(t,e)}var Rr=(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))(Rr||{}),tn=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=tn?7:0;var Ge=class{constructor(e){this.tracks=new Array;this.nativeStream=e,this.id=e.id}updateId(e){this.id=e}};var Fs=require("ua-parser-js"),de=new Fs.UAParser,_=typeof window!="undefined",Us,we=typeof window=="undefined"&&!((Us=de.getBrowser().name)!=null&&Us.toLowerCase().includes("electron"));var rn=()=>!we,Td=rn(),De=()=>de.getDevice().type==="mobile",Gs=()=>typeof document!="undefined"&&document.hidden,Ir=()=>{var a;return((a=de.getOS().name)==null?void 0:a.toLowerCase())==="ios"},Bs,Vs,Ws=((Vs=(Bs=de.getBrowser())==null?void 0:Bs.name)==null?void 0:Vs.toLowerCase())==="firefox";var ii=a=>a?`{
2
2
  trackId: ${a.id};
3
3
  kind: ${a.kind};
4
4
  enabled: ${a.enabled};