@fishjam-cloud/js-server-sdk 0.5.0 → 0.13.0

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.
@@ -1 +1 @@
1
- var Ue=Object.create;var K=Object.defineProperty;var Je=Object.getOwnPropertyDescriptor;var ye=Object.getOwnPropertyNames;var De=Object.getPrototypeOf,Ae=Object.prototype.hasOwnProperty;var nr=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(r,t)=>(typeof require<"u"?require:r)[t]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var Be=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var qe=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of ye(r))!Ae.call(e,n)&&n!==t&&K(e,n,{get:()=>r[n],enumerable:!(i=Je(r,n))||i.enumerable});return e};var Ve=(e,r,t)=>(t=e!=null?Ue(De(e)):{},qe(r||!e||!e.__esModule?K(t,"default",{value:e,enumerable:!0}):t,e));var Ee=Be((dr,we)=>{"use strict";var F=Object.defineProperty,Fe=Object.getOwnPropertyDescriptor,Ye=Object.getOwnPropertyNames,xe=Object.prototype.hasOwnProperty,Ge=(e,r)=>{for(var t in r)F(e,t,{get:r[t],enumerable:!0})},He=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Ye(r))!xe.call(e,n)&&n!==t&&F(e,n,{get:()=>r[n],enumerable:!(i=Fe(r,n))||i.enumerable});return e},Ke=e=>He(F({},"__esModule",{value:!0}),e),Ne={};Ge(Ne,{ServerMessage:()=>be,ServerMessage_AuthRequest:()=>g,ServerMessage_Authenticated:()=>P,ServerMessage_ComponentCrashed:()=>N,ServerMessage_EventType:()=>Te,ServerMessage_HlsPlayable:()=>b,ServerMessage_HlsUploadCrashed:()=>E,ServerMessage_HlsUploaded:()=>w,ServerMessage_MetricsReport:()=>R,ServerMessage_PeerAdded:()=>m,ServerMessage_PeerConnected:()=>k,ServerMessage_PeerCrashed:()=>_,ServerMessage_PeerDeleted:()=>v,ServerMessage_PeerDisconnected:()=>S,ServerMessage_PeerMetadataUpdated:()=>U,ServerMessage_RoomCrashed:()=>h,ServerMessage_RoomCreated:()=>C,ServerMessage_RoomDeleted:()=>O,ServerMessage_SubscribeRequest:()=>M,ServerMessage_SubscribeResponse:()=>T,ServerMessage_Track:()=>f,ServerMessage_TrackAdded:()=>J,ServerMessage_TrackMetadataUpdated:()=>D,ServerMessage_TrackRemoved:()=>y,ServerMessage_TrackType:()=>Ce,protobufPackage:()=>or,serverMessage_EventTypeFromJSON:()=>x,serverMessage_EventTypeToJSON:()=>G,serverMessage_TrackTypeFromJSON:()=>Oe,serverMessage_TrackTypeToJSON:()=>Re});we.exports=Ke(Ne);function Le(){let e=0,r=0;for(let i=0;i<28;i+=7){let n=this.buf[this.pos++];if(e|=(n&127)<<i,!(n&128))return this.assertBounds(),[e,r]}let t=this.buf[this.pos++];if(e|=(t&15)<<28,r=(t&112)>>4,!(t&128))return this.assertBounds(),[e,r];for(let i=3;i<=31;i+=7){let n=this.buf[this.pos++];if(r|=(n&127)<<i,!(n&128))return this.assertBounds(),[e,r]}throw new Error("invalid varint")}function B(e,r,t){for(let o=0;o<28;o=o+7){let s=e>>>o,u=!(!(s>>>7)&&r==0),p=(u?s|128:s)&255;if(t.push(p),!u)return}let i=e>>>28&15|(r&7)<<4,n=!!(r>>3);if(t.push((n?i|128:i)&255),!!n){for(let o=3;o<31;o=o+7){let s=r>>>o,u=!!(s>>>7),p=(u?s|128:s)&255;if(t.push(p),!u)return}t.push(r>>>31&1)}}var A=4294967296;function L(e){let r=e[0]==="-";r&&(e=e.slice(1));let t=1e6,i=0,n=0;function o(s,u){let p=Number(e.slice(s,u));n*=t,i=i*t+p,i>=A&&(n=n+(i/A|0),i=i%A)}return o(-24,-18),o(-18,-12),o(-12,-6),o(-6),r?ge(i,n):Y(i,n)}function Ze(e,r){let t=Y(e,r),i=t.hi&2147483648;i&&(t=ge(t.lo,t.hi));let n=Pe(t.lo,t.hi);return i?"-"+n:n}function Pe(e,r){if({lo:e,hi:r}=Xe(e,r),r<=2097151)return String(A*r+e);let t=e&16777215,i=(e>>>24|r<<8)&16777215,n=r>>16&65535,o=t+i*6777216+n*6710656,s=i+n*8147497,u=n*2,p=1e7;return o>=p&&(s+=Math.floor(o/p),o%=p),s>=p&&(u+=Math.floor(s/p),s%=p),u.toString()+Z(s)+Z(o)}function Xe(e,r){return{lo:e>>>0,hi:r>>>0}}function Y(e,r){return{lo:e|0,hi:r|0}}function ge(e,r){return r=~r,e?e=~e+1:r+=1,Y(e,r)}var Z=e=>{let r=String(e);return"0000000".slice(r.length)+r};function X(e,r){if(e>=0){for(;e>127;)r.push(e&127|128),e=e>>>7;r.push(e)}else{for(let t=0;t<9;t++)r.push(e&127|128),e=e>>7;r.push(1)}}function ze(){let e=this.buf[this.pos++],r=e&127;if(!(e&128))return this.assertBounds(),r;if(e=this.buf[this.pos++],r|=(e&127)<<7,!(e&128))return this.assertBounds(),r;if(e=this.buf[this.pos++],r|=(e&127)<<14,!(e&128))return this.assertBounds(),r;if(e=this.buf[this.pos++],r|=(e&127)<<21,!(e&128))return this.assertBounds(),r;e=this.buf[this.pos++],r|=(e&15)<<28;for(let t=5;e&128&&t<10;t++)e=this.buf[this.pos++];if(e&128)throw new Error("invalid varint");return this.assertBounds(),r>>>0}var l=$e();function $e(){let e=new DataView(new ArrayBuffer(8));if(typeof BigInt=="function"&&typeof e.getBigInt64=="function"&&typeof e.getBigUint64=="function"&&typeof e.setBigInt64=="function"&&typeof e.setBigUint64=="function"&&(typeof process!="object"||typeof process.env!="object"||process.env.BUF_BIGINT_DISABLE!=="1")){let t=BigInt("-9223372036854775808"),i=BigInt("9223372036854775807"),n=BigInt("0"),o=BigInt("18446744073709551615");return{zero:BigInt(0),supported:!0,parse(s){let u=typeof s=="bigint"?s:BigInt(s);if(u>i||u<t)throw new Error(`invalid int64: ${s}`);return u},uParse(s){let u=typeof s=="bigint"?s:BigInt(s);if(u>o||u<n)throw new Error(`invalid uint64: ${s}`);return u},enc(s){return e.setBigInt64(0,this.parse(s),!0),{lo:e.getInt32(0,!0),hi:e.getInt32(4,!0)}},uEnc(s){return e.setBigInt64(0,this.uParse(s),!0),{lo:e.getInt32(0,!0),hi:e.getInt32(4,!0)}},dec(s,u){return e.setInt32(0,s,!0),e.setInt32(4,u,!0),e.getBigInt64(0,!0)},uDec(s,u){return e.setInt32(0,s,!0),e.setInt32(4,u,!0),e.getBigUint64(0,!0)}}}return{zero:"0",supported:!1,parse(t){return typeof t!="string"&&(t=t.toString()),z(t),t},uParse(t){return typeof t!="string"&&(t=t.toString()),$(t),t},enc(t){return typeof t!="string"&&(t=t.toString()),z(t),L(t)},uEnc(t){return typeof t!="string"&&(t=t.toString()),$(t),L(t)},dec(t,i){return Ze(t,i)},uDec(t,i){return Pe(t,i)}}}function z(e){if(!/^-?[0-9]+$/.test(e))throw new Error("invalid int64: "+e)}function $(e){if(!/^[0-9]+$/.test(e))throw new Error("invalid uint64: "+e)}var q=Symbol.for("@bufbuild/protobuf/text-encoding");function Me(){if(globalThis[q]==null){let e=new globalThis.TextEncoder,r=new globalThis.TextDecoder;globalThis[q]={encodeUtf8(t){return e.encode(t)},decodeUtf8(t){return r.decode(t)},checkUtf8(t){try{return encodeURIComponent(t),!0}catch{return!1}}}}return globalThis[q]}var I;(function(e){e[e.Varint=0]="Varint",e[e.Bit64=1]="Bit64",e[e.LengthDelimited=2]="LengthDelimited",e[e.StartGroup=3]="StartGroup",e[e.EndGroup=4]="EndGroup",e[e.Bit32=5]="Bit32"})(I||(I={}));var Qe=34028234663852886e22,We=-34028234663852886e22,je=4294967295,er=2147483647,rr=-2147483648,c=class{constructor(e=Me().encodeUtf8){this.encodeUtf8=e,this.stack=[],this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let e=0;for(let i=0;i<this.chunks.length;i++)e+=this.chunks[i].length;let r=new Uint8Array(e),t=0;for(let i=0;i<this.chunks.length;i++)r.set(this.chunks[i],t),t+=this.chunks[i].length;return this.chunks=[],r}fork(){return this.stack.push({chunks:this.chunks,buf:this.buf}),this.chunks=[],this.buf=[],this}join(){let e=this.finish(),r=this.stack.pop();if(!r)throw new Error("invalid state, fork stack empty");return this.chunks=r.chunks,this.buf=r.buf,this.uint32(e.byteLength),this.raw(e)}tag(e,r){return this.uint32((e<<3|r)>>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(Q(e);e>127;)this.buf.push(e&127|128),e=e>>>7;return this.buf.push(e),this}int32(e){return V(e),X(e,this.buf),this}bool(e){return this.buf.push(e?1:0),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let r=this.encodeUtf8(e);return this.uint32(r.byteLength),this.raw(r)}float(e){tr(e);let r=new Uint8Array(4);return new DataView(r.buffer).setFloat32(0,e,!0),this.raw(r)}double(e){let r=new Uint8Array(8);return new DataView(r.buffer).setFloat64(0,e,!0),this.raw(r)}fixed32(e){Q(e);let r=new Uint8Array(4);return new DataView(r.buffer).setUint32(0,e,!0),this.raw(r)}sfixed32(e){V(e);let r=new Uint8Array(4);return new DataView(r.buffer).setInt32(0,e,!0),this.raw(r)}sint32(e){return V(e),e=(e<<1^e>>31)>>>0,X(e,this.buf),this}sfixed64(e){let r=new Uint8Array(8),t=new DataView(r.buffer),i=l.enc(e);return t.setInt32(0,i.lo,!0),t.setInt32(4,i.hi,!0),this.raw(r)}fixed64(e){let r=new Uint8Array(8),t=new DataView(r.buffer),i=l.uEnc(e);return t.setInt32(0,i.lo,!0),t.setInt32(4,i.hi,!0),this.raw(r)}int64(e){let r=l.enc(e);return B(r.lo,r.hi,this.buf),this}sint64(e){let r=l.enc(e),t=r.hi>>31,i=r.lo<<1^t,n=(r.hi<<1|r.lo>>>31)^t;return B(i,n,this.buf),this}uint64(e){let r=l.uEnc(e);return B(r.lo,r.hi,this.buf),this}},a=class{constructor(e,r=Me().decodeUtf8){this.decodeUtf8=r,this.varint64=Le,this.uint32=ze,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength)}tag(){let e=this.uint32(),r=e>>>3,t=e&7;if(r<=0||t<0||t>5)throw new Error("illegal tag: field no "+r+" wire type "+t);return[r,t]}skip(e,r){let t=this.pos;switch(e){case I.Varint:for(;this.buf[this.pos++]&128;);break;case I.Bit64:this.pos+=4;case I.Bit32:this.pos+=4;break;case I.LengthDelimited:let i=this.uint32();this.pos+=i;break;case I.StartGroup:for(;;){let[n,o]=this.tag();if(o===I.EndGroup){if(r!==void 0&&n!==r)throw new Error("invalid end group tag");break}this.skip(o,n)}break;default:throw new Error("cant skip wire type "+e)}return this.assertBounds(),this.buf.subarray(t,this.pos)}assertBounds(){if(this.pos>this.len)throw new RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return l.dec(...this.varint64())}uint64(){return l.uDec(...this.varint64())}sint64(){let[e,r]=this.varint64(),t=-(e&1);return e=(e>>>1|(r&1)<<31)^t,r=r>>>1^t,l.dec(e,r)}bool(){let[e,r]=this.varint64();return e!==0||r!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return l.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return l.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),r=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(r,r+e)}string(){return this.decodeUtf8(this.bytes())}};function V(e){if(typeof e=="string")e=Number(e);else if(typeof e!="number")throw new Error("invalid int32: "+typeof e);if(!Number.isInteger(e)||e>er||e<rr)throw new Error("invalid int32: "+e)}function Q(e){if(typeof e=="string")e=Number(e);else if(typeof e!="number")throw new Error("invalid uint32: "+typeof e);if(!Number.isInteger(e)||e>je||e<0)throw new Error("invalid uint32: "+e)}function tr(e){if(typeof e=="string"){let r=e;if(e=Number(e),isNaN(e)&&r!=="NaN")throw new Error("invalid float32: "+r)}else if(typeof e!="number")throw new Error("invalid float32: "+typeof e);if(Number.isFinite(e)&&(e>Qe||e<We))throw new Error("invalid float32: "+e)}var or="fishjam",Te=(e=>(e[e.EVENT_TYPE_UNSPECIFIED=0]="EVENT_TYPE_UNSPECIFIED",e[e.EVENT_TYPE_SERVER_NOTIFICATION=1]="EVENT_TYPE_SERVER_NOTIFICATION",e[e.EVENT_TYPE_METRICS=2]="EVENT_TYPE_METRICS",e[e.UNRECOGNIZED=-1]="UNRECOGNIZED",e))(Te||{});function x(e){switch(e){case 0:case"EVENT_TYPE_UNSPECIFIED":return 0;case 1:case"EVENT_TYPE_SERVER_NOTIFICATION":return 1;case 2:case"EVENT_TYPE_METRICS":return 2;case-1:case"UNRECOGNIZED":default:return-1}}function G(e){switch(e){case 0:return"EVENT_TYPE_UNSPECIFIED";case 1:return"EVENT_TYPE_SERVER_NOTIFICATION";case 2:return"EVENT_TYPE_METRICS";case-1:default:return"UNRECOGNIZED"}}var Ce=(e=>(e[e.TRACK_TYPE_UNSPECIFIED=0]="TRACK_TYPE_UNSPECIFIED",e[e.TRACK_TYPE_VIDEO=1]="TRACK_TYPE_VIDEO",e[e.TRACK_TYPE_AUDIO=2]="TRACK_TYPE_AUDIO",e[e.UNRECOGNIZED=-1]="UNRECOGNIZED",e))(Ce||{});function Oe(e){switch(e){case 0:case"TRACK_TYPE_UNSPECIFIED":return 0;case 1:case"TRACK_TYPE_VIDEO":return 1;case 2:case"TRACK_TYPE_AUDIO":return 2;case-1:case"UNRECOGNIZED":default:return-1}}function Re(e){switch(e){case 0:return"TRACK_TYPE_UNSPECIFIED";case 1:return"TRACK_TYPE_VIDEO";case 2:return"TRACK_TYPE_AUDIO";case-1:default:return"UNRECOGNIZED"}}function W(){return{roomCrashed:void 0,peerConnected:void 0,peerDisconnected:void 0,peerCrashed:void 0,componentCrashed:void 0,authenticated:void 0,authRequest:void 0,subscribeRequest:void 0,subscribeResponse:void 0,roomCreated:void 0,roomDeleted:void 0,metricsReport:void 0,hlsPlayable:void 0,hlsUploaded:void 0,hlsUploadCrashed:void 0,peerMetadataUpdated:void 0,trackAdded:void 0,trackRemoved:void 0,trackMetadataUpdated:void 0,peerAdded:void 0,peerDeleted:void 0}}var be={encode(e,r=new c){return e.roomCrashed!==void 0&&h.encode(e.roomCrashed,r.uint32(10).fork()).join(),e.peerConnected!==void 0&&k.encode(e.peerConnected,r.uint32(18).fork()).join(),e.peerDisconnected!==void 0&&S.encode(e.peerDisconnected,r.uint32(26).fork()).join(),e.peerCrashed!==void 0&&_.encode(e.peerCrashed,r.uint32(34).fork()).join(),e.componentCrashed!==void 0&&N.encode(e.componentCrashed,r.uint32(42).fork()).join(),e.authenticated!==void 0&&P.encode(e.authenticated,r.uint32(50).fork()).join(),e.authRequest!==void 0&&g.encode(e.authRequest,r.uint32(58).fork()).join(),e.subscribeRequest!==void 0&&M.encode(e.subscribeRequest,r.uint32(66).fork()).join(),e.subscribeResponse!==void 0&&T.encode(e.subscribeResponse,r.uint32(74).fork()).join(),e.roomCreated!==void 0&&C.encode(e.roomCreated,r.uint32(82).fork()).join(),e.roomDeleted!==void 0&&O.encode(e.roomDeleted,r.uint32(90).fork()).join(),e.metricsReport!==void 0&&R.encode(e.metricsReport,r.uint32(98).fork()).join(),e.hlsPlayable!==void 0&&b.encode(e.hlsPlayable,r.uint32(106).fork()).join(),e.hlsUploaded!==void 0&&w.encode(e.hlsUploaded,r.uint32(114).fork()).join(),e.hlsUploadCrashed!==void 0&&E.encode(e.hlsUploadCrashed,r.uint32(122).fork()).join(),e.peerMetadataUpdated!==void 0&&U.encode(e.peerMetadataUpdated,r.uint32(130).fork()).join(),e.trackAdded!==void 0&&J.encode(e.trackAdded,r.uint32(138).fork()).join(),e.trackRemoved!==void 0&&y.encode(e.trackRemoved,r.uint32(146).fork()).join(),e.trackMetadataUpdated!==void 0&&D.encode(e.trackMetadataUpdated,r.uint32(154).fork()).join(),e.peerAdded!==void 0&&m.encode(e.peerAdded,r.uint32(162).fork()).join(),e.peerDeleted!==void 0&&v.encode(e.peerDeleted,r.uint32(170).fork()).join(),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=W();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomCrashed=h.decode(t,t.uint32());continue}case 2:{if(o!==18)break;n.peerConnected=k.decode(t,t.uint32());continue}case 3:{if(o!==26)break;n.peerDisconnected=S.decode(t,t.uint32());continue}case 4:{if(o!==34)break;n.peerCrashed=_.decode(t,t.uint32());continue}case 5:{if(o!==42)break;n.componentCrashed=N.decode(t,t.uint32());continue}case 6:{if(o!==50)break;n.authenticated=P.decode(t,t.uint32());continue}case 7:{if(o!==58)break;n.authRequest=g.decode(t,t.uint32());continue}case 8:{if(o!==66)break;n.subscribeRequest=M.decode(t,t.uint32());continue}case 9:{if(o!==74)break;n.subscribeResponse=T.decode(t,t.uint32());continue}case 10:{if(o!==82)break;n.roomCreated=C.decode(t,t.uint32());continue}case 11:{if(o!==90)break;n.roomDeleted=O.decode(t,t.uint32());continue}case 12:{if(o!==98)break;n.metricsReport=R.decode(t,t.uint32());continue}case 13:{if(o!==106)break;n.hlsPlayable=b.decode(t,t.uint32());continue}case 14:{if(o!==114)break;n.hlsUploaded=w.decode(t,t.uint32());continue}case 15:{if(o!==122)break;n.hlsUploadCrashed=E.decode(t,t.uint32());continue}case 16:{if(o!==130)break;n.peerMetadataUpdated=U.decode(t,t.uint32());continue}case 17:{if(o!==138)break;n.trackAdded=J.decode(t,t.uint32());continue}case 18:{if(o!==146)break;n.trackRemoved=y.decode(t,t.uint32());continue}case 19:{if(o!==154)break;n.trackMetadataUpdated=D.decode(t,t.uint32());continue}case 20:{if(o!==162)break;n.peerAdded=m.decode(t,t.uint32());continue}case 21:{if(o!==170)break;n.peerDeleted=v.decode(t,t.uint32());continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomCrashed:d(e.roomCrashed)?h.fromJSON(e.roomCrashed):void 0,peerConnected:d(e.peerConnected)?k.fromJSON(e.peerConnected):void 0,peerDisconnected:d(e.peerDisconnected)?S.fromJSON(e.peerDisconnected):void 0,peerCrashed:d(e.peerCrashed)?_.fromJSON(e.peerCrashed):void 0,componentCrashed:d(e.componentCrashed)?N.fromJSON(e.componentCrashed):void 0,authenticated:d(e.authenticated)?P.fromJSON(e.authenticated):void 0,authRequest:d(e.authRequest)?g.fromJSON(e.authRequest):void 0,subscribeRequest:d(e.subscribeRequest)?M.fromJSON(e.subscribeRequest):void 0,subscribeResponse:d(e.subscribeResponse)?T.fromJSON(e.subscribeResponse):void 0,roomCreated:d(e.roomCreated)?C.fromJSON(e.roomCreated):void 0,roomDeleted:d(e.roomDeleted)?O.fromJSON(e.roomDeleted):void 0,metricsReport:d(e.metricsReport)?R.fromJSON(e.metricsReport):void 0,hlsPlayable:d(e.hlsPlayable)?b.fromJSON(e.hlsPlayable):void 0,hlsUploaded:d(e.hlsUploaded)?w.fromJSON(e.hlsUploaded):void 0,hlsUploadCrashed:d(e.hlsUploadCrashed)?E.fromJSON(e.hlsUploadCrashed):void 0,peerMetadataUpdated:d(e.peerMetadataUpdated)?U.fromJSON(e.peerMetadataUpdated):void 0,trackAdded:d(e.trackAdded)?J.fromJSON(e.trackAdded):void 0,trackRemoved:d(e.trackRemoved)?y.fromJSON(e.trackRemoved):void 0,trackMetadataUpdated:d(e.trackMetadataUpdated)?D.fromJSON(e.trackMetadataUpdated):void 0,peerAdded:d(e.peerAdded)?m.fromJSON(e.peerAdded):void 0,peerDeleted:d(e.peerDeleted)?v.fromJSON(e.peerDeleted):void 0}},toJSON(e){let r={};return e.roomCrashed!==void 0&&(r.roomCrashed=h.toJSON(e.roomCrashed)),e.peerConnected!==void 0&&(r.peerConnected=k.toJSON(e.peerConnected)),e.peerDisconnected!==void 0&&(r.peerDisconnected=S.toJSON(e.peerDisconnected)),e.peerCrashed!==void 0&&(r.peerCrashed=_.toJSON(e.peerCrashed)),e.componentCrashed!==void 0&&(r.componentCrashed=N.toJSON(e.componentCrashed)),e.authenticated!==void 0&&(r.authenticated=P.toJSON(e.authenticated)),e.authRequest!==void 0&&(r.authRequest=g.toJSON(e.authRequest)),e.subscribeRequest!==void 0&&(r.subscribeRequest=M.toJSON(e.subscribeRequest)),e.subscribeResponse!==void 0&&(r.subscribeResponse=T.toJSON(e.subscribeResponse)),e.roomCreated!==void 0&&(r.roomCreated=C.toJSON(e.roomCreated)),e.roomDeleted!==void 0&&(r.roomDeleted=O.toJSON(e.roomDeleted)),e.metricsReport!==void 0&&(r.metricsReport=R.toJSON(e.metricsReport)),e.hlsPlayable!==void 0&&(r.hlsPlayable=b.toJSON(e.hlsPlayable)),e.hlsUploaded!==void 0&&(r.hlsUploaded=w.toJSON(e.hlsUploaded)),e.hlsUploadCrashed!==void 0&&(r.hlsUploadCrashed=E.toJSON(e.hlsUploadCrashed)),e.peerMetadataUpdated!==void 0&&(r.peerMetadataUpdated=U.toJSON(e.peerMetadataUpdated)),e.trackAdded!==void 0&&(r.trackAdded=J.toJSON(e.trackAdded)),e.trackRemoved!==void 0&&(r.trackRemoved=y.toJSON(e.trackRemoved)),e.trackMetadataUpdated!==void 0&&(r.trackMetadataUpdated=D.toJSON(e.trackMetadataUpdated)),e.peerAdded!==void 0&&(r.peerAdded=m.toJSON(e.peerAdded)),e.peerDeleted!==void 0&&(r.peerDeleted=v.toJSON(e.peerDeleted)),r},create(e){return be.fromPartial(e??{})},fromPartial(e){let r=W();return r.roomCrashed=e.roomCrashed!==void 0&&e.roomCrashed!==null?h.fromPartial(e.roomCrashed):void 0,r.peerConnected=e.peerConnected!==void 0&&e.peerConnected!==null?k.fromPartial(e.peerConnected):void 0,r.peerDisconnected=e.peerDisconnected!==void 0&&e.peerDisconnected!==null?S.fromPartial(e.peerDisconnected):void 0,r.peerCrashed=e.peerCrashed!==void 0&&e.peerCrashed!==null?_.fromPartial(e.peerCrashed):void 0,r.componentCrashed=e.componentCrashed!==void 0&&e.componentCrashed!==null?N.fromPartial(e.componentCrashed):void 0,r.authenticated=e.authenticated!==void 0&&e.authenticated!==null?P.fromPartial(e.authenticated):void 0,r.authRequest=e.authRequest!==void 0&&e.authRequest!==null?g.fromPartial(e.authRequest):void 0,r.subscribeRequest=e.subscribeRequest!==void 0&&e.subscribeRequest!==null?M.fromPartial(e.subscribeRequest):void 0,r.subscribeResponse=e.subscribeResponse!==void 0&&e.subscribeResponse!==null?T.fromPartial(e.subscribeResponse):void 0,r.roomCreated=e.roomCreated!==void 0&&e.roomCreated!==null?C.fromPartial(e.roomCreated):void 0,r.roomDeleted=e.roomDeleted!==void 0&&e.roomDeleted!==null?O.fromPartial(e.roomDeleted):void 0,r.metricsReport=e.metricsReport!==void 0&&e.metricsReport!==null?R.fromPartial(e.metricsReport):void 0,r.hlsPlayable=e.hlsPlayable!==void 0&&e.hlsPlayable!==null?b.fromPartial(e.hlsPlayable):void 0,r.hlsUploaded=e.hlsUploaded!==void 0&&e.hlsUploaded!==null?w.fromPartial(e.hlsUploaded):void 0,r.hlsUploadCrashed=e.hlsUploadCrashed!==void 0&&e.hlsUploadCrashed!==null?E.fromPartial(e.hlsUploadCrashed):void 0,r.peerMetadataUpdated=e.peerMetadataUpdated!==void 0&&e.peerMetadataUpdated!==null?U.fromPartial(e.peerMetadataUpdated):void 0,r.trackAdded=e.trackAdded!==void 0&&e.trackAdded!==null?J.fromPartial(e.trackAdded):void 0,r.trackRemoved=e.trackRemoved!==void 0&&e.trackRemoved!==null?y.fromPartial(e.trackRemoved):void 0,r.trackMetadataUpdated=e.trackMetadataUpdated!==void 0&&e.trackMetadataUpdated!==null?D.fromPartial(e.trackMetadataUpdated):void 0,r.peerAdded=e.peerAdded!==void 0&&e.peerAdded!==null?m.fromPartial(e.peerAdded):void 0,r.peerDeleted=e.peerDeleted!==void 0&&e.peerDeleted!==null?v.fromPartial(e.peerDeleted):void 0,r}};function j(){return{roomId:""}}var h={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=j();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),r},create(e){return h.fromPartial(e??{})},fromPartial(e){let r=j();return r.roomId=e.roomId??"",r}};function ee(){return{roomId:"",peerId:""}}var m={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==""&&r.uint32(18).string(e.peerId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ee();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==""&&(r.peerId=e.peerId),r},create(e){return m.fromPartial(e??{})},fromPartial(e){let r=ee();return r.roomId=e.roomId??"",r.peerId=e.peerId??"",r}};function re(){return{roomId:"",peerId:""}}var v={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==""&&r.uint32(18).string(e.peerId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=re();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==""&&(r.peerId=e.peerId),r},create(e){return v.fromPartial(e??{})},fromPartial(e){let r=re();return r.roomId=e.roomId??"",r.peerId=e.peerId??"",r}};function te(){return{roomId:"",peerId:""}}var k={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==""&&r.uint32(18).string(e.peerId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=te();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==""&&(r.peerId=e.peerId),r},create(e){return k.fromPartial(e??{})},fromPartial(e){let r=te();return r.roomId=e.roomId??"",r.peerId=e.peerId??"",r}};function oe(){return{roomId:"",peerId:""}}var S={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==""&&r.uint32(18).string(e.peerId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=oe();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==""&&(r.peerId=e.peerId),r},create(e){return S.fromPartial(e??{})},fromPartial(e){let r=oe();return r.roomId=e.roomId??"",r.peerId=e.peerId??"",r}};function ne(){return{roomId:"",peerId:"",reason:""}}var _={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==""&&r.uint32(18).string(e.peerId),e.reason!==""&&r.uint32(26).string(e.reason),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ne();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}case 3:{if(o!==26)break;n.reason=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):"",reason:d(e.reason)?globalThis.String(e.reason):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==""&&(r.peerId=e.peerId),e.reason!==""&&(r.reason=e.reason),r},create(e){return _.fromPartial(e??{})},fromPartial(e){let r=ne();return r.roomId=e.roomId??"",r.peerId=e.peerId??"",r.reason=e.reason??"",r}};function ie(){return{roomId:"",componentId:""}}var N={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.componentId!==""&&r.uint32(18).string(e.componentId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ie();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.componentId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",componentId:d(e.componentId)?globalThis.String(e.componentId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.componentId!==""&&(r.componentId=e.componentId),r},create(e){return N.fromPartial(e??{})},fromPartial(e){let r=ie();return r.roomId=e.roomId??"",r.componentId=e.componentId??"",r}};function de(){return{}}var P={encode(e,r=new c){return r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=de();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{}},toJSON(e){return{}},create(e){return P.fromPartial(e??{})},fromPartial(e){return de()}};function ae(){return{token:""}}var g={encode(e,r=new c){return e.token!==""&&r.uint32(10).string(e.token),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ae();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.token=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{token:d(e.token)?globalThis.String(e.token):""}},toJSON(e){let r={};return e.token!==""&&(r.token=e.token),r},create(e){return g.fromPartial(e??{})},fromPartial(e){let r=ae();return r.token=e.token??"",r}};function se(){return{eventType:0}}var M={encode(e,r=new c){return e.eventType!==0&&r.uint32(8).int32(e.eventType),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=se();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==8)break;n.eventType=t.int32();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{eventType:d(e.eventType)?x(e.eventType):0}},toJSON(e){let r={};return e.eventType!==0&&(r.eventType=G(e.eventType)),r},create(e){return M.fromPartial(e??{})},fromPartial(e){let r=se();return r.eventType=e.eventType??0,r}};function ce(){return{eventType:0}}var T={encode(e,r=new c){return e.eventType!==0&&r.uint32(8).int32(e.eventType),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ce();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==8)break;n.eventType=t.int32();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{eventType:d(e.eventType)?x(e.eventType):0}},toJSON(e){let r={};return e.eventType!==0&&(r.eventType=G(e.eventType)),r},create(e){return T.fromPartial(e??{})},fromPartial(e){let r=ce();return r.eventType=e.eventType??0,r}};function ue(){return{roomId:""}}var C={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ue();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),r},create(e){return C.fromPartial(e??{})},fromPartial(e){let r=ue();return r.roomId=e.roomId??"",r}};function fe(){return{roomId:""}}var O={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=fe();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),r},create(e){return O.fromPartial(e??{})},fromPartial(e){let r=fe();return r.roomId=e.roomId??"",r}};function pe(){return{metrics:""}}var R={encode(e,r=new c){return e.metrics!==""&&r.uint32(10).string(e.metrics),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=pe();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.metrics=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{metrics:d(e.metrics)?globalThis.String(e.metrics):""}},toJSON(e){let r={};return e.metrics!==""&&(r.metrics=e.metrics),r},create(e){return R.fromPartial(e??{})},fromPartial(e){let r=pe();return r.metrics=e.metrics??"",r}};function le(){return{roomId:"",componentId:""}}var b={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.componentId!==""&&r.uint32(18).string(e.componentId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=le();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.componentId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",componentId:d(e.componentId)?globalThis.String(e.componentId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.componentId!==""&&(r.componentId=e.componentId),r},create(e){return b.fromPartial(e??{})},fromPartial(e){let r=le();return r.roomId=e.roomId??"",r.componentId=e.componentId??"",r}};function Ie(){return{roomId:""}}var w={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=Ie();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),r},create(e){return w.fromPartial(e??{})},fromPartial(e){let r=Ie();return r.roomId=e.roomId??"",r}};function he(){return{roomId:""}}var E={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=he();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),r},create(e){return E.fromPartial(e??{})},fromPartial(e){let r=he();return r.roomId=e.roomId??"",r}};function me(){return{roomId:"",peerId:"",metadata:""}}var U={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==""&&r.uint32(18).string(e.peerId),e.metadata!==""&&r.uint32(26).string(e.metadata),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=me();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}case 3:{if(o!==26)break;n.metadata=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):"",metadata:d(e.metadata)?globalThis.String(e.metadata):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==""&&(r.peerId=e.peerId),e.metadata!==""&&(r.metadata=e.metadata),r},create(e){return U.fromPartial(e??{})},fromPartial(e){let r=me();return r.roomId=e.roomId??"",r.peerId=e.peerId??"",r.metadata=e.metadata??"",r}};function ve(){return{id:"",type:0,metadata:""}}var f={encode(e,r=new c){return e.id!==""&&r.uint32(10).string(e.id),e.type!==0&&r.uint32(16).int32(e.type),e.metadata!==""&&r.uint32(26).string(e.metadata),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ve();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.id=t.string();continue}case 2:{if(o!==16)break;n.type=t.int32();continue}case 3:{if(o!==26)break;n.metadata=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{id:d(e.id)?globalThis.String(e.id):"",type:d(e.type)?Oe(e.type):0,metadata:d(e.metadata)?globalThis.String(e.metadata):""}},toJSON(e){let r={};return e.id!==""&&(r.id=e.id),e.type!==0&&(r.type=Re(e.type)),e.metadata!==""&&(r.metadata=e.metadata),r},create(e){return f.fromPartial(e??{})},fromPartial(e){let r=ve();return r.id=e.id??"",r.type=e.type??0,r.metadata=e.metadata??"",r}};function ke(){return{roomId:"",peerId:void 0,componentId:void 0,track:void 0}}var J={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==void 0&&r.uint32(18).string(e.peerId),e.componentId!==void 0&&r.uint32(26).string(e.componentId),e.track!==void 0&&f.encode(e.track,r.uint32(34).fork()).join(),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ke();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}case 3:{if(o!==26)break;n.componentId=t.string();continue}case 4:{if(o!==34)break;n.track=f.decode(t,t.uint32());continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):void 0,componentId:d(e.componentId)?globalThis.String(e.componentId):void 0,track:d(e.track)?f.fromJSON(e.track):void 0}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==void 0&&(r.peerId=e.peerId),e.componentId!==void 0&&(r.componentId=e.componentId),e.track!==void 0&&(r.track=f.toJSON(e.track)),r},create(e){return J.fromPartial(e??{})},fromPartial(e){let r=ke();return r.roomId=e.roomId??"",r.peerId=e.peerId??void 0,r.componentId=e.componentId??void 0,r.track=e.track!==void 0&&e.track!==null?f.fromPartial(e.track):void 0,r}};function Se(){return{roomId:"",peerId:void 0,componentId:void 0,track:void 0}}var y={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==void 0&&r.uint32(18).string(e.peerId),e.componentId!==void 0&&r.uint32(26).string(e.componentId),e.track!==void 0&&f.encode(e.track,r.uint32(34).fork()).join(),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=Se();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}case 3:{if(o!==26)break;n.componentId=t.string();continue}case 4:{if(o!==34)break;n.track=f.decode(t,t.uint32());continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):void 0,componentId:d(e.componentId)?globalThis.String(e.componentId):void 0,track:d(e.track)?f.fromJSON(e.track):void 0}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==void 0&&(r.peerId=e.peerId),e.componentId!==void 0&&(r.componentId=e.componentId),e.track!==void 0&&(r.track=f.toJSON(e.track)),r},create(e){return y.fromPartial(e??{})},fromPartial(e){let r=Se();return r.roomId=e.roomId??"",r.peerId=e.peerId??void 0,r.componentId=e.componentId??void 0,r.track=e.track!==void 0&&e.track!==null?f.fromPartial(e.track):void 0,r}};function _e(){return{roomId:"",peerId:void 0,componentId:void 0,track:void 0}}var D={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==void 0&&r.uint32(18).string(e.peerId),e.componentId!==void 0&&r.uint32(26).string(e.componentId),e.track!==void 0&&f.encode(e.track,r.uint32(34).fork()).join(),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=_e();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}case 3:{if(o!==26)break;n.componentId=t.string();continue}case 4:{if(o!==34)break;n.track=f.decode(t,t.uint32());continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):void 0,componentId:d(e.componentId)?globalThis.String(e.componentId):void 0,track:d(e.track)?f.fromJSON(e.track):void 0}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==void 0&&(r.peerId=e.peerId),e.componentId!==void 0&&(r.componentId=e.componentId),e.track!==void 0&&(r.track=f.toJSON(e.track)),r},create(e){return D.fromPartial(e??{})},fromPartial(e){let r=_e();return r.roomId=e.roomId??"",r.peerId=e.peerId??void 0,r.componentId=e.componentId??void 0,r.track=e.track!==void 0&&e.track!==null?f.fromPartial(e.track):void 0,r}};function d(e){return e!=null}});var H=Ve(Ee());export{nr as a,Be as b,Ve as c,H as d};
1
+ var Ue=Object.create;var K=Object.defineProperty;var Je=Object.getOwnPropertyDescriptor;var ye=Object.getOwnPropertyNames;var De=Object.getPrototypeOf,Ae=Object.prototype.hasOwnProperty;var nr=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(r,t)=>(typeof require<"u"?require:r)[t]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var Be=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var qe=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of ye(r))!Ae.call(e,n)&&n!==t&&K(e,n,{get:()=>r[n],enumerable:!(i=Je(r,n))||i.enumerable});return e};var Ve=(e,r,t)=>(t=e!=null?Ue(De(e)):{},qe(r||!e||!e.__esModule?K(t,"default",{value:e,enumerable:!0}):t,e));var Ee=Be((dr,we)=>{"use strict";var F=Object.defineProperty,Fe=Object.getOwnPropertyDescriptor,xe=Object.getOwnPropertyNames,Ye=Object.prototype.hasOwnProperty,Ge=(e,r)=>{for(var t in r)F(e,t,{get:r[t],enumerable:!0})},He=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of xe(r))!Ye.call(e,n)&&n!==t&&F(e,n,{get:()=>r[n],enumerable:!(i=Fe(r,n))||i.enumerable});return e},Ke=e=>He(F({},"__esModule",{value:!0}),e),Ne={};Ge(Ne,{ServerMessage:()=>be,ServerMessage_AuthRequest:()=>g,ServerMessage_Authenticated:()=>P,ServerMessage_ComponentCrashed:()=>N,ServerMessage_EventType:()=>Te,ServerMessage_HlsPlayable:()=>b,ServerMessage_HlsUploadCrashed:()=>E,ServerMessage_HlsUploaded:()=>w,ServerMessage_MetricsReport:()=>R,ServerMessage_PeerAdded:()=>m,ServerMessage_PeerConnected:()=>k,ServerMessage_PeerCrashed:()=>_,ServerMessage_PeerDeleted:()=>v,ServerMessage_PeerDisconnected:()=>S,ServerMessage_PeerMetadataUpdated:()=>U,ServerMessage_RoomCrashed:()=>h,ServerMessage_RoomCreated:()=>C,ServerMessage_RoomDeleted:()=>O,ServerMessage_SubscribeRequest:()=>M,ServerMessage_SubscribeResponse:()=>T,ServerMessage_Track:()=>f,ServerMessage_TrackAdded:()=>J,ServerMessage_TrackMetadataUpdated:()=>D,ServerMessage_TrackRemoved:()=>y,ServerMessage_TrackType:()=>Ce,protobufPackage:()=>or,serverMessage_EventTypeFromJSON:()=>Y,serverMessage_EventTypeToJSON:()=>G,serverMessage_TrackTypeFromJSON:()=>Oe,serverMessage_TrackTypeToJSON:()=>Re});we.exports=Ke(Ne);function Le(){let e=0,r=0;for(let i=0;i<28;i+=7){let n=this.buf[this.pos++];if(e|=(n&127)<<i,!(n&128))return this.assertBounds(),[e,r]}let t=this.buf[this.pos++];if(e|=(t&15)<<28,r=(t&112)>>4,!(t&128))return this.assertBounds(),[e,r];for(let i=3;i<=31;i+=7){let n=this.buf[this.pos++];if(r|=(n&127)<<i,!(n&128))return this.assertBounds(),[e,r]}throw new Error("invalid varint")}function B(e,r,t){for(let o=0;o<28;o=o+7){let s=e>>>o,u=!(!(s>>>7)&&r==0),p=(u?s|128:s)&255;if(t.push(p),!u)return}let i=e>>>28&15|(r&7)<<4,n=!!(r>>3);if(t.push((n?i|128:i)&255),!!n){for(let o=3;o<31;o=o+7){let s=r>>>o,u=!!(s>>>7),p=(u?s|128:s)&255;if(t.push(p),!u)return}t.push(r>>>31&1)}}var A=4294967296;function L(e){let r=e[0]==="-";r&&(e=e.slice(1));let t=1e6,i=0,n=0;function o(s,u){let p=Number(e.slice(s,u));n*=t,i=i*t+p,i>=A&&(n=n+(i/A|0),i=i%A)}return o(-24,-18),o(-18,-12),o(-12,-6),o(-6),r?ge(i,n):x(i,n)}function Ze(e,r){let t=x(e,r),i=t.hi&2147483648;i&&(t=ge(t.lo,t.hi));let n=Pe(t.lo,t.hi);return i?"-"+n:n}function Pe(e,r){if({lo:e,hi:r}=Xe(e,r),r<=2097151)return String(A*r+e);let t=e&16777215,i=(e>>>24|r<<8)&16777215,n=r>>16&65535,o=t+i*6777216+n*6710656,s=i+n*8147497,u=n*2,p=1e7;return o>=p&&(s+=Math.floor(o/p),o%=p),s>=p&&(u+=Math.floor(s/p),s%=p),u.toString()+Z(s)+Z(o)}function Xe(e,r){return{lo:e>>>0,hi:r>>>0}}function x(e,r){return{lo:e|0,hi:r|0}}function ge(e,r){return r=~r,e?e=~e+1:r+=1,x(e,r)}var Z=e=>{let r=String(e);return"0000000".slice(r.length)+r};function X(e,r){if(e>=0){for(;e>127;)r.push(e&127|128),e=e>>>7;r.push(e)}else{for(let t=0;t<9;t++)r.push(e&127|128),e=e>>7;r.push(1)}}function ze(){let e=this.buf[this.pos++],r=e&127;if(!(e&128))return this.assertBounds(),r;if(e=this.buf[this.pos++],r|=(e&127)<<7,!(e&128))return this.assertBounds(),r;if(e=this.buf[this.pos++],r|=(e&127)<<14,!(e&128))return this.assertBounds(),r;if(e=this.buf[this.pos++],r|=(e&127)<<21,!(e&128))return this.assertBounds(),r;e=this.buf[this.pos++],r|=(e&15)<<28;for(let t=5;e&128&&t<10;t++)e=this.buf[this.pos++];if(e&128)throw new Error("invalid varint");return this.assertBounds(),r>>>0}var l=$e();function $e(){let e=new DataView(new ArrayBuffer(8));if(typeof BigInt=="function"&&typeof e.getBigInt64=="function"&&typeof e.getBigUint64=="function"&&typeof e.setBigInt64=="function"&&typeof e.setBigUint64=="function"&&(typeof process!="object"||typeof process.env!="object"||process.env.BUF_BIGINT_DISABLE!=="1")){let t=BigInt("-9223372036854775808"),i=BigInt("9223372036854775807"),n=BigInt("0"),o=BigInt("18446744073709551615");return{zero:BigInt(0),supported:!0,parse(s){let u=typeof s=="bigint"?s:BigInt(s);if(u>i||u<t)throw new Error(`invalid int64: ${s}`);return u},uParse(s){let u=typeof s=="bigint"?s:BigInt(s);if(u>o||u<n)throw new Error(`invalid uint64: ${s}`);return u},enc(s){return e.setBigInt64(0,this.parse(s),!0),{lo:e.getInt32(0,!0),hi:e.getInt32(4,!0)}},uEnc(s){return e.setBigInt64(0,this.uParse(s),!0),{lo:e.getInt32(0,!0),hi:e.getInt32(4,!0)}},dec(s,u){return e.setInt32(0,s,!0),e.setInt32(4,u,!0),e.getBigInt64(0,!0)},uDec(s,u){return e.setInt32(0,s,!0),e.setInt32(4,u,!0),e.getBigUint64(0,!0)}}}return{zero:"0",supported:!1,parse(t){return typeof t!="string"&&(t=t.toString()),z(t),t},uParse(t){return typeof t!="string"&&(t=t.toString()),$(t),t},enc(t){return typeof t!="string"&&(t=t.toString()),z(t),L(t)},uEnc(t){return typeof t!="string"&&(t=t.toString()),$(t),L(t)},dec(t,i){return Ze(t,i)},uDec(t,i){return Pe(t,i)}}}function z(e){if(!/^-?[0-9]+$/.test(e))throw new Error("invalid int64: "+e)}function $(e){if(!/^[0-9]+$/.test(e))throw new Error("invalid uint64: "+e)}var q=Symbol.for("@bufbuild/protobuf/text-encoding");function Me(){if(globalThis[q]==null){let e=new globalThis.TextEncoder,r=new globalThis.TextDecoder;globalThis[q]={encodeUtf8(t){return e.encode(t)},decodeUtf8(t){return r.decode(t)},checkUtf8(t){try{return encodeURIComponent(t),!0}catch{return!1}}}}return globalThis[q]}var I;(function(e){e[e.Varint=0]="Varint",e[e.Bit64=1]="Bit64",e[e.LengthDelimited=2]="LengthDelimited",e[e.StartGroup=3]="StartGroup",e[e.EndGroup=4]="EndGroup",e[e.Bit32=5]="Bit32"})(I||(I={}));var Qe=34028234663852886e22,We=-34028234663852886e22,je=4294967295,er=2147483647,rr=-2147483648,c=class{constructor(e=Me().encodeUtf8){this.encodeUtf8=e,this.stack=[],this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let e=0;for(let i=0;i<this.chunks.length;i++)e+=this.chunks[i].length;let r=new Uint8Array(e),t=0;for(let i=0;i<this.chunks.length;i++)r.set(this.chunks[i],t),t+=this.chunks[i].length;return this.chunks=[],r}fork(){return this.stack.push({chunks:this.chunks,buf:this.buf}),this.chunks=[],this.buf=[],this}join(){let e=this.finish(),r=this.stack.pop();if(!r)throw new Error("invalid state, fork stack empty");return this.chunks=r.chunks,this.buf=r.buf,this.uint32(e.byteLength),this.raw(e)}tag(e,r){return this.uint32((e<<3|r)>>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(Q(e);e>127;)this.buf.push(e&127|128),e=e>>>7;return this.buf.push(e),this}int32(e){return V(e),X(e,this.buf),this}bool(e){return this.buf.push(e?1:0),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let r=this.encodeUtf8(e);return this.uint32(r.byteLength),this.raw(r)}float(e){tr(e);let r=new Uint8Array(4);return new DataView(r.buffer).setFloat32(0,e,!0),this.raw(r)}double(e){let r=new Uint8Array(8);return new DataView(r.buffer).setFloat64(0,e,!0),this.raw(r)}fixed32(e){Q(e);let r=new Uint8Array(4);return new DataView(r.buffer).setUint32(0,e,!0),this.raw(r)}sfixed32(e){V(e);let r=new Uint8Array(4);return new DataView(r.buffer).setInt32(0,e,!0),this.raw(r)}sint32(e){return V(e),e=(e<<1^e>>31)>>>0,X(e,this.buf),this}sfixed64(e){let r=new Uint8Array(8),t=new DataView(r.buffer),i=l.enc(e);return t.setInt32(0,i.lo,!0),t.setInt32(4,i.hi,!0),this.raw(r)}fixed64(e){let r=new Uint8Array(8),t=new DataView(r.buffer),i=l.uEnc(e);return t.setInt32(0,i.lo,!0),t.setInt32(4,i.hi,!0),this.raw(r)}int64(e){let r=l.enc(e);return B(r.lo,r.hi,this.buf),this}sint64(e){let r=l.enc(e),t=r.hi>>31,i=r.lo<<1^t,n=(r.hi<<1|r.lo>>>31)^t;return B(i,n,this.buf),this}uint64(e){let r=l.uEnc(e);return B(r.lo,r.hi,this.buf),this}},a=class{constructor(e,r=Me().decodeUtf8){this.decodeUtf8=r,this.varint64=Le,this.uint32=ze,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength)}tag(){let e=this.uint32(),r=e>>>3,t=e&7;if(r<=0||t<0||t>5)throw new Error("illegal tag: field no "+r+" wire type "+t);return[r,t]}skip(e,r){let t=this.pos;switch(e){case I.Varint:for(;this.buf[this.pos++]&128;);break;case I.Bit64:this.pos+=4;case I.Bit32:this.pos+=4;break;case I.LengthDelimited:let i=this.uint32();this.pos+=i;break;case I.StartGroup:for(;;){let[n,o]=this.tag();if(o===I.EndGroup){if(r!==void 0&&n!==r)throw new Error("invalid end group tag");break}this.skip(o,n)}break;default:throw new Error("cant skip wire type "+e)}return this.assertBounds(),this.buf.subarray(t,this.pos)}assertBounds(){if(this.pos>this.len)throw new RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return l.dec(...this.varint64())}uint64(){return l.uDec(...this.varint64())}sint64(){let[e,r]=this.varint64(),t=-(e&1);return e=(e>>>1|(r&1)<<31)^t,r=r>>>1^t,l.dec(e,r)}bool(){let[e,r]=this.varint64();return e!==0||r!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return l.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return l.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),r=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(r,r+e)}string(){return this.decodeUtf8(this.bytes())}};function V(e){if(typeof e=="string")e=Number(e);else if(typeof e!="number")throw new Error("invalid int32: "+typeof e);if(!Number.isInteger(e)||e>er||e<rr)throw new Error("invalid int32: "+e)}function Q(e){if(typeof e=="string")e=Number(e);else if(typeof e!="number")throw new Error("invalid uint32: "+typeof e);if(!Number.isInteger(e)||e>je||e<0)throw new Error("invalid uint32: "+e)}function tr(e){if(typeof e=="string"){let r=e;if(e=Number(e),isNaN(e)&&r!=="NaN")throw new Error("invalid float32: "+r)}else if(typeof e!="number")throw new Error("invalid float32: "+typeof e);if(Number.isFinite(e)&&(e>Qe||e<We))throw new Error("invalid float32: "+e)}var or="fishjam",Te=(e=>(e[e.EVENT_TYPE_UNSPECIFIED=0]="EVENT_TYPE_UNSPECIFIED",e[e.EVENT_TYPE_SERVER_NOTIFICATION=1]="EVENT_TYPE_SERVER_NOTIFICATION",e[e.EVENT_TYPE_METRICS=2]="EVENT_TYPE_METRICS",e[e.UNRECOGNIZED=-1]="UNRECOGNIZED",e))(Te||{});function Y(e){switch(e){case 0:case"EVENT_TYPE_UNSPECIFIED":return 0;case 1:case"EVENT_TYPE_SERVER_NOTIFICATION":return 1;case 2:case"EVENT_TYPE_METRICS":return 2;case-1:case"UNRECOGNIZED":default:return-1}}function G(e){switch(e){case 0:return"EVENT_TYPE_UNSPECIFIED";case 1:return"EVENT_TYPE_SERVER_NOTIFICATION";case 2:return"EVENT_TYPE_METRICS";case-1:default:return"UNRECOGNIZED"}}var Ce=(e=>(e[e.TRACK_TYPE_UNSPECIFIED=0]="TRACK_TYPE_UNSPECIFIED",e[e.TRACK_TYPE_VIDEO=1]="TRACK_TYPE_VIDEO",e[e.TRACK_TYPE_AUDIO=2]="TRACK_TYPE_AUDIO",e[e.UNRECOGNIZED=-1]="UNRECOGNIZED",e))(Ce||{});function Oe(e){switch(e){case 0:case"TRACK_TYPE_UNSPECIFIED":return 0;case 1:case"TRACK_TYPE_VIDEO":return 1;case 2:case"TRACK_TYPE_AUDIO":return 2;case-1:case"UNRECOGNIZED":default:return-1}}function Re(e){switch(e){case 0:return"TRACK_TYPE_UNSPECIFIED";case 1:return"TRACK_TYPE_VIDEO";case 2:return"TRACK_TYPE_AUDIO";case-1:default:return"UNRECOGNIZED"}}function W(){return{roomCrashed:void 0,peerConnected:void 0,peerDisconnected:void 0,peerCrashed:void 0,componentCrashed:void 0,authenticated:void 0,authRequest:void 0,subscribeRequest:void 0,subscribeResponse:void 0,roomCreated:void 0,roomDeleted:void 0,metricsReport:void 0,hlsPlayable:void 0,hlsUploaded:void 0,hlsUploadCrashed:void 0,peerMetadataUpdated:void 0,trackAdded:void 0,trackRemoved:void 0,trackMetadataUpdated:void 0,peerAdded:void 0,peerDeleted:void 0}}var be={encode(e,r=new c){return e.roomCrashed!==void 0&&h.encode(e.roomCrashed,r.uint32(10).fork()).join(),e.peerConnected!==void 0&&k.encode(e.peerConnected,r.uint32(18).fork()).join(),e.peerDisconnected!==void 0&&S.encode(e.peerDisconnected,r.uint32(26).fork()).join(),e.peerCrashed!==void 0&&_.encode(e.peerCrashed,r.uint32(34).fork()).join(),e.componentCrashed!==void 0&&N.encode(e.componentCrashed,r.uint32(42).fork()).join(),e.authenticated!==void 0&&P.encode(e.authenticated,r.uint32(50).fork()).join(),e.authRequest!==void 0&&g.encode(e.authRequest,r.uint32(58).fork()).join(),e.subscribeRequest!==void 0&&M.encode(e.subscribeRequest,r.uint32(66).fork()).join(),e.subscribeResponse!==void 0&&T.encode(e.subscribeResponse,r.uint32(74).fork()).join(),e.roomCreated!==void 0&&C.encode(e.roomCreated,r.uint32(82).fork()).join(),e.roomDeleted!==void 0&&O.encode(e.roomDeleted,r.uint32(90).fork()).join(),e.metricsReport!==void 0&&R.encode(e.metricsReport,r.uint32(98).fork()).join(),e.hlsPlayable!==void 0&&b.encode(e.hlsPlayable,r.uint32(106).fork()).join(),e.hlsUploaded!==void 0&&w.encode(e.hlsUploaded,r.uint32(114).fork()).join(),e.hlsUploadCrashed!==void 0&&E.encode(e.hlsUploadCrashed,r.uint32(122).fork()).join(),e.peerMetadataUpdated!==void 0&&U.encode(e.peerMetadataUpdated,r.uint32(130).fork()).join(),e.trackAdded!==void 0&&J.encode(e.trackAdded,r.uint32(138).fork()).join(),e.trackRemoved!==void 0&&y.encode(e.trackRemoved,r.uint32(146).fork()).join(),e.trackMetadataUpdated!==void 0&&D.encode(e.trackMetadataUpdated,r.uint32(154).fork()).join(),e.peerAdded!==void 0&&m.encode(e.peerAdded,r.uint32(162).fork()).join(),e.peerDeleted!==void 0&&v.encode(e.peerDeleted,r.uint32(170).fork()).join(),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=W();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomCrashed=h.decode(t,t.uint32());continue}case 2:{if(o!==18)break;n.peerConnected=k.decode(t,t.uint32());continue}case 3:{if(o!==26)break;n.peerDisconnected=S.decode(t,t.uint32());continue}case 4:{if(o!==34)break;n.peerCrashed=_.decode(t,t.uint32());continue}case 5:{if(o!==42)break;n.componentCrashed=N.decode(t,t.uint32());continue}case 6:{if(o!==50)break;n.authenticated=P.decode(t,t.uint32());continue}case 7:{if(o!==58)break;n.authRequest=g.decode(t,t.uint32());continue}case 8:{if(o!==66)break;n.subscribeRequest=M.decode(t,t.uint32());continue}case 9:{if(o!==74)break;n.subscribeResponse=T.decode(t,t.uint32());continue}case 10:{if(o!==82)break;n.roomCreated=C.decode(t,t.uint32());continue}case 11:{if(o!==90)break;n.roomDeleted=O.decode(t,t.uint32());continue}case 12:{if(o!==98)break;n.metricsReport=R.decode(t,t.uint32());continue}case 13:{if(o!==106)break;n.hlsPlayable=b.decode(t,t.uint32());continue}case 14:{if(o!==114)break;n.hlsUploaded=w.decode(t,t.uint32());continue}case 15:{if(o!==122)break;n.hlsUploadCrashed=E.decode(t,t.uint32());continue}case 16:{if(o!==130)break;n.peerMetadataUpdated=U.decode(t,t.uint32());continue}case 17:{if(o!==138)break;n.trackAdded=J.decode(t,t.uint32());continue}case 18:{if(o!==146)break;n.trackRemoved=y.decode(t,t.uint32());continue}case 19:{if(o!==154)break;n.trackMetadataUpdated=D.decode(t,t.uint32());continue}case 20:{if(o!==162)break;n.peerAdded=m.decode(t,t.uint32());continue}case 21:{if(o!==170)break;n.peerDeleted=v.decode(t,t.uint32());continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomCrashed:d(e.roomCrashed)?h.fromJSON(e.roomCrashed):void 0,peerConnected:d(e.peerConnected)?k.fromJSON(e.peerConnected):void 0,peerDisconnected:d(e.peerDisconnected)?S.fromJSON(e.peerDisconnected):void 0,peerCrashed:d(e.peerCrashed)?_.fromJSON(e.peerCrashed):void 0,componentCrashed:d(e.componentCrashed)?N.fromJSON(e.componentCrashed):void 0,authenticated:d(e.authenticated)?P.fromJSON(e.authenticated):void 0,authRequest:d(e.authRequest)?g.fromJSON(e.authRequest):void 0,subscribeRequest:d(e.subscribeRequest)?M.fromJSON(e.subscribeRequest):void 0,subscribeResponse:d(e.subscribeResponse)?T.fromJSON(e.subscribeResponse):void 0,roomCreated:d(e.roomCreated)?C.fromJSON(e.roomCreated):void 0,roomDeleted:d(e.roomDeleted)?O.fromJSON(e.roomDeleted):void 0,metricsReport:d(e.metricsReport)?R.fromJSON(e.metricsReport):void 0,hlsPlayable:d(e.hlsPlayable)?b.fromJSON(e.hlsPlayable):void 0,hlsUploaded:d(e.hlsUploaded)?w.fromJSON(e.hlsUploaded):void 0,hlsUploadCrashed:d(e.hlsUploadCrashed)?E.fromJSON(e.hlsUploadCrashed):void 0,peerMetadataUpdated:d(e.peerMetadataUpdated)?U.fromJSON(e.peerMetadataUpdated):void 0,trackAdded:d(e.trackAdded)?J.fromJSON(e.trackAdded):void 0,trackRemoved:d(e.trackRemoved)?y.fromJSON(e.trackRemoved):void 0,trackMetadataUpdated:d(e.trackMetadataUpdated)?D.fromJSON(e.trackMetadataUpdated):void 0,peerAdded:d(e.peerAdded)?m.fromJSON(e.peerAdded):void 0,peerDeleted:d(e.peerDeleted)?v.fromJSON(e.peerDeleted):void 0}},toJSON(e){let r={};return e.roomCrashed!==void 0&&(r.roomCrashed=h.toJSON(e.roomCrashed)),e.peerConnected!==void 0&&(r.peerConnected=k.toJSON(e.peerConnected)),e.peerDisconnected!==void 0&&(r.peerDisconnected=S.toJSON(e.peerDisconnected)),e.peerCrashed!==void 0&&(r.peerCrashed=_.toJSON(e.peerCrashed)),e.componentCrashed!==void 0&&(r.componentCrashed=N.toJSON(e.componentCrashed)),e.authenticated!==void 0&&(r.authenticated=P.toJSON(e.authenticated)),e.authRequest!==void 0&&(r.authRequest=g.toJSON(e.authRequest)),e.subscribeRequest!==void 0&&(r.subscribeRequest=M.toJSON(e.subscribeRequest)),e.subscribeResponse!==void 0&&(r.subscribeResponse=T.toJSON(e.subscribeResponse)),e.roomCreated!==void 0&&(r.roomCreated=C.toJSON(e.roomCreated)),e.roomDeleted!==void 0&&(r.roomDeleted=O.toJSON(e.roomDeleted)),e.metricsReport!==void 0&&(r.metricsReport=R.toJSON(e.metricsReport)),e.hlsPlayable!==void 0&&(r.hlsPlayable=b.toJSON(e.hlsPlayable)),e.hlsUploaded!==void 0&&(r.hlsUploaded=w.toJSON(e.hlsUploaded)),e.hlsUploadCrashed!==void 0&&(r.hlsUploadCrashed=E.toJSON(e.hlsUploadCrashed)),e.peerMetadataUpdated!==void 0&&(r.peerMetadataUpdated=U.toJSON(e.peerMetadataUpdated)),e.trackAdded!==void 0&&(r.trackAdded=J.toJSON(e.trackAdded)),e.trackRemoved!==void 0&&(r.trackRemoved=y.toJSON(e.trackRemoved)),e.trackMetadataUpdated!==void 0&&(r.trackMetadataUpdated=D.toJSON(e.trackMetadataUpdated)),e.peerAdded!==void 0&&(r.peerAdded=m.toJSON(e.peerAdded)),e.peerDeleted!==void 0&&(r.peerDeleted=v.toJSON(e.peerDeleted)),r},create(e){return be.fromPartial(e??{})},fromPartial(e){let r=W();return r.roomCrashed=e.roomCrashed!==void 0&&e.roomCrashed!==null?h.fromPartial(e.roomCrashed):void 0,r.peerConnected=e.peerConnected!==void 0&&e.peerConnected!==null?k.fromPartial(e.peerConnected):void 0,r.peerDisconnected=e.peerDisconnected!==void 0&&e.peerDisconnected!==null?S.fromPartial(e.peerDisconnected):void 0,r.peerCrashed=e.peerCrashed!==void 0&&e.peerCrashed!==null?_.fromPartial(e.peerCrashed):void 0,r.componentCrashed=e.componentCrashed!==void 0&&e.componentCrashed!==null?N.fromPartial(e.componentCrashed):void 0,r.authenticated=e.authenticated!==void 0&&e.authenticated!==null?P.fromPartial(e.authenticated):void 0,r.authRequest=e.authRequest!==void 0&&e.authRequest!==null?g.fromPartial(e.authRequest):void 0,r.subscribeRequest=e.subscribeRequest!==void 0&&e.subscribeRequest!==null?M.fromPartial(e.subscribeRequest):void 0,r.subscribeResponse=e.subscribeResponse!==void 0&&e.subscribeResponse!==null?T.fromPartial(e.subscribeResponse):void 0,r.roomCreated=e.roomCreated!==void 0&&e.roomCreated!==null?C.fromPartial(e.roomCreated):void 0,r.roomDeleted=e.roomDeleted!==void 0&&e.roomDeleted!==null?O.fromPartial(e.roomDeleted):void 0,r.metricsReport=e.metricsReport!==void 0&&e.metricsReport!==null?R.fromPartial(e.metricsReport):void 0,r.hlsPlayable=e.hlsPlayable!==void 0&&e.hlsPlayable!==null?b.fromPartial(e.hlsPlayable):void 0,r.hlsUploaded=e.hlsUploaded!==void 0&&e.hlsUploaded!==null?w.fromPartial(e.hlsUploaded):void 0,r.hlsUploadCrashed=e.hlsUploadCrashed!==void 0&&e.hlsUploadCrashed!==null?E.fromPartial(e.hlsUploadCrashed):void 0,r.peerMetadataUpdated=e.peerMetadataUpdated!==void 0&&e.peerMetadataUpdated!==null?U.fromPartial(e.peerMetadataUpdated):void 0,r.trackAdded=e.trackAdded!==void 0&&e.trackAdded!==null?J.fromPartial(e.trackAdded):void 0,r.trackRemoved=e.trackRemoved!==void 0&&e.trackRemoved!==null?y.fromPartial(e.trackRemoved):void 0,r.trackMetadataUpdated=e.trackMetadataUpdated!==void 0&&e.trackMetadataUpdated!==null?D.fromPartial(e.trackMetadataUpdated):void 0,r.peerAdded=e.peerAdded!==void 0&&e.peerAdded!==null?m.fromPartial(e.peerAdded):void 0,r.peerDeleted=e.peerDeleted!==void 0&&e.peerDeleted!==null?v.fromPartial(e.peerDeleted):void 0,r}};function j(){return{roomId:""}}var h={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=j();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),r},create(e){return h.fromPartial(e??{})},fromPartial(e){let r=j();return r.roomId=e.roomId??"",r}};function ee(){return{roomId:"",peerId:""}}var m={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==""&&r.uint32(18).string(e.peerId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ee();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==""&&(r.peerId=e.peerId),r},create(e){return m.fromPartial(e??{})},fromPartial(e){let r=ee();return r.roomId=e.roomId??"",r.peerId=e.peerId??"",r}};function re(){return{roomId:"",peerId:""}}var v={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==""&&r.uint32(18).string(e.peerId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=re();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==""&&(r.peerId=e.peerId),r},create(e){return v.fromPartial(e??{})},fromPartial(e){let r=re();return r.roomId=e.roomId??"",r.peerId=e.peerId??"",r}};function te(){return{roomId:"",peerId:""}}var k={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==""&&r.uint32(18).string(e.peerId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=te();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==""&&(r.peerId=e.peerId),r},create(e){return k.fromPartial(e??{})},fromPartial(e){let r=te();return r.roomId=e.roomId??"",r.peerId=e.peerId??"",r}};function oe(){return{roomId:"",peerId:""}}var S={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==""&&r.uint32(18).string(e.peerId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=oe();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==""&&(r.peerId=e.peerId),r},create(e){return S.fromPartial(e??{})},fromPartial(e){let r=oe();return r.roomId=e.roomId??"",r.peerId=e.peerId??"",r}};function ne(){return{roomId:"",peerId:"",reason:""}}var _={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==""&&r.uint32(18).string(e.peerId),e.reason!==""&&r.uint32(26).string(e.reason),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ne();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}case 3:{if(o!==26)break;n.reason=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):"",reason:d(e.reason)?globalThis.String(e.reason):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==""&&(r.peerId=e.peerId),e.reason!==""&&(r.reason=e.reason),r},create(e){return _.fromPartial(e??{})},fromPartial(e){let r=ne();return r.roomId=e.roomId??"",r.peerId=e.peerId??"",r.reason=e.reason??"",r}};function ie(){return{roomId:"",componentId:""}}var N={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.componentId!==""&&r.uint32(18).string(e.componentId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ie();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.componentId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",componentId:d(e.componentId)?globalThis.String(e.componentId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.componentId!==""&&(r.componentId=e.componentId),r},create(e){return N.fromPartial(e??{})},fromPartial(e){let r=ie();return r.roomId=e.roomId??"",r.componentId=e.componentId??"",r}};function de(){return{}}var P={encode(e,r=new c){return r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=de();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{}},toJSON(e){return{}},create(e){return P.fromPartial(e??{})},fromPartial(e){return de()}};function ae(){return{token:""}}var g={encode(e,r=new c){return e.token!==""&&r.uint32(10).string(e.token),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ae();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.token=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{token:d(e.token)?globalThis.String(e.token):""}},toJSON(e){let r={};return e.token!==""&&(r.token=e.token),r},create(e){return g.fromPartial(e??{})},fromPartial(e){let r=ae();return r.token=e.token??"",r}};function se(){return{eventType:0}}var M={encode(e,r=new c){return e.eventType!==0&&r.uint32(8).int32(e.eventType),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=se();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==8)break;n.eventType=t.int32();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{eventType:d(e.eventType)?Y(e.eventType):0}},toJSON(e){let r={};return e.eventType!==0&&(r.eventType=G(e.eventType)),r},create(e){return M.fromPartial(e??{})},fromPartial(e){let r=se();return r.eventType=e.eventType??0,r}};function ce(){return{eventType:0}}var T={encode(e,r=new c){return e.eventType!==0&&r.uint32(8).int32(e.eventType),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ce();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==8)break;n.eventType=t.int32();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{eventType:d(e.eventType)?Y(e.eventType):0}},toJSON(e){let r={};return e.eventType!==0&&(r.eventType=G(e.eventType)),r},create(e){return T.fromPartial(e??{})},fromPartial(e){let r=ce();return r.eventType=e.eventType??0,r}};function ue(){return{roomId:""}}var C={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ue();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),r},create(e){return C.fromPartial(e??{})},fromPartial(e){let r=ue();return r.roomId=e.roomId??"",r}};function fe(){return{roomId:""}}var O={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=fe();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),r},create(e){return O.fromPartial(e??{})},fromPartial(e){let r=fe();return r.roomId=e.roomId??"",r}};function pe(){return{metrics:""}}var R={encode(e,r=new c){return e.metrics!==""&&r.uint32(10).string(e.metrics),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=pe();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.metrics=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{metrics:d(e.metrics)?globalThis.String(e.metrics):""}},toJSON(e){let r={};return e.metrics!==""&&(r.metrics=e.metrics),r},create(e){return R.fromPartial(e??{})},fromPartial(e){let r=pe();return r.metrics=e.metrics??"",r}};function le(){return{roomId:"",componentId:""}}var b={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.componentId!==""&&r.uint32(18).string(e.componentId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=le();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.componentId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",componentId:d(e.componentId)?globalThis.String(e.componentId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.componentId!==""&&(r.componentId=e.componentId),r},create(e){return b.fromPartial(e??{})},fromPartial(e){let r=le();return r.roomId=e.roomId??"",r.componentId=e.componentId??"",r}};function Ie(){return{roomId:""}}var w={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=Ie();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),r},create(e){return w.fromPartial(e??{})},fromPartial(e){let r=Ie();return r.roomId=e.roomId??"",r}};function he(){return{roomId:""}}var E={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=he();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),r},create(e){return E.fromPartial(e??{})},fromPartial(e){let r=he();return r.roomId=e.roomId??"",r}};function me(){return{roomId:"",peerId:"",metadata:""}}var U={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==""&&r.uint32(18).string(e.peerId),e.metadata!==""&&r.uint32(26).string(e.metadata),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=me();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}case 3:{if(o!==26)break;n.metadata=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):"",metadata:d(e.metadata)?globalThis.String(e.metadata):""}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==""&&(r.peerId=e.peerId),e.metadata!==""&&(r.metadata=e.metadata),r},create(e){return U.fromPartial(e??{})},fromPartial(e){let r=me();return r.roomId=e.roomId??"",r.peerId=e.peerId??"",r.metadata=e.metadata??"",r}};function ve(){return{id:"",type:0,metadata:""}}var f={encode(e,r=new c){return e.id!==""&&r.uint32(10).string(e.id),e.type!==0&&r.uint32(16).int32(e.type),e.metadata!==""&&r.uint32(26).string(e.metadata),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ve();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.id=t.string();continue}case 2:{if(o!==16)break;n.type=t.int32();continue}case 3:{if(o!==26)break;n.metadata=t.string();continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{id:d(e.id)?globalThis.String(e.id):"",type:d(e.type)?Oe(e.type):0,metadata:d(e.metadata)?globalThis.String(e.metadata):""}},toJSON(e){let r={};return e.id!==""&&(r.id=e.id),e.type!==0&&(r.type=Re(e.type)),e.metadata!==""&&(r.metadata=e.metadata),r},create(e){return f.fromPartial(e??{})},fromPartial(e){let r=ve();return r.id=e.id??"",r.type=e.type??0,r.metadata=e.metadata??"",r}};function ke(){return{roomId:"",peerId:void 0,componentId:void 0,track:void 0}}var J={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==void 0&&r.uint32(18).string(e.peerId),e.componentId!==void 0&&r.uint32(26).string(e.componentId),e.track!==void 0&&f.encode(e.track,r.uint32(34).fork()).join(),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=ke();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}case 3:{if(o!==26)break;n.componentId=t.string();continue}case 4:{if(o!==34)break;n.track=f.decode(t,t.uint32());continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):void 0,componentId:d(e.componentId)?globalThis.String(e.componentId):void 0,track:d(e.track)?f.fromJSON(e.track):void 0}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==void 0&&(r.peerId=e.peerId),e.componentId!==void 0&&(r.componentId=e.componentId),e.track!==void 0&&(r.track=f.toJSON(e.track)),r},create(e){return J.fromPartial(e??{})},fromPartial(e){let r=ke();return r.roomId=e.roomId??"",r.peerId=e.peerId??void 0,r.componentId=e.componentId??void 0,r.track=e.track!==void 0&&e.track!==null?f.fromPartial(e.track):void 0,r}};function Se(){return{roomId:"",peerId:void 0,componentId:void 0,track:void 0}}var y={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==void 0&&r.uint32(18).string(e.peerId),e.componentId!==void 0&&r.uint32(26).string(e.componentId),e.track!==void 0&&f.encode(e.track,r.uint32(34).fork()).join(),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=Se();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}case 3:{if(o!==26)break;n.componentId=t.string();continue}case 4:{if(o!==34)break;n.track=f.decode(t,t.uint32());continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):void 0,componentId:d(e.componentId)?globalThis.String(e.componentId):void 0,track:d(e.track)?f.fromJSON(e.track):void 0}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==void 0&&(r.peerId=e.peerId),e.componentId!==void 0&&(r.componentId=e.componentId),e.track!==void 0&&(r.track=f.toJSON(e.track)),r},create(e){return y.fromPartial(e??{})},fromPartial(e){let r=Se();return r.roomId=e.roomId??"",r.peerId=e.peerId??void 0,r.componentId=e.componentId??void 0,r.track=e.track!==void 0&&e.track!==null?f.fromPartial(e.track):void 0,r}};function _e(){return{roomId:"",peerId:void 0,componentId:void 0,track:void 0}}var D={encode(e,r=new c){return e.roomId!==""&&r.uint32(10).string(e.roomId),e.peerId!==void 0&&r.uint32(18).string(e.peerId),e.componentId!==void 0&&r.uint32(26).string(e.componentId),e.track!==void 0&&f.encode(e.track,r.uint32(34).fork()).join(),r},decode(e,r){let t=e instanceof a?e:new a(e),i=r===void 0?t.len:t.pos+r,n=_e();for(;t.pos<i;){let o=t.uint32();switch(o>>>3){case 1:{if(o!==10)break;n.roomId=t.string();continue}case 2:{if(o!==18)break;n.peerId=t.string();continue}case 3:{if(o!==26)break;n.componentId=t.string();continue}case 4:{if(o!==34)break;n.track=f.decode(t,t.uint32());continue}}if((o&7)===4||o===0)break;t.skip(o&7)}return n},fromJSON(e){return{roomId:d(e.roomId)?globalThis.String(e.roomId):"",peerId:d(e.peerId)?globalThis.String(e.peerId):void 0,componentId:d(e.componentId)?globalThis.String(e.componentId):void 0,track:d(e.track)?f.fromJSON(e.track):void 0}},toJSON(e){let r={};return e.roomId!==""&&(r.roomId=e.roomId),e.peerId!==void 0&&(r.peerId=e.peerId),e.componentId!==void 0&&(r.componentId=e.componentId),e.track!==void 0&&(r.track=f.toJSON(e.track)),r},create(e){return D.fromPartial(e??{})},fromPartial(e){let r=_e();return r.roomId=e.roomId??"",r.peerId=e.peerId??void 0,r.componentId=e.componentId??void 0,r.track=e.track!==void 0&&e.track!==null?f.fromPartial(e.track):void 0,r}};function d(e){return e!=null}});var H=Ve(Ee());export{nr as a,Be as b,Ve as c,H as d};
package/dist/index.d.mts CHANGED
@@ -7,7 +7,7 @@ import '@bufbuild/protobuf/wire';
7
7
  * @export
8
8
  * @interface Peer
9
9
  */
10
- interface Peer {
10
+ interface Peer$1 {
11
11
  /**
12
12
  * Assigned peer id
13
13
  * @type {string}
@@ -100,12 +100,6 @@ interface RoomConfig {
100
100
  * @memberof RoomConfig
101
101
  */
102
102
  'peerlessPurgeTimeout'?: number | null;
103
- /**
104
- * Custom id used for identifying room within Fishjam. Must be unique across all rooms. If not provided, random UUID is generated.
105
- * @type {string}
106
- * @memberof RoomConfig
107
- */
108
- 'roomId'?: string | null;
109
103
  /**
110
104
  * Enforces video codec for each peer in the room
111
105
  * @type {string}
@@ -197,8 +191,27 @@ interface TypedEventEmitter<Events extends EventMap> {
197
191
  setMaxListeners (maxListeners: number): this
198
192
  }
199
193
 
194
+ declare const brand: unique symbol;
195
+ /**
196
+ * Branded type helper
197
+ */
198
+ type Brand<T, TBrand extends string> = T & {
199
+ [brand]: TBrand;
200
+ };
201
+ /**
202
+ * ID of the Room.
203
+ * Room can be created with {@link FishjamClient.createRoom}.
204
+ */
205
+ type RoomId = Brand<string, 'RoomId'>;
206
+ /**
207
+ * ID of Peer. Peer is associated with Room and can be created with {@link FishjamClient.createPeer}.
208
+ */
209
+ type PeerId = Brand<string, 'PeerId'>;
210
+ type Peer = Omit<Peer$1, 'id'> & {
211
+ id: PeerId;
212
+ };
200
213
  type Room = {
201
- id: string;
214
+ id: RoomId;
202
215
  peers: Peer[];
203
216
  config: RoomConfig;
204
217
  };
@@ -207,32 +220,75 @@ type FishjamConfig = {
207
220
  managementToken: string;
208
221
  };
209
222
 
210
- declare const allowedNotifications: readonly ["roomCreated", "roomDeleted", "roomCrashed", "peerAdded", "peerDeleted", "peerConnected", "peerDisconnected", "peerMetadataUpdated", "peerCrashed", "trackAdded", "trackRemoved", "trackMetadataUpdated"];
223
+ type ExpectedEvents = 'roomCreated' | 'roomDeleted' | 'roomCrashed' | 'peerAdded' | 'peerDeleted' | 'peerConnected' | 'peerDisconnected' | 'peerMetadataUpdated' | 'peerCrashed' | 'trackAdded' | 'trackRemoved' | 'trackMetadataUpdated';
211
224
  type ErrorEventHandler = (msg: Error) => void;
212
225
  type CloseEventHandler = (code: number, reason: string) => void;
213
- type NotificationEvents = Record<(typeof allowedNotifications)[number], (message: ServerMessage) => void>;
226
+ type NotificationEvents = Record<ExpectedEvents, (message: ServerMessage) => void>;
214
227
  declare const FishjamWSNotifier_base: new () => TypedEventEmitter<NotificationEvents>;
228
+ /**
229
+ * Notifier object that can be used to get notified about various events related to the Fishjam App.
230
+ * @category Client
231
+ */
215
232
  declare class FishjamWSNotifier extends FishjamWSNotifier_base {
216
233
  private readonly client;
217
234
  constructor(config: FishjamConfig, onError: ErrorEventHandler, onClose: CloseEventHandler, onConnectionFailed: ErrorEventHandler);
218
235
  private dispatchNotification;
219
236
  private setupConnection;
220
- private isAllowedNotification;
237
+ private isExpectedEvent;
221
238
  }
222
239
 
240
+ /**
241
+ * Client class that allows to manage Rooms and Peers for a Fishjam App.
242
+ * It requires the Fishjam URL and management token that can be retrieved from the Fishjam Dashboard.
243
+ * @category Client
244
+ */
223
245
  declare class FishjamClient {
224
246
  private readonly roomApi;
247
+ /**
248
+ * Create new instance of Fishjam Client.
249
+ *
250
+ * Example usage:
251
+ * ```
252
+ * const fishjamClient = new FishjamClient({
253
+ * fishjamUrl: fastify.config.FISHJAM_URL,
254
+ * managementToken: fastify.config.FISHJAM_SERVER_TOKEN,
255
+ * });
256
+ * ```
257
+ */
225
258
  constructor(config: FishjamConfig);
226
- createPeer(roomId: string, options?: PeerOptions): Promise<{
259
+ /**
260
+ * Create a new room. All peers connected to the same room will be able to send/receive streams to each other.
261
+ */
262
+ createRoom(config?: RoomConfig): Promise<Room>;
263
+ /**
264
+ * Delete an existing room. All peers connected to this room will be disconnected and removed.
265
+ */
266
+ deleteRoom(roomId: RoomId): Promise<void>;
267
+ /**
268
+ * Get a list of all existing rooms.
269
+ */
270
+ getAllRooms(): Promise<Room[]>;
271
+ /**
272
+ * Create a new peer assigned to a room.
273
+ */
274
+ createPeer(roomId: RoomId, options?: PeerOptions): Promise<{
227
275
  peer: Peer;
228
276
  peerToken: string;
229
277
  }>;
230
- createRoom(config?: RoomConfig): Promise<Room>;
231
- getAllRooms(): Promise<Room[]>;
232
- getRoom(roomId: string): Promise<Room>;
233
- deletePeer(roomId: string, peerId: string): Promise<void>;
234
- deleteRoom(roomId: string): Promise<void>;
235
- refreshPeerToken(roomId: string, peerId: string): Promise<string>;
278
+ /**
279
+ * Get details about a given room.
280
+ */
281
+ getRoom(roomId: RoomId): Promise<Room>;
282
+ /**
283
+ * Delete a peer - this will also disconnect the peer from the room.
284
+ */
285
+ deletePeer(roomId: RoomId, peerId: PeerId): Promise<void>;
286
+ /**
287
+ * Refresh the peer token for an already existing peer.
288
+ * If an already created peer has not been connected to the room for more than 24 hours, the token will become invalid. This method can be used to generate a new peer token for the existing peer.
289
+ * @returns refreshed peer token
290
+ */
291
+ refreshPeerToken(roomId: RoomId, peerId: PeerId): Promise<string>;
236
292
  }
237
293
 
238
294
  declare class FishjamBaseException extends Error {
@@ -256,4 +312,4 @@ declare class ServiceUnavailableException extends FishjamBaseException {
256
312
  declare class UnknownException extends FishjamBaseException {
257
313
  }
258
314
 
259
- export { BadRequestException, FishjamBaseException, FishjamClient, type FishjamConfig, FishjamNotFoundException, FishjamWSNotifier, ForbiddenException, type Peer, PeerNotFoundException, type PeerOptions, PeerStatus, type Room, type RoomConfig, RoomNotFoundException, ServiceUnavailableException, UnauthorizedException, UnknownException };
315
+ export { BadRequestException, type Brand, type CloseEventHandler, type ErrorEventHandler, type ExpectedEvents, FishjamBaseException, FishjamClient, type FishjamConfig, FishjamNotFoundException, FishjamWSNotifier, ForbiddenException, type NotificationEvents, type Peer, type PeerId, PeerNotFoundException, type PeerOptions, PeerStatus, type Room, type RoomConfig, RoomConfigVideoCodecEnum, type RoomId, RoomNotFoundException, ServiceUnavailableException, UnauthorizedException, UnknownException };
package/dist/index.d.ts CHANGED
@@ -7,7 +7,7 @@ import '@bufbuild/protobuf/wire';
7
7
  * @export
8
8
  * @interface Peer
9
9
  */
10
- interface Peer {
10
+ interface Peer$1 {
11
11
  /**
12
12
  * Assigned peer id
13
13
  * @type {string}
@@ -100,12 +100,6 @@ interface RoomConfig {
100
100
  * @memberof RoomConfig
101
101
  */
102
102
  'peerlessPurgeTimeout'?: number | null;
103
- /**
104
- * Custom id used for identifying room within Fishjam. Must be unique across all rooms. If not provided, random UUID is generated.
105
- * @type {string}
106
- * @memberof RoomConfig
107
- */
108
- 'roomId'?: string | null;
109
103
  /**
110
104
  * Enforces video codec for each peer in the room
111
105
  * @type {string}
@@ -197,8 +191,27 @@ interface TypedEventEmitter<Events extends EventMap> {
197
191
  setMaxListeners (maxListeners: number): this
198
192
  }
199
193
 
194
+ declare const brand: unique symbol;
195
+ /**
196
+ * Branded type helper
197
+ */
198
+ type Brand<T, TBrand extends string> = T & {
199
+ [brand]: TBrand;
200
+ };
201
+ /**
202
+ * ID of the Room.
203
+ * Room can be created with {@link FishjamClient.createRoom}.
204
+ */
205
+ type RoomId = Brand<string, 'RoomId'>;
206
+ /**
207
+ * ID of Peer. Peer is associated with Room and can be created with {@link FishjamClient.createPeer}.
208
+ */
209
+ type PeerId = Brand<string, 'PeerId'>;
210
+ type Peer = Omit<Peer$1, 'id'> & {
211
+ id: PeerId;
212
+ };
200
213
  type Room = {
201
- id: string;
214
+ id: RoomId;
202
215
  peers: Peer[];
203
216
  config: RoomConfig;
204
217
  };
@@ -207,32 +220,75 @@ type FishjamConfig = {
207
220
  managementToken: string;
208
221
  };
209
222
 
210
- declare const allowedNotifications: readonly ["roomCreated", "roomDeleted", "roomCrashed", "peerAdded", "peerDeleted", "peerConnected", "peerDisconnected", "peerMetadataUpdated", "peerCrashed", "trackAdded", "trackRemoved", "trackMetadataUpdated"];
223
+ type ExpectedEvents = 'roomCreated' | 'roomDeleted' | 'roomCrashed' | 'peerAdded' | 'peerDeleted' | 'peerConnected' | 'peerDisconnected' | 'peerMetadataUpdated' | 'peerCrashed' | 'trackAdded' | 'trackRemoved' | 'trackMetadataUpdated';
211
224
  type ErrorEventHandler = (msg: Error) => void;
212
225
  type CloseEventHandler = (code: number, reason: string) => void;
213
- type NotificationEvents = Record<(typeof allowedNotifications)[number], (message: ServerMessage) => void>;
226
+ type NotificationEvents = Record<ExpectedEvents, (message: ServerMessage) => void>;
214
227
  declare const FishjamWSNotifier_base: new () => TypedEventEmitter<NotificationEvents>;
228
+ /**
229
+ * Notifier object that can be used to get notified about various events related to the Fishjam App.
230
+ * @category Client
231
+ */
215
232
  declare class FishjamWSNotifier extends FishjamWSNotifier_base {
216
233
  private readonly client;
217
234
  constructor(config: FishjamConfig, onError: ErrorEventHandler, onClose: CloseEventHandler, onConnectionFailed: ErrorEventHandler);
218
235
  private dispatchNotification;
219
236
  private setupConnection;
220
- private isAllowedNotification;
237
+ private isExpectedEvent;
221
238
  }
222
239
 
240
+ /**
241
+ * Client class that allows to manage Rooms and Peers for a Fishjam App.
242
+ * It requires the Fishjam URL and management token that can be retrieved from the Fishjam Dashboard.
243
+ * @category Client
244
+ */
223
245
  declare class FishjamClient {
224
246
  private readonly roomApi;
247
+ /**
248
+ * Create new instance of Fishjam Client.
249
+ *
250
+ * Example usage:
251
+ * ```
252
+ * const fishjamClient = new FishjamClient({
253
+ * fishjamUrl: fastify.config.FISHJAM_URL,
254
+ * managementToken: fastify.config.FISHJAM_SERVER_TOKEN,
255
+ * });
256
+ * ```
257
+ */
225
258
  constructor(config: FishjamConfig);
226
- createPeer(roomId: string, options?: PeerOptions): Promise<{
259
+ /**
260
+ * Create a new room. All peers connected to the same room will be able to send/receive streams to each other.
261
+ */
262
+ createRoom(config?: RoomConfig): Promise<Room>;
263
+ /**
264
+ * Delete an existing room. All peers connected to this room will be disconnected and removed.
265
+ */
266
+ deleteRoom(roomId: RoomId): Promise<void>;
267
+ /**
268
+ * Get a list of all existing rooms.
269
+ */
270
+ getAllRooms(): Promise<Room[]>;
271
+ /**
272
+ * Create a new peer assigned to a room.
273
+ */
274
+ createPeer(roomId: RoomId, options?: PeerOptions): Promise<{
227
275
  peer: Peer;
228
276
  peerToken: string;
229
277
  }>;
230
- createRoom(config?: RoomConfig): Promise<Room>;
231
- getAllRooms(): Promise<Room[]>;
232
- getRoom(roomId: string): Promise<Room>;
233
- deletePeer(roomId: string, peerId: string): Promise<void>;
234
- deleteRoom(roomId: string): Promise<void>;
235
- refreshPeerToken(roomId: string, peerId: string): Promise<string>;
278
+ /**
279
+ * Get details about a given room.
280
+ */
281
+ getRoom(roomId: RoomId): Promise<Room>;
282
+ /**
283
+ * Delete a peer - this will also disconnect the peer from the room.
284
+ */
285
+ deletePeer(roomId: RoomId, peerId: PeerId): Promise<void>;
286
+ /**
287
+ * Refresh the peer token for an already existing peer.
288
+ * If an already created peer has not been connected to the room for more than 24 hours, the token will become invalid. This method can be used to generate a new peer token for the existing peer.
289
+ * @returns refreshed peer token
290
+ */
291
+ refreshPeerToken(roomId: RoomId, peerId: PeerId): Promise<string>;
236
292
  }
237
293
 
238
294
  declare class FishjamBaseException extends Error {
@@ -256,4 +312,4 @@ declare class ServiceUnavailableException extends FishjamBaseException {
256
312
  declare class UnknownException extends FishjamBaseException {
257
313
  }
258
314
 
259
- export { BadRequestException, FishjamBaseException, FishjamClient, type FishjamConfig, FishjamNotFoundException, FishjamWSNotifier, ForbiddenException, type Peer, PeerNotFoundException, type PeerOptions, PeerStatus, type Room, type RoomConfig, RoomNotFoundException, ServiceUnavailableException, UnauthorizedException, UnknownException };
315
+ export { BadRequestException, type Brand, type CloseEventHandler, type ErrorEventHandler, type ExpectedEvents, FishjamBaseException, FishjamClient, type FishjamConfig, FishjamNotFoundException, FishjamWSNotifier, ForbiddenException, type NotificationEvents, type Peer, type PeerId, PeerNotFoundException, type PeerOptions, PeerStatus, type Room, type RoomConfig, RoomConfigVideoCodecEnum, type RoomId, RoomNotFoundException, ServiceUnavailableException, UnauthorizedException, UnknownException };