openrtc 2.9.4 → 2.9.6
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/{WasmBridge-42DIXTE6.js → WasmBridge-3TYL6SE7.js} +1 -1
- package/dist/{chunk-US64VGDU.js → chunk-TOKXRZSS.js} +1 -1
- package/dist/external-broadcast.js +1 -1
- package/dist/index.js +1 -1
- package/dist/{openrtc-4UMTYB7M.js → openrtc-DW7MUYZN.js} +1 -1
- package/dist/openrtc_bg.wasm +0 -0
- package/dist/runtime/WasmRuntimeAdapter.js +1 -1
- package/dist/runtime/factories.js +1 -1
- package/dist/testing.js +1 -1
- package/native/darwin-arm64/openrtc-node-host +0 -0
- package/native/darwin-arm64/openrtc-node-host.manifest.json +4 -4
- package/native/darwin-x64/openrtc-node-host +0 -0
- package/native/darwin-x64/openrtc-node-host.manifest.json +4 -4
- package/native/linux-x64/openrtc-node-host +0 -0
- package/native/linux-x64/openrtc-node-host.manifest.json +4 -4
- package/package.json +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
export{b as WasmBridge,a as loadBrowserWasmRuntimeModule}from'./chunk-
|
|
1
|
+
export{b as WasmBridge,a as loadBrowserWasmRuntimeModule}from'./chunk-TOKXRZSS.js';import'./chunk-AYHD4X2R.js';import'./chunk-DMCUS3TY.js';import'./chunk-XMYBBLYK.js';import'./chunk-OT7IPLZE.js';import'./chunk-OWKAJPOI.js';import'./chunk-COXQYBTI.js';import'./chunk-L2ZZXECX.js';import'./chunk-CCCYE3XN.js';import'./chunk-JPBW67B3.js';import'./chunk-F5ORG763.js';import'./chunk-WALOTASO.js';import'./chunk-2GX6GB6L.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import {a as a$1}from'./chunk-AYHD4X2R.js';import {o,b as b$1,a,t,m,g,x,y,h,z,B,C,F,G,H,d as d$1,e as e$1}from'./chunk-DMCUS3TY.js';import {c,e,d,f,b as b$2}from'./chunk-XMYBBLYK.js';import {a as a$2}from'./chunk-OT7IPLZE.js';import {a as a$3}from'./chunk-L2ZZXECX.js';import {c as c$1}from'./chunk-CCCYE3XN.js';import {a as a$4}from'./chunk-JPBW67B3.js';function M(l){if(!l)return null;let e=2166136261;for(let t=0;t<l.length;t+=1)e^=l.charCodeAt(t),e=Math.imul(e,16777619);return `fp-${(e>>>0).toString(16).padStart(8,"0")}`}var E=class E{constructor(e){this.deps=e;this.startedAutoConnectKey=null;this.autoConnectGeneration=0;this.browserAutoConnectUnsubscribe=null;this.desiredPeerRevision=0;this.desiredPeerSignature=null;this.desiredPeerSubmission=null;this.desiredPeerSubmissionQueue=Promise.resolve();this.queuedDesiredPeers=null;this.desiredPeersByDeviceId=new Map;this.wakeSubmission=null;this.presenceState=null;this.presenceStartGeneration=0;this.localExcludedPeers=new Set;this.localDesiredPeerDeviceId=null;for(let t of e.initialExcludedPeers??[]){let i=t.trim().toLowerCase();i&&this.localExcludedPeers.add(i);}}stop(){this.stopAutoConnect(),this.stopPresenceLoop();}get autoConnectKey(){return this.startedAutoConnectKey}set autoConnectKey(e){e!==this.startedAutoConnectKey&&(this.autoConnectGeneration+=1),this.startedAutoConnectKey=e;}get presenceLoopState(){return this.presenceState}set presenceLoopState(e){this.presenceState=e;}stopPresence(){this.stopPresenceLoop();}updatePresenceLoopState(e){this.presenceState=e;}startAutoConnect(e,t){if(this.deps.isTicketOnlyMode())return;let i=t.trim()||this.deps.resolveWebLogicalDeviceId(),n=`${e}::${i}`;if(this.startedAutoConnectKey===n&&this.browserAutoConnectUnsubscribe)return;this.stopAutoConnect(),this.localDesiredPeerDeviceId=i,this.startedAutoConnectKey=n;let o=this.autoConnectGeneration;this.browserAutoConnectUnsubscribe=this.deps.getCoordinationSignaling().onDevicesChange(r=>{o===this.autoConnectGeneration&&this.submitDesiredPeers(r);},this.currentLocalNodeId()??void 0);}wakeRustAutoConnectOwner(){if(this.deps.isTicketOnlyMode()||!this.startedAutoConnectKey||this.wakeSubmission)return false;let e=this.autoConnectGeneration,t=this.deps.waitForWasmClient(500).then(async i=>{e===this.autoConnectGeneration&&i&&typeof i.wake_browser_auto_connect=="function"&&await i.wake_browser_auto_connect();}).finally(()=>{this.wakeSubmission===t&&(this.wakeSubmission=null);});return this.wakeSubmission=t,true}submitDesiredPeers(e){if(!this.startedAutoConnectKey)return;let i=this.normalizeDesiredPeers(e);this.rememberDesiredPeers(i)&&(this.queuedDesiredPeers=i,this.flushDesiredPeerSubmission());}observeDesiredPeerProjection(e){this.rememberDesiredPeers(this.normalizeDesiredPeers(e));}async submitDesiredPeerProjection(e,t){if(!Number.isSafeInteger(e)||e<=0)throw new Error("Desired-peer projection revision must be a positive safe integer.");let i=this.startedAutoConnectKey;if(!i)throw new Error("Cannot submit a desired-peer projection before managed auto-connect starts.");let n=this.normalizeDesiredPeers(t);this.rememberDesiredPeers(n),this.queuedDesiredPeers=null,this.desiredPeerRevision=Math.max(this.desiredPeerRevision,e),await this.enqueueDesiredPeerSubmission(i,e,n);}async handleRoomArchitectureChange(){let e=this.startedAutoConnectKey;if(this.deps.isTicketOnlyMode()||!e)return false;let t=Array.from(this.desiredPeersByDeviceId.values());this.queuedDesiredPeers=null;let i=++this.desiredPeerRevision;return await this.enqueueDesiredPeerSubmission(e,i,t),true}rememberDesiredPeers(e){this.desiredPeersByDeviceId=new Map(e.map(i=>[i.deviceId,i]));let t=JSON.stringify(e);return t===this.desiredPeerSignature?false:(this.desiredPeerSignature=t,this.deps.onDesiredPeersChanged?.(),true)}resolveDesiredPeer(e,t){let i=typeof e=="string"?e.trim():"",n=typeof t=="string"?t.trim():"";if(i){let o=this.desiredPeersByDeviceId.get(i);if(o&&(!n||!o.nodeId||o.nodeId===n))return o}return n?Array.from(this.desiredPeersByDeviceId.values()).find(o=>o.nodeId===n)??null:null}flushDesiredPeerSubmission(){if(this.desiredPeerSubmission||!this.queuedDesiredPeers||!this.startedAutoConnectKey)return;let e=this.startedAutoConnectKey,t=this.queuedDesiredPeers,i=++this.desiredPeerRevision;this.queuedDesiredPeers=null,this.desiredPeerSubmission=this.enqueueDesiredPeerSubmission(e,i,t).catch(()=>{}).finally(()=>{this.desiredPeerSubmission=null,this.flushDesiredPeerSubmission();});}normalizeDesiredPeers(e){return (Array.isArray(e)?e:[]).map(t=>({deviceId:String(t?.deviceId??"").trim(),nodeId:typeof t?.nodeId=="string"&&t.nodeId.trim()||null,ticket:typeof t?.ticket=="string"&&t.ticket.trim()||null,online:t?.online===true,sessionId:typeof t?.sessionId=="string"&&t.sessionId.trim()||null,excludedPeers:Array.isArray(t?.excludedPeers)?[...new Set(t.excludedPeers.map(i=>String(i??"").trim().toLowerCase()).filter(Boolean))].sort():[],devicePublicKeyJwk:t?.devicePublicKeyJwk,topologyRole:t?.topologyRole,topologyRevision:t?.topologyRevision})).filter(t=>t.deviceId.length>0).sort((t,i)=>t.deviceId.localeCompare(i.deviceId))}enqueueDesiredPeerSubmission(e,t,i,n=this.roomGossipFanoutEnabled()){let o=this.autoConnectGeneration,r=this.desiredPeerSubmissionQueue.then(async()=>{if(o!==this.autoConnectGeneration||this.startedAutoConnectKey!==e)return;let s=await this.deps.waitForWasmClient();if(!(o!==this.autoConnectGeneration||this.startedAutoConnectKey!==e)){if(!s||typeof s.submit_browser_desired_peers!="function"){this.deps.warnMissingWasmOnce("submitBrowserDesiredPeers");return}if(await Promise.all(i.map(async c=>{if(c.ticket)try{await this.deps.rememberRouteRepairTokenFromTicket(c.ticket);}catch(a){console.warn("[WasmSignaling] failed to retain desired-peer admission token",{deviceId:c.deviceId,nodeId:c.nodeId,error:a});}})),!(o!==this.autoConnectGeneration||this.startedAutoConnectKey!==e))if(n){if(typeof s.submit_browser_desired_peers_with_sparse_fanout!="function"){await s.submit_browser_desired_peers(t,JSON.stringify([])),this.deps.warnMissingWasmOnce("submitBrowserDesiredPeersWithSparseFanout");return}if(!this.deps.capabilityKey)throw new Error("Sparse fanout requires an explicit capability avenue.");await s.submit_browser_desired_peers_with_sparse_fanout(t,JSON.stringify(i),this.deps.capabilityKey,this.localDesiredPeerDeviceId,this.deps.localDeviceKeyX,true);}else await s.submit_browser_desired_peers(t,JSON.stringify(i));}});return this.desiredPeerSubmissionQueue=r.catch(s=>{console.warn("[WasmSignaling] failed to submit browser desired peers to Rust",{revision:t,error:s});}),r}roomGossipFanoutEnabled(){return typeof this.deps.roomGossipFanout=="function"?this.deps.roomGossipFanout():this.deps.roomGossipFanout===true}async excludeAutoConnect(e,t){let i=await this.deps.waitForWasmClient();i&&typeof i.set_auto_connect_excluded=="function"&&await i.set_auto_connect_excluded(e,t),await this.recordAutoConnectExcludedForPresence(e,t);}async installInitialAutoConnectExclusions(e){if(typeof e?.set_auto_connect_excluded=="function")for(let t of this.currentExcludedPeersSnapshot())await e.set_auto_connect_excluded(t,true);}async recordAutoConnectExcludedForPresence(e,t){let i=e.trim().toLowerCase();if(!i)return;t?this.localExcludedPeers.add(i):this.localExcludedPeers.delete(i);let n=this.deps.resolveWebLogicalDeviceId();n&&await this.deps.updateExcludedPeers(n,this.currentExcludedPeersSnapshot());}async startPresenceLoop(e,t,i,n,o){if(this.deps.isTicketOnlyMode())return;this.stopPresenceLoop();let r=this.presenceStartGeneration;this.presenceState={userId:e,localNodeId:t,ticket:n,metadata:o,deviceName:i};let s=this.deps.resolveWebLogicalDeviceId(),c=await this.deps.withWebPresenceMetadata(o,s);r!==this.presenceStartGeneration||this.presenceState===null||await this.deps.updatePresence(t,n,true,E.PRESENCE_LEASE_MS,c,i);}stopAutoConnect(){this.autoConnectGeneration+=1,this.browserAutoConnectUnsubscribe?.(),this.browserAutoConnectUnsubscribe=null,this.startedAutoConnectKey=null,this.localDesiredPeerDeviceId=null,this.desiredPeerSignature=null,this.queuedDesiredPeers=null,this.desiredPeersByDeviceId.clear(),this.wakeSubmission=null;}currentExcludedPeersSnapshot(){return Array.from(this.localExcludedPeers).sort()}currentLocalNodeId(){let e=this.presenceState?.localNodeId;return typeof e=="string"&&e.trim()||null}stopPresenceLoop(){this.presenceStartGeneration+=1,this.presenceState=null;}};E.PRESENCE_LEASE_MS=15*6e4;var R=E;function oe(){if(!(typeof window>"u"))try{if(new URL(import.meta.url).pathname.includes("/node_modules/.vite/deps/"))return new URL("/node_modules/openrtc/dist/openrtc_bg.wasm",window.location.origin)}catch{}}var b;async function re(){let l=await import('./openrtc-4UMTYB7M.js');return {initWasm:e=>{if(!b){let t=Promise.resolve().then(()=>l.default(e??oe()));b=t,t.catch(()=>{b===t&&(b=void 0);});}return b},WasmClient:l.WasmClient,start:l.start}}function se(l){try{let e=l.replace(/-/g,"+").replace(/_/g,"/"),t=(4-e.length%4)%4,i=e+"=".repeat(t);if(typeof atob=="function")return JSON.parse(atob(i));let n=globalThis.Buffer;if(n)return JSON.parse(n.from(i,"base64").toString("utf8"))}catch{return null}return null}function ae(l){let e=typeof l=="string"?l.trim():"";if(!e)return {present:false};let t=e.lastIndexOf("."),i=t>=0?e.slice(0,t):e,n=t>=0?e.slice(t+1):null,o=n?se(n):null,r=o&&typeof o.t=="string"&&o.t.trim().length>0?o.t.trim():null,s=o&&typeof o.s=="string"&&o.s.trim().length>0?o.s.trim():null,c=o&&typeof o.m=="number"&&Number.isFinite(o.m)?o.m:null;return {present:true,irohFingerprint:M(i),tokenFingerprint:M(r),tokenSuffixFingerprint:M(n),scope:s,maxConnections:c}}function T(l,e,t={}){let i=typeof l.finishSend=="function"?l.finishSend.bind(l):typeof l.finish_send=="function"?l.finish_send.bind(l):null,n=typeof l.cancelSend=="function"?l.cancelSend.bind(l):typeof l.cancel_send=="function"?l.cancel_send.bind(l):null;if(!i){if(t.requireFinish===true)throw new Error("WASM peer stream is missing finishSend(); rebuild the current OpenRTC WASM before sending application data");return e}let o=e.getWriter(),r=new WritableStream({write:s=>o.write(s),async close(){await o.close(),await i();},async abort(s){await n?.(),await o.abort(s);}});return a$4(r,n)}var p=class p{constructor(e$1){this.spaceNamespaceIdPromise=null;this.cachedSpaceNamespaceId=null;this.authListeners=[];this.wasmClient=null;this.createdAtMs=Date.now();this.missingWasmWarnings=new Set;this.wasmReadyWarningDelayMs=15e3;this.browserCoordinationSignaling=null;this.effectiveRoomArchitecture="mesh";this.lastObservedFirebaseUserId=null;this.sessionReaders=new Set;this.authContext=null;this.injectedBrowserAuthSessionActive=false;this.hasSyncedAuthToWasmClient=false;this.lastWasmAuthUserId=null;this.lastWasmAuthToken=null;this.lastDeliveredConnectionStates=new Map;this.authScopedRuntimeGeneration=0;this.coreClient=null;this.applicationRouteEscalations=new Map;this.applicationRouteEscalationAttemptKeys=new Map;this.applicationRouteEscalationUnsubscribe=null;this.routeSubscriptionGeneration=-1;this.applicationRouteEscalationSubscriptionEpoch=0;this.appTag=c(e$1),this.options={...e$1,appTag:this.appTag,authMode:d(e$1),projectId:e(e$1)},this.effectiveRoomArchitecture=e$1.coordinationRoomArchitecture==="sparse"||e$1.coordinationRoomGossipFanout===true?"sparse":"mesh",this.coordinationHost=new b$1({appTag:this.appTag,projectId:this.options.projectId,discoveryMode:this.options.discoveryMode,signalingMode:this.options.signalingMode,gateway:this.options.coordinationGateway,avenueOverride:this.options.coordinationAvenueOverride,roomArchitecture:this.options.coordinationRoomArchitecture,initialExcludedPeers:this.options.initialAutoConnectExcludedDeviceIds,resolveSpaceNamespaceId:()=>this.ensureSpaceNamespaceIdPromise(),getCurrentUserId:()=>this.getCurrentUserId(),getAuthToken:async(r=false)=>this.currentUser?.getToken?.(r)??null,getAppCheckToken:async(r=false)=>{let s=this.authContext?.appCheckTokenProvider??this.options.attestationTokenProvider;return s?s(r):a().getAppCheckToken(r)},getLocalDeviceId:()=>this.resolveWebLogicalDeviceId(),getDefaultDeviceName:()=>this.getDefaultBrowserDeviceName(),getPlatformType:()=>this.options.coordinationPlatformType??"web",normalizeDevice:(r,s)=>this.normalizeDevice(r,s)});let n=this.options.coordinationRoomGossipFanout===true||this.options.coordinationRoomArchitecture==="auto"||this.options.coordinationRoomArchitecture==="sparse"?c$1(this.options.coordinationAvenueOverride).key:void 0;if(this.presenceManager=new R({isTicketOnlyMode:()=>this.isTicketOnlyMode(),waitForWasmClient:(r,s)=>this.waitForWasmClient(r,s),warnMissingWasmOnce:r=>this.warnMissingWasmOnce(r),resolveWebLogicalDeviceId:()=>this.resolveWebLogicalDeviceId(),withWebPresenceMetadata:(r,s)=>this.withWebPresenceMetadata(r,s),updatePresence:(r,s,c,a,d,h)=>this.updatePresence(r,s,c,a,d,h),updateExcludedPeers:(r,s)=>this.getCoordinationSignaling().updateDevice(r,{excludedPeers:s}),getCoordinationSignaling:()=>this.getCoordinationSignaling(),rememberRouteRepairTokenFromTicket:r=>this.coreClient?.rememberRouteRepairTokenFromTicket?.(r)??Promise.resolve(false),onDesiredPeersChanged:()=>this.retryManagedApplicationRouteEscalations(),roomGossipFanout:()=>this.effectiveRoomArchitecture==="sparse",capabilityKey:n,localDeviceKeyX:this.options.coordinationDevicePublicKeyX,initialExcludedPeers:this.options.initialAutoConnectExcludedDeviceIds}),this.persistenceReady=Promise.resolve(),this.isTicketOnlyMode()||this.usesProviderNeutralGrant()){this.app=null,this.auth=null;return}let o=a();this.app=o.getApp(),this.auth=o.getAuth(),o.onAuthStateChanged(r=>{if(this.authContext)return;if(this.isSpaceMode()){this.authListeners.forEach(a=>a(this.toRuntimeIdentity(r)));return}let s=r?.uid??null,c=this.lastObservedFirebaseUserId;this.lastObservedFirebaseUserId=s,c&&c!==s&&this.stopAuthActivity({userId:c}),this.browserCoordinationSignaling?.handleScopeChange()??this.coordinationHost.handleScopeChange(),this.authListeners.forEach(a=>a(this.toRuntimeIdentity(r)));});}async loadBrowserWasmRuntime(){return re()}get tag(){return this.appTag}capabilities(){return t()}getDeviceIdentityStorageKey(){let e=f(this.options);return `${p.WEB_DEVICE_ID_STORAGE_PREFIX}_${e}`}getDeviceIdPersistenceMode(){return this.options.deviceIdPersistence??this.options.nodeIdPersistence??"persistent"}isTicketOnlyMode(){return this.options.signalingMode==="ticket-only"}usesProviderNeutralGrant(){return typeof this.options.coordinationGateway?.grantProvider=="function"}createRandomDeviceId(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`web-${Date.now()}-${Math.random().toString(36).slice(2,10)}`}resolveWebLogicalDeviceId(){let e=this.options.localDeviceId?.trim();if(e)return e;let t=this.getDeviceIdPersistenceMode();if(typeof localStorage>"u")return this.createRandomDeviceId();let i=this.getDeviceIdentityStorageKey(),n=Date.now(),o=null;try{let d=localStorage.getItem(i);o=d?JSON.parse(d):null;}catch{o=null;}let r=typeof o?.deviceId=="string"?o.deviceId.trim():"",s=typeof o?.expiresAt=="number"?o.expiresAt:void 0;if(t==="persistent"){let d=r||this.createRandomDeviceId();return localStorage.setItem(i,JSON.stringify({deviceId:d})),d}if(r&&typeof s=="number"&&s>n){let d=n+p.EPHEMERAL_DEVICE_ID_TTL_MS;return localStorage.setItem(i,JSON.stringify({deviceId:r,expiresAt:d})),r}let c=this.createRandomDeviceId(),a=n+p.EPHEMERAL_DEVICE_ID_TTL_MS;return localStorage.setItem(i,JSON.stringify({deviceId:c,expiresAt:a})),c}getDefaultBrowserDeviceName(){return this.options.deviceName?.trim()||(this.options.storagePrefix?`Web (${this.options.storagePrefix.replace(/_$/,"")})`:"Web Browser")}async getLocalDeviceInfo(){return {deviceId:this.resolveWebLogicalDeviceId(),deviceName:this.getDefaultBrowserDeviceName(),platformType:this.options.coordinationPlatformType??"web"}}getCoordinationSignaling(){return this.browserCoordinationSignaling??this.coordinationHost.getSignaling()}usesCoordinationGateway(){return this.coordinationHost.usesGateway()}setCoordinationHostAvailability(e){this.coordinationHost.setHostAvailability(e),this.browserCoordinationSignaling?.setHostAvailability?.(e);}async reconnectCoordinationAfterHostResume(){let e=this.browserCoordinationSignaling;if(e?.reconnectAfterHostResume){await e.reconnectAfterHostResume();return}await this.coordinationHost?.reconnectAfterHostResume();}async getCoordinationNativeTrustToken(e=false){return this.coordinationHost.getNativeTrustToken(e)}invalidateCoordinationNativeTrustToken(){this.coordinationHost.invalidateNativeTrustToken();}subscribeCoordinationNativeTrustToken(e,t){return this.coordinationHost.subscribeNativeTrustToken(e,t)}setCoordinationLocalDeviceId(e){if(!this.options.coordinationGateway)return;let t=e.trim();t&&(this.options.localDeviceId=t);}setCoordinationPlatformType(e){this.options.coordinationGateway&&(this.options.coordinationPlatformType=e);}async setCoordinationExcludedPeers(e){let t=this.resolveWebLogicalDeviceId();if(!t)throw new Error("The local device must be known before publishing peer exclusions.");await this.getCoordinationSignaling().updateDevice(t,{excludedPeers:e});}async joinCoordinationRoom(e,t,i){let n=this.getCoordinationSignaling();if(!n.joinCoordinationRoom)throw new Error("The active coordination provider does not support rooms.");await n.joinCoordinationRoom(e,t,i);}async leaveCoordinationRoom(e){await this.getCoordinationSignaling().leaveCoordinationRoom?.(e);}async getCoordinationRoomMembers(e){let t=this.getCoordinationSignaling();if(!t.getCoordinationRoomMembers)throw new Error("The active coordination provider does not support rooms.");return t.getCoordinationRoomMembers(e)}watchCoordinationRoomMembers(e,t){let i=this.getCoordinationSignaling();if(!i.watchCoordinationRoomMembers)throw new Error("The active coordination provider does not support rooms.");return i.watchCoordinationRoomMembers(e,t)}async withWebPresenceMetadata(e,t){let i;if(!e||!e.trim())i=JSON.stringify({deviceId:t});else {try{let n=JSON.parse(e);if(n&&typeof n=="object"&&!Array.isArray(n))return i=JSON.stringify({...n,deviceId:t}),await m(i)??i}catch{}i=JSON.stringify({deviceId:t,metadata:e});}return await m(i)??i}async setAuthContext(e){let t=this.injectedBrowserAuthSessionActive,i=this.authContext?.userId??null,n=e?.userId??null;if(this.authContext=e,!this.isTicketOnlyMode()&&!this.usesProviderNeutralGrant()&&e?.customToken?.trim()&&!(g()&&this.options.authMode==="external"&&typeof e.tokenProvider=="function"))try{await this.ensureBrowserPlatformAuth(e.userId,e.customToken.trim());}catch(o){console.warn("[WasmBridge] ensureBrowserPlatformAuth failed (non-fatal):",o);}else if(!this.isTicketOnlyMode()&&!this.usesProviderNeutralGrant()&&!e&&t)try{await this.auth?.signOut();}catch(o){console.warn("[WasmBridge] Failed to clear injected browser auth session:",o);}finally{this.injectedBrowserAuthSessionActive=false;}this.syncWasmAuthToken(),!this.isTicketOnlyMode()&&i!==n&&await(this.browserCoordinationSignaling?.handleScopeChange()??this.coordinationHost.handleScopeChange()),this.authListeners.forEach(o=>o(this.currentUser));}async ensureBrowserPlatformAuth(e,t){if((this.auth?.currentUser?.uid??null)===e){this.injectedBrowserAuthSessionActive=true;return}await a().signInWithCustomTokenValue(t),this.injectedBrowserAuthSessionActive=true;}syncWasmAuthToken(){let e=this.wasmClient?.setIdentityCredential??this.wasmClient?.set_auth_token;if(!this.wasmClient||typeof e!="function"||!this.authContext&&this.isSpaceMode())return;let t=this.authContext?.userId??null,i=this.authContext?.token,n=typeof i=="string"&&i.trim().length>0?i:null;if(!(this.hasSyncedAuthToWasmClient&&this.lastWasmAuthUserId===t&&this.lastWasmAuthToken===n)){if(this.lastWasmAuthUserId=t,this.lastWasmAuthToken=n,this.hasSyncedAuthToWasmClient=true,n===null&&typeof this.wasmClient.clearIdentityCredential=="function"){this.wasmClient.clearIdentityCredential();return}e.call(this.wasmClient,n);}}toRuntimeIdentity(e){return e?{id:e.uid,email:e.email,displayName:e.displayName,isAnonymous:e.isAnonymous,getToken:async(t=false)=>{try{return await e.getIdToken(t)}catch{return null}}}:null}getCurrentUserId(){return this.authContext?.userId?this.authContext.userId:this.isTicketOnlyMode()?null:this.auth?.currentUser?.uid??null}getCurrentUserIdForScope(){return this.getCurrentUserId()}getAuthContext(){return this.authContext}isSpaceMode(){return x(this.options)}getResolvedOptions(){return this.options}getDiscoveryScopeId(){if(this.isTicketOnlyMode())return null;let e=this.getCurrentUserId();return e||(this.isSpaceMode()?this.resolveWebLogicalDeviceId():null)}matchesTag(e){return y(e,this.appTag,this.isSpaceMode())}matchesLegacyOrCurrentTag(e){return this.matchesTag(e)}async stopSessionSubscriptions(){let e=Array.from(this.sessionReaders);this.sessionReaders.clear(),await Promise.allSettled(e.map(async t=>{try{await t.cancel();}catch{}}));}async stopRuntimeAuthScopedLoops(){let e=await this.waitForWasmClient(250);if(e)try{typeof e.stop_auth_scoped_activity=="function"?await e.stop_auth_scoped_activity():(typeof e.stop_presence_loop=="function"&&await e.stop_presence_loop(),typeof e.stop_auto_connect=="function"&&await e.stop_auto_connect());}catch(t){console.warn("[WasmSignaling] Failed to stop auth-scoped runtime loops:",t);}}async stopAuthActivity(e){h("WasmBridge.stopAuthActivity",{userId:e?.userId??null}),this.authScopedRuntimeGeneration+=1,this.stopApplicationRouteEscalationSubscription();let t=await this.waitForWasmClient(500);if(t&&typeof t.revoke_tokens_by_scope=="function")try{await t.revoke_tokens_by_scope("user-device");}catch(i){console.warn("[WasmBridge] user-device revoke during auth-scoped shutdown failed:",i);}this.presenceManager.stop(),this.browserCoordinationSignaling?.stopAuthActivity(),this.coordinationHost?.stopAuthActivity(),await this.stopSessionSubscriptions(),this.lastDeliveredConnectionStates.clear(),this.applicationRouteEscalations?.clear(),this.applicationRouteEscalationAttemptKeys?.clear(),await this.stopRuntimeAuthScopedLoops();}setWasmClient(e){this.wasmClient=e,this.coordinationHost.setWasmClient(e),this.lastWasmAuthUserId=null,this.lastWasmAuthToken=null,this.hasSyncedAuthToWasmClient=this.authContext===null,this.lastDeliveredConnectionStates.clear(),this.applicationRouteEscalations?.clear(),this.applicationRouteEscalationAttemptKeys?.clear(),this.syncWasmAuthToken();}async createBroadcastPublisher(){let e=await this.waitForWasmClient();if(!e)throw new Error("WASM broadcast publisher runtime is unavailable");return a$1.create(e)}async initializePersistentIrohProtocols(e){let t=await this.waitForWasmClient(),i=t?.__initPersistentIrohProtocols;if(typeof i!="function")throw new Error("This OpenRTC WASM host was built without persistent Iroh protocols");await i.call(t,e);}async createPersistentIrohNamespace(e,t){return (await this.requirePersistentProtocolHost()).__createPersistentIrohNamespace(BigInt(e),BigInt(t))}async importPersistentIrohTicket(e,t,i){return (await this.requirePersistentProtocolHost()).__importPersistentIrohTicket(e,BigInt(t),BigInt(i))}async sharePersistentIrohNamespace(e,t){return (await this.requirePersistentProtocolHost()).__sharePersistentIrohNamespace(e,t)}async removePersistentIrohNamespace(e,t,i){await(await this.requirePersistentProtocolHost()).__removePersistentIrohNamespace(e,BigInt(t),BigInt(i));}async putPersistentIrohBytes(e,t,i){return (await this.requirePersistentProtocolHost()).__putPersistentIrohBytes(e,t,i)}async setPersistentIrohHash(e,t,i,n){return (await this.requirePersistentProtocolHost()).__setPersistentIrohHash(e,t,i,BigInt(n))}async deletePersistentIrohPrefix(e,t){return (await this.requirePersistentProtocolHost()).__deletePersistentIrohPrefix(e,t)}async queryPersistentIrohNamespace(e,t){return (await this.requirePersistentProtocolHost()).__queryPersistentIrohNamespace(e,t)}async hydratePersistentIrohBlob(e){await(await this.requirePersistentProtocolHost()).__hydratePersistentIrohBlob(e);}async acknowledgePersistentIrohOutbox(e){await(await this.requirePersistentProtocolHost()).__acknowledgePersistentIrohOutbox(e);}async flushPersistentIrohProtocols(){await(await this.waitForWasmClient(500))?.__flushPersistentIrohProtocols?.();}async shutdownPersistentIrohProtocols(){await(await this.waitForWasmClient(500))?.__shutdownPersistentIrohProtocols?.();}async requirePersistentProtocolHost(){let e=await this.waitForWasmClient();if(!e||typeof e.__queryPersistentIrohNamespace!="function")throw new Error("This OpenRTC WASM host was built without persistent Iroh protocols");return e}warnMissingWasmOnce(e){!this.wasmClient&&Date.now()-this.createdAtMs<this.wasmReadyWarningDelayMs||this.missingWasmWarnings.has(e)||(this.missingWasmWarnings.add(e),console.warn(`[WasmSignaling] ${e} skipped: wasm client is not ready.`));}async waitForWasmClient(e=4e3,t=50){if(this.wasmClient)return this.wasmClient;let i=Date.now();for(;!this.wasmClient&&Date.now()-i<e;)await a$2(t);return this.wasmClient??null}normalizeDevice(e,t){return z(e,t)}normalizeDeviceRecord(e,t){return this.normalizeDevice(e,t)}getResolvedWebLogicalDeviceId(){return this.resolveWebLogicalDeviceId()}async encodeSparseFanoutMessage(e,t){let i=await this.waitForWasmClient(),n=this.options.coordinationDeviceSign;if(!i?.prepareSparseFanoutMessage||!i?.finalizeSparseFanoutMessage||!n)throw new Error("[OpenRTC] Browser sparse fanout signer is unavailable.");let o=await i.prepareSparseFanoutMessage(e,t),r=new Uint8Array(o.signingInput??o.signing_input??[]),s=await n(r);return new Uint8Array(await i.finalizeSparseFanoutMessage(String(o.requestId??o.request_id??""),s))}async acceptSparseFanoutMessage(e,t,i){let n=await this.waitForWasmClient();if(!n?.acceptSparseFanoutMessage)throw new Error("[OpenRTC] Browser sparse fanout verifier is unavailable.");let o=await n.acceptSparseFanoutMessage(e,t,i);return {payload:new Uint8Array(o.payload??[]),authorDeviceId:String(o.authorDeviceId??o.author_device_id??""),authorPeerId:String(o.authorPeerId??o.author_peer_id??""),topologyRevision:Number(o.topologyRevision??o.topology_revision),hop:Number(o.hop),forwardPeerIds:Array.isArray(o.forwardPeerIds??o.forward_peer_ids)?(o.forwardPeerIds??o.forward_peer_ids).map(String):[],forwardPeerLimit:Number(o.forwardPeerLimit??o.forward_peer_limit),forwardQueueCapacity:Number(o.forwardQueueCapacity??o.forward_queue_capacity),...o.forward==null?{}:{forward:new Uint8Array(o.forward)}}}async recordSparseFanoutForwardQueueDrop(e,t){let i=await this.waitForWasmClient();i?.recordSparseFanoutForwardQueueDrop&&await i.recordSparseFanoutForwardQueueDrop(e,t);}normalizeDeviceStatusSnapshot(e){return B(e)}normalizePeerSessionSnapshot(e){return C(e)}toBackendConnectionStateFromPeerSession(e){return F(e)}normalizeStateSnapshot(e){return G(e)}stabilizeConnectionState(e){let t=this.lastDeliveredConnectionStates.get(e.connectionId);return {...e,deviceId:e.deviceId??t?.deviceId??null,deviceIdHint:e.deviceIdHint??t?.deviceIdHint??null,remoteNodeId:e.remoteNodeId??t?.remoteNodeId??null,createdAt:e.createdAt??t?.createdAt,updatedAt:e.updatedAt??t?.updatedAt}}sameConnectionState(e,t){return H(e,t)}deliverConnectionState(e,t,i,n){let o=this.stabilizeConnectionState(e);this.lastDeliveredConnectionStates.set(o.connectionId,o);let s=(n??this.lastDeliveredConnectionStates).get(o.connectionId);this.sameConnectionState(s,o)||(n&&n.set(o.connectionId,o),t(o));}get browserPresenceLoopState(){return this.presenceManager.presenceLoopState}set browserPresenceLoopState(e){this.presenceManager.presenceLoopState=e;}get currentUser(){if(this.authContext?.userId){let e=this.authContext.token??null,t=this.authContext.tokenProvider;return {id:this.authContext.userId,getToken:async(i=false)=>{if(e&&(!i||!t))return e;if(t)try{let o=await t(i);if(o)return o}catch{}let n=this.isTicketOnlyMode()?null:this.auth?.currentUser??null;if(n&&n.uid===this.authContext?.userId)try{return await n.getIdToken(i)}catch{return null}return null}}}return this.isTicketOnlyMode()?null:this.toRuntimeIdentity(this.auth?.currentUser??null)}onAuthChange(e){return this.authListeners.push(e),e(this.currentUser),()=>{this.authListeners=this.authListeners.filter(t=>t!==e);}}async checkForSSOToken(){this.isTicketOnlyMode()||this.usesProviderNeutralGrant()||await a().checkForSSOToken();}async waitForAuth(){this.isTicketOnlyMode()||this.usesProviderNeutralGrant()||this.isSpaceMode()||this.authContext?.userId||this.auth?.currentUser||await a().waitForAuth();}async signInAnonymously(){if(!this.isTicketOnlyMode()){if(this.options.authMode!=="anonymous")throw new Error(`[pluto-rtc] Anonymous sign-in is disabled when authMode=${this.options.authMode}.`);await a().signInAnonymously();}}async signInWithPluto(){if(this.isTicketOnlyMode())throw new Error('[openrtc] Pluto sign-in is unavailable when signalingMode="ticket-only".');await a().signInWithPluto();}async signOut(){let e=this.getCurrentUserId();await this.stopAuthActivity({userId:e}),this.authContext=null,this.syncWasmAuthToken(),this.isTicketOnlyMode()||await this.auth?.signOut(),this.authListeners.forEach(t=>t(this.currentUser));}async getTurnCredentials(){return this.isTicketOnlyMode()||!this.auth?.currentUser?null:typeof this.options.turnCredentialsProvider=="function"?await this.options.turnCredentialsProvider()??null:null}async updatePresence(e,t,i=true,n=3e5,o,r){if(this.isTicketOnlyMode())return;let s=this.resolveWebLogicalDeviceId(),c=this.getDeviceIdPersistenceMode()==="ephemeral"?p.EPHEMERAL_DEVICE_ID_TTL_MS:n,a=await this.withWebPresenceMetadata(o,s);this.presenceManager.updatePresenceLoopState({userId:this.getCurrentUserId()??"",localNodeId:e,ticket:t,metadata:a,deviceName:r?.trim()||this.getDefaultBrowserDeviceName()}),await this.getCoordinationSignaling().updatePresence(e,t,i,c,a,r);}async refreshLivePresence(e,t,i,n){if(this.isTicketOnlyMode())return;let o=this.resolveWebLogicalDeviceId(),r=await this.withWebPresenceMetadata(i,o);this.presenceManager.updatePresenceLoopState({userId:this.getCurrentUserId()??"",localNodeId:e,ticket:t,metadata:r,deviceName:n?.trim()||this.getDefaultBrowserDeviceName()}),await this.getCoordinationSignaling().updatePresence(e,t,true,15*6e4,r,n);}async setOffline(e){this.presenceManager.stopPresence(),!this.isTicketOnlyMode()&&await this.getCoordinationSignaling().setOffline(e);}async updateDevice(e,t){if(!e?.trim())throw new Error("updateDevice requires a deviceId");this.isTicketOnlyMode()||await this.getCoordinationSignaling().updateDevice(e,t);}async deleteDevice(e){if(!e?.trim())throw new Error("deleteDevice requires a deviceId");this.isTicketOnlyMode()||await this.getCoordinationSignaling().deleteDevice(e);}async cleanupStaleDevices(){this.isTicketOnlyMode()||await this.getCoordinationSignaling().cleanupStaleDevices();}async sendMessage(e,t,i,n){if(this.isTicketOnlyMode())throw new Error('[openrtc] sendMessage() is unavailable when signalingMode="ticket-only".');return this.getCoordinationSignaling().sendMessage(e,t,i,n)}async pollMessages(e){return this.isTicketOnlyMode()?[]:this.getCoordinationSignaling().pollMessages(e)}async searchDevices(e){return this.isTicketOnlyMode()?[]:this.getCoordinationSignaling().searchDevices(e)}async listDeviceStatus(){if(this.isTicketOnlyMode())return [];if(!this.getDiscoveryScopeId())return [];let t=await this.getCoordinationSignaling().listDevices(),i=this.wasmClient;return Promise.all(t.map(async n=>{let o=this.normalizeDeviceStatusSnapshot({...n,connectionStatus:n.online?"online":"disconnected"}),r=typeof n.nodeId=="string"?n.nodeId.trim():"";if(!r||typeof i?.iroh_path_kind!="function"||typeof i?.iroh_transport_rtt_ms!="function")return o;try{let[s,c]=await Promise.all([i.iroh_path_kind(r),i.iroh_transport_rtt_ms(r)]);if(typeof c!="number"||!Number.isFinite(c))return o;let a=Math.max(0,Math.round(c)),d={};if(s==="direct-lan")d.irohLan=a;else if(s==="direct-quic")d.iroh=a;else if(s==="ble")d.ble=a;else if(s==="relay")d.irohRelay=a;else if(s==="webrtc")d.webrtc=a;else if(s==="moq")d.moq=a;else return o;return {...o,latencyMs:a,latencyByTransport:d}}catch(s){return d$1("[WasmBridge] iroh transport latency unavailable",{deviceId:n.deviceId,error:s instanceof Error?s.message:String(s)}),o}}))}async getPeerSession(e){let t=await this.waitForWasmClient(500);if(t&&typeof t.peer_session=="function"){let i=await t.peer_session(e);return !i||typeof i!="object"?null:this.normalizePeerSessionSnapshot(i)}return this.warnMissingWasmOnce("getPeerSession"),null}async listPeerSessions(){let e=await this.waitForWasmClient(500);if(e&&typeof e.peer_sessions=="function"){let t=await e.peer_sessions();return (Array.isArray(t)?t:[]).map(n=>this.normalizePeerSessionSnapshot(n)).filter(n=>!!(n.peerId||n.deviceId||n.deviceIdHint||n.nodeId||n.activeConnectionId))}return this.warnMissingWasmOnce("listPeerSessions"),[]}async waitForSettledPeer(e,t){let i=await this.waitForWasmClient(500);if(i&&typeof i.wait_for_peer=="function"){let n=await i.wait_for_peer(e,t);return !n||typeof n!="object"?null:this.normalizePeerSessionSnapshot(n)}return this.warnMissingWasmOnce("waitForSettledPeer"),null}async waitForSettledScope(e,t){let i=await this.waitForWasmClient(500);if(i&&typeof i.wait_for_settled_scope=="function"){let n=await i.wait_for_settled_scope(e,t);return !n||typeof n!="object"?null:this.normalizePeerSessionSnapshot(n)}return this.warnMissingWasmOnce("waitForSettledScope"),null}async openPeerBi(e,t){let i=await this.waitForWasmClient(500);if(i&&typeof i.open_peer_bi=="function"){let n=await i.open_peer_bi(e,t);if(!n?.recv||!n?.send)throw new Error("WASM open_peer_bi returned an invalid bidirectional stream");return {readable:n.recv,writable:T(n,n.send)}}throw this.warnMissingWasmOnce("openPeerBi"),new Error("WASM runtime does not support open_peer_bi()")}async openPeerBiRaw(e,t){if(this.options.applicationCrypto?.requireEncrypted)throw new Error("[WasmBridge] openPeerBiRaw is debug-only and cannot be used when application crypto is required");let i=await this.waitForWasmClient(500),n=i&&typeof i.open_peer_bi_transport_only=="function";if(console.debug("[WasmBridge] openPeerBiRaw",{peerId:e,hasWasmClient:!!i,hasTransportOnly:n,timeoutMs:t}),n){let o=await i.open_peer_bi_transport_only(e,t);if(!o?.recv||!o?.send)throw new Error("WASM open_peer_bi_transport_only returned an invalid bidirectional stream");return {readable:o.recv,writable:T(o,o.send)}}throw new Error("WASM runtime does not support the restricted transport-only diagnostic stream")}async openPeerUni(e,t){let i=await this.waitForWasmClient(500);if(i&&typeof i.open_peer_uni=="function"){let n=await i.open_peer_uni(e,t),o=n?.writable??n;if(!o)throw new Error("WASM open_peer_uni returned an invalid writable stream");return {writable:T(n,o)}}throw this.warnMissingWasmOnce("openPeerUni"),new Error("WASM runtime does not support open_peer_uni()")}beginOpenRtcMediaPublication(e){let t=this.wasmClient?.__beginOpenRtcMediaPublication;if(typeof t!="function")throw new Error("[OpenRTC] This WASM build does not include Rust-owned media sessions.");let i=t.call(this.wasmClient,e.publicationId||void 0,e.kind,e.codec,e.clockRate,e.codedWidth,e.codedHeight,e.channels);return {...i,control:new Uint8Array(i.control)}}encodeOpenRtcMediaSample(e){let t=this.wasmClient?.__encodeOpenRtcMediaSample;if(typeof t!="function")throw new Error("[OpenRTC] This WASM build does not include Rust-owned media sessions.");return new Uint8Array(t.call(this.wasmClient,e.publicationId,e.timestampUs,e.durationUs,e.keyframe,e.discardable,e.payload))}pauseOpenRtcMediaPublication(e){let t=this.wasmClient?.__pauseOpenRtcMediaPublication;if(typeof t!="function")throw new Error("[OpenRTC] This WASM build does not include Rust-owned media sessions.");t.call(this.wasmClient,e);}retireOpenRtcMediaPublication(e){let t=this.wasmClient?.__retireOpenRtcMediaPublication;if(typeof t!="function")throw new Error("[OpenRTC] This WASM build does not include Rust-owned media sessions.");t.call(this.wasmClient,e);}retireOpenRtcMediaReceiver(e,t){let i=this.wasmClient?.__retireOpenRtcMediaReceiver;if(typeof i!="function")throw new Error("[OpenRTC] This WASM build does not include Rust-owned media sessions.");i.call(this.wasmClient,e,t);}decodeOpenRtcMediaChunk(e){let t=this.wasmClient?.__decodeOpenRtcMediaChunk;if(typeof t!="function")throw new Error("[OpenRTC] This WASM build does not include the shared media protocol.");let i=t.call(this.wasmClient,e);return {...i,payload:new Uint8Array(i.payload)}}decodeOpenRtcMediaControl(e){let t=this.wasmClient?.__decodeOpenRtcMediaControl;if(typeof t!="function")throw new Error("[OpenRTC] This WASM build does not include the shared media protocol.");return t.call(this.wasmClient,e)}async sendPeerDatagram(e,t,i){let n=await this.waitForWasmClient(500),o=n?.sendPeerDatagram;if(typeof o!="function")throw new Error("[OpenRTC] This WASM build does not include protected peer datagrams.");return await o.call(n,e,t,i)!==false}async receivePeerDatagram(e){let t=await this.waitForWasmClient(500),i=t?.receivePeerDatagram;if(typeof i!="function")throw new Error("[OpenRTC] This WASM build does not include protected peer datagrams.");return new Uint8Array(await i.call(t,e))}peerDatagramMaxSize(){let e=this.wasmClient?.peerDatagramMaxSize?.();return Number.isSafeInteger(e)&&e>0?e:1024}createPeerDatagramPolicy(){let e=this.wasmClient?.createPeerDatagramPolicy;if(typeof e!="function")throw new Error("[OpenRTC] This WASM build does not include shared datagram policy.");return e.call(this.wasmClient)}async resolvePeerRecords(e){let t=await this.waitForWasmClient(500);if(t&&typeof t.resolve_peer_connection_records=="function"){let i=await t.resolve_peer_connection_records(e);return (Array.isArray(i)?i:[]).map(n=>({connectionId:typeof n.connectionId=="string"?n.connectionId:"",nodeId:typeof n.nodeId=="string"?n.nodeId:null,deviceId:typeof n.deviceId=="string"?n.deviceId:null,deviceIdHint:typeof n.deviceIdHint=="string"?n.deviceIdHint:null,endpointId:typeof n.endpointId=="string"?n.endpointId:null,transportGeneration:typeof n.transportGeneration=="number"?n.transportGeneration:0,routeGeneration:typeof n.routeGeneration=="number"?n.routeGeneration:void 0,transportStableId:typeof n.transportStableId=="number"?n.transportStableId:null,transportSource:typeof n.transportSource=="string"?n.transportSource:null,lastTransportChangeAtMs:typeof n.lastTransportChangeAtMs=="number"?n.lastTransportChangeAtMs:0,lastRouteChangeAtMs:typeof n.lastRouteChangeAtMs=="number"?n.lastRouteChangeAtMs:void 0,state:typeof n.state=="string"?n.state:"pending",statusReason:typeof n.statusReason=="string"?n.statusReason:null,createdAtMs:typeof n.createdAtMs=="number"?n.createdAtMs:0,updatedAtMs:typeof n.updatedAtMs=="number"?n.updatedAtMs:0}))}return this.warnMissingWasmOnce("resolvePeerRecords"),[]}async resolvePeerIdentity(e){let t=await this.waitForWasmClient(500);if(t){let i=n=>{if(!n||typeof n!="object")return {peerId:null,deviceId:null,deviceIdHint:null,nodeId:null};let o=n;return {peerId:typeof o.peerId=="string"?o.peerId:null,deviceId:typeof o.deviceId=="string"?o.deviceId:null,deviceIdHint:typeof o.deviceIdHint=="string"?o.deviceIdHint:null,nodeId:typeof o.nodeId=="string"?o.nodeId:null}};if(typeof t.peer_session=="function")try{let n=await t.peer_session(e),o=i(n);if(o.peerId||o.deviceId||o.deviceIdHint||o.nodeId)return o}catch{}if(typeof t.peer_snapshot=="function")try{return i(await t.peer_snapshot(e))}catch{}}return this.warnMissingWasmOnce("resolvePeerIdentity"),{peerId:null,deviceId:null,deviceIdHint:null,nodeId:null}}onDevicesChange(e,t){return this.isTicketOnlyMode()?(e([]),()=>{}):this.getCoordinationSignaling().onDevicesChange(e,t)}onRoomArchitectureChange(e){return this.getCoordinationSignaling().onRoomArchitectureChange?.(t=>{let i=this.effectiveRoomArchitecture!==t.effective;this.effectiveRoomArchitecture=t.effective,i&&this.presenceManager.handleRoomArchitectureChange().catch(n=>{console.warn("[WasmSignaling] failed to replay desired peers after room architecture change",{effectiveArchitecture:t.effective,epoch:t.epoch,error:n});}),e(t);})??(()=>{})}onRoomAuthorityAssignmentChange(e){return this.getCoordinationSignaling().onRoomAuthorityAssignmentChange?.(e)??(()=>{})}async publishAuthorityAssignment(e){let t=this.getCoordinationSignaling();if(!t.publishAuthorityAssignment)throw new Error("[OpenRTC] Authority assignment publication is unavailable.");await t.publishAuthorityAssignment(e);}async publishManagedRoomMessage(e){let t=this.getCoordinationSignaling().publishManagedRoomMessage;if(!t)throw new Error("[OpenRTC] Managed room fanout is unavailable.");await t.call(this.getCoordinationSignaling(),e);}onManagedRoomMessage(e){return this.getCoordinationSignaling().onManagedRoomMessage?.(e)??(()=>{})}async subscribeDevices(e){return this.isTicketOnlyMode()?new ReadableStream({start(t){t.close();}}):this.getCoordinationSignaling().subscribeDevices()}async startAutoConnect(e,t){if(this.isTicketOnlyMode())return;this.startApplicationRouteEscalationSubscription();let i=this.authScopedRuntimeGeneration;try{let n=await this.waitForWasmClient();if(i!==this.authScopedRuntimeGeneration||!n||typeof n.start_auto_connect!="function")return;await this.presenceManager.installInitialAutoConnectExclusions(n),await n.start_auto_connect(e,t),i===this.authScopedRuntimeGeneration&&this.presenceManager.startAutoConnect(e,t);}catch(n){console.warn("[WasmBridge] failed to initialize WASM auto-connect context",{userId:e,localDeviceId:t,error:n});}}async startAutoConnectOnce(e,t){await this.startAutoConnect(e,t),this.forceReconnect();}notifyDisconnectRequested(e){this.presenceManager.wakeRustAutoConnectOwner();}async excludeAutoConnect(e,t){await this.presenceManager.excludeAutoConnect(e,t);}async disconnectDevice(e){let t=await this.waitForWasmClient();if(!t||typeof t.disconnect_device!="function"){this.warnMissingWasmOnce("disconnectDevice"),await this.presenceManager.excludeAutoConnect(e,true).catch(()=>{});return}try{await t.disconnect_device(e,null),await this.presenceManager.recordAutoConnectExcludedForPresence(e,!0).catch(()=>{});}catch(i){throw console.warn("[WasmBridge] disconnect_device failed",{deviceId:e,error:i?.message??String(i)}),i}}async submitDesiredPeerProjection(e,t){return this.presenceManager.submitDesiredPeerProjection(e,t)}observeManagedDesiredPeers(e){this.presenceManager.observeDesiredPeerProjection(e),e$1("[OpenRTC][route-escalation] observed managed desired peers",{peerCount:e.length,peersWithTickets:e.filter(t=>typeof t.ticket=="string"&&t.ticket.trim()).length,deviceIds:e.map(t=>t.deviceId)});}setCoreClient(e){e&&typeof e.ensureManagedApplicationRoute=="function"?(this.coreClient=e,e$1("[OpenRTC][route-escalation] attached shared core client"),this.startApplicationRouteEscalationSubscription(),this.retryManagedApplicationRouteEscalations()):(this.coreClient=null,e$1("[OpenRTC][route-escalation] detached shared core client"),this.stopApplicationRouteEscalationSubscription());}startApplicationRouteEscalationSubscription(){if(this.applicationRouteEscalationUnsubscribe&&this.routeSubscriptionGeneration===this.authScopedRuntimeGeneration)return;this.stopApplicationRouteEscalationSubscription();let e=this.authScopedRuntimeGeneration,t=this.applicationRouteEscalationSubscriptionEpoch,i=this.onStateChange(n=>{let o=this.stabilizeConnectionState(n);this.lastDeliveredConnectionStates.set(o.connectionId,o),e$1("[OpenRTC][route-escalation] observed Rust connection state",{connectionId:o.connectionId,deviceId:o.deviceId??o.deviceIdHint??null,remoteNodeId:o.remoteNodeId??null,state:o.state,transportGeneration:o.transportGeneration??null,routeGeneration:o.routeGeneration??null}),this.escalateManagedApplicationRoute(o);});this.applicationRouteEscalationUnsubscribe=()=>{},this.routeSubscriptionGeneration=e,Promise.resolve(i).then(n=>{if(!this.coreClient||e!==this.authScopedRuntimeGeneration||t!==this.applicationRouteEscalationSubscriptionEpoch){n();return}this.applicationRouteEscalationUnsubscribe=n,this.routeSubscriptionGeneration=e;});}stopApplicationRouteEscalationSubscription(){this.applicationRouteEscalationSubscriptionEpoch+=1,this.applicationRouteEscalationUnsubscribe?.(),this.applicationRouteEscalationUnsubscribe=null,this.routeSubscriptionGeneration=-1;}retryManagedApplicationRouteEscalations(){for(let e of this.lastDeliveredConnectionStates.values())this.escalateManagedApplicationRoute(e);}escalateManagedApplicationRoute(e){if(!this.coreClient||!["connected","connecting"].includes(e.state))return;let t=[e.transportGeneration??0,e.routeGeneration??0].join(":"),i=this.applicationRouteEscalationAttemptKeys??(this.applicationRouteEscalationAttemptKeys=new Map);if(i.get(e.connectionId)===t||this.applicationRouteEscalations.has(e.connectionId))return;let n=this.presenceManager.resolveDesiredPeer(e.deviceId??e.deviceIdHint,e.remoteNodeId);if(!n?.ticket){e$1("[OpenRTC][route-escalation] awaiting matching desired-peer ticket",{connectionId:e.connectionId,deviceId:e.deviceId??e.deviceIdHint??null,remoteNodeId:e.remoteNodeId??null});return}let o=this.authScopedRuntimeGeneration,r=this.coreClient;i.set(e.connectionId,t),e$1("[OpenRTC][route-escalation] adopting Rust-managed generation",{connectionId:e.connectionId,deviceId:n.deviceId,remoteNodeId:e.remoteNodeId??n.nodeId??null,transportGeneration:e.transportGeneration??null,routeGeneration:e.routeGeneration??null});let s;s=(async()=>{let c=await r.ensureManagedApplicationRoute({ticket:n.ticket,connectionId:e.connectionId,remoteNodeId:e.remoteNodeId??n.nodeId,expectedDeviceId:n.deviceId,timeoutMs:2e4});if(o!==this.authScopedRuntimeGeneration)return;let a=c,d=a.id?.trim()||e.connectionId,h=a.remoteNodeId?.trim()||e.remoteNodeId?.trim()||a.deviceId?.trim()||n.deviceId;if(r.hasApplicationRouteForPeer?.(d,h)!==true&&r.hasApplicationRouteForPeer?.(d,h)!==true)throw new Error(`application crypto was not ready for ${h}`)})().catch(c=>{o===this.authScopedRuntimeGeneration&&console.warn("[OpenRTC][route-escalation] Rust-managed route remains pending",{connectionId:e.connectionId,deviceId:n.deviceId,remoteNodeId:e.remoteNodeId??n.nodeId,error:c?.message??String(c)});}).finally(()=>{if(this.applicationRouteEscalations.get(e.connectionId)===s){this.applicationRouteEscalations.delete(e.connectionId);let c=this.lastDeliveredConnectionStates?.get(e.connectionId),a=c?[c.transportGeneration??0,c.routeGeneration??0].join(":"):null;c&&a!==t&&o===this.authScopedRuntimeGeneration&&queueMicrotask(()=>this.escalateManagedApplicationRoute(c));}}),this.applicationRouteEscalations.set(e.connectionId,s);}async issueTicketMesh(e,t,i){let n=await this.waitForWasmClient();if(typeof n?.issue_ticket_mesh!="function")throw new Error("WASM runtime does not support Rust-owned ticket meshes.");return n.issue_ticket_mesh(e,t,i)}async joinTicketMesh(e,t){let i=await this.waitForWasmClient();if(typeof i?.join_ticket_mesh!="function")throw new Error("WASM runtime does not support Rust-owned ticket meshes.");return i.join_ticket_mesh(e,t)}async receiveTicketMeshFrame(e,t,i){let n=await this.waitForWasmClient();if(typeof n?.receive_ticket_mesh_frame!="function")throw new Error("WASM runtime does not support Rust-owned ticket meshes.");n.receive_ticket_mesh_frame(e,t,i);}async ticketMeshIssuerNode(e){let t=await this.waitForWasmClient();if(typeof t?.ticket_mesh_issuer_node!="function")throw new Error("WASM ticket mesh issuer projection is unavailable.");return t.ticket_mesh_issuer_node(e)}async closeTicketMesh(e){let t=await this.waitForWasmClient();if(typeof t?.close_ticket_mesh!="function")throw new Error("WASM runtime does not support closing Rust-owned ticket meshes.");await t.close_ticket_mesh(e);}async connectToDevice(e){let t=await this.waitForWasmClient();if(!t||typeof t.connect_device!="function")throw this.warnMissingWasmOnce("connectToDevice"),new Error("WASM runtime does not support connect_device()");let i=e.endpointTicket?.trim()??"",n=e.admissionToken?.trim()??"",o=e.admissionScope?.trim()??"",r=!i,s=i;if(r&&(!e.deviceId||!n||!o||typeof t.connect_known_device_with_token!="function"))throw new Error("WASM connectToDevice requires an endpoint ticket or supported known-device admission intent.");i&&await this.coreClient?.rememberRouteRepairTokenFromTicket?.(i);let c=Date.now();e$1("[WasmBridge][ROUTE-ESCALATION] starting managed transport dial",{deviceId:e.deviceId??null,ticket:ae(i),knownDeviceAdmission:r,hasCoreClient:!!this.coreClient});let a=r?await(async()=>{let h=Date.now(),u=Math.max(1,e.timeoutMs??3e4),m=()=>Math.max(1,u-(Date.now()-h)),v=e.admissionPeerUserId?.trim()??"";if(v){let g=(await this.getCoordinationSignaling().waitForFriendDevice(v,e.deviceId,Math.min(1e4,m()))).ticket?.trim()??"";if(!g)throw new Error(`[pluto-rtc] authorized device ${e.deviceId} did not publish an endpoint ticket.`);if(typeof t.observe_known_device_endpoint!="function")throw new Error("WASM runtime does not support provider-authorized endpoint observations.");await t.observe_known_device_endpoint(e.deviceId,g),s=a$3(g).irohTicket;}return t.connect_known_device_with_token(e.deviceId,n,o,e.admissionMaxConnections??0,e.admissionExpiresAtMs==null?null:BigInt(Math.floor(e.admissionExpiresAtMs)),Math.min(1e4,m()))})():await t.connect_device(e.deviceId??null,i,e.timeoutMs??null);e$1("[WasmBridge][ROUTE-ESCALATION] managed transport dial completed",{deviceId:e.deviceId??null,remoteNodeId:a?.remoteNodeId??null,connectionId:a?.connectionId??null,elapsedMs:Date.now()-c});let d=s;if(d&&this.coreClient){let h=this.coreClient;try{e$1("[WasmBridge][ROUTE-ESCALATION] starting typed application connection",{deviceId:e.deviceId??null,remoteNodeId:a?.remoteNodeId??null,connectionId:a?.connectionId??null});let u=await h.ensureManagedApplicationRoute({ticket:d,connectionId:a?.connectionId??null,remoteNodeId:a?.remoteNodeId??null,expectedDeviceId:e.deviceId??null,approvedScope:a?.approvedScope??null,timeoutMs:2e4}),m=typeof u?.remoteNodeId=="string"?u.remoteNodeId.trim():"",v=typeof u?.deviceId=="string"?u.deviceId.trim():"",f=m||a?.remoteNodeId?.trim?.()||v||e.deviceId?.trim?.()||"",g=typeof h.hasApplicationRouteForPeer=="function"?h.hasApplicationRouteForPeer.bind(h):null;if(!(!!f&&g?.(u?.id??void 0,f)===!0)&&f&&typeof h.waitForApplicationCryptoForPeer=="function"&&!(!!await h.waitForApplicationCryptoForPeer(f,2e4)&&(!g||g(u?.id??void 0,f)===!0)))throw console.warn("[WasmBridge][ROUTE-ESCALATION] application route still pending after managed dial",{deviceId:e.deviceId??null,remoteNodeId:m||(a?.remoteNodeId??null),connectionId:a?.connectionId??null,peerForCrypto:f,elapsedMs:Date.now()-c}),Object.assign(new Error(`application crypto was not ready for ${f}`),{applicationCryptoNotReady:!0});e$1("[WasmBridge][ROUTE-ESCALATION] application route ready",{deviceId:e.deviceId??null,remoteNodeId:m||(a?.remoteNodeId??null),connectionId:a?.connectionId??null,elapsedMs:Date.now()-c});}catch(u){if(u?.applicationCryptoNotReady)throw u;return console.warn("[WasmBridge] Managed transport connected; TS application route escalation is still pending",{deviceId:e.deviceId??null,remoteNodeId:a?.remoteNodeId??null,connectionId:a?.connectionId??null,error:u?.message??String(u)}),a}}return a}forceReconnect(){this.isTicketOnlyMode()||!this.app||!this.auth||this.presenceManager.wakeRustAutoConnectOwner();}startPresenceLoop(e,t,i,n,o){return this.presenceManager.startPresenceLoop(e,t,i,n,o)}ensureSpaceNamespaceIdPromise(){if(this.cachedSpaceNamespaceId)return Promise.resolve(this.cachedSpaceNamespaceId);if(!this.spaceNamespaceIdPromise){let e=this.options.apiKey?.trim()??"",t=this.options.spaceKey?.trim()??"";if(!e||!t)return Promise.resolve(null);this.spaceNamespaceIdPromise=b$2(e,t).then(i=>(this.cachedSpaceNamespaceId=i,i)).catch(()=>null);}return this.spaceNamespaceIdPromise}async createSession(e){if(this.isTicketOnlyMode())throw new Error('[openrtc] createSession() is unavailable when signalingMode="ticket-only".');let t=this.getCurrentUserId();if(!t&&!e.initiator&&!e.target&&!this.isSpaceMode())throw new Error("createSession requires user scope");let i={...e,appTag:e.appTag??this.appTag,initiator:e.initiator??t??void 0,target:e.target??t??void 0};await this.getCoordinationSignaling().createSession(i);}async updateSession(e,t){if(this.isTicketOnlyMode())throw new Error('[openrtc] updateSession() is unavailable when signalingMode="ticket-only".');await this.getCoordinationSignaling().updateSession(e,t);}async subscribeSessions(e){return this.isTicketOnlyMode()?new ReadableStream({start(t){t.close();}}):this.getCoordinationSignaling().subscribeSessions(e)}async getLocalDeviceId(){return this.resolveWebLogicalDeviceId()}async isConnected(e){let t=await this.waitForWasmClient();return t&&typeof t.is_connected=="function"?t.is_connected(e):false}async getConnectionStates(){let e=await this.waitForWasmClient(500);if(e&&typeof e.connection_states=="function"){let n=await e.connection_states(),o=(Array.isArray(n)?n:[]).map(r=>this.normalizeStateSnapshot(r)).filter(r=>!!r);return o.length>0&&d$1("[WasmBridge] replaying current wasm connection states",o.map(r=>({connectionId:r.connectionId,deviceId:r.deviceId??null,deviceIdHint:r.deviceIdHint??null,remoteNodeId:r.remoteNodeId??null,state:r.state,transportState:r.transportState??null,protocolState:r.protocolState??null,routable:r.routable??null}))),o}let i=(await this.listPeerSessions().catch(()=>[])).map(n=>this.toBackendConnectionStateFromPeerSession(n)).filter(n=>!!n);return i.length>0&&d$1("[WasmBridge] replaying current wasm connection states",i.map(n=>({connectionId:n.connectionId,deviceId:n.deviceId??null,deviceIdHint:n.deviceIdHint??null,remoteNodeId:n.remoteNodeId??null,state:n.state,transportState:n.transportState??null,protocolState:n.protocolState??null,routable:n.routable??null}))),i}onStateChange(e){let t=new Map,i=new Map,n=this.authScopedRuntimeGeneration,o=false,r=a=>{let d=a.detail,h=d?.runtimeOwnerId;if(typeof h!="string"||!h||typeof this.wasmClient?.connection_state_owner_id!="function")return;try{if(this.wasmClient.connection_state_owner_id()!==h)return}catch{return}let u=this.normalizeStateSnapshot(d),m=typeof d?.connectionId=="string"?d.connectionId.trim():"";if(!m||o)return;let v=(i.get(m)??0)+1;if(i.set(m,v),u&&(u.state==="closed"||u.state==="failed"||u.state==="disconnected")){this.deliverConnectionState(u,e,"rust-event-detail",t);return}let f=this.authScopedRuntimeGeneration;(async()=>{let g=await this.waitForWasmClient(500);if(!(o||f!==this.authScopedRuntimeGeneration||i.get(m)!==v)){if(g&&typeof g.connection_state=="function"){let I=await g.connection_state(m),C=this.normalizeStateSnapshot(I);if(!o&&f===this.authScopedRuntimeGeneration&&i.get(m)===v&&C){this.deliverConnectionState(C,e,"rust-event",t);return}}!o&&f===this.authScopedRuntimeGeneration&&i.get(m)===v&&u&&this.deliverConnectionState(u,e,"rust-event-detail",t);}})().catch(g=>{o||console.warn("[WasmBridge] Failed to read Rust connection state after lifecycle event",{connectionId:m,error:g});});},s=typeof window<"u"?window:null,c=typeof s?.addEventListener=="function"&&typeof s?.removeEventListener=="function";return c&&s.addEventListener("connection-state-changed",r),this.getConnectionStates().then(a=>{!o&&n===this.authScopedRuntimeGeneration&&a.forEach(d=>{i.has(d.connectionId)||this.deliverConnectionState(d,e,"replay",t);});}).catch(a=>{console.warn("[WasmBridge] Failed to replay wasm connection states after subscription:",a);}),()=>{o=true,i.clear(),c&&s.removeEventListener("connection-state-changed",r);}}async sendExplicitFilePath(e,t,i=""){throw new Error("sendExplicitFilePath is native-only. Use sendExplicitFileData in web/wasm runtime.")}sanitizeExplicitFileName(e){let i=(typeof e=="string"?e.replace(/\\/g,"/"):"").split("/").reverse().find(r=>r.trim().length>0)?.trim()??"";if(!i||i==="."||i==="..")return p.FALLBACK_EXPLICIT_FILE_NAME;let n="";for(let r of i){if([...n].length>=p.MAX_EXPLICIT_FILE_NAME_CHARS)break;let s=r.charCodeAt(0);r==="/"||r==="\\"||r==="\0"||s<32||s===127?n+="_":n+=r;}let o=n.trim();return !o||o==="."||o===".."?p.FALLBACK_EXPLICIT_FILE_NAME:o}sanitizeExplicitMimeType(e){let t=typeof e=="string"?e.trim():"";if(!t)return p.FALLBACK_EXPLICIT_MIME_TYPE;let i="";for(let n of t){if(i.length>=p.MAX_EXPLICIT_MIME_TYPE_CHARS)break;let o=n.charCodeAt(0);o<33||o>126||n==='"'||n==="\\"?i+="_":i+=n;}return i.length>0?i:p.FALLBACK_EXPLICIT_MIME_TYPE}assertExplicitTransferHeaderSize(e){if(e.byteLength===0||e.byteLength>p.MAX_EXPLICIT_TRANSFER_HEADER_BYTES)throw new Error(`Explicit transfer header is too large: ${e.byteLength} bytes`)}createWebRTCExplicitTransferId(){let e=new Uint8Array(16),t=globalThis.crypto;if(t&&typeof t.getRandomValues=="function")return t.getRandomValues(e),e;for(let i=0;i<e.byteLength;i+=1)e[i]=Math.floor(Math.random()*256);return e}createWebRTCExplicitTransferFrame(e,t,i,n,o){let r=o?.headerFrame===true?4:0,s=new Uint8Array(25+r+n.byteLength);s[0]=p.EXPLICIT_FILE_PROTOCOL_TYPE,s.set(e,1);let c=new DataView(s.buffer);c.setUint32(17,t,false),c.setUint32(21,i,false);let a=o?.headerFrame===true?29:25;return o?.headerFrame===true&&c.setUint32(25,n.byteLength,false),s.set(n,a),s}async sendExplicitFileData(e){let t=e.connection,i=e.file,n=e.applicationCrypto??this.options.applicationCrypto;if((e.requireApplicationCrypto===true||t?.requireApplicationCrypto===true)&&!n)throw new Error("[WasmBridge] Explicit transfer requires application crypto but none is available for this connection");let r=e.transferId&&e.transferId.trim().length>0?e.transferId:`transfer-${Date.now()}`;typeof e.receiverPlatformType=="string"?e.receiverPlatformType.trim().toLowerCase():null;let c=e.remoteNodeId?.trim()||t?.remoteNodeId?.trim()||t?.deviceId?.trim();if(e$1("[WasmBridge] sendExplicitFileData start",{connectionId:e.connectionId??null,connectionRemoteNodeId:t?.remoteNodeId??null,remoteNodeId:c??null,fileName:i.name,fileSize:i.size,transferId:r}),!c)throw new Error("Web explicit transfer requires an active connection with a resolved remote node ID");let a=await this.waitForWasmClient();if(!a)throw new Error("WASM explicit transfer requires an initialized WASM client");let d=new TextEncoder,h={transfer_id:r,filename:this.sanitizeExplicitFileName(i.name),size:i.size,mime_type:this.sanitizeExplicitMimeType(i.type)},u=d.encode(JSON.stringify(h));this.assertExplicitTransferHeaderSize(u);let m=new Uint8Array(4);new DataView(m.buffer).setUint32(0,u.byteLength,false);let v=new Uint8Array(m.byteLength+u.byteLength);v.set(m,0),v.set(u,m.byteLength);let f=async()=>{let g=a.open_peer_bi_explicit_file_sender;if(typeof g!="function")return false;let I=await g.call(a,c,5e3),C=I?.writable??I?.send;if(!C||typeof C.getWriter!="function")throw new Error("WASM explicit peer stream returned an invalid writable stream");e$1("[WasmBridge] sendExplicitFileData open_peer_bi_explicit_file_sender resolved",{remoteNodeId:c,transferId:e.transferId??null,applicationCryptoWrapped:I.applicationCryptoWrapped===true});let S=T(I,C,{requireFinish:true}).getWriter(),k=false;try{await S.write(v);let P=new Uint8Array(await i.arrayBuffer());for(let A=0;A<P.byteLength;A+=p.EXPLICIT_FILE_CHUNK_SIZE_BYTES){let ne=P.slice(A,Math.min(A+p.EXPLICIT_FILE_CHUNK_SIZE_BYTES,P.byteLength));await S.write(ne);}}catch(P){throw k=true,P}finally{try{await S.close();}catch(P){if(!k)throw P}finally{S.releaseLock();}}return true};try{if(await f())return;throw new Error("[WasmBridge] Explicit transfer requires the generation-fenced open_peer_bi_explicit_file_sender path, but it is unavailable on this WASM build. Rebuild the current OpenRTC WASM; raw open_bi fallback is intentionally unsupported for application data.")}finally{e$1("[WasmBridge] sendExplicitFileData completed",{remoteNodeId:c,transferId:r,fileName:i.name,fileSize:i.size});}}async getTransferHistory(e=50){return []}async deleteTransferJob(e){}watchFriendDevices(e,t){return this.isTicketOnlyMode()?()=>{}:this.getCoordinationSignaling().watchFriendDevices(e,t)}async updateFriendTicket(e){this.isTicketOnlyMode()||await this.getCoordinationSignaling().updateFriendTicket(e);}};p.EXPLICIT_FILE_PROTOCOL_TYPE=2,p.EXPLICIT_FILE_CHUNK_SIZE_BYTES=64*1024,p.MAX_EXPLICIT_TRANSFER_HEADER_BYTES=64*1024,p.FALLBACK_EXPLICIT_FILE_NAME="openrtc-transfer.bin",p.MAX_EXPLICIT_FILE_NAME_CHARS=180,p.FALLBACK_EXPLICIT_MIME_TYPE="application/octet-stream",p.MAX_EXPLICIT_MIME_TYPE_CHARS=255,p.WEB_DEVICE_ID_STORAGE_PREFIX="pluto_rtc_web_device_identity",p.EPHEMERAL_DEVICE_ID_TTL_MS=o.browserIdentity.ephemeralDeviceIdTtlMs;var ie=p;export{re as a,ie as b};
|
|
1
|
+
import {a as a$1}from'./chunk-AYHD4X2R.js';import {o,b as b$1,a,t,m,g,x,y,h,z,B,C,F,G,H,d as d$1,e as e$1}from'./chunk-DMCUS3TY.js';import {c,e,d,f,b as b$2}from'./chunk-XMYBBLYK.js';import {a as a$2}from'./chunk-OT7IPLZE.js';import {a as a$3}from'./chunk-L2ZZXECX.js';import {c as c$1}from'./chunk-CCCYE3XN.js';import {a as a$4}from'./chunk-JPBW67B3.js';function M(l){if(!l)return null;let e=2166136261;for(let t=0;t<l.length;t+=1)e^=l.charCodeAt(t),e=Math.imul(e,16777619);return `fp-${(e>>>0).toString(16).padStart(8,"0")}`}var E=class E{constructor(e){this.deps=e;this.startedAutoConnectKey=null;this.autoConnectGeneration=0;this.browserAutoConnectUnsubscribe=null;this.desiredPeerRevision=0;this.desiredPeerSignature=null;this.desiredPeerSubmission=null;this.desiredPeerSubmissionQueue=Promise.resolve();this.queuedDesiredPeers=null;this.desiredPeersByDeviceId=new Map;this.wakeSubmission=null;this.presenceState=null;this.presenceStartGeneration=0;this.localExcludedPeers=new Set;this.localDesiredPeerDeviceId=null;for(let t of e.initialExcludedPeers??[]){let i=t.trim().toLowerCase();i&&this.localExcludedPeers.add(i);}}stop(){this.stopAutoConnect(),this.stopPresenceLoop();}get autoConnectKey(){return this.startedAutoConnectKey}set autoConnectKey(e){e!==this.startedAutoConnectKey&&(this.autoConnectGeneration+=1),this.startedAutoConnectKey=e;}get presenceLoopState(){return this.presenceState}set presenceLoopState(e){this.presenceState=e;}stopPresence(){this.stopPresenceLoop();}updatePresenceLoopState(e){this.presenceState=e;}startAutoConnect(e,t){if(this.deps.isTicketOnlyMode())return;let i=t.trim()||this.deps.resolveWebLogicalDeviceId(),n=`${e}::${i}`;if(this.startedAutoConnectKey===n&&this.browserAutoConnectUnsubscribe)return;this.stopAutoConnect(),this.localDesiredPeerDeviceId=i,this.startedAutoConnectKey=n;let o=this.autoConnectGeneration;this.browserAutoConnectUnsubscribe=this.deps.getCoordinationSignaling().onDevicesChange(r=>{o===this.autoConnectGeneration&&this.submitDesiredPeers(r);},this.currentLocalNodeId()??void 0);}wakeRustAutoConnectOwner(){if(this.deps.isTicketOnlyMode()||!this.startedAutoConnectKey||this.wakeSubmission)return false;let e=this.autoConnectGeneration,t=this.deps.waitForWasmClient(500).then(async i=>{e===this.autoConnectGeneration&&i&&typeof i.wake_browser_auto_connect=="function"&&await i.wake_browser_auto_connect();}).finally(()=>{this.wakeSubmission===t&&(this.wakeSubmission=null);});return this.wakeSubmission=t,true}submitDesiredPeers(e){if(!this.startedAutoConnectKey)return;let i=this.normalizeDesiredPeers(e);this.rememberDesiredPeers(i)&&(this.queuedDesiredPeers=i,this.flushDesiredPeerSubmission());}observeDesiredPeerProjection(e){this.rememberDesiredPeers(this.normalizeDesiredPeers(e));}async submitDesiredPeerProjection(e,t){if(!Number.isSafeInteger(e)||e<=0)throw new Error("Desired-peer projection revision must be a positive safe integer.");let i=this.startedAutoConnectKey;if(!i)throw new Error("Cannot submit a desired-peer projection before managed auto-connect starts.");let n=this.normalizeDesiredPeers(t);this.rememberDesiredPeers(n),this.queuedDesiredPeers=null,this.desiredPeerRevision=Math.max(this.desiredPeerRevision,e),await this.enqueueDesiredPeerSubmission(i,e,n);}async handleRoomArchitectureChange(){let e=this.startedAutoConnectKey;if(this.deps.isTicketOnlyMode()||!e)return false;let t=Array.from(this.desiredPeersByDeviceId.values());this.queuedDesiredPeers=null;let i=++this.desiredPeerRevision;return await this.enqueueDesiredPeerSubmission(e,i,t),true}rememberDesiredPeers(e){this.desiredPeersByDeviceId=new Map(e.map(i=>[i.deviceId,i]));let t=JSON.stringify(e);return t===this.desiredPeerSignature?false:(this.desiredPeerSignature=t,this.deps.onDesiredPeersChanged?.(),true)}resolveDesiredPeer(e,t){let i=typeof e=="string"?e.trim():"",n=typeof t=="string"?t.trim():"";if(i){let o=this.desiredPeersByDeviceId.get(i);if(o&&(!n||!o.nodeId||o.nodeId===n))return o}return n?Array.from(this.desiredPeersByDeviceId.values()).find(o=>o.nodeId===n)??null:null}flushDesiredPeerSubmission(){if(this.desiredPeerSubmission||!this.queuedDesiredPeers||!this.startedAutoConnectKey)return;let e=this.startedAutoConnectKey,t=this.queuedDesiredPeers,i=++this.desiredPeerRevision;this.queuedDesiredPeers=null,this.desiredPeerSubmission=this.enqueueDesiredPeerSubmission(e,i,t).catch(()=>{}).finally(()=>{this.desiredPeerSubmission=null,this.flushDesiredPeerSubmission();});}normalizeDesiredPeers(e){return (Array.isArray(e)?e:[]).map(t=>({deviceId:String(t?.deviceId??"").trim(),nodeId:typeof t?.nodeId=="string"&&t.nodeId.trim()||null,ticket:typeof t?.ticket=="string"&&t.ticket.trim()||null,online:t?.online===true,sessionId:typeof t?.sessionId=="string"&&t.sessionId.trim()||null,excludedPeers:Array.isArray(t?.excludedPeers)?[...new Set(t.excludedPeers.map(i=>String(i??"").trim().toLowerCase()).filter(Boolean))].sort():[],devicePublicKeyJwk:t?.devicePublicKeyJwk,topologyRole:t?.topologyRole,topologyRevision:t?.topologyRevision})).filter(t=>t.deviceId.length>0).sort((t,i)=>t.deviceId.localeCompare(i.deviceId))}enqueueDesiredPeerSubmission(e,t,i,n=this.roomGossipFanoutEnabled()){let o=this.autoConnectGeneration,r=this.desiredPeerSubmissionQueue.then(async()=>{if(o!==this.autoConnectGeneration||this.startedAutoConnectKey!==e)return;let s=await this.deps.waitForWasmClient();if(!(o!==this.autoConnectGeneration||this.startedAutoConnectKey!==e)){if(!s||typeof s.submit_browser_desired_peers!="function"){this.deps.warnMissingWasmOnce("submitBrowserDesiredPeers");return}if(await Promise.all(i.map(async c=>{if(c.ticket)try{await this.deps.rememberRouteRepairTokenFromTicket(c.ticket);}catch(a){console.warn("[WasmSignaling] failed to retain desired-peer admission token",{deviceId:c.deviceId,nodeId:c.nodeId,error:a});}})),!(o!==this.autoConnectGeneration||this.startedAutoConnectKey!==e))if(n){if(typeof s.submit_browser_desired_peers_with_sparse_fanout!="function"){await s.submit_browser_desired_peers(t,JSON.stringify([])),this.deps.warnMissingWasmOnce("submitBrowserDesiredPeersWithSparseFanout");return}if(!this.deps.capabilityKey)throw new Error("Sparse fanout requires an explicit capability avenue.");await s.submit_browser_desired_peers_with_sparse_fanout(t,JSON.stringify(i),this.deps.capabilityKey,this.localDesiredPeerDeviceId,this.deps.localDeviceKeyX,true);}else await s.submit_browser_desired_peers(t,JSON.stringify(i));}});return this.desiredPeerSubmissionQueue=r.catch(s=>{console.warn("[WasmSignaling] failed to submit browser desired peers to Rust",{revision:t,error:s});}),r}roomGossipFanoutEnabled(){return typeof this.deps.roomGossipFanout=="function"?this.deps.roomGossipFanout():this.deps.roomGossipFanout===true}async excludeAutoConnect(e,t){let i=await this.deps.waitForWasmClient();i&&typeof i.set_auto_connect_excluded=="function"&&await i.set_auto_connect_excluded(e,t),await this.recordAutoConnectExcludedForPresence(e,t);}async installInitialAutoConnectExclusions(e){if(typeof e?.set_auto_connect_excluded=="function")for(let t of this.currentExcludedPeersSnapshot())await e.set_auto_connect_excluded(t,true);}async recordAutoConnectExcludedForPresence(e,t){let i=e.trim().toLowerCase();if(!i)return;t?this.localExcludedPeers.add(i):this.localExcludedPeers.delete(i);let n=this.deps.resolveWebLogicalDeviceId();n&&await this.deps.updateExcludedPeers(n,this.currentExcludedPeersSnapshot());}async startPresenceLoop(e,t,i,n,o){if(this.deps.isTicketOnlyMode())return;this.stopPresenceLoop();let r=this.presenceStartGeneration;this.presenceState={userId:e,localNodeId:t,ticket:n,metadata:o,deviceName:i};let s=this.deps.resolveWebLogicalDeviceId(),c=await this.deps.withWebPresenceMetadata(o,s);r!==this.presenceStartGeneration||this.presenceState===null||await this.deps.updatePresence(t,n,true,E.PRESENCE_LEASE_MS,c,i);}stopAutoConnect(){this.autoConnectGeneration+=1,this.browserAutoConnectUnsubscribe?.(),this.browserAutoConnectUnsubscribe=null,this.startedAutoConnectKey=null,this.localDesiredPeerDeviceId=null,this.desiredPeerSignature=null,this.queuedDesiredPeers=null,this.desiredPeersByDeviceId.clear(),this.wakeSubmission=null;}currentExcludedPeersSnapshot(){return Array.from(this.localExcludedPeers).sort()}currentLocalNodeId(){let e=this.presenceState?.localNodeId;return typeof e=="string"&&e.trim()||null}stopPresenceLoop(){this.presenceStartGeneration+=1,this.presenceState=null;}};E.PRESENCE_LEASE_MS=15*6e4;var R=E;function oe(){if(!(typeof window>"u"))try{if(new URL(import.meta.url).pathname.includes("/node_modules/.vite/deps/"))return new URL("/node_modules/openrtc/dist/openrtc_bg.wasm",window.location.origin)}catch{}}var b;async function re(){let l=await import('./openrtc-DW7MUYZN.js');return {initWasm:e=>{if(!b){let t=Promise.resolve().then(()=>l.default(e??oe()));b=t,t.catch(()=>{b===t&&(b=void 0);});}return b},WasmClient:l.WasmClient,start:l.start}}function se(l){try{let e=l.replace(/-/g,"+").replace(/_/g,"/"),t=(4-e.length%4)%4,i=e+"=".repeat(t);if(typeof atob=="function")return JSON.parse(atob(i));let n=globalThis.Buffer;if(n)return JSON.parse(n.from(i,"base64").toString("utf8"))}catch{return null}return null}function ae(l){let e=typeof l=="string"?l.trim():"";if(!e)return {present:false};let t=e.lastIndexOf("."),i=t>=0?e.slice(0,t):e,n=t>=0?e.slice(t+1):null,o=n?se(n):null,r=o&&typeof o.t=="string"&&o.t.trim().length>0?o.t.trim():null,s=o&&typeof o.s=="string"&&o.s.trim().length>0?o.s.trim():null,c=o&&typeof o.m=="number"&&Number.isFinite(o.m)?o.m:null;return {present:true,irohFingerprint:M(i),tokenFingerprint:M(r),tokenSuffixFingerprint:M(n),scope:s,maxConnections:c}}function T(l,e,t={}){let i=typeof l.finishSend=="function"?l.finishSend.bind(l):typeof l.finish_send=="function"?l.finish_send.bind(l):null,n=typeof l.cancelSend=="function"?l.cancelSend.bind(l):typeof l.cancel_send=="function"?l.cancel_send.bind(l):null;if(!i){if(t.requireFinish===true)throw new Error("WASM peer stream is missing finishSend(); rebuild the current OpenRTC WASM before sending application data");return e}let o=e.getWriter(),r=new WritableStream({write:s=>o.write(s),async close(){await o.close(),await i();},async abort(s){await n?.(),await o.abort(s);}});return a$4(r,n)}var p=class p{constructor(e$1){this.spaceNamespaceIdPromise=null;this.cachedSpaceNamespaceId=null;this.authListeners=[];this.wasmClient=null;this.createdAtMs=Date.now();this.missingWasmWarnings=new Set;this.wasmReadyWarningDelayMs=15e3;this.browserCoordinationSignaling=null;this.effectiveRoomArchitecture="mesh";this.lastObservedFirebaseUserId=null;this.sessionReaders=new Set;this.authContext=null;this.injectedBrowserAuthSessionActive=false;this.hasSyncedAuthToWasmClient=false;this.lastWasmAuthUserId=null;this.lastWasmAuthToken=null;this.lastDeliveredConnectionStates=new Map;this.authScopedRuntimeGeneration=0;this.coreClient=null;this.applicationRouteEscalations=new Map;this.applicationRouteEscalationAttemptKeys=new Map;this.applicationRouteEscalationUnsubscribe=null;this.routeSubscriptionGeneration=-1;this.applicationRouteEscalationSubscriptionEpoch=0;this.appTag=c(e$1),this.options={...e$1,appTag:this.appTag,authMode:d(e$1),projectId:e(e$1)},this.effectiveRoomArchitecture=e$1.coordinationRoomArchitecture==="sparse"||e$1.coordinationRoomGossipFanout===true?"sparse":"mesh",this.coordinationHost=new b$1({appTag:this.appTag,projectId:this.options.projectId,discoveryMode:this.options.discoveryMode,signalingMode:this.options.signalingMode,gateway:this.options.coordinationGateway,avenueOverride:this.options.coordinationAvenueOverride,roomArchitecture:this.options.coordinationRoomArchitecture,initialExcludedPeers:this.options.initialAutoConnectExcludedDeviceIds,resolveSpaceNamespaceId:()=>this.ensureSpaceNamespaceIdPromise(),getCurrentUserId:()=>this.getCurrentUserId(),getAuthToken:async(r=false)=>this.currentUser?.getToken?.(r)??null,getAppCheckToken:async(r=false)=>{let s=this.authContext?.appCheckTokenProvider??this.options.attestationTokenProvider;return s?s(r):a().getAppCheckToken(r)},getLocalDeviceId:()=>this.resolveWebLogicalDeviceId(),getDefaultDeviceName:()=>this.getDefaultBrowserDeviceName(),getPlatformType:()=>this.options.coordinationPlatformType??"web",normalizeDevice:(r,s)=>this.normalizeDevice(r,s)});let n=this.options.coordinationRoomGossipFanout===true||this.options.coordinationRoomArchitecture==="auto"||this.options.coordinationRoomArchitecture==="sparse"?c$1(this.options.coordinationAvenueOverride).key:void 0;if(this.presenceManager=new R({isTicketOnlyMode:()=>this.isTicketOnlyMode(),waitForWasmClient:(r,s)=>this.waitForWasmClient(r,s),warnMissingWasmOnce:r=>this.warnMissingWasmOnce(r),resolveWebLogicalDeviceId:()=>this.resolveWebLogicalDeviceId(),withWebPresenceMetadata:(r,s)=>this.withWebPresenceMetadata(r,s),updatePresence:(r,s,c,a,d,h)=>this.updatePresence(r,s,c,a,d,h),updateExcludedPeers:(r,s)=>this.getCoordinationSignaling().updateDevice(r,{excludedPeers:s}),getCoordinationSignaling:()=>this.getCoordinationSignaling(),rememberRouteRepairTokenFromTicket:r=>this.coreClient?.rememberRouteRepairTokenFromTicket?.(r)??Promise.resolve(false),onDesiredPeersChanged:()=>this.retryManagedApplicationRouteEscalations(),roomGossipFanout:()=>this.effectiveRoomArchitecture==="sparse",capabilityKey:n,localDeviceKeyX:this.options.coordinationDevicePublicKeyX,initialExcludedPeers:this.options.initialAutoConnectExcludedDeviceIds}),this.persistenceReady=Promise.resolve(),this.isTicketOnlyMode()||this.usesProviderNeutralGrant()){this.app=null,this.auth=null;return}let o=a();this.app=o.getApp(),this.auth=o.getAuth(),o.onAuthStateChanged(r=>{if(this.authContext)return;if(this.isSpaceMode()){this.authListeners.forEach(a=>a(this.toRuntimeIdentity(r)));return}let s=r?.uid??null,c=this.lastObservedFirebaseUserId;this.lastObservedFirebaseUserId=s,c&&c!==s&&this.stopAuthActivity({userId:c}),this.browserCoordinationSignaling?.handleScopeChange()??this.coordinationHost.handleScopeChange(),this.authListeners.forEach(a=>a(this.toRuntimeIdentity(r)));});}async loadBrowserWasmRuntime(){return re()}get tag(){return this.appTag}capabilities(){return t()}getDeviceIdentityStorageKey(){let e=f(this.options);return `${p.WEB_DEVICE_ID_STORAGE_PREFIX}_${e}`}getDeviceIdPersistenceMode(){return this.options.deviceIdPersistence??this.options.nodeIdPersistence??"persistent"}isTicketOnlyMode(){return this.options.signalingMode==="ticket-only"}usesProviderNeutralGrant(){return typeof this.options.coordinationGateway?.grantProvider=="function"}createRandomDeviceId(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`web-${Date.now()}-${Math.random().toString(36).slice(2,10)}`}resolveWebLogicalDeviceId(){let e=this.options.localDeviceId?.trim();if(e)return e;let t=this.getDeviceIdPersistenceMode();if(typeof localStorage>"u")return this.createRandomDeviceId();let i=this.getDeviceIdentityStorageKey(),n=Date.now(),o=null;try{let d=localStorage.getItem(i);o=d?JSON.parse(d):null;}catch{o=null;}let r=typeof o?.deviceId=="string"?o.deviceId.trim():"",s=typeof o?.expiresAt=="number"?o.expiresAt:void 0;if(t==="persistent"){let d=r||this.createRandomDeviceId();return localStorage.setItem(i,JSON.stringify({deviceId:d})),d}if(r&&typeof s=="number"&&s>n){let d=n+p.EPHEMERAL_DEVICE_ID_TTL_MS;return localStorage.setItem(i,JSON.stringify({deviceId:r,expiresAt:d})),r}let c=this.createRandomDeviceId(),a=n+p.EPHEMERAL_DEVICE_ID_TTL_MS;return localStorage.setItem(i,JSON.stringify({deviceId:c,expiresAt:a})),c}getDefaultBrowserDeviceName(){return this.options.deviceName?.trim()||(this.options.storagePrefix?`Web (${this.options.storagePrefix.replace(/_$/,"")})`:"Web Browser")}async getLocalDeviceInfo(){return {deviceId:this.resolveWebLogicalDeviceId(),deviceName:this.getDefaultBrowserDeviceName(),platformType:this.options.coordinationPlatformType??"web"}}getCoordinationSignaling(){return this.browserCoordinationSignaling??this.coordinationHost.getSignaling()}usesCoordinationGateway(){return this.coordinationHost.usesGateway()}setCoordinationHostAvailability(e){this.coordinationHost.setHostAvailability(e),this.browserCoordinationSignaling?.setHostAvailability?.(e);}async reconnectCoordinationAfterHostResume(){let e=this.browserCoordinationSignaling;if(e?.reconnectAfterHostResume){await e.reconnectAfterHostResume();return}await this.coordinationHost?.reconnectAfterHostResume();}async getCoordinationNativeTrustToken(e=false){return this.coordinationHost.getNativeTrustToken(e)}invalidateCoordinationNativeTrustToken(){this.coordinationHost.invalidateNativeTrustToken();}subscribeCoordinationNativeTrustToken(e,t){return this.coordinationHost.subscribeNativeTrustToken(e,t)}setCoordinationLocalDeviceId(e){if(!this.options.coordinationGateway)return;let t=e.trim();t&&(this.options.localDeviceId=t);}setCoordinationPlatformType(e){this.options.coordinationGateway&&(this.options.coordinationPlatformType=e);}async setCoordinationExcludedPeers(e){let t=this.resolveWebLogicalDeviceId();if(!t)throw new Error("The local device must be known before publishing peer exclusions.");await this.getCoordinationSignaling().updateDevice(t,{excludedPeers:e});}async joinCoordinationRoom(e,t,i){let n=this.getCoordinationSignaling();if(!n.joinCoordinationRoom)throw new Error("The active coordination provider does not support rooms.");await n.joinCoordinationRoom(e,t,i);}async leaveCoordinationRoom(e){await this.getCoordinationSignaling().leaveCoordinationRoom?.(e);}async getCoordinationRoomMembers(e){let t=this.getCoordinationSignaling();if(!t.getCoordinationRoomMembers)throw new Error("The active coordination provider does not support rooms.");return t.getCoordinationRoomMembers(e)}watchCoordinationRoomMembers(e,t){let i=this.getCoordinationSignaling();if(!i.watchCoordinationRoomMembers)throw new Error("The active coordination provider does not support rooms.");return i.watchCoordinationRoomMembers(e,t)}async withWebPresenceMetadata(e,t){let i;if(!e||!e.trim())i=JSON.stringify({deviceId:t});else {try{let n=JSON.parse(e);if(n&&typeof n=="object"&&!Array.isArray(n))return i=JSON.stringify({...n,deviceId:t}),await m(i)??i}catch{}i=JSON.stringify({deviceId:t,metadata:e});}return await m(i)??i}async setAuthContext(e){let t=this.injectedBrowserAuthSessionActive,i=this.authContext?.userId??null,n=e?.userId??null;if(this.authContext=e,!this.isTicketOnlyMode()&&!this.usesProviderNeutralGrant()&&e?.customToken?.trim()&&!(g()&&this.options.authMode==="external"&&typeof e.tokenProvider=="function"))try{await this.ensureBrowserPlatformAuth(e.userId,e.customToken.trim());}catch(o){console.warn("[WasmBridge] ensureBrowserPlatformAuth failed (non-fatal):",o);}else if(!this.isTicketOnlyMode()&&!this.usesProviderNeutralGrant()&&!e&&t)try{await this.auth?.signOut();}catch(o){console.warn("[WasmBridge] Failed to clear injected browser auth session:",o);}finally{this.injectedBrowserAuthSessionActive=false;}this.syncWasmAuthToken(),!this.isTicketOnlyMode()&&i!==n&&await(this.browserCoordinationSignaling?.handleScopeChange()??this.coordinationHost.handleScopeChange()),this.authListeners.forEach(o=>o(this.currentUser));}async ensureBrowserPlatformAuth(e,t){if((this.auth?.currentUser?.uid??null)===e){this.injectedBrowserAuthSessionActive=true;return}await a().signInWithCustomTokenValue(t),this.injectedBrowserAuthSessionActive=true;}syncWasmAuthToken(){let e=this.wasmClient?.setIdentityCredential??this.wasmClient?.set_auth_token;if(!this.wasmClient||typeof e!="function"||!this.authContext&&this.isSpaceMode())return;let t=this.authContext?.userId??null,i=this.authContext?.token,n=typeof i=="string"&&i.trim().length>0?i:null;if(!(this.hasSyncedAuthToWasmClient&&this.lastWasmAuthUserId===t&&this.lastWasmAuthToken===n)){if(this.lastWasmAuthUserId=t,this.lastWasmAuthToken=n,this.hasSyncedAuthToWasmClient=true,n===null&&typeof this.wasmClient.clearIdentityCredential=="function"){this.wasmClient.clearIdentityCredential();return}e.call(this.wasmClient,n);}}toRuntimeIdentity(e){return e?{id:e.uid,email:e.email,displayName:e.displayName,isAnonymous:e.isAnonymous,getToken:async(t=false)=>{try{return await e.getIdToken(t)}catch{return null}}}:null}getCurrentUserId(){return this.authContext?.userId?this.authContext.userId:this.isTicketOnlyMode()?null:this.auth?.currentUser?.uid??null}getCurrentUserIdForScope(){return this.getCurrentUserId()}getAuthContext(){return this.authContext}isSpaceMode(){return x(this.options)}getResolvedOptions(){return this.options}getDiscoveryScopeId(){if(this.isTicketOnlyMode())return null;let e=this.getCurrentUserId();return e||(this.isSpaceMode()?this.resolveWebLogicalDeviceId():null)}matchesTag(e){return y(e,this.appTag,this.isSpaceMode())}matchesLegacyOrCurrentTag(e){return this.matchesTag(e)}async stopSessionSubscriptions(){let e=Array.from(this.sessionReaders);this.sessionReaders.clear(),await Promise.allSettled(e.map(async t=>{try{await t.cancel();}catch{}}));}async stopRuntimeAuthScopedLoops(){let e=await this.waitForWasmClient(250);if(e)try{typeof e.stop_auth_scoped_activity=="function"?await e.stop_auth_scoped_activity():(typeof e.stop_presence_loop=="function"&&await e.stop_presence_loop(),typeof e.stop_auto_connect=="function"&&await e.stop_auto_connect());}catch(t){console.warn("[WasmSignaling] Failed to stop auth-scoped runtime loops:",t);}}async stopAuthActivity(e){h("WasmBridge.stopAuthActivity",{userId:e?.userId??null}),this.authScopedRuntimeGeneration+=1,this.stopApplicationRouteEscalationSubscription();let t=await this.waitForWasmClient(500);if(t&&typeof t.revoke_tokens_by_scope=="function")try{await t.revoke_tokens_by_scope("user-device");}catch(i){console.warn("[WasmBridge] user-device revoke during auth-scoped shutdown failed:",i);}this.presenceManager.stop(),this.browserCoordinationSignaling?.stopAuthActivity(),this.coordinationHost?.stopAuthActivity(),await this.stopSessionSubscriptions(),this.lastDeliveredConnectionStates.clear(),this.applicationRouteEscalations?.clear(),this.applicationRouteEscalationAttemptKeys?.clear(),await this.stopRuntimeAuthScopedLoops();}setWasmClient(e){this.wasmClient=e,this.coordinationHost.setWasmClient(e),this.lastWasmAuthUserId=null,this.lastWasmAuthToken=null,this.hasSyncedAuthToWasmClient=this.authContext===null,this.lastDeliveredConnectionStates.clear(),this.applicationRouteEscalations?.clear(),this.applicationRouteEscalationAttemptKeys?.clear(),this.syncWasmAuthToken();}async createBroadcastPublisher(){let e=await this.waitForWasmClient();if(!e)throw new Error("WASM broadcast publisher runtime is unavailable");return a$1.create(e)}async initializePersistentIrohProtocols(e){let t=await this.waitForWasmClient(),i=t?.__initPersistentIrohProtocols;if(typeof i!="function")throw new Error("This OpenRTC WASM host was built without persistent Iroh protocols");await i.call(t,e);}async createPersistentIrohNamespace(e,t){return (await this.requirePersistentProtocolHost()).__createPersistentIrohNamespace(BigInt(e),BigInt(t))}async importPersistentIrohTicket(e,t,i){return (await this.requirePersistentProtocolHost()).__importPersistentIrohTicket(e,BigInt(t),BigInt(i))}async sharePersistentIrohNamespace(e,t){return (await this.requirePersistentProtocolHost()).__sharePersistentIrohNamespace(e,t)}async removePersistentIrohNamespace(e,t,i){await(await this.requirePersistentProtocolHost()).__removePersistentIrohNamespace(e,BigInt(t),BigInt(i));}async putPersistentIrohBytes(e,t,i){return (await this.requirePersistentProtocolHost()).__putPersistentIrohBytes(e,t,i)}async setPersistentIrohHash(e,t,i,n){return (await this.requirePersistentProtocolHost()).__setPersistentIrohHash(e,t,i,BigInt(n))}async deletePersistentIrohPrefix(e,t){return (await this.requirePersistentProtocolHost()).__deletePersistentIrohPrefix(e,t)}async queryPersistentIrohNamespace(e,t){return (await this.requirePersistentProtocolHost()).__queryPersistentIrohNamespace(e,t)}async hydratePersistentIrohBlob(e){await(await this.requirePersistentProtocolHost()).__hydratePersistentIrohBlob(e);}async acknowledgePersistentIrohOutbox(e){await(await this.requirePersistentProtocolHost()).__acknowledgePersistentIrohOutbox(e);}async flushPersistentIrohProtocols(){await(await this.waitForWasmClient(500))?.__flushPersistentIrohProtocols?.();}async shutdownPersistentIrohProtocols(){await(await this.waitForWasmClient(500))?.__shutdownPersistentIrohProtocols?.();}async requirePersistentProtocolHost(){let e=await this.waitForWasmClient();if(!e||typeof e.__queryPersistentIrohNamespace!="function")throw new Error("This OpenRTC WASM host was built without persistent Iroh protocols");return e}warnMissingWasmOnce(e){!this.wasmClient&&Date.now()-this.createdAtMs<this.wasmReadyWarningDelayMs||this.missingWasmWarnings.has(e)||(this.missingWasmWarnings.add(e),console.warn(`[WasmSignaling] ${e} skipped: wasm client is not ready.`));}async waitForWasmClient(e=4e3,t=50){if(this.wasmClient)return this.wasmClient;let i=Date.now();for(;!this.wasmClient&&Date.now()-i<e;)await a$2(t);return this.wasmClient??null}normalizeDevice(e,t){return z(e,t)}normalizeDeviceRecord(e,t){return this.normalizeDevice(e,t)}getResolvedWebLogicalDeviceId(){return this.resolveWebLogicalDeviceId()}async encodeSparseFanoutMessage(e,t){let i=await this.waitForWasmClient(),n=this.options.coordinationDeviceSign;if(!i?.prepareSparseFanoutMessage||!i?.finalizeSparseFanoutMessage||!n)throw new Error("[OpenRTC] Browser sparse fanout signer is unavailable.");let o=await i.prepareSparseFanoutMessage(e,t),r=new Uint8Array(o.signingInput??o.signing_input??[]),s=await n(r);return new Uint8Array(await i.finalizeSparseFanoutMessage(String(o.requestId??o.request_id??""),s))}async acceptSparseFanoutMessage(e,t,i){let n=await this.waitForWasmClient();if(!n?.acceptSparseFanoutMessage)throw new Error("[OpenRTC] Browser sparse fanout verifier is unavailable.");let o=await n.acceptSparseFanoutMessage(e,t,i);return {payload:new Uint8Array(o.payload??[]),authorDeviceId:String(o.authorDeviceId??o.author_device_id??""),authorPeerId:String(o.authorPeerId??o.author_peer_id??""),topologyRevision:Number(o.topologyRevision??o.topology_revision),hop:Number(o.hop),forwardPeerIds:Array.isArray(o.forwardPeerIds??o.forward_peer_ids)?(o.forwardPeerIds??o.forward_peer_ids).map(String):[],forwardPeerLimit:Number(o.forwardPeerLimit??o.forward_peer_limit),forwardQueueCapacity:Number(o.forwardQueueCapacity??o.forward_queue_capacity),...o.forward==null?{}:{forward:new Uint8Array(o.forward)}}}async recordSparseFanoutForwardQueueDrop(e,t){let i=await this.waitForWasmClient();i?.recordSparseFanoutForwardQueueDrop&&await i.recordSparseFanoutForwardQueueDrop(e,t);}normalizeDeviceStatusSnapshot(e){return B(e)}normalizePeerSessionSnapshot(e){return C(e)}toBackendConnectionStateFromPeerSession(e){return F(e)}normalizeStateSnapshot(e){return G(e)}stabilizeConnectionState(e){let t=this.lastDeliveredConnectionStates.get(e.connectionId);return {...e,deviceId:e.deviceId??t?.deviceId??null,deviceIdHint:e.deviceIdHint??t?.deviceIdHint??null,remoteNodeId:e.remoteNodeId??t?.remoteNodeId??null,createdAt:e.createdAt??t?.createdAt,updatedAt:e.updatedAt??t?.updatedAt}}sameConnectionState(e,t){return H(e,t)}deliverConnectionState(e,t,i,n){let o=this.stabilizeConnectionState(e);this.lastDeliveredConnectionStates.set(o.connectionId,o);let s=(n??this.lastDeliveredConnectionStates).get(o.connectionId);this.sameConnectionState(s,o)||(n&&n.set(o.connectionId,o),t(o));}get browserPresenceLoopState(){return this.presenceManager.presenceLoopState}set browserPresenceLoopState(e){this.presenceManager.presenceLoopState=e;}get currentUser(){if(this.authContext?.userId){let e=this.authContext.token??null,t=this.authContext.tokenProvider;return {id:this.authContext.userId,getToken:async(i=false)=>{if(e&&(!i||!t))return e;if(t)try{let o=await t(i);if(o)return o}catch{}let n=this.isTicketOnlyMode()?null:this.auth?.currentUser??null;if(n&&n.uid===this.authContext?.userId)try{return await n.getIdToken(i)}catch{return null}return null}}}return this.isTicketOnlyMode()?null:this.toRuntimeIdentity(this.auth?.currentUser??null)}onAuthChange(e){return this.authListeners.push(e),e(this.currentUser),()=>{this.authListeners=this.authListeners.filter(t=>t!==e);}}async checkForSSOToken(){this.isTicketOnlyMode()||this.usesProviderNeutralGrant()||await a().checkForSSOToken();}async waitForAuth(){this.isTicketOnlyMode()||this.usesProviderNeutralGrant()||this.isSpaceMode()||this.authContext?.userId||this.auth?.currentUser||await a().waitForAuth();}async signInAnonymously(){if(!this.isTicketOnlyMode()){if(this.options.authMode!=="anonymous")throw new Error(`[pluto-rtc] Anonymous sign-in is disabled when authMode=${this.options.authMode}.`);await a().signInAnonymously();}}async signInWithPluto(){if(this.isTicketOnlyMode())throw new Error('[openrtc] Pluto sign-in is unavailable when signalingMode="ticket-only".');await a().signInWithPluto();}async signOut(){let e=this.getCurrentUserId();await this.stopAuthActivity({userId:e}),this.authContext=null,this.syncWasmAuthToken(),this.isTicketOnlyMode()||await this.auth?.signOut(),this.authListeners.forEach(t=>t(this.currentUser));}async getTurnCredentials(){return this.isTicketOnlyMode()||!this.auth?.currentUser?null:typeof this.options.turnCredentialsProvider=="function"?await this.options.turnCredentialsProvider()??null:null}async updatePresence(e,t,i=true,n=3e5,o,r){if(this.isTicketOnlyMode())return;let s=this.resolveWebLogicalDeviceId(),c=this.getDeviceIdPersistenceMode()==="ephemeral"?p.EPHEMERAL_DEVICE_ID_TTL_MS:n,a=await this.withWebPresenceMetadata(o,s);this.presenceManager.updatePresenceLoopState({userId:this.getCurrentUserId()??"",localNodeId:e,ticket:t,metadata:a,deviceName:r?.trim()||this.getDefaultBrowserDeviceName()}),await this.getCoordinationSignaling().updatePresence(e,t,i,c,a,r);}async refreshLivePresence(e,t,i,n){if(this.isTicketOnlyMode())return;let o=this.resolveWebLogicalDeviceId(),r=await this.withWebPresenceMetadata(i,o);this.presenceManager.updatePresenceLoopState({userId:this.getCurrentUserId()??"",localNodeId:e,ticket:t,metadata:r,deviceName:n?.trim()||this.getDefaultBrowserDeviceName()}),await this.getCoordinationSignaling().updatePresence(e,t,true,15*6e4,r,n);}async setOffline(e){this.presenceManager.stopPresence(),!this.isTicketOnlyMode()&&await this.getCoordinationSignaling().setOffline(e);}async updateDevice(e,t){if(!e?.trim())throw new Error("updateDevice requires a deviceId");this.isTicketOnlyMode()||await this.getCoordinationSignaling().updateDevice(e,t);}async deleteDevice(e){if(!e?.trim())throw new Error("deleteDevice requires a deviceId");this.isTicketOnlyMode()||await this.getCoordinationSignaling().deleteDevice(e);}async cleanupStaleDevices(){this.isTicketOnlyMode()||await this.getCoordinationSignaling().cleanupStaleDevices();}async sendMessage(e,t,i,n){if(this.isTicketOnlyMode())throw new Error('[openrtc] sendMessage() is unavailable when signalingMode="ticket-only".');return this.getCoordinationSignaling().sendMessage(e,t,i,n)}async pollMessages(e){return this.isTicketOnlyMode()?[]:this.getCoordinationSignaling().pollMessages(e)}async searchDevices(e){return this.isTicketOnlyMode()?[]:this.getCoordinationSignaling().searchDevices(e)}async listDeviceStatus(){if(this.isTicketOnlyMode())return [];if(!this.getDiscoveryScopeId())return [];let t=await this.getCoordinationSignaling().listDevices(),i=this.wasmClient;return Promise.all(t.map(async n=>{let o=this.normalizeDeviceStatusSnapshot({...n,connectionStatus:n.online?"online":"disconnected"}),r=typeof n.nodeId=="string"?n.nodeId.trim():"";if(!r||typeof i?.iroh_path_kind!="function"||typeof i?.iroh_transport_rtt_ms!="function")return o;try{let[s,c]=await Promise.all([i.iroh_path_kind(r),i.iroh_transport_rtt_ms(r)]);if(typeof c!="number"||!Number.isFinite(c))return o;let a=Math.max(0,Math.round(c)),d={};if(s==="direct-lan")d.irohLan=a;else if(s==="direct-quic")d.iroh=a;else if(s==="ble")d.ble=a;else if(s==="relay")d.irohRelay=a;else if(s==="webrtc")d.webrtc=a;else if(s==="moq")d.moq=a;else return o;return {...o,latencyMs:a,latencyByTransport:d}}catch(s){return d$1("[WasmBridge] iroh transport latency unavailable",{deviceId:n.deviceId,error:s instanceof Error?s.message:String(s)}),o}}))}async getPeerSession(e){let t=await this.waitForWasmClient(500);if(t&&typeof t.peer_session=="function"){let i=await t.peer_session(e);return !i||typeof i!="object"?null:this.normalizePeerSessionSnapshot(i)}return this.warnMissingWasmOnce("getPeerSession"),null}async listPeerSessions(){let e=await this.waitForWasmClient(500);if(e&&typeof e.peer_sessions=="function"){let t=await e.peer_sessions();return (Array.isArray(t)?t:[]).map(n=>this.normalizePeerSessionSnapshot(n)).filter(n=>!!(n.peerId||n.deviceId||n.deviceIdHint||n.nodeId||n.activeConnectionId))}return this.warnMissingWasmOnce("listPeerSessions"),[]}async waitForSettledPeer(e,t){let i=await this.waitForWasmClient(500);if(i&&typeof i.wait_for_peer=="function"){let n=await i.wait_for_peer(e,t);return !n||typeof n!="object"?null:this.normalizePeerSessionSnapshot(n)}return this.warnMissingWasmOnce("waitForSettledPeer"),null}async waitForSettledScope(e,t){let i=await this.waitForWasmClient(500);if(i&&typeof i.wait_for_settled_scope=="function"){let n=await i.wait_for_settled_scope(e,t);return !n||typeof n!="object"?null:this.normalizePeerSessionSnapshot(n)}return this.warnMissingWasmOnce("waitForSettledScope"),null}async openPeerBi(e,t){let i=await this.waitForWasmClient(500);if(i&&typeof i.open_peer_bi=="function"){let n=await i.open_peer_bi(e,t);if(!n?.recv||!n?.send)throw new Error("WASM open_peer_bi returned an invalid bidirectional stream");return {readable:n.recv,writable:T(n,n.send)}}throw this.warnMissingWasmOnce("openPeerBi"),new Error("WASM runtime does not support open_peer_bi()")}async openPeerBiRaw(e,t){if(this.options.applicationCrypto?.requireEncrypted)throw new Error("[WasmBridge] openPeerBiRaw is debug-only and cannot be used when application crypto is required");let i=await this.waitForWasmClient(500),n=i&&typeof i.open_peer_bi_transport_only=="function";if(console.debug("[WasmBridge] openPeerBiRaw",{peerId:e,hasWasmClient:!!i,hasTransportOnly:n,timeoutMs:t}),n){let o=await i.open_peer_bi_transport_only(e,t);if(!o?.recv||!o?.send)throw new Error("WASM open_peer_bi_transport_only returned an invalid bidirectional stream");return {readable:o.recv,writable:T(o,o.send)}}throw new Error("WASM runtime does not support the restricted transport-only diagnostic stream")}async openPeerUni(e,t){let i=await this.waitForWasmClient(500);if(i&&typeof i.open_peer_uni=="function"){let n=await i.open_peer_uni(e,t),o=n?.writable??n;if(!o)throw new Error("WASM open_peer_uni returned an invalid writable stream");return {writable:T(n,o)}}throw this.warnMissingWasmOnce("openPeerUni"),new Error("WASM runtime does not support open_peer_uni()")}beginOpenRtcMediaPublication(e){let t=this.wasmClient?.__beginOpenRtcMediaPublication;if(typeof t!="function")throw new Error("[OpenRTC] This WASM build does not include Rust-owned media sessions.");let i=t.call(this.wasmClient,e.publicationId||void 0,e.kind,e.codec,e.clockRate,e.codedWidth,e.codedHeight,e.channels);return {...i,control:new Uint8Array(i.control)}}encodeOpenRtcMediaSample(e){let t=this.wasmClient?.__encodeOpenRtcMediaSample;if(typeof t!="function")throw new Error("[OpenRTC] This WASM build does not include Rust-owned media sessions.");return new Uint8Array(t.call(this.wasmClient,e.publicationId,e.timestampUs,e.durationUs,e.keyframe,e.discardable,e.payload))}pauseOpenRtcMediaPublication(e){let t=this.wasmClient?.__pauseOpenRtcMediaPublication;if(typeof t!="function")throw new Error("[OpenRTC] This WASM build does not include Rust-owned media sessions.");t.call(this.wasmClient,e);}retireOpenRtcMediaPublication(e){let t=this.wasmClient?.__retireOpenRtcMediaPublication;if(typeof t!="function")throw new Error("[OpenRTC] This WASM build does not include Rust-owned media sessions.");t.call(this.wasmClient,e);}retireOpenRtcMediaReceiver(e,t){let i=this.wasmClient?.__retireOpenRtcMediaReceiver;if(typeof i!="function")throw new Error("[OpenRTC] This WASM build does not include Rust-owned media sessions.");i.call(this.wasmClient,e,t);}decodeOpenRtcMediaChunk(e){let t=this.wasmClient?.__decodeOpenRtcMediaChunk;if(typeof t!="function")throw new Error("[OpenRTC] This WASM build does not include the shared media protocol.");let i=t.call(this.wasmClient,e);return {...i,payload:new Uint8Array(i.payload)}}decodeOpenRtcMediaControl(e){let t=this.wasmClient?.__decodeOpenRtcMediaControl;if(typeof t!="function")throw new Error("[OpenRTC] This WASM build does not include the shared media protocol.");return t.call(this.wasmClient,e)}async sendPeerDatagram(e,t,i){let n=await this.waitForWasmClient(500),o=n?.sendPeerDatagram;if(typeof o!="function")throw new Error("[OpenRTC] This WASM build does not include protected peer datagrams.");return await o.call(n,e,t,i)!==false}async receivePeerDatagram(e){let t=await this.waitForWasmClient(500),i=t?.receivePeerDatagram;if(typeof i!="function")throw new Error("[OpenRTC] This WASM build does not include protected peer datagrams.");return new Uint8Array(await i.call(t,e))}peerDatagramMaxSize(){let e=this.wasmClient?.peerDatagramMaxSize?.();return Number.isSafeInteger(e)&&e>0?e:1024}createPeerDatagramPolicy(){let e=this.wasmClient?.createPeerDatagramPolicy;if(typeof e!="function")throw new Error("[OpenRTC] This WASM build does not include shared datagram policy.");return e.call(this.wasmClient)}async resolvePeerRecords(e){let t=await this.waitForWasmClient(500);if(t&&typeof t.resolve_peer_connection_records=="function"){let i=await t.resolve_peer_connection_records(e);return (Array.isArray(i)?i:[]).map(n=>({connectionId:typeof n.connectionId=="string"?n.connectionId:"",nodeId:typeof n.nodeId=="string"?n.nodeId:null,deviceId:typeof n.deviceId=="string"?n.deviceId:null,deviceIdHint:typeof n.deviceIdHint=="string"?n.deviceIdHint:null,endpointId:typeof n.endpointId=="string"?n.endpointId:null,transportGeneration:typeof n.transportGeneration=="number"?n.transportGeneration:0,routeGeneration:typeof n.routeGeneration=="number"?n.routeGeneration:void 0,transportStableId:typeof n.transportStableId=="number"?n.transportStableId:null,transportSource:typeof n.transportSource=="string"?n.transportSource:null,lastTransportChangeAtMs:typeof n.lastTransportChangeAtMs=="number"?n.lastTransportChangeAtMs:0,lastRouteChangeAtMs:typeof n.lastRouteChangeAtMs=="number"?n.lastRouteChangeAtMs:void 0,state:typeof n.state=="string"?n.state:"pending",statusReason:typeof n.statusReason=="string"?n.statusReason:null,createdAtMs:typeof n.createdAtMs=="number"?n.createdAtMs:0,updatedAtMs:typeof n.updatedAtMs=="number"?n.updatedAtMs:0}))}return this.warnMissingWasmOnce("resolvePeerRecords"),[]}async resolvePeerIdentity(e){let t=await this.waitForWasmClient(500);if(t){let i=n=>{if(!n||typeof n!="object")return {peerId:null,deviceId:null,deviceIdHint:null,nodeId:null};let o=n;return {peerId:typeof o.peerId=="string"?o.peerId:null,deviceId:typeof o.deviceId=="string"?o.deviceId:null,deviceIdHint:typeof o.deviceIdHint=="string"?o.deviceIdHint:null,nodeId:typeof o.nodeId=="string"?o.nodeId:null}};if(typeof t.peer_session=="function")try{let n=await t.peer_session(e),o=i(n);if(o.peerId||o.deviceId||o.deviceIdHint||o.nodeId)return o}catch{}if(typeof t.peer_snapshot=="function")try{return i(await t.peer_snapshot(e))}catch{}}return this.warnMissingWasmOnce("resolvePeerIdentity"),{peerId:null,deviceId:null,deviceIdHint:null,nodeId:null}}onDevicesChange(e,t){return this.isTicketOnlyMode()?(e([]),()=>{}):this.getCoordinationSignaling().onDevicesChange(e,t)}onRoomArchitectureChange(e){return this.getCoordinationSignaling().onRoomArchitectureChange?.(t=>{let i=this.effectiveRoomArchitecture!==t.effective;this.effectiveRoomArchitecture=t.effective,i&&this.presenceManager.handleRoomArchitectureChange().catch(n=>{console.warn("[WasmSignaling] failed to replay desired peers after room architecture change",{effectiveArchitecture:t.effective,epoch:t.epoch,error:n});}),e(t);})??(()=>{})}onRoomAuthorityAssignmentChange(e){return this.getCoordinationSignaling().onRoomAuthorityAssignmentChange?.(e)??(()=>{})}async publishAuthorityAssignment(e){let t=this.getCoordinationSignaling();if(!t.publishAuthorityAssignment)throw new Error("[OpenRTC] Authority assignment publication is unavailable.");await t.publishAuthorityAssignment(e);}async publishManagedRoomMessage(e){let t=this.getCoordinationSignaling().publishManagedRoomMessage;if(!t)throw new Error("[OpenRTC] Managed room fanout is unavailable.");await t.call(this.getCoordinationSignaling(),e);}onManagedRoomMessage(e){return this.getCoordinationSignaling().onManagedRoomMessage?.(e)??(()=>{})}async subscribeDevices(e){return this.isTicketOnlyMode()?new ReadableStream({start(t){t.close();}}):this.getCoordinationSignaling().subscribeDevices()}async startAutoConnect(e,t){if(this.isTicketOnlyMode())return;this.startApplicationRouteEscalationSubscription();let i=this.authScopedRuntimeGeneration;try{let n=await this.waitForWasmClient();if(i!==this.authScopedRuntimeGeneration||!n||typeof n.start_auto_connect!="function")return;await this.presenceManager.installInitialAutoConnectExclusions(n),await n.start_auto_connect(e,t),i===this.authScopedRuntimeGeneration&&this.presenceManager.startAutoConnect(e,t);}catch(n){console.warn("[WasmBridge] failed to initialize WASM auto-connect context",{userId:e,localDeviceId:t,error:n});}}async startAutoConnectOnce(e,t){await this.startAutoConnect(e,t),this.forceReconnect();}notifyDisconnectRequested(e){this.presenceManager.wakeRustAutoConnectOwner();}async excludeAutoConnect(e,t){await this.presenceManager.excludeAutoConnect(e,t);}async disconnectDevice(e){let t=await this.waitForWasmClient();if(!t||typeof t.disconnect_device!="function"){this.warnMissingWasmOnce("disconnectDevice"),await this.presenceManager.excludeAutoConnect(e,true).catch(()=>{});return}try{await t.disconnect_device(e,null),await this.presenceManager.recordAutoConnectExcludedForPresence(e,!0).catch(()=>{});}catch(i){throw console.warn("[WasmBridge] disconnect_device failed",{deviceId:e,error:i?.message??String(i)}),i}}async submitDesiredPeerProjection(e,t){return this.presenceManager.submitDesiredPeerProjection(e,t)}observeManagedDesiredPeers(e){this.presenceManager.observeDesiredPeerProjection(e),e$1("[OpenRTC][route-escalation] observed managed desired peers",{peerCount:e.length,peersWithTickets:e.filter(t=>typeof t.ticket=="string"&&t.ticket.trim()).length,deviceIds:e.map(t=>t.deviceId)});}setCoreClient(e){e&&typeof e.ensureManagedApplicationRoute=="function"?(this.coreClient=e,e$1("[OpenRTC][route-escalation] attached shared core client"),this.startApplicationRouteEscalationSubscription(),this.retryManagedApplicationRouteEscalations()):(this.coreClient=null,e$1("[OpenRTC][route-escalation] detached shared core client"),this.stopApplicationRouteEscalationSubscription());}startApplicationRouteEscalationSubscription(){if(this.applicationRouteEscalationUnsubscribe&&this.routeSubscriptionGeneration===this.authScopedRuntimeGeneration)return;this.stopApplicationRouteEscalationSubscription();let e=this.authScopedRuntimeGeneration,t=this.applicationRouteEscalationSubscriptionEpoch,i=this.onStateChange(n=>{let o=this.stabilizeConnectionState(n);this.lastDeliveredConnectionStates.set(o.connectionId,o),e$1("[OpenRTC][route-escalation] observed Rust connection state",{connectionId:o.connectionId,deviceId:o.deviceId??o.deviceIdHint??null,remoteNodeId:o.remoteNodeId??null,state:o.state,transportGeneration:o.transportGeneration??null,routeGeneration:o.routeGeneration??null}),this.escalateManagedApplicationRoute(o);});this.applicationRouteEscalationUnsubscribe=()=>{},this.routeSubscriptionGeneration=e,Promise.resolve(i).then(n=>{if(!this.coreClient||e!==this.authScopedRuntimeGeneration||t!==this.applicationRouteEscalationSubscriptionEpoch){n();return}this.applicationRouteEscalationUnsubscribe=n,this.routeSubscriptionGeneration=e;});}stopApplicationRouteEscalationSubscription(){this.applicationRouteEscalationSubscriptionEpoch+=1,this.applicationRouteEscalationUnsubscribe?.(),this.applicationRouteEscalationUnsubscribe=null,this.routeSubscriptionGeneration=-1;}retryManagedApplicationRouteEscalations(){for(let e of this.lastDeliveredConnectionStates.values())this.escalateManagedApplicationRoute(e);}escalateManagedApplicationRoute(e){if(!this.coreClient||!["connected","connecting"].includes(e.state))return;let t=[e.transportGeneration??0,e.routeGeneration??0].join(":"),i=this.applicationRouteEscalationAttemptKeys??(this.applicationRouteEscalationAttemptKeys=new Map);if(i.get(e.connectionId)===t||this.applicationRouteEscalations.has(e.connectionId))return;let n=this.presenceManager.resolveDesiredPeer(e.deviceId??e.deviceIdHint,e.remoteNodeId);if(!n?.ticket){e$1("[OpenRTC][route-escalation] awaiting matching desired-peer ticket",{connectionId:e.connectionId,deviceId:e.deviceId??e.deviceIdHint??null,remoteNodeId:e.remoteNodeId??null});return}let o=this.authScopedRuntimeGeneration,r=this.coreClient;i.set(e.connectionId,t),e$1("[OpenRTC][route-escalation] adopting Rust-managed generation",{connectionId:e.connectionId,deviceId:n.deviceId,remoteNodeId:e.remoteNodeId??n.nodeId??null,transportGeneration:e.transportGeneration??null,routeGeneration:e.routeGeneration??null});let s;s=(async()=>{let c=await r.ensureManagedApplicationRoute({ticket:n.ticket,connectionId:e.connectionId,remoteNodeId:e.remoteNodeId??n.nodeId,expectedDeviceId:n.deviceId,timeoutMs:2e4});if(o!==this.authScopedRuntimeGeneration)return;let a=c,d=a.id?.trim()||e.connectionId,h=a.remoteNodeId?.trim()||e.remoteNodeId?.trim()||a.deviceId?.trim()||n.deviceId;if(r.hasApplicationRouteForPeer?.(d,h)!==true&&r.hasApplicationRouteForPeer?.(d,h)!==true)throw new Error(`application crypto was not ready for ${h}`)})().catch(c=>{o===this.authScopedRuntimeGeneration&&console.warn("[OpenRTC][route-escalation] Rust-managed route remains pending",{connectionId:e.connectionId,deviceId:n.deviceId,remoteNodeId:e.remoteNodeId??n.nodeId,error:c?.message??String(c)});}).finally(()=>{if(this.applicationRouteEscalations.get(e.connectionId)===s){this.applicationRouteEscalations.delete(e.connectionId);let c=this.lastDeliveredConnectionStates?.get(e.connectionId),a=c?[c.transportGeneration??0,c.routeGeneration??0].join(":"):null;c&&a!==t&&o===this.authScopedRuntimeGeneration&&queueMicrotask(()=>this.escalateManagedApplicationRoute(c));}}),this.applicationRouteEscalations.set(e.connectionId,s);}async issueTicketMesh(e,t,i){let n=await this.waitForWasmClient();if(typeof n?.issue_ticket_mesh!="function")throw new Error("WASM runtime does not support Rust-owned ticket meshes.");return n.issue_ticket_mesh(e,t,i)}async joinTicketMesh(e,t){let i=await this.waitForWasmClient();if(typeof i?.join_ticket_mesh!="function")throw new Error("WASM runtime does not support Rust-owned ticket meshes.");return i.join_ticket_mesh(e,t)}async receiveTicketMeshFrame(e,t,i){let n=await this.waitForWasmClient();if(typeof n?.receive_ticket_mesh_frame!="function")throw new Error("WASM runtime does not support Rust-owned ticket meshes.");n.receive_ticket_mesh_frame(e,t,i);}async ticketMeshIssuerNode(e){let t=await this.waitForWasmClient();if(typeof t?.ticket_mesh_issuer_node!="function")throw new Error("WASM ticket mesh issuer projection is unavailable.");return t.ticket_mesh_issuer_node(e)}async closeTicketMesh(e){let t=await this.waitForWasmClient();if(typeof t?.close_ticket_mesh!="function")throw new Error("WASM runtime does not support closing Rust-owned ticket meshes.");await t.close_ticket_mesh(e);}async connectToDevice(e){let t=await this.waitForWasmClient();if(!t||typeof t.connect_device!="function")throw this.warnMissingWasmOnce("connectToDevice"),new Error("WASM runtime does not support connect_device()");let i=e.endpointTicket?.trim()??"",n=e.admissionToken?.trim()??"",o=e.admissionScope?.trim()??"",r=!i,s=i;if(r&&(!e.deviceId||!n||!o||typeof t.connect_known_device_with_token!="function"))throw new Error("WASM connectToDevice requires an endpoint ticket or supported known-device admission intent.");i&&await this.coreClient?.rememberRouteRepairTokenFromTicket?.(i);let c=Date.now();e$1("[WasmBridge][ROUTE-ESCALATION] starting managed transport dial",{deviceId:e.deviceId??null,ticket:ae(i),knownDeviceAdmission:r,hasCoreClient:!!this.coreClient});let a=r?await(async()=>{let h=Date.now(),u=Math.max(1,e.timeoutMs??3e4),m=()=>Math.max(1,u-(Date.now()-h)),v=e.admissionPeerUserId?.trim()??"";if(v){let g=(await this.getCoordinationSignaling().waitForFriendDevice(v,e.deviceId,Math.min(1e4,m()))).ticket?.trim()??"";if(!g)throw new Error(`[pluto-rtc] authorized device ${e.deviceId} did not publish an endpoint ticket.`);if(typeof t.observe_known_device_endpoint!="function")throw new Error("WASM runtime does not support provider-authorized endpoint observations.");await t.observe_known_device_endpoint(e.deviceId,g),s=a$3(g).irohTicket;}return t.connect_known_device_with_token(e.deviceId,n,o,e.admissionMaxConnections??0,e.admissionExpiresAtMs==null?null:BigInt(Math.floor(e.admissionExpiresAtMs)),Math.min(1e4,m()))})():await t.connect_device(e.deviceId??null,i,e.timeoutMs??null);e$1("[WasmBridge][ROUTE-ESCALATION] managed transport dial completed",{deviceId:e.deviceId??null,remoteNodeId:a?.remoteNodeId??null,connectionId:a?.connectionId??null,elapsedMs:Date.now()-c});let d=s;if(d&&this.coreClient){let h=this.coreClient;try{e$1("[WasmBridge][ROUTE-ESCALATION] starting typed application connection",{deviceId:e.deviceId??null,remoteNodeId:a?.remoteNodeId??null,connectionId:a?.connectionId??null});let u=await h.ensureManagedApplicationRoute({ticket:d,connectionId:a?.connectionId??null,remoteNodeId:a?.remoteNodeId??null,expectedDeviceId:e.deviceId??null,approvedScope:a?.approvedScope??null,timeoutMs:2e4}),m=typeof u?.remoteNodeId=="string"?u.remoteNodeId.trim():"",v=typeof u?.deviceId=="string"?u.deviceId.trim():"",f=m||a?.remoteNodeId?.trim?.()||v||e.deviceId?.trim?.()||"",g=typeof h.hasApplicationRouteForPeer=="function"?h.hasApplicationRouteForPeer.bind(h):null;if(!(!!f&&g?.(u?.id??void 0,f)===!0)&&f&&typeof h.waitForApplicationCryptoForPeer=="function"&&!(!!await h.waitForApplicationCryptoForPeer(f,2e4)&&(!g||g(u?.id??void 0,f)===!0)))throw console.warn("[WasmBridge][ROUTE-ESCALATION] application route still pending after managed dial",{deviceId:e.deviceId??null,remoteNodeId:m||(a?.remoteNodeId??null),connectionId:a?.connectionId??null,peerForCrypto:f,elapsedMs:Date.now()-c}),Object.assign(new Error(`application crypto was not ready for ${f}`),{applicationCryptoNotReady:!0});e$1("[WasmBridge][ROUTE-ESCALATION] application route ready",{deviceId:e.deviceId??null,remoteNodeId:m||(a?.remoteNodeId??null),connectionId:a?.connectionId??null,elapsedMs:Date.now()-c});}catch(u){if(u?.applicationCryptoNotReady)throw u;return console.warn("[WasmBridge] Managed transport connected; TS application route escalation is still pending",{deviceId:e.deviceId??null,remoteNodeId:a?.remoteNodeId??null,connectionId:a?.connectionId??null,error:u?.message??String(u)}),a}}return a}forceReconnect(){this.isTicketOnlyMode()||!this.app||!this.auth||this.presenceManager.wakeRustAutoConnectOwner();}startPresenceLoop(e,t,i,n,o){return this.presenceManager.startPresenceLoop(e,t,i,n,o)}ensureSpaceNamespaceIdPromise(){if(this.cachedSpaceNamespaceId)return Promise.resolve(this.cachedSpaceNamespaceId);if(!this.spaceNamespaceIdPromise){let e=this.options.apiKey?.trim()??"",t=this.options.spaceKey?.trim()??"";if(!e||!t)return Promise.resolve(null);this.spaceNamespaceIdPromise=b$2(e,t).then(i=>(this.cachedSpaceNamespaceId=i,i)).catch(()=>null);}return this.spaceNamespaceIdPromise}async createSession(e){if(this.isTicketOnlyMode())throw new Error('[openrtc] createSession() is unavailable when signalingMode="ticket-only".');let t=this.getCurrentUserId();if(!t&&!e.initiator&&!e.target&&!this.isSpaceMode())throw new Error("createSession requires user scope");let i={...e,appTag:e.appTag??this.appTag,initiator:e.initiator??t??void 0,target:e.target??t??void 0};await this.getCoordinationSignaling().createSession(i);}async updateSession(e,t){if(this.isTicketOnlyMode())throw new Error('[openrtc] updateSession() is unavailable when signalingMode="ticket-only".');await this.getCoordinationSignaling().updateSession(e,t);}async subscribeSessions(e){return this.isTicketOnlyMode()?new ReadableStream({start(t){t.close();}}):this.getCoordinationSignaling().subscribeSessions(e)}async getLocalDeviceId(){return this.resolveWebLogicalDeviceId()}async isConnected(e){let t=await this.waitForWasmClient();return t&&typeof t.is_connected=="function"?t.is_connected(e):false}async getConnectionStates(){let e=await this.waitForWasmClient(500);if(e&&typeof e.connection_states=="function"){let n=await e.connection_states(),o=(Array.isArray(n)?n:[]).map(r=>this.normalizeStateSnapshot(r)).filter(r=>!!r);return o.length>0&&d$1("[WasmBridge] replaying current wasm connection states",o.map(r=>({connectionId:r.connectionId,deviceId:r.deviceId??null,deviceIdHint:r.deviceIdHint??null,remoteNodeId:r.remoteNodeId??null,state:r.state,transportState:r.transportState??null,protocolState:r.protocolState??null,routable:r.routable??null}))),o}let i=(await this.listPeerSessions().catch(()=>[])).map(n=>this.toBackendConnectionStateFromPeerSession(n)).filter(n=>!!n);return i.length>0&&d$1("[WasmBridge] replaying current wasm connection states",i.map(n=>({connectionId:n.connectionId,deviceId:n.deviceId??null,deviceIdHint:n.deviceIdHint??null,remoteNodeId:n.remoteNodeId??null,state:n.state,transportState:n.transportState??null,protocolState:n.protocolState??null,routable:n.routable??null}))),i}onStateChange(e){let t=new Map,i=new Map,n=this.authScopedRuntimeGeneration,o=false,r=a=>{let d=a.detail,h=d?.runtimeOwnerId;if(typeof h!="string"||!h||typeof this.wasmClient?.connection_state_owner_id!="function")return;try{if(this.wasmClient.connection_state_owner_id()!==h)return}catch{return}let u=this.normalizeStateSnapshot(d),m=typeof d?.connectionId=="string"?d.connectionId.trim():"";if(!m||o)return;let v=(i.get(m)??0)+1;if(i.set(m,v),u&&(u.state==="closed"||u.state==="failed"||u.state==="disconnected")){this.deliverConnectionState(u,e,"rust-event-detail",t);return}let f=this.authScopedRuntimeGeneration;(async()=>{let g=await this.waitForWasmClient(500);if(!(o||f!==this.authScopedRuntimeGeneration||i.get(m)!==v)){if(g&&typeof g.connection_state=="function"){let I=await g.connection_state(m),C=this.normalizeStateSnapshot(I);if(!o&&f===this.authScopedRuntimeGeneration&&i.get(m)===v&&C){this.deliverConnectionState(C,e,"rust-event",t);return}}!o&&f===this.authScopedRuntimeGeneration&&i.get(m)===v&&u&&this.deliverConnectionState(u,e,"rust-event-detail",t);}})().catch(g=>{o||console.warn("[WasmBridge] Failed to read Rust connection state after lifecycle event",{connectionId:m,error:g});});},s=typeof window<"u"?window:null,c=typeof s?.addEventListener=="function"&&typeof s?.removeEventListener=="function";return c&&s.addEventListener("connection-state-changed",r),this.getConnectionStates().then(a=>{!o&&n===this.authScopedRuntimeGeneration&&a.forEach(d=>{i.has(d.connectionId)||this.deliverConnectionState(d,e,"replay",t);});}).catch(a=>{console.warn("[WasmBridge] Failed to replay wasm connection states after subscription:",a);}),()=>{o=true,i.clear(),c&&s.removeEventListener("connection-state-changed",r);}}async sendExplicitFilePath(e,t,i=""){throw new Error("sendExplicitFilePath is native-only. Use sendExplicitFileData in web/wasm runtime.")}sanitizeExplicitFileName(e){let i=(typeof e=="string"?e.replace(/\\/g,"/"):"").split("/").reverse().find(r=>r.trim().length>0)?.trim()??"";if(!i||i==="."||i==="..")return p.FALLBACK_EXPLICIT_FILE_NAME;let n="";for(let r of i){if([...n].length>=p.MAX_EXPLICIT_FILE_NAME_CHARS)break;let s=r.charCodeAt(0);r==="/"||r==="\\"||r==="\0"||s<32||s===127?n+="_":n+=r;}let o=n.trim();return !o||o==="."||o===".."?p.FALLBACK_EXPLICIT_FILE_NAME:o}sanitizeExplicitMimeType(e){let t=typeof e=="string"?e.trim():"";if(!t)return p.FALLBACK_EXPLICIT_MIME_TYPE;let i="";for(let n of t){if(i.length>=p.MAX_EXPLICIT_MIME_TYPE_CHARS)break;let o=n.charCodeAt(0);o<33||o>126||n==='"'||n==="\\"?i+="_":i+=n;}return i.length>0?i:p.FALLBACK_EXPLICIT_MIME_TYPE}assertExplicitTransferHeaderSize(e){if(e.byteLength===0||e.byteLength>p.MAX_EXPLICIT_TRANSFER_HEADER_BYTES)throw new Error(`Explicit transfer header is too large: ${e.byteLength} bytes`)}createWebRTCExplicitTransferId(){let e=new Uint8Array(16),t=globalThis.crypto;if(t&&typeof t.getRandomValues=="function")return t.getRandomValues(e),e;for(let i=0;i<e.byteLength;i+=1)e[i]=Math.floor(Math.random()*256);return e}createWebRTCExplicitTransferFrame(e,t,i,n,o){let r=o?.headerFrame===true?4:0,s=new Uint8Array(25+r+n.byteLength);s[0]=p.EXPLICIT_FILE_PROTOCOL_TYPE,s.set(e,1);let c=new DataView(s.buffer);c.setUint32(17,t,false),c.setUint32(21,i,false);let a=o?.headerFrame===true?29:25;return o?.headerFrame===true&&c.setUint32(25,n.byteLength,false),s.set(n,a),s}async sendExplicitFileData(e){let t=e.connection,i=e.file,n=e.applicationCrypto??this.options.applicationCrypto;if((e.requireApplicationCrypto===true||t?.requireApplicationCrypto===true)&&!n)throw new Error("[WasmBridge] Explicit transfer requires application crypto but none is available for this connection");let r=e.transferId&&e.transferId.trim().length>0?e.transferId:`transfer-${Date.now()}`;typeof e.receiverPlatformType=="string"?e.receiverPlatformType.trim().toLowerCase():null;let c=e.remoteNodeId?.trim()||t?.remoteNodeId?.trim()||t?.deviceId?.trim();if(e$1("[WasmBridge] sendExplicitFileData start",{connectionId:e.connectionId??null,connectionRemoteNodeId:t?.remoteNodeId??null,remoteNodeId:c??null,fileName:i.name,fileSize:i.size,transferId:r}),!c)throw new Error("Web explicit transfer requires an active connection with a resolved remote node ID");let a=await this.waitForWasmClient();if(!a)throw new Error("WASM explicit transfer requires an initialized WASM client");let d=new TextEncoder,h={transfer_id:r,filename:this.sanitizeExplicitFileName(i.name),size:i.size,mime_type:this.sanitizeExplicitMimeType(i.type)},u=d.encode(JSON.stringify(h));this.assertExplicitTransferHeaderSize(u);let m=new Uint8Array(4);new DataView(m.buffer).setUint32(0,u.byteLength,false);let v=new Uint8Array(m.byteLength+u.byteLength);v.set(m,0),v.set(u,m.byteLength);let f=async()=>{let g=a.open_peer_bi_explicit_file_sender;if(typeof g!="function")return false;let I=await g.call(a,c,5e3),C=I?.writable??I?.send;if(!C||typeof C.getWriter!="function")throw new Error("WASM explicit peer stream returned an invalid writable stream");e$1("[WasmBridge] sendExplicitFileData open_peer_bi_explicit_file_sender resolved",{remoteNodeId:c,transferId:e.transferId??null,applicationCryptoWrapped:I.applicationCryptoWrapped===true});let S=T(I,C,{requireFinish:true}).getWriter(),k=false;try{await S.write(v);let P=new Uint8Array(await i.arrayBuffer());for(let A=0;A<P.byteLength;A+=p.EXPLICIT_FILE_CHUNK_SIZE_BYTES){let ne=P.slice(A,Math.min(A+p.EXPLICIT_FILE_CHUNK_SIZE_BYTES,P.byteLength));await S.write(ne);}}catch(P){throw k=true,P}finally{try{await S.close();}catch(P){if(!k)throw P}finally{S.releaseLock();}}return true};try{if(await f())return;throw new Error("[WasmBridge] Explicit transfer requires the generation-fenced open_peer_bi_explicit_file_sender path, but it is unavailable on this WASM build. Rebuild the current OpenRTC WASM; raw open_bi fallback is intentionally unsupported for application data.")}finally{e$1("[WasmBridge] sendExplicitFileData completed",{remoteNodeId:c,transferId:r,fileName:i.name,fileSize:i.size});}}async getTransferHistory(e=50){return []}async deleteTransferJob(e){}watchFriendDevices(e,t){return this.isTicketOnlyMode()?()=>{}:this.getCoordinationSignaling().watchFriendDevices(e,t)}async updateFriendTicket(e){this.isTicketOnlyMode()||await this.getCoordinationSignaling().updateFriendTicket(e);}};p.EXPLICIT_FILE_PROTOCOL_TYPE=2,p.EXPLICIT_FILE_CHUNK_SIZE_BYTES=64*1024,p.MAX_EXPLICIT_TRANSFER_HEADER_BYTES=64*1024,p.FALLBACK_EXPLICIT_FILE_NAME="openrtc-transfer.bin",p.MAX_EXPLICIT_FILE_NAME_CHARS=180,p.FALLBACK_EXPLICIT_MIME_TYPE="application/octet-stream",p.MAX_EXPLICIT_MIME_TYPE_CHARS=255,p.WEB_DEVICE_ID_STORAGE_PREFIX="pluto_rtc_web_device_identity",p.EPHEMERAL_DEVICE_ID_TTL_MS=o.browserIdentity.ephemeralDeviceIdTtlMs;var ie=p;export{re as a,ie as b};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {a as a$1}from'./chunk-RB4UWXK6.js';import'./chunk-BGWJHPBC.js';import'./chunk-AYHD4X2R.js';import {a}from'./chunk-IAYQJZQQ.js';import'./chunk-GMPEZXPD.js';import {i}from'./chunk-TRUMV4SI.js';import'./chunk-FKAQDDUM.js';import'./chunk-ZA44REGI.js';import'./chunk-2QE5HAPB.js';import'./chunk-CCCYE3XN.js';import'./chunk-JPBW67B3.js';import'./chunk-F5ORG763.js';import'./chunk-WALOTASO.js';import'./chunk-2GX6GB6L.js';async function K(r,e){if(!/^pk_(?:live|test)_[0-9a-f]{40}$/.test(r)||!/^[A-Za-z0-9_-]{1,64}$/.test(e))throw new Error("[OpenRTC] External broadcast identity is invalid.");return (await a(e).getOrCreate(`app_${r.slice(-16)}`)).publicKeyJwk}function h(r){let e=new URL(r),t=["localhost","127.0.0.1","[::1]"].includes(e.hostname);if(e.protocol!=="https:"&&!(t&&e.protocol==="http:")||e.pathname!=="/"||e.username||e.password||e.search||e.hash||r!==e.origin&&r!==`${e.origin}/`)throw new Error("[OpenRTC] External broadcast service must be an exact HTTPS origin.");return e.origin}function k(r){let e=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(r.length/4)*4,"=");return Uint8Array.from(atob(e),t=>t.charCodeAt(0))}function x(r){let e="";for(let t of r)e+=String.fromCharCode(t);return btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function C(r,e){if(!(r.issuerPublicKey instanceof Uint8Array)||r.issuerPublicKey.length!==32)throw new Error("[OpenRTC] External broadcast issuer key must be 32 bytes.");let t=r.relay;if(t.kind==="sfu"){let a=new URL(t.controlUrl,e);if(a.origin!==e||a.protocol!==new URL(e).protocol||a.pathname==="/"||a.username||a.password||a.search||a.hash)throw new Error("[OpenRTC] External SFU control must stay on the trusted service origin.");return {issuerPublicKey:r.issuerPublicKey,relay:{kind:"sfu",controlUrl:a.href.replace(/\/$/,"")}}}else {let a=new URL(t.relayUrl);if(a.protocol!=="https:"||a.username||a.password||!t.token||!t.namespace)throw new Error("[OpenRTC] External MoQ relay access is invalid.");if(t.serverCertificateHash&&!["localhost","127.0.0.1","[::1]"].includes(a.hostname))throw new Error("[OpenRTC] Custom relay certificate hashes are limited to loopback.")}return r}function P(r,e){if(!r||typeof r.apiKey!="string"||!/^pk_(?:live|test)_[0-9a-f]{40}$/.test(r.apiKey))throw new Error("[OpenRTC] External broadcast identity is invalid.");let t=h(e.serviceOrigin);if(!/^[A-Za-z0-9_-]{1,64}$/.test(e.keyNamespace)||typeof e.resolve!="function")throw new Error("[OpenRTC] External broadcast configuration is invalid.");let a$2=a(e.keyNamespace),d=`app_${r.apiKey.slice(-16)}`,l=()=>a$2.getOrCreate(d),u=async()=>{let{loadBrowserWasmRuntimeModule:i}=await import('./WasmBridge-
|
|
1
|
+
import {a as a$1}from'./chunk-RB4UWXK6.js';import'./chunk-BGWJHPBC.js';import'./chunk-AYHD4X2R.js';import {a}from'./chunk-IAYQJZQQ.js';import'./chunk-GMPEZXPD.js';import {i}from'./chunk-TRUMV4SI.js';import'./chunk-FKAQDDUM.js';import'./chunk-ZA44REGI.js';import'./chunk-2QE5HAPB.js';import'./chunk-CCCYE3XN.js';import'./chunk-JPBW67B3.js';import'./chunk-F5ORG763.js';import'./chunk-WALOTASO.js';import'./chunk-2GX6GB6L.js';async function K(r,e){if(!/^pk_(?:live|test)_[0-9a-f]{40}$/.test(r)||!/^[A-Za-z0-9_-]{1,64}$/.test(e))throw new Error("[OpenRTC] External broadcast identity is invalid.");return (await a(e).getOrCreate(`app_${r.slice(-16)}`)).publicKeyJwk}function h(r){let e=new URL(r),t=["localhost","127.0.0.1","[::1]"].includes(e.hostname);if(e.protocol!=="https:"&&!(t&&e.protocol==="http:")||e.pathname!=="/"||e.username||e.password||e.search||e.hash||r!==e.origin&&r!==`${e.origin}/`)throw new Error("[OpenRTC] External broadcast service must be an exact HTTPS origin.");return e.origin}function k(r){let e=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(r.length/4)*4,"=");return Uint8Array.from(atob(e),t=>t.charCodeAt(0))}function x(r){let e="";for(let t of r)e+=String.fromCharCode(t);return btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function C(r,e){if(!(r.issuerPublicKey instanceof Uint8Array)||r.issuerPublicKey.length!==32)throw new Error("[OpenRTC] External broadcast issuer key must be 32 bytes.");let t=r.relay;if(t.kind==="sfu"){let a=new URL(t.controlUrl,e);if(a.origin!==e||a.protocol!==new URL(e).protocol||a.pathname==="/"||a.username||a.password||a.search||a.hash)throw new Error("[OpenRTC] External SFU control must stay on the trusted service origin.");return {issuerPublicKey:r.issuerPublicKey,relay:{kind:"sfu",controlUrl:a.href.replace(/\/$/,"")}}}else {let a=new URL(t.relayUrl);if(a.protocol!=="https:"||a.username||a.password||!t.token||!t.namespace)throw new Error("[OpenRTC] External MoQ relay access is invalid.");if(t.serverCertificateHash&&!["localhost","127.0.0.1","[::1]"].includes(a.hostname))throw new Error("[OpenRTC] Custom relay certificate hashes are limited to loopback.")}return r}function P(r,e){if(!r||typeof r.apiKey!="string"||!/^pk_(?:live|test)_[0-9a-f]{40}$/.test(r.apiKey))throw new Error("[OpenRTC] External broadcast identity is invalid.");let t=h(e.serviceOrigin);if(!/^[A-Za-z0-9_-]{1,64}$/.test(e.keyNamespace)||typeof e.resolve!="function")throw new Error("[OpenRTC] External broadcast configuration is invalid.");let a$2=a(e.keyNamespace),d=`app_${r.apiKey.slice(-16)}`,l=()=>a$2.getOrCreate(d),u=async()=>{let{loadBrowserWasmRuntimeModule:i}=await import('./WasmBridge-3TYL6SE7.js'),n=await i();return await n.initWasm(),n.start(),new n.WasmClient(r.apiKey)},w,f=()=>w??(w=u()),m=new a$1({loadWasm:f,resolve:async(i,n)=>{let o=await l(),s=C(await e.resolve(i,o.publicKeyJwk,n),t),g=s.relay.kind==="sfu"?{kind:"sfu",controlUrl:s.relay.controlUrl,grant:i,bindingPublicJwk:o.publicKeyJwk,...n?{publicationVerifyingKey:x(n)}:{}}:s.relay;return {token:i,issuerPublicKey:s.issuerPublicKey,relay:g,signBindingChallenge:async b=>k(await o.sign(b))}}});return {client:i(r,{platform:"web",endpoints:{controlPlane:t,gateway:t},testingAllowInsecureLoopback:t.startsWith("http:"),deviceKeyProvider:a$2,broadcastHost:m,runtimeFactory:async i=>{let{createWasmClient:n}=await import('./runtime/factories.js');return n(i)}}),bindingPublicJwk:async()=>(await l()).publicKeyJwk}}
|
|
2
2
|
export{P as createExternalBroadcastClient,K as externalBroadcastBindingPublicJwk};
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import {a}from'./chunk-NS32P65Z.js';import {d}from'./chunk-72NEEJQG.js';import'./chunk-GMPEZXPD.js';import {i}from'./chunk-TRUMV4SI.js';import'./chunk-FKAQDDUM.js';import'./chunk-ZA44REGI.js';export{b as parseTicketInvite}from'./chunk-2QE5HAPB.js';import'./chunk-CCCYE3XN.js';import'./chunk-JPBW67B3.js';export{a as ERROR_CODES,b as RTCError,e as classifyError,d as createError,c as projectError}from'./chunk-F5ORG763.js';import'./chunk-WALOTASO.js';import'./chunk-2GX6GB6L.js';function c(a){return i(a,{platform:"web",broadcastHostFactory:async e=>{let[{BrowserManagedBroadcastHost:o},{loadBrowserWasmRuntimeModule:n}]=await Promise.all([import('./BrowserManagedBroadcastHost-GLSYJIOR.js'),import('./WasmBridge-
|
|
1
|
+
import {a}from'./chunk-NS32P65Z.js';import {d}from'./chunk-72NEEJQG.js';import'./chunk-GMPEZXPD.js';import {i}from'./chunk-TRUMV4SI.js';import'./chunk-FKAQDDUM.js';import'./chunk-ZA44REGI.js';export{b as parseTicketInvite}from'./chunk-2QE5HAPB.js';import'./chunk-CCCYE3XN.js';import'./chunk-JPBW67B3.js';export{a as ERROR_CODES,b as RTCError,e as classifyError,d as createError,c as projectError}from'./chunk-F5ORG763.js';import'./chunk-WALOTASO.js';import'./chunk-2GX6GB6L.js';function c(a){return i(a,{platform:"web",broadcastHostFactory:async e=>{let[{BrowserManagedBroadcastHost:o},{loadBrowserWasmRuntimeModule:n}]=await Promise.all([import('./BrowserManagedBroadcastHost-GLSYJIOR.js'),import('./WasmBridge-3TYL6SE7.js')]),t=n().then(async r=>(await r.initWasm(),r.start(),new r.WasmClient(e.apiKey)));return new o({resolve:e.resolve,manage:e.manage,deviceId:e.deviceId,defaultAuth:e.defaultAuth,loadWasm:()=>t})},runtimeFactory:async e=>{let{createWasmClient:o}=await import('./runtime/factories.js');return o(e)}})}c.native=function(a$1,e=d()){let o,n=()=>o??(o=import('./NativeProjectionBroker-VFPBNUGH.js').then(({NativeProjectionBroker:t})=>new t));return i(a$1,{platform:"native",broadcastHostFactory:async t=>{let{NativeManagedBroadcastHost:r}=await import('./NativeManagedBroadcastHost-6A2QP3A7.js');return new r(e,t)},offlineSupport:()=>e.invoke("openrtc_offline_runtime_support"),createOfflineEnrollmentRequest:async t=>{let r=await e.invoke("start_iroh_node");return e.invoke("openrtc_create_offline_enrollment_request",{trustDomain:t.trustDomain,deviceId:t.deviceId,endpointId:r,enrollmentNonce:crypto.randomUUID(),requestedRoles:t.requestedRoles})},close:async()=>{o&&await(await o).close();},deviceKeyProvider:a(e),deviceIdProvider:async()=>{let t=await e.invoke("get_rtc_local_device_info");return String(t?.deviceId??"")},runtimeFactory:async t=>{let[{createIpcClient:r},y]=await Promise.all([import('./ipcFactory-7DTAMYUQ.js'),n()]);return r(t,e,y)}})};export{c as OpenRTC};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var G=class d{static __wrap(e){let n=Object.create(d.prototype);return n.__wbg_ptr=e,tt.register(n,n.__wbg_ptr,n),n}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,tt.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_bistream_free(e,0);}get applicationCryptoWrapped(){return t.bistream_applicationCryptoWrapped(this.__wbg_ptr)!==0}cancelSend(){let e=t.bistream_cancelSend(this.__wbg_ptr);return p(e)}get endpoint_id(){let e,n;try{let o=t.__wbindgen_add_to_stack_pointer(-16);t.bistream_endpoint_id(o,this.__wbg_ptr);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);return e=_,n=r,C(_,r)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export4(e,n,1);}}finishSend(){let e=t.bistream_finishSend(this.__wbg_ptr);return p(e)}get recv(){let e=t.bistream_recv(this.__wbg_ptr);return p(e)}get send(){let e=t.bistream_send(this.__wbg_ptr);return p(e)}get transport_stable_id(){try{let _=t.__wbindgen_add_to_stack_pointer(-16);t.bistream_transport_stable_id(_,this.__wbg_ptr);var e=b().getInt32(_+0,!0),n=b().getFloat64(_+8,!0);return e===0?void 0:n}finally{t.__wbindgen_add_to_stack_pointer(16);}}};Symbol.dispose&&(G.prototype[Symbol.dispose]=G.prototype.free);var $=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,Rt.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_intounderlyingbytesource_free(e,0);}get autoAllocateChunkSize(){return t.intounderlyingbytesource_autoAllocateChunkSize(this.__wbg_ptr)>>>0}cancel(){let e=this.__destroy_into_raw();t.intounderlyingbytesource_cancel(e);}pull(e){let n=t.intounderlyingbytesource_pull(this.__wbg_ptr,u(e));return p(n)}start(e){t.intounderlyingbytesource_start(this.__wbg_ptr,u(e));}get type(){let e=t.intounderlyingbytesource_type(this.__wbg_ptr);return ht[e]}};Symbol.dispose&&($.prototype[Symbol.dispose]=$.prototype.free);var L=class d{static __wrap(e){let n=Object.create(d.prototype);return n.__wbg_ptr=e,et.register(n,n.__wbg_ptr,n),n}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,et.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_intounderlyingsink_free(e,0);}abort(e){let n=this.__destroy_into_raw(),_=t.intounderlyingsink_abort(n,u(e));return p(_)}close(){let e=this.__destroy_into_raw(),n=t.intounderlyingsink_close(e);return p(n)}write(e){let n=t.intounderlyingsink_write(this.__wbg_ptr,u(e));return p(n)}};Symbol.dispose&&(L.prototype[Symbol.dispose]=L.prototype.free);var U=class d{static __wrap(e){let n=Object.create(d.prototype);return n.__wbg_ptr=e,nt.register(n,n.__wbg_ptr,n),n}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,nt.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_intounderlyingsource_free(e,0);}cancel(){let e=this.__destroy_into_raw();t.intounderlyingsource_cancel(e);}pull(e){let n=t.intounderlyingsource_pull(this.__wbg_ptr,u(e));return p(n)}};Symbol.dispose&&(U.prototype[Symbol.dispose]=U.prototype.free);var X=class d{static __wrap(e){let n=Object.create(d.prototype);return n.__wbg_ptr=e,_t.register(n,n.__wbg_ptr,n),n}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,_t.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_peerunistream_free(e,0);}get applicationCryptoWrapped(){return t.peerunistream_applicationCryptoWrapped(this.__wbg_ptr)!==0}cancelSend(){let e=t.peerunistream_cancelSend(this.__wbg_ptr);return p(e)}finishSend(){let e=t.peerunistream_finishSend(this.__wbg_ptr);return p(e)}get writable(){let e=t.peerunistream_writable(this.__wbg_ptr);return p(e)}};Symbol.dispose&&(X.prototype[Symbol.dispose]=X.prototype.free);var K=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,rt.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_wasmclient_free(e,0);}__acceptOpenRtcBroadcastObject(e,n,_){try{let a=t.__wbindgen_add_to_stack_pointer(-16),w=c(e,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=c(n,t.__wbindgen_export,t.__wbindgen_export2),m=i,h=k(_,t.__wbindgen_export),y=i;t.wasmclient___acceptOpenRtcBroadcastObject(a,this.__wbg_ptr,w,l,f,m,h,y);var r=b().getInt32(a+0,!0),o=b().getInt32(a+4,!0),s=b().getInt32(a+8,!0);if(s)throw p(o);return p(r)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__acknowledgePersistentIrohOutbox(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient___acknowledgePersistentIrohOutbox(this.__wbg_ptr,n,_);return p(r)}__advancePreferredIrohCarrier(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(_,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=t.wasmclient___advancePreferredIrohCarrier(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}__applyIrohCarrierPolicy(){let e=t.wasmclient___applyIrohCarrierPolicy(this.__wbg_ptr);return p(e)}__attachMoqCarrier(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(r,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=t.wasmclient___attachMoqCarrier(this.__wbg_ptr,o,s,a,w,u(_),l,f);return p(m)}__attachWebRtcCarrier(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(r,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=t.wasmclient___attachWebRtcCarrier(this.__wbg_ptr,o,s,a,w,u(_),l,f);return p(m)}__beginMoqCarrier(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient___beginMoqCarrier(this.__wbg_ptr,_,r,o,s);return p(a)}__beginOpenRtcBroadcastPublication(e,n,_,r,o,s,a,w,l){try{let R=t.__wbindgen_add_to_stack_pointer(-16),A=c(e,t.__wbindgen_export,t.__wbindgen_export2),F=i,P=c(n,t.__wbindgen_export,t.__wbindgen_export2),M=i;var f=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),m=i;let O=c(r,t.__wbindgen_export,t.__wbindgen_export2),T=i,N=c(o,t.__wbindgen_export,t.__wbindgen_export2),Q=i;t.wasmclient___beginOpenRtcBroadcastPublication(R,this.__wbg_ptr,A,F,P,M,f,m,O,T,N,Q,s,x(a)?Number.MAX_SAFE_INTEGER:a>>>0,x(w)?Number.MAX_SAFE_INTEGER:w>>>0,x(l)?16777215:l);var h=b().getInt32(R+0,!0),y=b().getInt32(R+4,!0),v=b().getInt32(R+8,!0);if(v)throw p(y);return p(h)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__beginOpenRtcMediaPublication(e,n,_,r,o,s,a){try{let y=t.__wbindgen_add_to_stack_pointer(-16);var w=x(e)?0:c(e,t.__wbindgen_export,t.__wbindgen_export2),l=i;let v=c(n,t.__wbindgen_export,t.__wbindgen_export2),R=i,A=c(_,t.__wbindgen_export,t.__wbindgen_export2),F=i;t.wasmclient___beginOpenRtcMediaPublication(y,this.__wbg_ptr,w,l,v,R,A,F,r,x(o)?Number.MAX_SAFE_INTEGER:o>>>0,x(s)?Number.MAX_SAFE_INTEGER:s>>>0,x(a)?16777215:a);var f=b().getInt32(y+0,!0),m=b().getInt32(y+4,!0),h=b().getInt32(y+8,!0);if(h)throw p(m);return p(f)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__beginPreferredIrohCarrier(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=t.wasmclient___beginPreferredIrohCarrier(this.__wbg_ptr,o,s,a,w,_,r);return p(l)}__beginWebRtcCarrier(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient___beginWebRtcCarrier(this.__wbg_ptr,_,r,o,s);return p(a)}__closeOpenRtcBroadcast(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16),o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i;t.wasmclient___closeOpenRtcBroadcast(r,this.__wbg_ptr,o,s);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__configureIrohRoutePolicy(e,n,_){var r=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),o=i;let s=t.wasmclient___configureIrohRoutePolicy(this.__wbg_ptr,e,r,o,u(_));return p(s)}__configureMoqCarrier(e,n){var _=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),r=i;let o=t.wasmclient___configureMoqCarrier(this.__wbg_ptr,e,_,r);return p(o)}__configureWebRtcCarrier(e,n){let _=t.wasmclient___configureWebRtcCarrier(this.__wbg_ptr,e,n);return p(_)}__createOpenRtcBroadcastPublisherSigner(){try{let r=t.__wbindgen_add_to_stack_pointer(-16);t.wasmclient___createOpenRtcBroadcastPublisherSigner(r,this.__wbg_ptr);var e=b().getInt32(r+0,!0),n=b().getInt32(r+4,!0),_=b().getInt32(r+8,!0);if(_)throw p(n);return p(e)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__createPersistentIrohNamespace(e,n){let _=t.wasmclient___createPersistentIrohNamespace(this.__wbg_ptr,e,n);return p(_)}__decodeOpenRtcMediaChunk(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=k(e,t.__wbindgen_export),a=i;t.wasmclient___decodeOpenRtcMediaChunk(o,this.__wbg_ptr,s,a);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__decodeOpenRtcMediaControl(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=k(e,t.__wbindgen_export),a=i;t.wasmclient___decodeOpenRtcMediaControl(o,this.__wbg_ptr,s,a);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__deletePersistentIrohPrefix(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=k(n,t.__wbindgen_export),s=i,a=t.wasmclient___deletePersistentIrohPrefix(this.__wbg_ptr,_,r,o,s);return p(a)}__encodeOpenRtcMediaSample(e,n,_,r,o,s){try{let h=t.__wbindgen_add_to_stack_pointer(-16),y=c(e,t.__wbindgen_export,t.__wbindgen_export2),v=i,R=k(s,t.__wbindgen_export),A=i;t.wasmclient___encodeOpenRtcMediaSample(h,this.__wbg_ptr,y,v,n,_,r,o,R,A);var a=b().getInt32(h+0,!0),w=b().getInt32(h+4,!0),l=b().getInt32(h+8,!0),f=b().getInt32(h+12,!0);if(f)throw p(l);var m=S(a,w).slice();return t.__wbindgen_export4(a,w*1,1),m}finally{t.__wbindgen_add_to_stack_pointer(16);}}__flushPersistentIrohProtocols(){let e=t.wasmclient___flushPersistentIrohProtocols(this.__wbg_ptr);return p(e)}__forgetIrohCarrierPeer(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient___forgetIrohCarrierPeer(this.__wbg_ptr,n,_);return p(r)}__forgetManagedRoomGroup(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i;t.wasmclient___forgetManagedRoomGroup(this.__wbg_ptr,n,_);}__getIrohCarrierReadiness(){let e=t.wasmclient___getIrohCarrierReadiness(this.__wbg_ptr);return p(e)}__getOpenRtcBroadcastStats(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i;t.wasmclient___getOpenRtcBroadcastStats(o,this.__wbg_ptr,s,a);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__handleIrohCarrierControl(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=t.wasmclient___handleIrohCarrierControl(this.__wbg_ptr,r,o,s,a,u(_));return p(w)}__handleManagedRoomArtifactChunk(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i;t.wasmclient___handleManagedRoomArtifactChunk(s,this.__wbg_ptr,a,w,u(n));var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=b().getInt32(s+8,!0);if(o)throw p(r);return p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__handleManagedRoomPreparePage(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i;t.wasmclient___handleManagedRoomPreparePage(s,this.__wbg_ptr,a,w,u(n));var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=b().getInt32(s+8,!0);if(o)throw p(r);return p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__hydratePersistentIrohBlob(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient___hydratePersistentIrohBlob(this.__wbg_ptr,n,_);return p(r)}__importPersistentIrohAuthor(e){let n=k(e,t.__wbindgen_export),_=i,r=t.wasmclient___importPersistentIrohAuthor(this.__wbg_ptr,n,_);return p(r)}__importPersistentIrohNamespace(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=k(n,t.__wbindgen_export),w=i,l=t.wasmclient___importPersistentIrohNamespace(this.__wbg_ptr,o,s,a,w,_,r);return p(l)}__importPersistentIrohTicket(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=t.wasmclient___importPersistentIrohTicket(this.__wbg_ptr,r,o,n,_);return p(s)}__initManagedRoomGroup(e,n,_,r){try{let f=t.__wbindgen_add_to_stack_pointer(-16),m=c(e,t.__wbindgen_export,t.__wbindgen_export2),h=i,y=c(n,t.__wbindgen_export,t.__wbindgen_export2),v=i,R=k(_,t.__wbindgen_export),A=i;var o=x(r)?0:k(r,t.__wbindgen_export),s=i;t.wasmclient___initManagedRoomGroup(f,this.__wbg_ptr,m,h,y,v,R,A,o,s);var a=b().getInt32(f+0,!0),w=b().getInt32(f+4,!0),l=b().getInt32(f+8,!0);if(l)throw p(w);return p(a)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__initPersistentIrohProtocols(e){let n=t.wasmclient___initPersistentIrohProtocols(this.__wbg_ptr,u(e));return p(n)}__moqCarrierFailed(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(_,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=t.wasmclient___moqCarrierFailed(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}__moqCarrierPrepared(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient___moqCarrierPrepared(this.__wbg_ptr,_,r,o,s);return p(a)}__observeOpenRtcBroadcastAdapter(e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i;t.wasmclient___observeOpenRtcBroadcastAdapter(o,this.__wbg_ptr,s,a,u(n));var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__openManagedRoomPayload(e,n,_,r,o,s,a,w){try{let v=t.__wbindgen_add_to_stack_pointer(-16),R=c(e,t.__wbindgen_export,t.__wbindgen_export2),A=i,F=c(r,t.__wbindgen_export,t.__wbindgen_export2),P=i,M=c(o,t.__wbindgen_export,t.__wbindgen_export2),O=i;var l=x(a)?0:c(a,t.__wbindgen_export,t.__wbindgen_export2),f=i;let T=k(w,t.__wbindgen_export),N=i;t.wasmclient___openManagedRoomPayload(v,this.__wbg_ptr,R,A,n,_,F,P,M,O,s,l,f,T,N);var m=b().getInt32(v+0,!0),h=b().getInt32(v+4,!0),y=b().getInt32(v+8,!0);if(y)throw p(h);return p(m)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__openOpenRtcBroadcast(e,n,_,r,o,s){try{let h=t.__wbindgen_add_to_stack_pointer(-16),y=c(e,t.__wbindgen_export,t.__wbindgen_export2),v=i,R=k(n,t.__wbindgen_export),A=i,F=c(_,t.__wbindgen_export,t.__wbindgen_export2),P=i,M=k(r,t.__wbindgen_export),O=i;var a=x(o)?0:c(o,t.__wbindgen_export,t.__wbindgen_export2),w=i;t.wasmclient___openOpenRtcBroadcast(h,this.__wbg_ptr,y,v,R,A,F,P,M,O,a,w,s);var l=b().getInt32(h+0,!0),f=b().getInt32(h+4,!0),m=b().getInt32(h+8,!0);if(m)throw p(f);return p(l)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__pauseOpenRtcBroadcastPublication(e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i;t.wasmclient___pauseOpenRtcBroadcastPublication(o,this.__wbg_ptr,s,a,w,l);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__pauseOpenRtcMediaPublication(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16),o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i;t.wasmclient___pauseOpenRtcMediaPublication(r,this.__wbg_ptr,o,s);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__prepareOpenRtcBroadcastGrant(e,n,_){try{let a=t.__wbindgen_add_to_stack_pointer(-16),w=c(e,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=k(n,t.__wbindgen_export),m=i;t.wasmclient___prepareOpenRtcBroadcastGrant(a,this.__wbg_ptr,w,l,f,m,_);var r=b().getInt32(a+0,!0),o=b().getInt32(a+4,!0),s=b().getInt32(a+8,!0);if(s)throw p(o);return p(r)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__publishOpenRtcBroadcastSample(e,n,_,r,o,s,a){try{let f=t.__wbindgen_add_to_stack_pointer(-16),m=c(e,t.__wbindgen_export,t.__wbindgen_export2),h=i,y=c(n,t.__wbindgen_export,t.__wbindgen_export2),v=i,R=k(a,t.__wbindgen_export),A=i;t.wasmclient___publishOpenRtcBroadcastSample(f,this.__wbg_ptr,m,h,y,v,_,r,o,s,R,A);var w=b().getInt32(f+0,!0),l=b().getInt32(f+4,!0);if(l)throw p(w)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__putPersistentIrohBytes(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=k(n,t.__wbindgen_export),a=i,w=k(_,t.__wbindgen_export),l=i,f=t.wasmclient___putPersistentIrohBytes(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}__queryPersistentIrohNamespace(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=k(n,t.__wbindgen_export),s=i,a=t.wasmclient___queryPersistentIrohNamespace(this.__wbg_ptr,_,r,o,s);return p(a)}__reconcileIrohCarriersAfterNetworkChange(){let e=t.wasmclient___reconcileIrohCarriersAfterNetworkChange(this.__wbg_ptr);return p(e)}__reconcilePersistentIrohProtocols(){let e=t.wasmclient___reconcilePersistentIrohProtocols(this.__wbg_ptr);return p(e)}__releaseOpenRtcBroadcastPublisherSigner(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i;return t.wasmclient___releaseOpenRtcBroadcastPublisherSigner(this.__wbg_ptr,n,_)!==0}__removePersistentIrohNamespace(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=t.wasmclient___removePersistentIrohNamespace(this.__wbg_ptr,r,o,n,_);return p(s)}__requireScopePeerAdmission(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16),o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i;t.wasmclient___requireScopePeerAdmission(r,this.__wbg_ptr,o,s);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__retireIrohCarrierPeer(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i;var o=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i;let a=t.wasmclient___retireIrohCarrierPeer(this.__wbg_ptr,_,r,o,s);return p(a)}__retireMoqCarrier(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i;var o=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i;let a=t.wasmclient___retireMoqCarrier(this.__wbg_ptr,_,r,o,s);return p(a)}__retireOpenRtcBroadcastPublication(e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i;t.wasmclient___retireOpenRtcBroadcastPublication(o,this.__wbg_ptr,s,a,w,l);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__retireOpenRtcMediaPublication(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16),o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i;t.wasmclient___retireOpenRtcMediaPublication(r,this.__wbg_ptr,o,s);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__retireOpenRtcMediaReceiver(e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i;t.wasmclient___retireOpenRtcMediaReceiver(o,this.__wbg_ptr,s,a,n);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__retireWebRtcCarrier(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i;var o=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i;let a=t.wasmclient___retireWebRtcCarrier(this.__wbg_ptr,_,r,o,s);return p(a)}__sealManagedRoomPayload(e,n,_,r,o,s,a,w){try{let v=t.__wbindgen_add_to_stack_pointer(-16),R=c(e,t.__wbindgen_export,t.__wbindgen_export2),A=i,F=c(r,t.__wbindgen_export,t.__wbindgen_export2),P=i,M=c(o,t.__wbindgen_export,t.__wbindgen_export2),O=i;var l=x(a)?0:c(a,t.__wbindgen_export,t.__wbindgen_export2),f=i;let T=k(w,t.__wbindgen_export),N=i;t.wasmclient___sealManagedRoomPayload(v,this.__wbg_ptr,R,A,n,_,F,P,M,O,s,l,f,T,N);var m=b().getInt32(v+0,!0),h=b().getInt32(v+4,!0),y=b().getInt32(v+8,!0);if(y)throw p(h);return p(m)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__setIrohCarrierActionHandler(e){t.wasmclient___setIrohCarrierActionHandler(this.__wbg_ptr,x(e)?0:u(e));}__setPersistentIrohHash(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=k(n,t.__wbindgen_export),w=i,l=c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=t.wasmclient___setPersistentIrohHash(this.__wbg_ptr,o,s,a,w,l,f,r);return p(m)}__sharePersistentIrohNamespace(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient___sharePersistentIrohNamespace(this.__wbg_ptr,_,r,n);return p(o)}__shutdownPersistentIrohProtocols(){let e=t.wasmclient___shutdownPersistentIrohProtocols(this.__wbg_ptr);return p(e)}__takeOpenRtcBroadcastActions(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i;t.wasmclient___takeOpenRtcBroadcastActions(s,this.__wbg_ptr,a,w,n);var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=b().getInt32(s+8,!0);if(o)throw p(r);return p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__updateScopePeerAdmission(e,n,_,r){try{let a=t.__wbindgen_add_to_stack_pointer(-16),w=c(e,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=c(r,t.__wbindgen_export,t.__wbindgen_export2),m=i;t.wasmclient___updateScopePeerAdmission(a,this.__wbg_ptr,w,l,n,_,f,m);var o=b().getInt32(a+0,!0),s=b().getInt32(a+4,!0);if(s)throw p(o)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__webRtcCarrierFailed(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(_,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=t.wasmclient___webRtcCarrierFailed(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}__webRtcCarrierPrepared(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient___webRtcCarrierPrepared(this.__wbg_ptr,_,r,o,s);return p(a)}acceptSparseFanoutMessage(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=k(_,t.__wbindgen_export),l=i,f=t.wasmclient_acceptSparseFanoutMessage(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}acknowledge_session_token_response(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i;var l=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),f=i;let m=t.wasmclient_acknowledge_session_token_response(this.__wbg_ptr,o,s,a,w,_,l,f);return p(m)}add_peer_scope(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_add_peer_scope(this.__wbg_ptr,_,r,o,s);return p(a)}bind_connection_device_id(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_bind_connection_device_id(this.__wbg_ptr,_,r,o,s);return p(a)}bind_node_device_id(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_bind_node_device_id(this.__wbg_ptr,_,r,o,s);return p(a)}clearConnectionApplicationCryptoKey(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i;t.wasmclient_clearConnectionApplicationCryptoKey(this.__wbg_ptr,n,_);}clearIdentityCredential(){t.wasmclient_clearIdentityCredential(this.__wbg_ptr);}clear_session_tokens(){t.wasmclient_clear_session_tokens(this.__wbg_ptr);}close_ticket_mesh(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_close_ticket_mesh(this.__wbg_ptr,n,_);return p(r)}confirm_reciprocal_admission(e,n,_,r,o,s){let a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=c(r,t.__wbindgen_export,t.__wbindgen_export2),h=i;var y=x(s)?0:c(s,t.__wbindgen_export,t.__wbindgen_export2),v=i;let R=t.wasmclient_confirm_reciprocal_admission(this.__wbg_ptr,a,w,n,l,f,m,h,o,y,v);return p(R)}connect_device(e,n,_){var r=x(e)?0:c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i;let s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=t.wasmclient_connect_device(this.__wbg_ptr,r,o,s,a,x(_)?Number.MAX_SAFE_INTEGER:_>>>0);return p(w)}connect_known_device_with_token(e,n,_,r,o,s){let a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(n,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=c(_,t.__wbindgen_export,t.__wbindgen_export2),h=i,y=t.wasmclient_connect_known_device_with_token(this.__wbg_ptr,a,w,l,f,m,h,r,!x(o),x(o)?BigInt(0):o,x(s)?Number.MAX_SAFE_INTEGER:s>>>0);return p(y)}connect_ticket_invite(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_connect_ticket_invite(this.__wbg_ptr,n,_);return p(r)}connectionApplicationCryptoReady(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i;return t.wasmclient_connectionApplicationCryptoReady(this.__wbg_ptr,_,r,n)!==0}connection_state(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_connection_state(this.__wbg_ptr,n,_);return p(r)}connection_state_owner_id(){let e,n;try{let o=t.__wbindgen_add_to_stack_pointer(-16);t.wasmclient_connection_state_owner_id(o,this.__wbg_ptr);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);return e=_,n=r,C(_,r)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export4(e,n,1);}}connection_states(){let e=t.wasmclient_connection_states(this.__wbg_ptr);return p(e)}createPeerDatagramPolicy(){let e=t.wasmclient_createPeerDatagramPolicy(this.__wbg_ptr);return V.__wrap(e)}create_room(e,n,_,r,o,s){let a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(n,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=c(_,t.__wbindgen_export,t.__wbindgen_export2),h=i,y=c(r,t.__wbindgen_export,t.__wbindgen_export2),v=i,R=c(o,t.__wbindgen_export,t.__wbindgen_export2),A=i,F=t.wasmclient_create_room(this.__wbg_ptr,a,w,l,f,m,h,y,v,R,A,x(s)?Number.MAX_SAFE_INTEGER:s>>>0);return p(F)}create_session(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_create_session(this.__wbg_ptr,n,_);return p(r)}decodeIncomingChannelEnvelope(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=k(e,t.__wbindgen_export),a=i;t.wasmclient_decodeIncomingChannelEnvelope(o,this.__wbg_ptr,s,a);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}delete_device(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_delete_device(this.__wbg_ptr,_,r,o,s);return p(a)}devices_with_status(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_devices_with_status(this.__wbg_ptr,n,_);return p(r)}disconnect(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_disconnect(this.__wbg_ptr,n,_);return p(r)}disconnect_device(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i;var o=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i;let a=t.wasmclient_disconnect_device(this.__wbg_ptr,_,r,o,s);return p(a)}disconnect_transient(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_disconnect_transient(this.__wbg_ptr,n,_);return p(r)}endpoint_id_from_ticket(e){let n,_;try{let f=t.__wbindgen_add_to_stack_pointer(-16),m=c(e,t.__wbindgen_export,t.__wbindgen_export2),h=i;t.wasmclient_endpoint_id_from_ticket(f,this.__wbg_ptr,m,h);var r=b().getInt32(f+0,!0),o=b().getInt32(f+4,!0),s=b().getInt32(f+8,!0),a=b().getInt32(f+12,!0),w=r,l=o;if(a)throw w=0,l=0,p(s);return n=w,_=l,C(w,l)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export4(n,_,1);}}endpoint_ticket(){let e=t.wasmclient_endpoint_ticket(this.__wbg_ptr);return p(e)}endpoint_ticket_with_token(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_endpoint_ticket_with_token(this.__wbg_ptr,_,r,n);return p(o)}ensureConnectionApplicationCrypto(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=t.wasmclient_ensureConnectionApplicationCrypto(this.__wbg_ptr,o,s,a,w,_,u(r));return p(l)}finalizeSparseFanoutMessage(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_finalizeSparseFanoutMessage(this.__wbg_ptr,_,r,o,s);return p(a)}force_reconnect_snapshot(){t.wasmclient_force_reconnect_snapshot(this.__wbg_ptr);}get_members(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(_,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=t.wasmclient_get_members(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}handleConnectionApplicationCryptoHandshake(e,n,_,r,o){let s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i;var f=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),m=i;let h=k(o,t.__wbindgen_export),y=i,v=t.wasmclient_handleConnectionApplicationCryptoHandshake(this.__wbg_ptr,s,a,w,l,!x(_),x(_)?BigInt(0):_,f,m,h,y);return p(v)}incoming_streams(){let e=t.wasmclient_incoming_streams(this.__wbg_ptr);return p(e)}initIrohWithTestRelay(e,n){var _=x(e)?0:k(e,t.__wbindgen_export),r=i,o=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i;let a=t.wasmclient_initIrohWithTestRelay(this.__wbg_ptr,_,r,o,s);return p(a)}init_iroh(e){var n=x(e)?0:k(e,t.__wbindgen_export),_=i;let r=t.wasmclient_init_iroh(this.__wbg_ptr,n,_);return p(r)}inspectIncomingStreamPrefix(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=k(e,t.__wbindgen_export),w=i;t.wasmclient_inspectIncomingStreamPrefix(s,this.__wbg_ptr,a,w,n);var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=b().getInt32(s+8,!0);if(o)throw p(r);return p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}iroh_path_kind(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_iroh_path_kind(this.__wbg_ptr,n,_);return p(r)}iroh_secret_key(){let e=t.wasmclient_iroh_secret_key(this.__wbg_ptr);return p(e)}iroh_transport_rtt_ms(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_iroh_transport_rtt_ms(this.__wbg_ptr,n,_);return p(r)}isAuthenticatedReconnectCandidate(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_isAuthenticatedReconnectCandidate(this.__wbg_ptr,_,r,n);return p(o)}is_auto_connect_excluded(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i;return t.wasmclient_is_auto_connect_excluded(this.__wbg_ptr,n,_)!==0}is_connected(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_is_connected(this.__wbg_ptr,n,_);return p(r)}is_current_transport_stable_id(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_is_current_transport_stable_id(this.__wbg_ptr,_,r,n);return p(o)}is_remote_admitted(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_is_remote_admitted(this.__wbg_ptr,n,_);return p(r)}issue_ticket_invite(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=t.wasmclient_issue_ticket_invite(this.__wbg_ptr,r,o,n,_);return p(s)}issue_ticket_mesh(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=t.wasmclient_issue_ticket_mesh(this.__wbg_ptr,r,o,n,u(_));return p(s)}join_room(e,n,_,r,o){let s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=c(_,t.__wbindgen_export,t.__wbindgen_export2),m=i,h=c(r,t.__wbindgen_export,t.__wbindgen_export2),y=i,v=c(o,t.__wbindgen_export,t.__wbindgen_export2),R=i,A=t.wasmclient_join_room(this.__wbg_ptr,s,a,w,l,f,m,h,y,v,R);return p(A)}join_ticket_mesh(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_join_ticket_mesh(this.__wbg_ptr,_,r,u(n));return p(o)}leave_room(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(_,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=t.wasmclient_leave_room(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}list_managed_connections(){let e=t.wasmclient_list_managed_connections(this.__wbg_ptr);return p(e)}constructor(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i;t.wasmclient_new(o,s,a);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return this.__wbg_ptr=n,rt.register(this,this.__wbg_ptr,this),this}finally{t.__wbindgen_add_to_stack_pointer(16);}}node_addr(){let e=t.wasmclient_node_addr(this.__wbg_ptr);return p(e)}observe_known_device_endpoint(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_observe_known_device_endpoint(this.__wbg_ptr,_,r,o,s);return p(a)}openConnectionApplicationPayload(e,n,_){try{let l=t.__wbindgen_add_to_stack_pointer(-16),f=c(e,t.__wbindgen_export,t.__wbindgen_export2),m=i,h=k(_,t.__wbindgen_export),y=i;t.wasmclient_openConnectionApplicationPayload(l,this.__wbg_ptr,f,m,n,h,y);var r=b().getInt32(l+0,!0),o=b().getInt32(l+4,!0),s=b().getInt32(l+8,!0),a=b().getInt32(l+12,!0);if(a)throw p(s);var w=S(r,o).slice();return t.__wbindgen_export4(r,o*1,1),w}finally{t.__wbindgen_add_to_stack_pointer(16);}}open_bi(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_open_bi(this.__wbg_ptr,n,_);return p(r)}open_native_main_control_bi(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_open_native_main_control_bi(this.__wbg_ptr,n,_);return p(r)}open_peer_bi(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_open_peer_bi(this.__wbg_ptr,_,r,x(n)?Number.MAX_SAFE_INTEGER:n>>>0);return p(o)}open_peer_bi_explicit_file_sender(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_open_peer_bi_explicit_file_sender(this.__wbg_ptr,_,r,x(n)?Number.MAX_SAFE_INTEGER:n>>>0);return p(o)}open_peer_bi_transport_only(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_open_peer_bi_transport_only(this.__wbg_ptr,_,r,x(n)?Number.MAX_SAFE_INTEGER:n>>>0);return p(o)}open_peer_uni(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_open_peer_uni(this.__wbg_ptr,_,r,x(n)?Number.MAX_SAFE_INTEGER:n>>>0);return p(o)}open_uni(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_open_uni(this.__wbg_ptr,n,_);return p(r)}peerDatagramMaxSize(){return t.wasmclient_peerDatagramMaxSize(this.__wbg_ptr)>>>0}peer_scopes(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_peer_scopes(this.__wbg_ptr,n,_);return p(r)}peer_session(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_peer_session(this.__wbg_ptr,n,_);return p(r)}peer_sessions(){let e=t.wasmclient_peer_sessions(this.__wbg_ptr);return p(e)}peer_snapshot(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_peer_snapshot(this.__wbg_ptr,n,_);return p(r)}prepareSparseFanoutMessage(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=k(n,t.__wbindgen_export),s=i,a=t.wasmclient_prepareSparseFanoutMessage(this.__wbg_ptr,_,r,o,s);return p(a)}prepare_reciprocal_admission(e,n,_,r,o,s,a,w){let l=c(e,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=c(_,t.__wbindgen_export,t.__wbindgen_export2),h=i,y=c(r,t.__wbindgen_export,t.__wbindgen_export2),v=i,R=c(o,t.__wbindgen_export,t.__wbindgen_export2),A=i,F=c(s,t.__wbindgen_export,t.__wbindgen_export2),P=i,M=c(a,t.__wbindgen_export,t.__wbindgen_export2),O=i,T=c(w,t.__wbindgen_export,t.__wbindgen_export2),N=i,Q=t.wasmclient_prepare_reciprocal_admission(this.__wbg_ptr,l,f,n,m,h,y,v,R,A,F,P,M,O,T,N);return p(Q)}present_session_token(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i;var l=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),h=i;let y=t.wasmclient_present_session_token(this.__wbg_ptr,o,s,a,w,l,f,m,h);return p(y)}protectConnectionApplicationPayload(e,n,_){try{let l=t.__wbindgen_add_to_stack_pointer(-16),f=c(e,t.__wbindgen_export,t.__wbindgen_export2),m=i,h=k(_,t.__wbindgen_export),y=i;t.wasmclient_protectConnectionApplicationPayload(l,this.__wbg_ptr,f,m,n,h,y);var r=b().getInt32(l+0,!0),o=b().getInt32(l+4,!0),s=b().getInt32(l+8,!0),a=b().getInt32(l+12,!0);if(a)throw p(s);var w=S(r,o).slice();return t.__wbindgen_export4(r,o*1,1),w}finally{t.__wbindgen_add_to_stack_pointer(16);}}rankRoutes(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=it(e,t.__wbindgen_export),w=i,l=it(n,t.__wbindgen_export),f=i;t.wasmclient_rankRoutes(s,this.__wbg_ptr,a,w,l,f);var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=Ct(_,r).slice();return t.__wbindgen_export4(_,r*4,4),o}finally{t.__wbindgen_add_to_stack_pointer(16);}}receivePeerDatagram(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_receivePeerDatagram(this.__wbg_ptr,n,_);return p(r)}receive_ticket_mesh_frame(e,n,_){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(n,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=c(_,t.__wbindgen_export,t.__wbindgen_export2),h=i;t.wasmclient_receive_ticket_mesh_frame(s,this.__wbg_ptr,a,w,l,f,m,h);var r=b().getInt32(s+0,!0),o=b().getInt32(s+4,!0);if(o)throw p(r)}finally{t.__wbindgen_add_to_stack_pointer(16);}}recordSparseFanoutForwardQueueDrop(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_recordSparseFanoutForwardQueueDrop(this.__wbg_ptr,_,r,n);return p(o)}register_session_token(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i;t.wasmclient_register_session_token(this.__wbg_ptr,r,o,s,a,_);}register_token_until(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i;t.wasmclient_register_token_until(this.__wbg_ptr,o,s,a,w,_,r);}reject_connection_admission(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_reject_connection_admission(this.__wbg_ptr,_,r,o,s);return p(a)}release_peer_scope(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i;var o=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i;let a=t.wasmclient_release_peer_scope(this.__wbg_ptr,_,r,o,s);return p(a)}report_managed_connection_settled(e,n,_,r,o,s){let a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i;var l=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i;let m=t.wasmclient_report_managed_connection_settled(this.__wbg_ptr,a,w,n,l,f,!x(r),x(r)?BigInt(0):r,!x(o),x(o)?BigInt(0):o,!x(s),x(s)?BigInt(0):s);return p(m)}report_transport_status(e,n,_,r,o,s){let a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(n,t.__wbindgen_export,t.__wbindgen_export2),f=i;var m=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),h=i;let y=t.wasmclient_report_transport_status(this.__wbg_ptr,a,w,l,f,m,h,!x(r),x(r)?BigInt(0):r,!x(o),x(o)?BigInt(0):o,!x(s),x(s)?BigInt(0):s);return p(y)}resolve_peer_connection_records(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_resolve_peer_connection_records(this.__wbg_ptr,n,_);return p(r)}revoke_session_token(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i;t.wasmclient_revoke_session_token(o,this.__wbg_ptr,s,a);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}revoke_tokens_by_scope(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_revoke_tokens_by_scope(this.__wbg_ptr,n,_);return p(r)}runtime_policy(){try{let r=t.__wbindgen_add_to_stack_pointer(-16);t.wasmclient_runtime_policy(r,this.__wbg_ptr);var e=b().getInt32(r+0,!0),n=b().getInt32(r+4,!0),_=b().getInt32(r+8,!0);if(_)throw p(n);return p(e)}finally{t.__wbindgen_add_to_stack_pointer(16);}}same_peer(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_same_peer(this.__wbg_ptr,_,r,o,s);return p(a)}search_devices(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_search_devices(this.__wbg_ptr,n,_);return p(r)}sendPeerDatagram(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=k(n,t.__wbindgen_export),a=i,w=t.wasmclient_sendPeerDatagram(this.__wbg_ptr,r,o,s,a,x(_)?Number.MAX_SAFE_INTEGER:_>>>0);return p(w)}send_message(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i;var l=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),h=i;let y=t.wasmclient_send_message(this.__wbg_ptr,o,s,a,w,l,f,m,h);return p(y)}send_native_main_control_frame(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=k(n,t.__wbindgen_export),s=i,a=t.wasmclient_send_native_main_control_frame(this.__wbg_ptr,_,r,o,s);return p(a)}send_peer(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=k(n,t.__wbindgen_export),s=i,a=t.wasmclient_send_peer(this.__wbg_ptr,_,r,o,s);return p(a)}send_peer_application_frame(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=k(n,t.__wbindgen_export),a=i,w=t.wasmclient_send_peer_application_frame(this.__wbg_ptr,r,o,s,a,x(_)?Number.MAX_SAFE_INTEGER:_>>>0);return p(w)}setConnectionApplicationCryptoKey(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=k(n,t.__wbindgen_export),s=i,a=t.wasmclient_setConnectionApplicationCryptoKey(this.__wbg_ptr,_,r,o,s);return p(a)}setConnectionApplicationCryptoRequired(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16),o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i;t.wasmclient_setConnectionApplicationCryptoRequired(r,this.__wbg_ptr,o,s);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}setIdentityCredential(e){var n=x(e)?0:c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i;t.wasmclient_setIdentityCredential(this.__wbg_ptr,n,_);}setRelay(e){let n=t.wasmclient_setRelay(this.__wbg_ptr,e);return p(n)}set_auto_connect_excluded(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_set_auto_connect_excluded(this.__wbg_ptr,_,r,n);return p(o)}set_offline(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_set_offline(this.__wbg_ptr,n,_);return p(r)}sparseFanoutDiagnostics(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_sparseFanoutDiagnostics(this.__wbg_ptr,n,_);return p(r)}start_auto_connect(e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i;t.wasmclient_start_auto_connect(o,this.__wbg_ptr,s,a,w,l);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}start_presence_loop(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i;var m=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),h=i;t.wasmclient_start_presence_loop(this.__wbg_ptr,o,s,a,w,l,f,m,h);}stop_auth_scoped_activity(){t.wasmclient_stop_auth_scoped_activity(this.__wbg_ptr);}stop_auto_connect(){t.wasmclient_stop_auto_connect(this.__wbg_ptr);}stop_presence_loop(){t.wasmclient_stop_presence_loop(this.__wbg_ptr);}submit_browser_desired_peers(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i;t.wasmclient_submit_browser_desired_peers(s,this.__wbg_ptr,e,a,w);var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=b().getInt32(s+8,!0);if(o)throw p(r);return _!==0}finally{t.__wbindgen_add_to_stack_pointer(16);}}submit_browser_desired_peers_with_sparse_fanout(e,n,_,r,o,s){let a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i;var l=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),h=i,y=x(o)?0:c(o,t.__wbindgen_export,t.__wbindgen_export2),v=i;let R=t.wasmclient_submit_browser_desired_peers_with_sparse_fanout(this.__wbg_ptr,e,a,w,l,f,m,h,y,v,x(s)?16777215:s?1:0);return p(R)}ticket_mesh_issuer_node(e){let n,_;try{let f=t.__wbindgen_add_to_stack_pointer(-16),m=c(e,t.__wbindgen_export,t.__wbindgen_export2),h=i;t.wasmclient_ticket_mesh_issuer_node(f,this.__wbg_ptr,m,h);var r=b().getInt32(f+0,!0),o=b().getInt32(f+4,!0),s=b().getInt32(f+8,!0),a=b().getInt32(f+12,!0),w=r,l=o;if(a)throw w=0,l=0,p(s);return n=w,_=l,C(w,l)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export4(n,_,1);}}ticket_mesh_peers(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_ticket_mesh_peers(this.__wbg_ptr,n,_);return p(r)}update_device(e,n,_,r,o){let s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i;var f=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),m=i,h=x(o)?0:c(o,t.__wbindgen_export,t.__wbindgen_export2),y=i;let v=t.wasmclient_update_device(this.__wbg_ptr,s,a,w,l,f,m,x(r)?0:u(r),h,y);return p(v)}update_presence(e,n,_,r,o){let s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=c(_,t.__wbindgen_export,t.__wbindgen_export2),m=i;var h=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),y=i;let v=t.wasmclient_update_presence(this.__wbg_ptr,s,a,w,l,f,m,h,y,!x(o),x(o)?BigInt(0):o);return p(v)}update_session(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_update_session(this.__wbg_ptr,_,r,o,s);return p(a)}validate_connection_token(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i;var w=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),l=i;let f=t.wasmclient_validate_connection_token(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}validate_session_token(e){let n,_;try{let f=t.__wbindgen_add_to_stack_pointer(-16),m=c(e,t.__wbindgen_export,t.__wbindgen_export2),h=i;t.wasmclient_validate_session_token(f,this.__wbg_ptr,m,h);var r=b().getInt32(f+0,!0),o=b().getInt32(f+4,!0),s=b().getInt32(f+8,!0),a=b().getInt32(f+12,!0),w=r,l=o;if(a)throw w=0,l=0,p(s);return n=w,_=l,C(w,l)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export4(n,_,1);}}wait_for_peer(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_wait_for_peer(this.__wbg_ptr,_,r,x(n)?Number.MAX_SAFE_INTEGER:n>>>0);return p(o)}wait_for_settled_scope(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_wait_for_settled_scope(this.__wbg_ptr,_,r,x(n)?Number.MAX_SAFE_INTEGER:n>>>0);return p(o)}wake_browser_auto_connect(){return t.wasmclient_wake_browser_auto_connect(this.__wbg_ptr)!==0}};Symbol.dispose&&(K.prototype[Symbol.dispose]=K.prototype.free);var V=class d{static __wrap(e){let n=Object.create(d.prototype);return n.__wbg_ptr=e,ot.register(n,n.__wbg_ptr,n),n}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,ot.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_wasmpeerdatagrampolicy_free(e,0);}close(){t.wasmpeerdatagrampolicy_close(this.__wbg_ptr);}closeIncoming(){t.wasmpeerdatagrampolicy_closeIncoming(this.__wbg_ptr);}closeOutgoing(){t.wasmpeerdatagrampolicy_closeOutgoing(this.__wbg_ptr);}getStats(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16);t.wasmpeerdatagrampolicy_getStats(o,this.__wbg_ptr,e);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}popIncoming(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16);t.wasmpeerdatagrampolicy_popIncoming(r,this.__wbg_ptr,e);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);let o;return n!==0&&(o=S(n,_).slice(),t.__wbindgen_export4(n,_*1,1)),o}finally{t.__wbindgen_add_to_stack_pointer(16);}}popOutgoing(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16);t.wasmpeerdatagrampolicy_popOutgoing(o,this.__wbg_ptr,e);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}pushIncoming(e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=k(e,t.__wbindgen_export),a=i;t.wasmpeerdatagrampolicy_pushIncoming(o,this.__wbg_ptr,s,a,n);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}pushOutgoing(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=k(e,t.__wbindgen_export),w=i;t.wasmpeerdatagrampolicy_pushOutgoing(s,this.__wbg_ptr,a,w,n);var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=b().getInt32(s+8,!0);if(o)throw p(r);return _!==0}finally{t.__wbindgen_add_to_stack_pointer(16);}}recordExpiredOutgoing(){t.wasmpeerdatagrampolicy_recordExpiredOutgoing(this.__wbg_ptr);}recordSendFailure(){t.wasmpeerdatagrampolicy_recordSendFailure(this.__wbg_ptr);}recordSent(e){t.wasmpeerdatagrampolicy_recordSent(this.__wbg_ptr,e);}setIncomingMaxAge(e,n){t.wasmpeerdatagrampolicy_setIncomingMaxAge(this.__wbg_ptr,x(e)?Number.MAX_SAFE_INTEGER:e>>>0,n);}setIncomingMaxBufferedDatagrams(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16);t.wasmpeerdatagrampolicy_setIncomingMaxBufferedDatagrams(r,this.__wbg_ptr,e);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}setOutgoingMaxAge(e){t.wasmpeerdatagrampolicy_setOutgoingMaxAge(this.__wbg_ptr,x(e)?Number.MAX_SAFE_INTEGER:e>>>0);}setOutgoingMaxBufferedDatagrams(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16);t.wasmpeerdatagrampolicy_setOutgoingMaxBufferedDatagrams(r,this.__wbg_ptr,e);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}};Symbol.dispose&&(V.prototype[Symbol.dispose]=V.prototype.free);function Bt(){t.start();}function st(){return {__proto__:null,"./openrtc_bg.js":{__proto__:null,__wbg_Error_9dc85fe1bc224456:function(e,n){let _=Error(C(e,n));return u(_)},__wbg_Number_4779d427bae39753:function(e){return Number(g(e))},__wbg_String_8564e559799eccda:function(e,n){let _=String(g(n)),r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg___wbindgen_bigint_get_as_i64_8ea6736501f396b6:function(e,n){let _=g(n),r=typeof _=="bigint"?_:void 0;b().setBigInt64(e+8,x(r)?BigInt(0):r,true),b().setInt32(e+0,!x(r),true);},__wbg___wbindgen_boolean_get_b131b2f36d6b2f55:function(e){let n=g(e),_=typeof n=="boolean"?n:void 0;return x(_)?16777215:_?1:0},__wbg___wbindgen_debug_string_56c147eb1a51f0c4:function(e,n){let _=Z(g(n)),r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg___wbindgen_in_ce8569b2fc6f5088:function(e,n){return g(e)in g(n)},__wbg___wbindgen_is_bigint_df272c65456269c2:function(e){return typeof g(e)=="bigint"},__wbg___wbindgen_is_function_147961669f068cd4:function(e){return typeof g(e)=="function"},__wbg___wbindgen_is_null_ced4761460071341:function(e){return g(e)===null},__wbg___wbindgen_is_object_3a2c414391dbf751:function(e){let n=g(e);return typeof n=="object"&&n!==null},__wbg___wbindgen_is_string_6541b0f6ecd4e8e5:function(e){return typeof g(e)=="string"},__wbg___wbindgen_is_undefined_4410e3c20a99fa97:function(e){return g(e)===void 0},__wbg___wbindgen_jsval_eq_174c93ec61bab0c5:function(e,n){return g(e)===g(n)},__wbg___wbindgen_jsval_loose_eq_e07e3b1f5db6da6c:function(e,n){return g(e)==g(n)},__wbg___wbindgen_number_get_588ed6b97f0d7e14:function(e,n){let _=g(n),r=typeof _=="number"?_:void 0;b().setFloat64(e+8,x(r)?0:r,true),b().setInt32(e+0,!x(r),true);},__wbg___wbindgen_string_get_fa2687d531ed17a5:function(e,n){let _=g(n),r=typeof _=="string"?_:void 0;var o=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),s=i;b().setInt32(e+4,s,true),b().setInt32(e+0,o,true);},__wbg___wbindgen_throw_bbadd78c1bac3a77:function(e,n){throw new Error(C(e,n))},__wbg__wbg_cb_unref_c2301a3c9b78104b:function(e){g(e)._wbg_cb_unref();},__wbg_abort_56c00f462c9261d9:function(e,n){g(e).abort(g(n));},__wbg_abort_f2416f4a9852003e:function(e){g(e).abort();},__wbg_addEventListener_b635263c509aa7de:function(){return I(function(e,n,_,r){g(e).addEventListener(C(n,_),g(r));},arguments)},__wbg_append_c5a0c94a6a73b22e:function(){return I(function(e,n,_,r,o){g(e).append(C(n,_),C(r,o));},arguments)},__wbg_apply_5d99f956e2dda74d:function(){return I(function(e,n,_){let r=g(e).apply(g(n),g(_));return u(r)},arguments)},__wbg_arrayBuffer_cc7704fa158b907a:function(){return I(function(e){let n=g(e).arrayBuffer();return u(n)},arguments)},__wbg_bistream_new:function(e){let n=G.__wrap(e);return u(n)},__wbg_body_442a47f02322d7b0:function(e){let n=g(e).body;return x(n)?0:u(n)},__wbg_buffer_8524b3453cde4918:function(e){let n=g(e).buffer;return u(n)},__wbg_bufferedAmount_c1581bbb06f4f36c:function(e){return g(e).bufferedAmount},__wbg_byobRequest_cc72d210de793e64:function(e){let n=g(e).byobRequest;return x(n)?0:u(n)},__wbg_byteLength_96807b1d9ab24a4c:function(e){return g(e).byteLength},__wbg_byteOffset_a9c7002428843c41:function(e){return g(e).byteOffset},__wbg_call_91f00ddc43e01490:function(){return I(function(e,n){let _=g(e).call(g(n));return u(_)},arguments)},__wbg_call_ec09a4cf93377d3a:function(){return I(function(e,n,_){let r=g(e).call(g(n),g(_));return u(r)},arguments)},__wbg_cancel_f3a197b26dc88b39:function(e){let n=g(e).cancel();return u(n)},__wbg_catch_66060324c27be6f7:function(e,n){let _=g(e).catch(g(n));return u(_)},__wbg_clearTimeout_113b1cde814ec762:function(e){let n=clearTimeout(p(e));return u(n)},__wbg_clearTimeout_333bba87532ab9d3:function(e){let n=clearTimeout(p(e));return u(n)},__wbg_clearTimeout_47a40e3be01ed7a3:function(){return I(function(e,n){g(e).clearTimeout(p(n));},arguments)},__wbg_close_296263cfe1bb2999:function(){return I(function(e){g(e).close();},arguments)},__wbg_close_388d99468213b286:function(){return I(function(e){g(e).close();},arguments)},__wbg_close_4857e22d08b71356:function(){return I(function(e){g(e).close();},arguments)},__wbg_close_f3365df7ba1b74d3:function(e){g(e).close();},__wbg_code_1cda2855fcd9b009:function(e){return g(e).code},__wbg_code_70beb7b22374d55e:function(e){return g(e).code},__wbg_crypto_38df2bab126b63dc:function(e){let n=g(e).crypto;return u(n)},__wbg_data_8a04443c1e5a8cd3:function(e){let n=g(e).data;return u(n)},__wbg_debug_de823612d4d12f74:function(e){console.debug(g(e));},__wbg_dispatchEvent_cc62a6a43d28b01c:function(){return I(function(e,n){return g(e).dispatchEvent(g(n))},arguments)},__wbg_done_6a8439e544ec6206:function(e){return g(e).done},__wbg_enqueue_bbeb09ba0b140f76:function(){return I(function(e,n){g(e).enqueue(g(n));},arguments)},__wbg_entries_4e00eefd3fd54cf1:function(e){let n=g(e).entries();return u(n)},__wbg_entries_5a6a7e7e0df09fe5:function(e){let n=Object.entries(g(e));return u(n)},__wbg_error_6651fee1c71e5da9:function(e){console.error(g(e));},__wbg_error_9a99766f65a03031:function(e,n){console.error(g(e),g(n));},__wbg_error_a6fa202b58aa1cd3:function(e,n){let _,r;try{_=e,r=n,console.error(C(e,n));}finally{t.__wbindgen_export4(_,r,1);}},__wbg_fetch_074561c3e313c86f:function(e){let n=fetch(g(e));return u(n)},__wbg_fetch_22858a12fcf93152:function(e,n){let _=g(e).fetch(g(n));return u(_)},__wbg_from_8a57180716c586ee:function(e){let n=Array.from(g(e));return u(n)},__wbg_getRandomValues_c44a50d8cfdaebeb:function(){return I(function(e,n){g(e).getRandomValues(g(n));},arguments)},__wbg_getRandomValues_cc7f052a444bb2ce:function(){return I(function(e,n){globalThis.crypto.getRandomValues(S(e,n));},arguments)},__wbg_getReader_9facd4f899beac89:function(){return I(function(e){let n=g(e).getReader();return u(n)},arguments)},__wbg_get_44e98e27bda25b5b:function(){return I(function(e,n){let _=Reflect.get(g(e),g(n));return u(_)},arguments)},__wbg_get_4b90d6d8c5deb5d5:function(e,n){let _=g(e)[n>>>0];return u(_)},__wbg_get_52a8a619f7b88df6:function(){return I(function(e,n){let _=Reflect.get(g(e),g(n));return u(_)},arguments)},__wbg_get_done_c21b9933fc9a9e9c:function(e){let n=g(e).done;return x(n)?16777215:n?1:0},__wbg_get_unchecked_46e778e3cec74b5e:function(e,n){let _=g(e)[n>>>0];return u(_)},__wbg_get_value_ad568c7d3db9073f:function(e){let n=g(e).value;return u(n)},__wbg_get_with_ref_key_6412cf3094599694:function(e,n){let _=g(e)[g(n)];return u(_)},__wbg_has_14676d88c1340d2c:function(){return I(function(e,n){return Reflect.has(g(e),g(n))},arguments)},__wbg_headers_5b19cf40627ae54d:function(e){let n=g(e).headers;return u(n)},__wbg_info_a2b5f8a5dae8b26c:function(e){console.info(g(e));},__wbg_instanceof_ArrayBuffer_a581da923203f29f:function(e){let n;try{n=g(e)instanceof ArrayBuffer;}catch{n=false;}return n},__wbg_instanceof_Blob_5c4e145be35f9b1e:function(e){let n;try{n=g(e)instanceof Blob;}catch{n=false;}return n},__wbg_instanceof_Map_7f94c740225003e2:function(e){let n;try{n=g(e)instanceof Map;}catch{n=false;}return n},__wbg_instanceof_Promise_aa24ea31000d4ee6:function(e){let n;try{n=g(e)instanceof Promise;}catch{n=false;}return n},__wbg_instanceof_Response_36a65a969abaa7c6:function(e){let n;try{n=g(e)instanceof Response;}catch{n=false;}return n},__wbg_instanceof_Uint8Array_b6fe1ac89eba107e:function(e){let n;try{n=g(e)instanceof Uint8Array;}catch{n=false;}return n},__wbg_instanceof_Window_9e0fe7d3d1ff4342:function(e){let n;try{n=g(e)instanceof Window;}catch{n=false;}return n},__wbg_isArray_139f48e3c057ede8:function(e){return Array.isArray(g(e))},__wbg_isSafeInteger_c22ccb4af2201fe9:function(e){return Number.isSafeInteger(g(e))},__wbg_iterator_9b36cebf3be7b7cd:function(){return u(Symbol.iterator)},__wbg_length_68a9d5278d084f4f:function(e){return g(e).length},__wbg_length_fb04d16d7bdf6d4c:function(e){return g(e).length},__wbg_log_6614a4effdb4e983:function(e){console.log(g(e));},__wbg_maxRetransmits_dfa0382c31f8e2ca:function(e){let n=g(e).maxRetransmits;return x(n)?16777215:n},__wbg_message_12958526424a887b:function(e,n){let _=g(n).message,r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg_msCrypto_bd5a034af96bcba6:function(e){let n=g(e).msCrypto;return u(n)},__wbg_new_0b303268aa395a38:function(){let e=new Array;return u(e)},__wbg_new_189262ff31890c23:function(){return I(function(){let e=new Headers;return u(e)},arguments)},__wbg_new_20b778a4c5c691c3:function(){let e=new Object;return u(e)},__wbg_new_227d7c05414eb861:function(){let e=new Error;return u(e)},__wbg_new_24739629d416f982:function(){return I(function(){let e=new AbortController;return u(e)},arguments)},__wbg_new_5fae30e6b23db8df:function(e,n){let _=new Error(C(e,n));return u(_)},__wbg_new_883c0db065f06efd:function(){return u(new Map)},__wbg_new_a3e5112401a82338:function(){return I(function(e,n){let _=new WebSocket(C(e,n));return u(_)},arguments)},__wbg_new_b06772b280cc6e52:function(e){let n=new Uint8Array(g(e));return u(n)},__wbg_new_from_slice_bb2d1778c0b87eb1:function(e,n){let _=new Uint8Array(S(e,n));return u(_)},__wbg_new_typed_90c3f6c29ba36d19:function(e,n){try{var _={a:e,b:n},r=(s,a)=>{let w=_.a;_.a=0;try{return xt(w,_.b,s,a)}finally{_.a=w;}};let o=new Promise(r);return u(o)}finally{_.a=0;}},__wbg_new_with_byte_offset_and_length_9e1e664fe1a5d385:function(e,n,_){let r=new Uint8Array(g(e),n>>>0,_>>>0);return u(r)},__wbg_new_with_event_init_dict_bd850674488710b1:function(){return I(function(e,n,_){let r=new CustomEvent(C(e,n),g(_));return u(r)},arguments)},__wbg_new_with_into_underlying_sink_2596343f9b6c8e58:function(e){let n=new WritableStream(L.__wrap(e));return u(n)},__wbg_new_with_into_underlying_source_fd904252f385f59c:function(e,n){let _=new ReadableStream(U.__wrap(e),p(n));return u(_)},__wbg_new_with_length_4b57a7a5dc67221c:function(e){let n=new Uint8Array(e>>>0);return u(n)},__wbg_new_with_str_and_init_df876572184fe639:function(){return I(function(e,n,_){let r=new Request(C(e,n),g(_));return u(r)},arguments)},__wbg_new_with_str_sequence_505a4829cc247e79:function(){return I(function(e,n,_){let r=new WebSocket(C(e,n),g(_));return u(r)},arguments)},__wbg_next_8cb028b6ba50743f:function(){return I(function(e){let n=g(e).next();return u(n)},arguments)},__wbg_next_cfd0b146c9538df8:function(e){let n=g(e).next;return u(n)},__wbg_node_84ea875411254db1:function(e){let n=g(e).node;return u(n)},__wbg_now_bce4dc999095ea77:function(){return Date.now()},__wbg_now_e7c6795a7f81e10f:function(e){return g(e).now()},__wbg_parse_a5c06e19bc1187fd:function(e,n){return Date.parse(C(e,n))},__wbg_peerunistream_new:function(e){let n=X.__wrap(e);return u(n)},__wbg_performance_3fcf6e32a7e1ed0a:function(e){let n=g(e).performance;return u(n)},__wbg_process_44c7a14e11e9f69e:function(e){let n=g(e).process;return u(n)},__wbg_protocol_28aaef5ea42981d6:function(e,n){let _=g(n).protocol,r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg_prototypesetcall_956c7493c68e29b4:function(e,n,_){Uint8Array.prototype.set.call(S(e,n),g(_));},__wbg_push_ceb8ef046afb2041:function(e,n){return g(e).push(g(n))},__wbg_queueMicrotask_4698f900840e3286:function(e){queueMicrotask(g(e));},__wbg_queueMicrotask_477a5533c7100338:function(e){let n=g(e).queueMicrotask;return u(n)},__wbg_randomFillSync_6c25eac9869eb53c:function(){return I(function(e,n){g(e).randomFillSync(p(n));},arguments)},__wbg_read_8426c146431f2905:function(e){let n=g(e).read();return u(n)},__wbg_readyState_25243ad6ce649774:function(e){return g(e).readyState},__wbg_reason_4ec455bac79b33ce:function(e,n){let _=g(n).reason,r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg_releaseLock_188846ef719acb10:function(e){g(e).releaseLock();},__wbg_removeEventListener_016c1d24523b4730:function(){return I(function(e,n,_,r){g(e).removeEventListener(C(n,_),g(r));},arguments)},__wbg_require_b4edbdcf3e2a1ef0:function(){return I(function(){let e=module.require;return u(e)},arguments)},__wbg_resolve_0183de2e8c6b1d54:function(e){let n=Promise.resolve(g(e));return u(n)},__wbg_respond_3cdb4cf32683fd79:function(){return I(function(e,n){g(e).respond(n>>>0);},arguments)},__wbg_send_77521d09456dd693:function(){return I(function(e,n,_){g(e).send(S(n,_));},arguments)},__wbg_send_99d049cae69c53cc:function(){return I(function(e,n,_){g(e).send(S(n,_));},arguments)},__wbg_send_bac9d3dc4f21ef28:function(){return I(function(e,n,_){g(e).send(C(n,_));},arguments)},__wbg_setTimeout_3a808dd861dd3c12:function(e,n){let _=setTimeout(g(e),n);return u(_)},__wbg_setTimeout_6613a51400c1bf9f:function(){return I(function(e,n,_){let r=g(e).setTimeout(p(n),_);return u(r)},arguments)},__wbg_setTimeout_ef24d2fc3ad97385:function(){return I(function(e,n){let _=setTimeout(g(e),n);return u(_)},arguments)},__wbg_set_5f806304fb633ab3:function(e,n,_){let r=g(e).set(g(n),g(_));return u(r)},__wbg_set_6be42768c690e380:function(e,n,_){g(e)[p(n)]=p(_);},__wbg_set_86698c227e5b9dad:function(e,n,_){g(e).set(S(n,_));},__wbg_set_a6ba3ac0e634b822:function(){return I(function(e,n,_){return Reflect.set(g(e),g(n),g(_))},arguments)},__wbg_set_binaryType_07905e4563fcd9b2:function(e,n){g(e).binaryType=kt[n];},__wbg_set_binaryType_8c2dd2cf1cfc2e28:function(e,n){g(e).binaryType=mt[n];},__wbg_set_body_d1153b16a2b95ca1:function(e,n){g(e).body=g(n);},__wbg_set_bufferedAmountLowThreshold_8969a2db2c745257:function(e,n){g(e).bufferedAmountLowThreshold=n>>>0;},__wbg_set_cache_5a01a8b5e6ca6cf2:function(e,n){g(e).cache=yt[n];},__wbg_set_credentials_e9120ed88b1fc0b8:function(e,n){g(e).credentials=vt[n];},__wbg_set_da33c120a6584674:function(e,n,_){g(e)[n>>>0]=p(_);},__wbg_set_detail_c7af5edea934390b:function(e,n){g(e).detail=g(n);},__wbg_set_handle_event_6147c38b782c7b42:function(e,n){g(e).handleEvent=g(n);},__wbg_set_headers_877ed41890d28af2:function(e,n){g(e).headers=g(n);},__wbg_set_high_water_mark_77da20c49668427d:function(e,n){g(e).highWaterMark=n;},__wbg_set_method_b4ede299b2064f37:function(e,n,_){g(e).method=C(n,_);},__wbg_set_mode_d6c2e1991aa963c6:function(e,n){g(e).mode=It[n];},__wbg_set_onbufferedamountlow_b695487bdd219f98:function(e,n){g(e).onbufferedamountlow=g(n);},__wbg_set_onclose_9cb5c3372e16c192:function(e,n){g(e).onclose=g(n);},__wbg_set_onclose_f8bec1cbeb64aa93:function(e,n){g(e).onclose=g(n);},__wbg_set_onerror_190fe67e911ebf28:function(e,n){g(e).onerror=g(n);},__wbg_set_onmessage_4d57c4ddab951294:function(e,n){g(e).onmessage=g(n);},__wbg_set_onmessage_96337495f0bfb796:function(e,n){g(e).onmessage=g(n);},__wbg_set_onopen_3e2bf6b11d434c2d:function(e,n){g(e).onopen=g(n);},__wbg_set_signal_9022b5aa06a6ce5b:function(e,n){g(e).signal=g(n);},__wbg_signal_41dd1a8913cd0b7d:function(e){let n=g(e).signal;return u(n)},__wbg_stack_3b0d974bbf31e44f:function(e,n){let _=g(n).stack,r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg_static_accessor_GLOBAL_60a4124bab7dcc9a:function(){let e=typeof global>"u"?null:global;return x(e)?0:u(e)},__wbg_static_accessor_GLOBAL_THIS_95ca6460658b5d13:function(){let e=typeof globalThis>"u"?null:globalThis;return x(e)?0:u(e)},__wbg_static_accessor_SELF_4c95f759a91e9aae:function(){let e=typeof self>"u"?null:self;return x(e)?0:u(e)},__wbg_static_accessor_WINDOW_44b435597f9e9ee7:function(){let e=typeof window>"u"?null:window;return x(e)?0:u(e)},__wbg_status_9e6505cfa3e73a7c:function(e){return g(e).status},__wbg_subarray_42216645a367cd7a:function(e,n,_){let r=g(e).subarray(n>>>0,_>>>0);return u(r)},__wbg_then_254bab9b266a77a5:function(e,n,_){let r=g(e).then(g(n),g(_));return u(r)},__wbg_then_3ea18602c6a5123b:function(e,n){let _=g(e).then(g(n));return u(_)},__wbg_url_72c67c175685a054:function(e,n){let _=g(n).url,r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg_url_d0b8042af0d1bbba:function(e,n){let _=g(n).url,r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg_value_3d3defe09fb1ffca:function(e){let n=g(e).value;return u(n)},__wbg_versions_276b2795b1c6a219:function(e){let n=g(e).versions;return u(n)},__wbg_view_15fa5865c6b336e3:function(e){let n=g(e).view;return x(n)?0:u(n)},__wbg_warn_633bacc13ba7e6c3:function(e){console.warn(g(e));},__wbg_wasClean_f17429d064911939:function(e){return g(e).wasClean},__wbindgen_cast_0000000000000001:function(e,n){let _=B(e,n,dt);return u(_)},__wbindgen_cast_0000000000000002:function(e,n){let _=B(e,n,ft);return u(_)},__wbindgen_cast_0000000000000003:function(e,n){let _=B(e,n,wt);return u(_)},__wbindgen_cast_0000000000000004:function(e,n){let _=B(e,n,ut);return u(_)},__wbindgen_cast_0000000000000005:function(e,n){let _=B(e,n,lt);return u(_)},__wbindgen_cast_0000000000000006:function(e,n){let _=B(e,n,at);return u(_)},__wbindgen_cast_0000000000000007:function(e,n){let _=B(e,n,pt);return u(_)},__wbindgen_cast_0000000000000008:function(e,n){let _=Ft(e,n,gt);return u(_)},__wbindgen_cast_0000000000000009:function(e,n){let _=B(e,n,bt);return u(_)},__wbindgen_cast_000000000000000a:function(e){return u(e)},__wbindgen_cast_000000000000000b:function(e){return u(e)},__wbindgen_cast_000000000000000c:function(e,n){let _=S(e,n);return u(_)},__wbindgen_cast_000000000000000d:function(e,n){let _=C(e,n);return u(_)},__wbindgen_cast_000000000000000e:function(e){let n=BigInt.asUintN(64,e);return u(n)},__wbindgen_cast_000000000000000f:function(e,n){var _=S(e,n).slice();return t.__wbindgen_export4(e,n*1,1),u(_)},__wbindgen_object_clone_ref:function(e){let n=g(e);return u(n)},__wbindgen_object_drop_ref:function(e){p(e);}}}}function at(d,e){t.__wasm_bindgen_func_elem_30513(d,e);}function pt(d,e){t.__wasm_bindgen_func_elem_31647(d,e);}function gt(d,e){t.__wasm_bindgen_func_elem_31719(d,e);}function bt(d,e){t.__wasm_bindgen_func_elem_39784(d,e);}function dt(d,e,n){t.__wasm_bindgen_func_elem_30715(d,e,u(n));}function wt(d,e,n){t.__wasm_bindgen_func_elem_28074(d,e,u(n));}function ut(d,e,n){t.__wasm_bindgen_func_elem_6697(d,e,u(n));}function lt(d,e,n){t.__wasm_bindgen_func_elem_32427(d,e,u(n));}function ft(d,e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16);t.__wasm_bindgen_func_elem_41292(o,d,e,u(n));var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}function xt(d,e,n,_){t.__wasm_bindgen_func_elem_41294(d,e,u(n),u(_));}var mt=["blob","arraybuffer"],ht=["bytes"],yt=["default","no-store","reload","no-cache","force-cache","only-if-cached"],vt=["omit","same-origin","include"],It=["same-origin","no-cors","cors","navigate"],kt=["arraybuffer","blob"],tt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_bistream_free(d,1)),Rt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_intounderlyingbytesource_free(d,1)),et=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_intounderlyingsink_free(d,1)),nt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_intounderlyingsource_free(d,1)),_t=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_peerunistream_free(d,1)),rt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_wasmclient_free(d,1)),ot=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_wasmpeerdatagrampolicy_free(d,1));function u(d){D===E.length&&E.push(E.length+1);let e=D;return D=E[e],E[e]=d,e}var J=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbindgen_export5(d.a,d.b));function Z(d){let e=typeof d;if(e=="number"||e=="boolean"||d==null)return `${d}`;if(e=="string")return `"${d}"`;if(e=="symbol"){let r=d.description;return r==null?"Symbol":`Symbol(${r})`}if(e=="function"){let r=d.name;return typeof r=="string"&&r.length>0?`Function(${r})`:"Function"}if(Array.isArray(d)){let r=d.length,o="[";r>0&&(o+=Z(d[0]));for(let s=1;s<r;s++)o+=", "+Z(d[s]);return o+="]",o}let n=/\[object ([^\]]+)\]/.exec(toString.call(d)),_;if(n&&n.length>1)_=n[1];else return toString.call(d);if(_=="Object")try{return "Object("+JSON.stringify(d)+")"}catch{return "Object"}return d instanceof Error?`${d.name}: ${d.message}
|
|
1
|
+
var G=class d{static __wrap(e){let n=Object.create(d.prototype);return n.__wbg_ptr=e,tt.register(n,n.__wbg_ptr,n),n}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,tt.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_bistream_free(e,0);}get applicationCryptoWrapped(){return t.bistream_applicationCryptoWrapped(this.__wbg_ptr)!==0}cancelSend(){let e=t.bistream_cancelSend(this.__wbg_ptr);return p(e)}get endpoint_id(){let e,n;try{let o=t.__wbindgen_add_to_stack_pointer(-16);t.bistream_endpoint_id(o,this.__wbg_ptr);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);return e=_,n=r,C(_,r)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export4(e,n,1);}}finishSend(){let e=t.bistream_finishSend(this.__wbg_ptr);return p(e)}get recv(){let e=t.bistream_recv(this.__wbg_ptr);return p(e)}get send(){let e=t.bistream_send(this.__wbg_ptr);return p(e)}get transport_stable_id(){try{let _=t.__wbindgen_add_to_stack_pointer(-16);t.bistream_transport_stable_id(_,this.__wbg_ptr);var e=b().getInt32(_+0,!0),n=b().getFloat64(_+8,!0);return e===0?void 0:n}finally{t.__wbindgen_add_to_stack_pointer(16);}}};Symbol.dispose&&(G.prototype[Symbol.dispose]=G.prototype.free);var $=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,Rt.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_intounderlyingbytesource_free(e,0);}get autoAllocateChunkSize(){return t.intounderlyingbytesource_autoAllocateChunkSize(this.__wbg_ptr)>>>0}cancel(){let e=this.__destroy_into_raw();t.intounderlyingbytesource_cancel(e);}pull(e){let n=t.intounderlyingbytesource_pull(this.__wbg_ptr,u(e));return p(n)}start(e){t.intounderlyingbytesource_start(this.__wbg_ptr,u(e));}get type(){let e=t.intounderlyingbytesource_type(this.__wbg_ptr);return ht[e]}};Symbol.dispose&&($.prototype[Symbol.dispose]=$.prototype.free);var L=class d{static __wrap(e){let n=Object.create(d.prototype);return n.__wbg_ptr=e,et.register(n,n.__wbg_ptr,n),n}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,et.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_intounderlyingsink_free(e,0);}abort(e){let n=this.__destroy_into_raw(),_=t.intounderlyingsink_abort(n,u(e));return p(_)}close(){let e=this.__destroy_into_raw(),n=t.intounderlyingsink_close(e);return p(n)}write(e){let n=t.intounderlyingsink_write(this.__wbg_ptr,u(e));return p(n)}};Symbol.dispose&&(L.prototype[Symbol.dispose]=L.prototype.free);var U=class d{static __wrap(e){let n=Object.create(d.prototype);return n.__wbg_ptr=e,nt.register(n,n.__wbg_ptr,n),n}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,nt.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_intounderlyingsource_free(e,0);}cancel(){let e=this.__destroy_into_raw();t.intounderlyingsource_cancel(e);}pull(e){let n=t.intounderlyingsource_pull(this.__wbg_ptr,u(e));return p(n)}};Symbol.dispose&&(U.prototype[Symbol.dispose]=U.prototype.free);var X=class d{static __wrap(e){let n=Object.create(d.prototype);return n.__wbg_ptr=e,_t.register(n,n.__wbg_ptr,n),n}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,_t.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_peerunistream_free(e,0);}get applicationCryptoWrapped(){return t.peerunistream_applicationCryptoWrapped(this.__wbg_ptr)!==0}cancelSend(){let e=t.peerunistream_cancelSend(this.__wbg_ptr);return p(e)}finishSend(){let e=t.peerunistream_finishSend(this.__wbg_ptr);return p(e)}get writable(){let e=t.peerunistream_writable(this.__wbg_ptr);return p(e)}};Symbol.dispose&&(X.prototype[Symbol.dispose]=X.prototype.free);var K=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,rt.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_wasmclient_free(e,0);}__acceptOpenRtcBroadcastObject(e,n,_){try{let a=t.__wbindgen_add_to_stack_pointer(-16),w=c(e,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=c(n,t.__wbindgen_export,t.__wbindgen_export2),m=i,h=k(_,t.__wbindgen_export),y=i;t.wasmclient___acceptOpenRtcBroadcastObject(a,this.__wbg_ptr,w,l,f,m,h,y);var r=b().getInt32(a+0,!0),o=b().getInt32(a+4,!0),s=b().getInt32(a+8,!0);if(s)throw p(o);return p(r)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__acknowledgePersistentIrohOutbox(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient___acknowledgePersistentIrohOutbox(this.__wbg_ptr,n,_);return p(r)}__advancePreferredIrohCarrier(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(_,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=t.wasmclient___advancePreferredIrohCarrier(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}__applyIrohCarrierPolicy(){let e=t.wasmclient___applyIrohCarrierPolicy(this.__wbg_ptr);return p(e)}__attachMoqCarrier(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(r,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=t.wasmclient___attachMoqCarrier(this.__wbg_ptr,o,s,a,w,u(_),l,f);return p(m)}__attachWebRtcCarrier(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(r,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=t.wasmclient___attachWebRtcCarrier(this.__wbg_ptr,o,s,a,w,u(_),l,f);return p(m)}__beginMoqCarrier(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient___beginMoqCarrier(this.__wbg_ptr,_,r,o,s);return p(a)}__beginOpenRtcBroadcastPublication(e,n,_,r,o,s,a,w,l){try{let R=t.__wbindgen_add_to_stack_pointer(-16),A=c(e,t.__wbindgen_export,t.__wbindgen_export2),F=i,P=c(n,t.__wbindgen_export,t.__wbindgen_export2),M=i;var f=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),m=i;let O=c(r,t.__wbindgen_export,t.__wbindgen_export2),T=i,N=c(o,t.__wbindgen_export,t.__wbindgen_export2),Q=i;t.wasmclient___beginOpenRtcBroadcastPublication(R,this.__wbg_ptr,A,F,P,M,f,m,O,T,N,Q,s,x(a)?Number.MAX_SAFE_INTEGER:a>>>0,x(w)?Number.MAX_SAFE_INTEGER:w>>>0,x(l)?16777215:l);var h=b().getInt32(R+0,!0),y=b().getInt32(R+4,!0),v=b().getInt32(R+8,!0);if(v)throw p(y);return p(h)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__beginOpenRtcMediaPublication(e,n,_,r,o,s,a){try{let y=t.__wbindgen_add_to_stack_pointer(-16);var w=x(e)?0:c(e,t.__wbindgen_export,t.__wbindgen_export2),l=i;let v=c(n,t.__wbindgen_export,t.__wbindgen_export2),R=i,A=c(_,t.__wbindgen_export,t.__wbindgen_export2),F=i;t.wasmclient___beginOpenRtcMediaPublication(y,this.__wbg_ptr,w,l,v,R,A,F,r,x(o)?Number.MAX_SAFE_INTEGER:o>>>0,x(s)?Number.MAX_SAFE_INTEGER:s>>>0,x(a)?16777215:a);var f=b().getInt32(y+0,!0),m=b().getInt32(y+4,!0),h=b().getInt32(y+8,!0);if(h)throw p(m);return p(f)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__beginPreferredIrohCarrier(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=t.wasmclient___beginPreferredIrohCarrier(this.__wbg_ptr,o,s,a,w,_,r);return p(l)}__beginWebRtcCarrier(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient___beginWebRtcCarrier(this.__wbg_ptr,_,r,o,s);return p(a)}__closeOpenRtcBroadcast(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16),o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i;t.wasmclient___closeOpenRtcBroadcast(r,this.__wbg_ptr,o,s);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__configureIrohRoutePolicy(e,n,_){var r=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),o=i;let s=t.wasmclient___configureIrohRoutePolicy(this.__wbg_ptr,e,r,o,u(_));return p(s)}__configureMoqCarrier(e,n){var _=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),r=i;let o=t.wasmclient___configureMoqCarrier(this.__wbg_ptr,e,_,r);return p(o)}__configureWebRtcCarrier(e,n){let _=t.wasmclient___configureWebRtcCarrier(this.__wbg_ptr,e,n);return p(_)}__createOpenRtcBroadcastPublisherSigner(){try{let r=t.__wbindgen_add_to_stack_pointer(-16);t.wasmclient___createOpenRtcBroadcastPublisherSigner(r,this.__wbg_ptr);var e=b().getInt32(r+0,!0),n=b().getInt32(r+4,!0),_=b().getInt32(r+8,!0);if(_)throw p(n);return p(e)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__createPersistentIrohNamespace(e,n){let _=t.wasmclient___createPersistentIrohNamespace(this.__wbg_ptr,e,n);return p(_)}__decodeOpenRtcMediaChunk(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=k(e,t.__wbindgen_export),a=i;t.wasmclient___decodeOpenRtcMediaChunk(o,this.__wbg_ptr,s,a);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__decodeOpenRtcMediaControl(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=k(e,t.__wbindgen_export),a=i;t.wasmclient___decodeOpenRtcMediaControl(o,this.__wbg_ptr,s,a);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__deletePersistentIrohPrefix(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=k(n,t.__wbindgen_export),s=i,a=t.wasmclient___deletePersistentIrohPrefix(this.__wbg_ptr,_,r,o,s);return p(a)}__encodeOpenRtcMediaSample(e,n,_,r,o,s){try{let h=t.__wbindgen_add_to_stack_pointer(-16),y=c(e,t.__wbindgen_export,t.__wbindgen_export2),v=i,R=k(s,t.__wbindgen_export),A=i;t.wasmclient___encodeOpenRtcMediaSample(h,this.__wbg_ptr,y,v,n,_,r,o,R,A);var a=b().getInt32(h+0,!0),w=b().getInt32(h+4,!0),l=b().getInt32(h+8,!0),f=b().getInt32(h+12,!0);if(f)throw p(l);var m=S(a,w).slice();return t.__wbindgen_export4(a,w*1,1),m}finally{t.__wbindgen_add_to_stack_pointer(16);}}__flushPersistentIrohProtocols(){let e=t.wasmclient___flushPersistentIrohProtocols(this.__wbg_ptr);return p(e)}__forgetIrohCarrierPeer(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient___forgetIrohCarrierPeer(this.__wbg_ptr,n,_);return p(r)}__forgetManagedRoomGroup(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i;t.wasmclient___forgetManagedRoomGroup(this.__wbg_ptr,n,_);}__getIrohCarrierReadiness(){let e=t.wasmclient___getIrohCarrierReadiness(this.__wbg_ptr);return p(e)}__getOpenRtcBroadcastStats(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i;t.wasmclient___getOpenRtcBroadcastStats(o,this.__wbg_ptr,s,a);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__handleIrohCarrierControl(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=t.wasmclient___handleIrohCarrierControl(this.__wbg_ptr,r,o,s,a,u(_));return p(w)}__handleManagedRoomArtifactChunk(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i;t.wasmclient___handleManagedRoomArtifactChunk(s,this.__wbg_ptr,a,w,u(n));var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=b().getInt32(s+8,!0);if(o)throw p(r);return p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__handleManagedRoomPreparePage(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i;t.wasmclient___handleManagedRoomPreparePage(s,this.__wbg_ptr,a,w,u(n));var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=b().getInt32(s+8,!0);if(o)throw p(r);return p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__hydratePersistentIrohBlob(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient___hydratePersistentIrohBlob(this.__wbg_ptr,n,_);return p(r)}__importPersistentIrohAuthor(e){let n=k(e,t.__wbindgen_export),_=i,r=t.wasmclient___importPersistentIrohAuthor(this.__wbg_ptr,n,_);return p(r)}__importPersistentIrohNamespace(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=k(n,t.__wbindgen_export),w=i,l=t.wasmclient___importPersistentIrohNamespace(this.__wbg_ptr,o,s,a,w,_,r);return p(l)}__importPersistentIrohTicket(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=t.wasmclient___importPersistentIrohTicket(this.__wbg_ptr,r,o,n,_);return p(s)}__initManagedRoomGroup(e,n,_,r){try{let f=t.__wbindgen_add_to_stack_pointer(-16),m=c(e,t.__wbindgen_export,t.__wbindgen_export2),h=i,y=c(n,t.__wbindgen_export,t.__wbindgen_export2),v=i,R=k(_,t.__wbindgen_export),A=i;var o=x(r)?0:k(r,t.__wbindgen_export),s=i;t.wasmclient___initManagedRoomGroup(f,this.__wbg_ptr,m,h,y,v,R,A,o,s);var a=b().getInt32(f+0,!0),w=b().getInt32(f+4,!0),l=b().getInt32(f+8,!0);if(l)throw p(w);return p(a)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__initPersistentIrohProtocols(e){let n=t.wasmclient___initPersistentIrohProtocols(this.__wbg_ptr,u(e));return p(n)}__moqCarrierFailed(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(_,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=t.wasmclient___moqCarrierFailed(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}__moqCarrierPrepared(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient___moqCarrierPrepared(this.__wbg_ptr,_,r,o,s);return p(a)}__observeOpenRtcBroadcastAdapter(e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i;t.wasmclient___observeOpenRtcBroadcastAdapter(o,this.__wbg_ptr,s,a,u(n));var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__openManagedRoomPayload(e,n,_,r,o,s,a,w){try{let v=t.__wbindgen_add_to_stack_pointer(-16),R=c(e,t.__wbindgen_export,t.__wbindgen_export2),A=i,F=c(r,t.__wbindgen_export,t.__wbindgen_export2),P=i,M=c(o,t.__wbindgen_export,t.__wbindgen_export2),O=i;var l=x(a)?0:c(a,t.__wbindgen_export,t.__wbindgen_export2),f=i;let T=k(w,t.__wbindgen_export),N=i;t.wasmclient___openManagedRoomPayload(v,this.__wbg_ptr,R,A,n,_,F,P,M,O,s,l,f,T,N);var m=b().getInt32(v+0,!0),h=b().getInt32(v+4,!0),y=b().getInt32(v+8,!0);if(y)throw p(h);return p(m)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__openOpenRtcBroadcast(e,n,_,r,o,s){try{let h=t.__wbindgen_add_to_stack_pointer(-16),y=c(e,t.__wbindgen_export,t.__wbindgen_export2),v=i,R=k(n,t.__wbindgen_export),A=i,F=c(_,t.__wbindgen_export,t.__wbindgen_export2),P=i,M=k(r,t.__wbindgen_export),O=i;var a=x(o)?0:c(o,t.__wbindgen_export,t.__wbindgen_export2),w=i;t.wasmclient___openOpenRtcBroadcast(h,this.__wbg_ptr,y,v,R,A,F,P,M,O,a,w,s);var l=b().getInt32(h+0,!0),f=b().getInt32(h+4,!0),m=b().getInt32(h+8,!0);if(m)throw p(f);return p(l)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__pauseOpenRtcBroadcastPublication(e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i;t.wasmclient___pauseOpenRtcBroadcastPublication(o,this.__wbg_ptr,s,a,w,l);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__pauseOpenRtcMediaPublication(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16),o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i;t.wasmclient___pauseOpenRtcMediaPublication(r,this.__wbg_ptr,o,s);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__prepareOpenRtcBroadcastGrant(e,n,_){try{let a=t.__wbindgen_add_to_stack_pointer(-16),w=c(e,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=k(n,t.__wbindgen_export),m=i;t.wasmclient___prepareOpenRtcBroadcastGrant(a,this.__wbg_ptr,w,l,f,m,_);var r=b().getInt32(a+0,!0),o=b().getInt32(a+4,!0),s=b().getInt32(a+8,!0);if(s)throw p(o);return p(r)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__publishOpenRtcBroadcastSample(e,n,_,r,o,s,a){try{let f=t.__wbindgen_add_to_stack_pointer(-16),m=c(e,t.__wbindgen_export,t.__wbindgen_export2),h=i,y=c(n,t.__wbindgen_export,t.__wbindgen_export2),v=i,R=k(a,t.__wbindgen_export),A=i;t.wasmclient___publishOpenRtcBroadcastSample(f,this.__wbg_ptr,m,h,y,v,_,r,o,s,R,A);var w=b().getInt32(f+0,!0),l=b().getInt32(f+4,!0);if(l)throw p(w)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__putPersistentIrohBytes(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=k(n,t.__wbindgen_export),a=i,w=k(_,t.__wbindgen_export),l=i,f=t.wasmclient___putPersistentIrohBytes(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}__queryPersistentIrohNamespace(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=k(n,t.__wbindgen_export),s=i,a=t.wasmclient___queryPersistentIrohNamespace(this.__wbg_ptr,_,r,o,s);return p(a)}__reconcileIrohCarriersAfterNetworkChange(){let e=t.wasmclient___reconcileIrohCarriersAfterNetworkChange(this.__wbg_ptr);return p(e)}__reconcilePersistentIrohProtocols(){let e=t.wasmclient___reconcilePersistentIrohProtocols(this.__wbg_ptr);return p(e)}__releaseOpenRtcBroadcastPublisherSigner(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i;return t.wasmclient___releaseOpenRtcBroadcastPublisherSigner(this.__wbg_ptr,n,_)!==0}__removePersistentIrohNamespace(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=t.wasmclient___removePersistentIrohNamespace(this.__wbg_ptr,r,o,n,_);return p(s)}__requireScopePeerAdmission(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16),o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i;t.wasmclient___requireScopePeerAdmission(r,this.__wbg_ptr,o,s);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__retireIrohCarrierPeer(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i;var o=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i;let a=t.wasmclient___retireIrohCarrierPeer(this.__wbg_ptr,_,r,o,s);return p(a)}__retireMoqCarrier(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i;var o=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i;let a=t.wasmclient___retireMoqCarrier(this.__wbg_ptr,_,r,o,s);return p(a)}__retireOpenRtcBroadcastPublication(e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i;t.wasmclient___retireOpenRtcBroadcastPublication(o,this.__wbg_ptr,s,a,w,l);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__retireOpenRtcMediaPublication(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16),o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i;t.wasmclient___retireOpenRtcMediaPublication(r,this.__wbg_ptr,o,s);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__retireOpenRtcMediaReceiver(e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i;t.wasmclient___retireOpenRtcMediaReceiver(o,this.__wbg_ptr,s,a,n);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__retireWebRtcCarrier(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i;var o=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i;let a=t.wasmclient___retireWebRtcCarrier(this.__wbg_ptr,_,r,o,s);return p(a)}__sealManagedRoomPayload(e,n,_,r,o,s,a,w){try{let v=t.__wbindgen_add_to_stack_pointer(-16),R=c(e,t.__wbindgen_export,t.__wbindgen_export2),A=i,F=c(r,t.__wbindgen_export,t.__wbindgen_export2),P=i,M=c(o,t.__wbindgen_export,t.__wbindgen_export2),O=i;var l=x(a)?0:c(a,t.__wbindgen_export,t.__wbindgen_export2),f=i;let T=k(w,t.__wbindgen_export),N=i;t.wasmclient___sealManagedRoomPayload(v,this.__wbg_ptr,R,A,n,_,F,P,M,O,s,l,f,T,N);var m=b().getInt32(v+0,!0),h=b().getInt32(v+4,!0),y=b().getInt32(v+8,!0);if(y)throw p(h);return p(m)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__setIrohCarrierActionHandler(e){t.wasmclient___setIrohCarrierActionHandler(this.__wbg_ptr,x(e)?0:u(e));}__setPersistentIrohHash(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=k(n,t.__wbindgen_export),w=i,l=c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=t.wasmclient___setPersistentIrohHash(this.__wbg_ptr,o,s,a,w,l,f,r);return p(m)}__sharePersistentIrohNamespace(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient___sharePersistentIrohNamespace(this.__wbg_ptr,_,r,n);return p(o)}__shutdownPersistentIrohProtocols(){let e=t.wasmclient___shutdownPersistentIrohProtocols(this.__wbg_ptr);return p(e)}__takeOpenRtcBroadcastActions(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i;t.wasmclient___takeOpenRtcBroadcastActions(s,this.__wbg_ptr,a,w,n);var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=b().getInt32(s+8,!0);if(o)throw p(r);return p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__updateScopePeerAdmission(e,n,_,r){try{let a=t.__wbindgen_add_to_stack_pointer(-16),w=c(e,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=c(r,t.__wbindgen_export,t.__wbindgen_export2),m=i;t.wasmclient___updateScopePeerAdmission(a,this.__wbg_ptr,w,l,n,_,f,m);var o=b().getInt32(a+0,!0),s=b().getInt32(a+4,!0);if(s)throw p(o)}finally{t.__wbindgen_add_to_stack_pointer(16);}}__webRtcCarrierFailed(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(_,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=t.wasmclient___webRtcCarrierFailed(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}__webRtcCarrierPrepared(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient___webRtcCarrierPrepared(this.__wbg_ptr,_,r,o,s);return p(a)}acceptSparseFanoutMessage(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=k(_,t.__wbindgen_export),l=i,f=t.wasmclient_acceptSparseFanoutMessage(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}acknowledge_session_token_response(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i;var l=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),f=i;let m=t.wasmclient_acknowledge_session_token_response(this.__wbg_ptr,o,s,a,w,_,l,f);return p(m)}add_peer_scope(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_add_peer_scope(this.__wbg_ptr,_,r,o,s);return p(a)}bind_connection_device_id(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_bind_connection_device_id(this.__wbg_ptr,_,r,o,s);return p(a)}bind_node_device_id(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_bind_node_device_id(this.__wbg_ptr,_,r,o,s);return p(a)}clearConnectionApplicationCryptoKey(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i;t.wasmclient_clearConnectionApplicationCryptoKey(this.__wbg_ptr,n,_);}clearIdentityCredential(){t.wasmclient_clearIdentityCredential(this.__wbg_ptr);}clear_session_tokens(){t.wasmclient_clear_session_tokens(this.__wbg_ptr);}close_ticket_mesh(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_close_ticket_mesh(this.__wbg_ptr,n,_);return p(r)}confirm_reciprocal_admission(e,n,_,r,o,s){let a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=c(r,t.__wbindgen_export,t.__wbindgen_export2),h=i;var y=x(s)?0:c(s,t.__wbindgen_export,t.__wbindgen_export2),v=i;let R=t.wasmclient_confirm_reciprocal_admission(this.__wbg_ptr,a,w,n,l,f,m,h,o,y,v);return p(R)}connect_device(e,n,_){var r=x(e)?0:c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i;let s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=t.wasmclient_connect_device(this.__wbg_ptr,r,o,s,a,x(_)?Number.MAX_SAFE_INTEGER:_>>>0);return p(w)}connect_known_device_with_token(e,n,_,r,o,s){let a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(n,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=c(_,t.__wbindgen_export,t.__wbindgen_export2),h=i,y=t.wasmclient_connect_known_device_with_token(this.__wbg_ptr,a,w,l,f,m,h,r,!x(o),x(o)?BigInt(0):o,x(s)?Number.MAX_SAFE_INTEGER:s>>>0);return p(y)}connect_ticket_invite(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_connect_ticket_invite(this.__wbg_ptr,n,_);return p(r)}connectionApplicationCryptoReady(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i;return t.wasmclient_connectionApplicationCryptoReady(this.__wbg_ptr,_,r,n)!==0}connection_state(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_connection_state(this.__wbg_ptr,n,_);return p(r)}connection_state_owner_id(){let e,n;try{let o=t.__wbindgen_add_to_stack_pointer(-16);t.wasmclient_connection_state_owner_id(o,this.__wbg_ptr);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);return e=_,n=r,C(_,r)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export4(e,n,1);}}connection_states(){let e=t.wasmclient_connection_states(this.__wbg_ptr);return p(e)}createPeerDatagramPolicy(){let e=t.wasmclient_createPeerDatagramPolicy(this.__wbg_ptr);return V.__wrap(e)}create_room(e,n,_,r,o,s){let a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(n,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=c(_,t.__wbindgen_export,t.__wbindgen_export2),h=i,y=c(r,t.__wbindgen_export,t.__wbindgen_export2),v=i,R=c(o,t.__wbindgen_export,t.__wbindgen_export2),A=i,F=t.wasmclient_create_room(this.__wbg_ptr,a,w,l,f,m,h,y,v,R,A,x(s)?Number.MAX_SAFE_INTEGER:s>>>0);return p(F)}create_session(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_create_session(this.__wbg_ptr,n,_);return p(r)}decodeIncomingChannelEnvelope(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=k(e,t.__wbindgen_export),a=i;t.wasmclient_decodeIncomingChannelEnvelope(o,this.__wbg_ptr,s,a);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}delete_device(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_delete_device(this.__wbg_ptr,_,r,o,s);return p(a)}devices_with_status(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_devices_with_status(this.__wbg_ptr,n,_);return p(r)}disconnect(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_disconnect(this.__wbg_ptr,n,_);return p(r)}disconnect_device(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i;var o=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i;let a=t.wasmclient_disconnect_device(this.__wbg_ptr,_,r,o,s);return p(a)}disconnect_transient(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_disconnect_transient(this.__wbg_ptr,n,_);return p(r)}endpoint_id_from_ticket(e){let n,_;try{let f=t.__wbindgen_add_to_stack_pointer(-16),m=c(e,t.__wbindgen_export,t.__wbindgen_export2),h=i;t.wasmclient_endpoint_id_from_ticket(f,this.__wbg_ptr,m,h);var r=b().getInt32(f+0,!0),o=b().getInt32(f+4,!0),s=b().getInt32(f+8,!0),a=b().getInt32(f+12,!0),w=r,l=o;if(a)throw w=0,l=0,p(s);return n=w,_=l,C(w,l)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export4(n,_,1);}}endpoint_ticket(){let e=t.wasmclient_endpoint_ticket(this.__wbg_ptr);return p(e)}endpoint_ticket_with_token(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_endpoint_ticket_with_token(this.__wbg_ptr,_,r,n);return p(o)}ensureConnectionApplicationCrypto(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=t.wasmclient_ensureConnectionApplicationCrypto(this.__wbg_ptr,o,s,a,w,_,u(r));return p(l)}finalizeSparseFanoutMessage(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_finalizeSparseFanoutMessage(this.__wbg_ptr,_,r,o,s);return p(a)}force_reconnect_snapshot(){t.wasmclient_force_reconnect_snapshot(this.__wbg_ptr);}get_members(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(_,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=t.wasmclient_get_members(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}handleConnectionApplicationCryptoHandshake(e,n,_,r,o){let s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i;var f=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),m=i;let h=k(o,t.__wbindgen_export),y=i,v=t.wasmclient_handleConnectionApplicationCryptoHandshake(this.__wbg_ptr,s,a,w,l,!x(_),x(_)?BigInt(0):_,f,m,h,y);return p(v)}incoming_streams(){let e=t.wasmclient_incoming_streams(this.__wbg_ptr);return p(e)}initIrohWithTestRelay(e,n){var _=x(e)?0:k(e,t.__wbindgen_export),r=i,o=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i;let a=t.wasmclient_initIrohWithTestRelay(this.__wbg_ptr,_,r,o,s);return p(a)}init_iroh(e){var n=x(e)?0:k(e,t.__wbindgen_export),_=i;let r=t.wasmclient_init_iroh(this.__wbg_ptr,n,_);return p(r)}inspectIncomingStreamPrefix(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=k(e,t.__wbindgen_export),w=i;t.wasmclient_inspectIncomingStreamPrefix(s,this.__wbg_ptr,a,w,n);var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=b().getInt32(s+8,!0);if(o)throw p(r);return p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}iroh_path_kind(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_iroh_path_kind(this.__wbg_ptr,n,_);return p(r)}iroh_secret_key(){let e=t.wasmclient_iroh_secret_key(this.__wbg_ptr);return p(e)}iroh_transport_rtt_ms(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_iroh_transport_rtt_ms(this.__wbg_ptr,n,_);return p(r)}isAuthenticatedReconnectCandidate(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_isAuthenticatedReconnectCandidate(this.__wbg_ptr,_,r,n);return p(o)}is_auto_connect_excluded(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i;return t.wasmclient_is_auto_connect_excluded(this.__wbg_ptr,n,_)!==0}is_connected(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_is_connected(this.__wbg_ptr,n,_);return p(r)}is_current_transport_stable_id(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_is_current_transport_stable_id(this.__wbg_ptr,_,r,n);return p(o)}is_remote_admitted(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_is_remote_admitted(this.__wbg_ptr,n,_);return p(r)}issue_ticket_invite(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=t.wasmclient_issue_ticket_invite(this.__wbg_ptr,r,o,n,_);return p(s)}issue_ticket_mesh(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=t.wasmclient_issue_ticket_mesh(this.__wbg_ptr,r,o,n,u(_));return p(s)}join_room(e,n,_,r,o){let s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=c(_,t.__wbindgen_export,t.__wbindgen_export2),m=i,h=c(r,t.__wbindgen_export,t.__wbindgen_export2),y=i,v=c(o,t.__wbindgen_export,t.__wbindgen_export2),R=i,A=t.wasmclient_join_room(this.__wbg_ptr,s,a,w,l,f,m,h,y,v,R);return p(A)}join_ticket_mesh(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_join_ticket_mesh(this.__wbg_ptr,_,r,u(n));return p(o)}leave_room(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(_,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=t.wasmclient_leave_room(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}list_managed_connections(){let e=t.wasmclient_list_managed_connections(this.__wbg_ptr);return p(e)}constructor(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i;t.wasmclient_new(o,s,a);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return this.__wbg_ptr=n,rt.register(this,this.__wbg_ptr,this),this}finally{t.__wbindgen_add_to_stack_pointer(16);}}node_addr(){let e=t.wasmclient_node_addr(this.__wbg_ptr);return p(e)}observe_known_device_endpoint(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_observe_known_device_endpoint(this.__wbg_ptr,_,r,o,s);return p(a)}openConnectionApplicationPayload(e,n,_){try{let l=t.__wbindgen_add_to_stack_pointer(-16),f=c(e,t.__wbindgen_export,t.__wbindgen_export2),m=i,h=k(_,t.__wbindgen_export),y=i;t.wasmclient_openConnectionApplicationPayload(l,this.__wbg_ptr,f,m,n,h,y);var r=b().getInt32(l+0,!0),o=b().getInt32(l+4,!0),s=b().getInt32(l+8,!0),a=b().getInt32(l+12,!0);if(a)throw p(s);var w=S(r,o).slice();return t.__wbindgen_export4(r,o*1,1),w}finally{t.__wbindgen_add_to_stack_pointer(16);}}open_bi(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_open_bi(this.__wbg_ptr,n,_);return p(r)}open_native_main_control_bi(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_open_native_main_control_bi(this.__wbg_ptr,n,_);return p(r)}open_peer_bi(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_open_peer_bi(this.__wbg_ptr,_,r,x(n)?Number.MAX_SAFE_INTEGER:n>>>0);return p(o)}open_peer_bi_explicit_file_sender(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_open_peer_bi_explicit_file_sender(this.__wbg_ptr,_,r,x(n)?Number.MAX_SAFE_INTEGER:n>>>0);return p(o)}open_peer_bi_transport_only(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_open_peer_bi_transport_only(this.__wbg_ptr,_,r,x(n)?Number.MAX_SAFE_INTEGER:n>>>0);return p(o)}open_peer_uni(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_open_peer_uni(this.__wbg_ptr,_,r,x(n)?Number.MAX_SAFE_INTEGER:n>>>0);return p(o)}open_uni(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_open_uni(this.__wbg_ptr,n,_);return p(r)}peerDatagramMaxSize(){return t.wasmclient_peerDatagramMaxSize(this.__wbg_ptr)>>>0}peer_scopes(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_peer_scopes(this.__wbg_ptr,n,_);return p(r)}peer_session(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_peer_session(this.__wbg_ptr,n,_);return p(r)}peer_sessions(){let e=t.wasmclient_peer_sessions(this.__wbg_ptr);return p(e)}peer_snapshot(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_peer_snapshot(this.__wbg_ptr,n,_);return p(r)}prepareSparseFanoutMessage(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=k(n,t.__wbindgen_export),s=i,a=t.wasmclient_prepareSparseFanoutMessage(this.__wbg_ptr,_,r,o,s);return p(a)}prepare_reciprocal_admission(e,n,_,r,o,s,a,w){let l=c(e,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=c(_,t.__wbindgen_export,t.__wbindgen_export2),h=i,y=c(r,t.__wbindgen_export,t.__wbindgen_export2),v=i,R=c(o,t.__wbindgen_export,t.__wbindgen_export2),A=i,F=c(s,t.__wbindgen_export,t.__wbindgen_export2),P=i,M=c(a,t.__wbindgen_export,t.__wbindgen_export2),O=i,T=c(w,t.__wbindgen_export,t.__wbindgen_export2),N=i,Q=t.wasmclient_prepare_reciprocal_admission(this.__wbg_ptr,l,f,n,m,h,y,v,R,A,F,P,M,O,T,N);return p(Q)}present_session_token(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i;var l=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),h=i;let y=t.wasmclient_present_session_token(this.__wbg_ptr,o,s,a,w,l,f,m,h);return p(y)}protectConnectionApplicationPayload(e,n,_){try{let l=t.__wbindgen_add_to_stack_pointer(-16),f=c(e,t.__wbindgen_export,t.__wbindgen_export2),m=i,h=k(_,t.__wbindgen_export),y=i;t.wasmclient_protectConnectionApplicationPayload(l,this.__wbg_ptr,f,m,n,h,y);var r=b().getInt32(l+0,!0),o=b().getInt32(l+4,!0),s=b().getInt32(l+8,!0),a=b().getInt32(l+12,!0);if(a)throw p(s);var w=S(r,o).slice();return t.__wbindgen_export4(r,o*1,1),w}finally{t.__wbindgen_add_to_stack_pointer(16);}}rankRoutes(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=it(e,t.__wbindgen_export),w=i,l=it(n,t.__wbindgen_export),f=i;t.wasmclient_rankRoutes(s,this.__wbg_ptr,a,w,l,f);var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=Ct(_,r).slice();return t.__wbindgen_export4(_,r*4,4),o}finally{t.__wbindgen_add_to_stack_pointer(16);}}receivePeerDatagram(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_receivePeerDatagram(this.__wbg_ptr,n,_);return p(r)}receive_ticket_mesh_frame(e,n,_){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(n,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=c(_,t.__wbindgen_export,t.__wbindgen_export2),h=i;t.wasmclient_receive_ticket_mesh_frame(s,this.__wbg_ptr,a,w,l,f,m,h);var r=b().getInt32(s+0,!0),o=b().getInt32(s+4,!0);if(o)throw p(r)}finally{t.__wbindgen_add_to_stack_pointer(16);}}recordSparseFanoutForwardQueueDrop(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_recordSparseFanoutForwardQueueDrop(this.__wbg_ptr,_,r,n);return p(o)}register_session_token(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i;t.wasmclient_register_session_token(this.__wbg_ptr,r,o,s,a,_);}register_token_until(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i;t.wasmclient_register_token_until(this.__wbg_ptr,o,s,a,w,_,r);}reject_connection_admission(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_reject_connection_admission(this.__wbg_ptr,_,r,o,s);return p(a)}release_peer_scope(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i;var o=x(n)?0:c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i;let a=t.wasmclient_release_peer_scope(this.__wbg_ptr,_,r,o,s);return p(a)}report_managed_connection_settled(e,n,_,r,o,s){let a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i;var l=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i;let m=t.wasmclient_report_managed_connection_settled(this.__wbg_ptr,a,w,n,l,f,!x(r),x(r)?BigInt(0):r,!x(o),x(o)?BigInt(0):o,!x(s),x(s)?BigInt(0):s);return p(m)}report_transport_status(e,n,_,r,o,s){let a=c(e,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(n,t.__wbindgen_export,t.__wbindgen_export2),f=i;var m=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),h=i;let y=t.wasmclient_report_transport_status(this.__wbg_ptr,a,w,l,f,m,h,!x(r),x(r)?BigInt(0):r,!x(o),x(o)?BigInt(0):o,!x(s),x(s)?BigInt(0):s);return p(y)}resolve_peer_connection_records(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_resolve_peer_connection_records(this.__wbg_ptr,n,_);return p(r)}revoke_session_token(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i;t.wasmclient_revoke_session_token(o,this.__wbg_ptr,s,a);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}revoke_tokens_by_scope(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_revoke_tokens_by_scope(this.__wbg_ptr,n,_);return p(r)}runtime_policy(){try{let r=t.__wbindgen_add_to_stack_pointer(-16);t.wasmclient_runtime_policy(r,this.__wbg_ptr);var e=b().getInt32(r+0,!0),n=b().getInt32(r+4,!0),_=b().getInt32(r+8,!0);if(_)throw p(n);return p(e)}finally{t.__wbindgen_add_to_stack_pointer(16);}}same_peer(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_same_peer(this.__wbg_ptr,_,r,o,s);return p(a)}search_devices(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_search_devices(this.__wbg_ptr,n,_);return p(r)}sendPeerDatagram(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=k(n,t.__wbindgen_export),a=i,w=t.wasmclient_sendPeerDatagram(this.__wbg_ptr,r,o,s,a,x(_)?Number.MAX_SAFE_INTEGER:_>>>0);return p(w)}send_message(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i;var l=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),h=i;let y=t.wasmclient_send_message(this.__wbg_ptr,o,s,a,w,l,f,m,h);return p(y)}send_native_main_control_frame(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=k(n,t.__wbindgen_export),s=i,a=t.wasmclient_send_native_main_control_frame(this.__wbg_ptr,_,r,o,s);return p(a)}send_peer(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=k(n,t.__wbindgen_export),s=i,a=t.wasmclient_send_peer(this.__wbg_ptr,_,r,o,s);return p(a)}send_peer_application_frame(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=k(n,t.__wbindgen_export),a=i,w=t.wasmclient_send_peer_application_frame(this.__wbg_ptr,r,o,s,a,x(_)?Number.MAX_SAFE_INTEGER:_>>>0);return p(w)}setConnectionApplicationCryptoKey(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=k(n,t.__wbindgen_export),s=i,a=t.wasmclient_setConnectionApplicationCryptoKey(this.__wbg_ptr,_,r,o,s);return p(a)}setConnectionApplicationCryptoRequired(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16),o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i;t.wasmclient_setConnectionApplicationCryptoRequired(r,this.__wbg_ptr,o,s);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}setIdentityCredential(e){var n=x(e)?0:c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i;t.wasmclient_setIdentityCredential(this.__wbg_ptr,n,_);}setRelay(e){let n=t.wasmclient_setRelay(this.__wbg_ptr,e);return p(n)}set_auto_connect_excluded(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_set_auto_connect_excluded(this.__wbg_ptr,_,r,n);return p(o)}set_offline(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_set_offline(this.__wbg_ptr,n,_);return p(r)}sparseFanoutDiagnostics(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_sparseFanoutDiagnostics(this.__wbg_ptr,n,_);return p(r)}start_auto_connect(e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i;t.wasmclient_start_auto_connect(o,this.__wbg_ptr,s,a,w,l);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}start_presence_loop(e,n,_,r){let o=c(e,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i,l=c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i;var m=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),h=i;t.wasmclient_start_presence_loop(this.__wbg_ptr,o,s,a,w,l,f,m,h);}stop_auth_scoped_activity(){t.wasmclient_stop_auth_scoped_activity(this.__wbg_ptr);}stop_auto_connect(){t.wasmclient_stop_auto_connect(this.__wbg_ptr);}stop_presence_loop(){t.wasmclient_stop_presence_loop(this.__wbg_ptr);}submit_browser_desired_peers(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i;t.wasmclient_submit_browser_desired_peers(s,this.__wbg_ptr,e,a,w);var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=b().getInt32(s+8,!0);if(o)throw p(r);return _!==0}finally{t.__wbindgen_add_to_stack_pointer(16);}}submit_browser_desired_peers_with_sparse_fanout(e,n,_,r,o,s){let a=c(n,t.__wbindgen_export,t.__wbindgen_export2),w=i;var l=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),f=i,m=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),h=i,y=x(o)?0:c(o,t.__wbindgen_export,t.__wbindgen_export2),v=i;let R=t.wasmclient_submit_browser_desired_peers_with_sparse_fanout(this.__wbg_ptr,e,a,w,l,f,m,h,y,v,x(s)?16777215:s?1:0);return p(R)}ticket_mesh_issuer_node(e){let n,_;try{let f=t.__wbindgen_add_to_stack_pointer(-16),m=c(e,t.__wbindgen_export,t.__wbindgen_export2),h=i;t.wasmclient_ticket_mesh_issuer_node(f,this.__wbg_ptr,m,h);var r=b().getInt32(f+0,!0),o=b().getInt32(f+4,!0),s=b().getInt32(f+8,!0),a=b().getInt32(f+12,!0),w=r,l=o;if(a)throw w=0,l=0,p(s);return n=w,_=l,C(w,l)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export4(n,_,1);}}ticket_mesh_peers(e){let n=c(e,t.__wbindgen_export,t.__wbindgen_export2),_=i,r=t.wasmclient_ticket_mesh_peers(this.__wbg_ptr,n,_);return p(r)}update_device(e,n,_,r,o){let s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i;var f=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),m=i,h=x(o)?0:c(o,t.__wbindgen_export,t.__wbindgen_export2),y=i;let v=t.wasmclient_update_device(this.__wbg_ptr,s,a,w,l,f,m,x(r)?0:u(r),h,y);return p(v)}update_presence(e,n,_,r,o){let s=c(e,t.__wbindgen_export,t.__wbindgen_export2),a=i,w=c(n,t.__wbindgen_export,t.__wbindgen_export2),l=i,f=c(_,t.__wbindgen_export,t.__wbindgen_export2),m=i;var h=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),y=i;let v=t.wasmclient_update_presence(this.__wbg_ptr,s,a,w,l,f,m,h,y,!x(o),x(o)?BigInt(0):o);return p(v)}update_session(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=c(n,t.__wbindgen_export,t.__wbindgen_export2),s=i,a=t.wasmclient_update_session(this.__wbg_ptr,_,r,o,s);return p(a)}validate_connection_token(e,n,_){let r=c(e,t.__wbindgen_export,t.__wbindgen_export2),o=i,s=c(n,t.__wbindgen_export,t.__wbindgen_export2),a=i;var w=x(_)?0:c(_,t.__wbindgen_export,t.__wbindgen_export2),l=i;let f=t.wasmclient_validate_connection_token(this.__wbg_ptr,r,o,s,a,w,l);return p(f)}validate_session_token(e){let n,_;try{let f=t.__wbindgen_add_to_stack_pointer(-16),m=c(e,t.__wbindgen_export,t.__wbindgen_export2),h=i;t.wasmclient_validate_session_token(f,this.__wbg_ptr,m,h);var r=b().getInt32(f+0,!0),o=b().getInt32(f+4,!0),s=b().getInt32(f+8,!0),a=b().getInt32(f+12,!0),w=r,l=o;if(a)throw w=0,l=0,p(s);return n=w,_=l,C(w,l)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export4(n,_,1);}}wait_for_peer(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_wait_for_peer(this.__wbg_ptr,_,r,x(n)?Number.MAX_SAFE_INTEGER:n>>>0);return p(o)}wait_for_settled_scope(e,n){let _=c(e,t.__wbindgen_export,t.__wbindgen_export2),r=i,o=t.wasmclient_wait_for_settled_scope(this.__wbg_ptr,_,r,x(n)?Number.MAX_SAFE_INTEGER:n>>>0);return p(o)}wake_browser_auto_connect(){return t.wasmclient_wake_browser_auto_connect(this.__wbg_ptr)!==0}};Symbol.dispose&&(K.prototype[Symbol.dispose]=K.prototype.free);var V=class d{static __wrap(e){let n=Object.create(d.prototype);return n.__wbg_ptr=e,ot.register(n,n.__wbg_ptr,n),n}__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,ot.unregister(this),e}free(){let e=this.__destroy_into_raw();t.__wbg_wasmpeerdatagrampolicy_free(e,0);}close(){t.wasmpeerdatagrampolicy_close(this.__wbg_ptr);}closeIncoming(){t.wasmpeerdatagrampolicy_closeIncoming(this.__wbg_ptr);}closeOutgoing(){t.wasmpeerdatagrampolicy_closeOutgoing(this.__wbg_ptr);}getStats(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16);t.wasmpeerdatagrampolicy_getStats(o,this.__wbg_ptr,e);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}popIncoming(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16);t.wasmpeerdatagrampolicy_popIncoming(r,this.__wbg_ptr,e);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);let o;return n!==0&&(o=S(n,_).slice(),t.__wbindgen_export4(n,_*1,1)),o}finally{t.__wbindgen_add_to_stack_pointer(16);}}popOutgoing(e){try{let o=t.__wbindgen_add_to_stack_pointer(-16);t.wasmpeerdatagrampolicy_popOutgoing(o,this.__wbg_ptr,e);var n=b().getInt32(o+0,!0),_=b().getInt32(o+4,!0),r=b().getInt32(o+8,!0);if(r)throw p(_);return p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}pushIncoming(e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16),s=k(e,t.__wbindgen_export),a=i;t.wasmpeerdatagrampolicy_pushIncoming(o,this.__wbg_ptr,s,a,n);var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}pushOutgoing(e,n){try{let s=t.__wbindgen_add_to_stack_pointer(-16),a=k(e,t.__wbindgen_export),w=i;t.wasmpeerdatagrampolicy_pushOutgoing(s,this.__wbg_ptr,a,w,n);var _=b().getInt32(s+0,!0),r=b().getInt32(s+4,!0),o=b().getInt32(s+8,!0);if(o)throw p(r);return _!==0}finally{t.__wbindgen_add_to_stack_pointer(16);}}recordExpiredOutgoing(){t.wasmpeerdatagrampolicy_recordExpiredOutgoing(this.__wbg_ptr);}recordSendFailure(){t.wasmpeerdatagrampolicy_recordSendFailure(this.__wbg_ptr);}recordSent(e){t.wasmpeerdatagrampolicy_recordSent(this.__wbg_ptr,e);}setIncomingMaxAge(e,n){t.wasmpeerdatagrampolicy_setIncomingMaxAge(this.__wbg_ptr,x(e)?Number.MAX_SAFE_INTEGER:e>>>0,n);}setIncomingMaxBufferedDatagrams(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16);t.wasmpeerdatagrampolicy_setIncomingMaxBufferedDatagrams(r,this.__wbg_ptr,e);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}setOutgoingMaxAge(e){t.wasmpeerdatagrampolicy_setOutgoingMaxAge(this.__wbg_ptr,x(e)?Number.MAX_SAFE_INTEGER:e>>>0);}setOutgoingMaxBufferedDatagrams(e){try{let r=t.__wbindgen_add_to_stack_pointer(-16);t.wasmpeerdatagrampolicy_setOutgoingMaxBufferedDatagrams(r,this.__wbg_ptr,e);var n=b().getInt32(r+0,!0),_=b().getInt32(r+4,!0);if(_)throw p(n)}finally{t.__wbindgen_add_to_stack_pointer(16);}}};Symbol.dispose&&(V.prototype[Symbol.dispose]=V.prototype.free);function Bt(){t.start();}function st(){return {__proto__:null,"./openrtc_bg.js":{__proto__:null,__wbg_Error_9dc85fe1bc224456:function(e,n){let _=Error(C(e,n));return u(_)},__wbg_Number_4779d427bae39753:function(e){return Number(g(e))},__wbg_String_8564e559799eccda:function(e,n){let _=String(g(n)),r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg___wbindgen_bigint_get_as_i64_8ea6736501f396b6:function(e,n){let _=g(n),r=typeof _=="bigint"?_:void 0;b().setBigInt64(e+8,x(r)?BigInt(0):r,true),b().setInt32(e+0,!x(r),true);},__wbg___wbindgen_boolean_get_b131b2f36d6b2f55:function(e){let n=g(e),_=typeof n=="boolean"?n:void 0;return x(_)?16777215:_?1:0},__wbg___wbindgen_debug_string_56c147eb1a51f0c4:function(e,n){let _=Z(g(n)),r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg___wbindgen_in_ce8569b2fc6f5088:function(e,n){return g(e)in g(n)},__wbg___wbindgen_is_bigint_df272c65456269c2:function(e){return typeof g(e)=="bigint"},__wbg___wbindgen_is_function_147961669f068cd4:function(e){return typeof g(e)=="function"},__wbg___wbindgen_is_null_ced4761460071341:function(e){return g(e)===null},__wbg___wbindgen_is_object_3a2c414391dbf751:function(e){let n=g(e);return typeof n=="object"&&n!==null},__wbg___wbindgen_is_string_6541b0f6ecd4e8e5:function(e){return typeof g(e)=="string"},__wbg___wbindgen_is_undefined_4410e3c20a99fa97:function(e){return g(e)===void 0},__wbg___wbindgen_jsval_eq_174c93ec61bab0c5:function(e,n){return g(e)===g(n)},__wbg___wbindgen_jsval_loose_eq_e07e3b1f5db6da6c:function(e,n){return g(e)==g(n)},__wbg___wbindgen_number_get_588ed6b97f0d7e14:function(e,n){let _=g(n),r=typeof _=="number"?_:void 0;b().setFloat64(e+8,x(r)?0:r,true),b().setInt32(e+0,!x(r),true);},__wbg___wbindgen_string_get_fa2687d531ed17a5:function(e,n){let _=g(n),r=typeof _=="string"?_:void 0;var o=x(r)?0:c(r,t.__wbindgen_export,t.__wbindgen_export2),s=i;b().setInt32(e+4,s,true),b().setInt32(e+0,o,true);},__wbg___wbindgen_throw_bbadd78c1bac3a77:function(e,n){throw new Error(C(e,n))},__wbg__wbg_cb_unref_c2301a3c9b78104b:function(e){g(e)._wbg_cb_unref();},__wbg_abort_56c00f462c9261d9:function(e,n){g(e).abort(g(n));},__wbg_abort_f2416f4a9852003e:function(e){g(e).abort();},__wbg_addEventListener_b635263c509aa7de:function(){return I(function(e,n,_,r){g(e).addEventListener(C(n,_),g(r));},arguments)},__wbg_append_c5a0c94a6a73b22e:function(){return I(function(e,n,_,r,o){g(e).append(C(n,_),C(r,o));},arguments)},__wbg_apply_5d99f956e2dda74d:function(){return I(function(e,n,_){let r=g(e).apply(g(n),g(_));return u(r)},arguments)},__wbg_arrayBuffer_cc7704fa158b907a:function(){return I(function(e){let n=g(e).arrayBuffer();return u(n)},arguments)},__wbg_bistream_new:function(e){let n=G.__wrap(e);return u(n)},__wbg_body_442a47f02322d7b0:function(e){let n=g(e).body;return x(n)?0:u(n)},__wbg_buffer_8524b3453cde4918:function(e){let n=g(e).buffer;return u(n)},__wbg_bufferedAmount_c1581bbb06f4f36c:function(e){return g(e).bufferedAmount},__wbg_byobRequest_cc72d210de793e64:function(e){let n=g(e).byobRequest;return x(n)?0:u(n)},__wbg_byteLength_96807b1d9ab24a4c:function(e){return g(e).byteLength},__wbg_byteOffset_a9c7002428843c41:function(e){return g(e).byteOffset},__wbg_call_91f00ddc43e01490:function(){return I(function(e,n){let _=g(e).call(g(n));return u(_)},arguments)},__wbg_call_ec09a4cf93377d3a:function(){return I(function(e,n,_){let r=g(e).call(g(n),g(_));return u(r)},arguments)},__wbg_cancel_f3a197b26dc88b39:function(e){let n=g(e).cancel();return u(n)},__wbg_catch_66060324c27be6f7:function(e,n){let _=g(e).catch(g(n));return u(_)},__wbg_clearTimeout_113b1cde814ec762:function(e){let n=clearTimeout(p(e));return u(n)},__wbg_clearTimeout_333bba87532ab9d3:function(e){let n=clearTimeout(p(e));return u(n)},__wbg_clearTimeout_47a40e3be01ed7a3:function(){return I(function(e,n){g(e).clearTimeout(p(n));},arguments)},__wbg_close_296263cfe1bb2999:function(){return I(function(e){g(e).close();},arguments)},__wbg_close_388d99468213b286:function(){return I(function(e){g(e).close();},arguments)},__wbg_close_4857e22d08b71356:function(){return I(function(e){g(e).close();},arguments)},__wbg_close_f3365df7ba1b74d3:function(e){g(e).close();},__wbg_code_1cda2855fcd9b009:function(e){return g(e).code},__wbg_code_70beb7b22374d55e:function(e){return g(e).code},__wbg_crypto_38df2bab126b63dc:function(e){let n=g(e).crypto;return u(n)},__wbg_data_8a04443c1e5a8cd3:function(e){let n=g(e).data;return u(n)},__wbg_debug_de823612d4d12f74:function(e){console.debug(g(e));},__wbg_dispatchEvent_cc62a6a43d28b01c:function(){return I(function(e,n){return g(e).dispatchEvent(g(n))},arguments)},__wbg_done_6a8439e544ec6206:function(e){return g(e).done},__wbg_enqueue_bbeb09ba0b140f76:function(){return I(function(e,n){g(e).enqueue(g(n));},arguments)},__wbg_entries_4e00eefd3fd54cf1:function(e){let n=g(e).entries();return u(n)},__wbg_entries_5a6a7e7e0df09fe5:function(e){let n=Object.entries(g(e));return u(n)},__wbg_error_6651fee1c71e5da9:function(e){console.error(g(e));},__wbg_error_9a99766f65a03031:function(e,n){console.error(g(e),g(n));},__wbg_error_a6fa202b58aa1cd3:function(e,n){let _,r;try{_=e,r=n,console.error(C(e,n));}finally{t.__wbindgen_export4(_,r,1);}},__wbg_fetch_074561c3e313c86f:function(e){let n=fetch(g(e));return u(n)},__wbg_fetch_22858a12fcf93152:function(e,n){let _=g(e).fetch(g(n));return u(_)},__wbg_from_8a57180716c586ee:function(e){let n=Array.from(g(e));return u(n)},__wbg_getRandomValues_c44a50d8cfdaebeb:function(){return I(function(e,n){g(e).getRandomValues(g(n));},arguments)},__wbg_getRandomValues_cc7f052a444bb2ce:function(){return I(function(e,n){globalThis.crypto.getRandomValues(S(e,n));},arguments)},__wbg_getReader_9facd4f899beac89:function(){return I(function(e){let n=g(e).getReader();return u(n)},arguments)},__wbg_get_44e98e27bda25b5b:function(){return I(function(e,n){let _=Reflect.get(g(e),g(n));return u(_)},arguments)},__wbg_get_4b90d6d8c5deb5d5:function(e,n){let _=g(e)[n>>>0];return u(_)},__wbg_get_52a8a619f7b88df6:function(){return I(function(e,n){let _=Reflect.get(g(e),g(n));return u(_)},arguments)},__wbg_get_done_c21b9933fc9a9e9c:function(e){let n=g(e).done;return x(n)?16777215:n?1:0},__wbg_get_unchecked_46e778e3cec74b5e:function(e,n){let _=g(e)[n>>>0];return u(_)},__wbg_get_value_ad568c7d3db9073f:function(e){let n=g(e).value;return u(n)},__wbg_get_with_ref_key_6412cf3094599694:function(e,n){let _=g(e)[g(n)];return u(_)},__wbg_has_14676d88c1340d2c:function(){return I(function(e,n){return Reflect.has(g(e),g(n))},arguments)},__wbg_headers_5b19cf40627ae54d:function(e){let n=g(e).headers;return u(n)},__wbg_info_a2b5f8a5dae8b26c:function(e){console.info(g(e));},__wbg_instanceof_ArrayBuffer_a581da923203f29f:function(e){let n;try{n=g(e)instanceof ArrayBuffer;}catch{n=false;}return n},__wbg_instanceof_Blob_5c4e145be35f9b1e:function(e){let n;try{n=g(e)instanceof Blob;}catch{n=false;}return n},__wbg_instanceof_Map_7f94c740225003e2:function(e){let n;try{n=g(e)instanceof Map;}catch{n=false;}return n},__wbg_instanceof_Promise_aa24ea31000d4ee6:function(e){let n;try{n=g(e)instanceof Promise;}catch{n=false;}return n},__wbg_instanceof_Response_36a65a969abaa7c6:function(e){let n;try{n=g(e)instanceof Response;}catch{n=false;}return n},__wbg_instanceof_Uint8Array_b6fe1ac89eba107e:function(e){let n;try{n=g(e)instanceof Uint8Array;}catch{n=false;}return n},__wbg_instanceof_Window_9e0fe7d3d1ff4342:function(e){let n;try{n=g(e)instanceof Window;}catch{n=false;}return n},__wbg_isArray_139f48e3c057ede8:function(e){return Array.isArray(g(e))},__wbg_isSafeInteger_c22ccb4af2201fe9:function(e){return Number.isSafeInteger(g(e))},__wbg_iterator_9b36cebf3be7b7cd:function(){return u(Symbol.iterator)},__wbg_length_68a9d5278d084f4f:function(e){return g(e).length},__wbg_length_fb04d16d7bdf6d4c:function(e){return g(e).length},__wbg_log_6614a4effdb4e983:function(e){console.log(g(e));},__wbg_maxRetransmits_dfa0382c31f8e2ca:function(e){let n=g(e).maxRetransmits;return x(n)?16777215:n},__wbg_message_12958526424a887b:function(e,n){let _=g(n).message,r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg_msCrypto_bd5a034af96bcba6:function(e){let n=g(e).msCrypto;return u(n)},__wbg_new_0b303268aa395a38:function(){let e=new Array;return u(e)},__wbg_new_189262ff31890c23:function(){return I(function(){let e=new Headers;return u(e)},arguments)},__wbg_new_20b778a4c5c691c3:function(){let e=new Object;return u(e)},__wbg_new_227d7c05414eb861:function(){let e=new Error;return u(e)},__wbg_new_24739629d416f982:function(){return I(function(){let e=new AbortController;return u(e)},arguments)},__wbg_new_5fae30e6b23db8df:function(e,n){let _=new Error(C(e,n));return u(_)},__wbg_new_883c0db065f06efd:function(){return u(new Map)},__wbg_new_a3e5112401a82338:function(){return I(function(e,n){let _=new WebSocket(C(e,n));return u(_)},arguments)},__wbg_new_b06772b280cc6e52:function(e){let n=new Uint8Array(g(e));return u(n)},__wbg_new_from_slice_bb2d1778c0b87eb1:function(e,n){let _=new Uint8Array(S(e,n));return u(_)},__wbg_new_typed_90c3f6c29ba36d19:function(e,n){try{var _={a:e,b:n},r=(s,a)=>{let w=_.a;_.a=0;try{return xt(w,_.b,s,a)}finally{_.a=w;}};let o=new Promise(r);return u(o)}finally{_.a=0;}},__wbg_new_with_byte_offset_and_length_9e1e664fe1a5d385:function(e,n,_){let r=new Uint8Array(g(e),n>>>0,_>>>0);return u(r)},__wbg_new_with_event_init_dict_bd850674488710b1:function(){return I(function(e,n,_){let r=new CustomEvent(C(e,n),g(_));return u(r)},arguments)},__wbg_new_with_into_underlying_sink_2596343f9b6c8e58:function(e){let n=new WritableStream(L.__wrap(e));return u(n)},__wbg_new_with_into_underlying_source_fd904252f385f59c:function(e,n){let _=new ReadableStream(U.__wrap(e),p(n));return u(_)},__wbg_new_with_length_4b57a7a5dc67221c:function(e){let n=new Uint8Array(e>>>0);return u(n)},__wbg_new_with_str_and_init_df876572184fe639:function(){return I(function(e,n,_){let r=new Request(C(e,n),g(_));return u(r)},arguments)},__wbg_new_with_str_sequence_505a4829cc247e79:function(){return I(function(e,n,_){let r=new WebSocket(C(e,n),g(_));return u(r)},arguments)},__wbg_next_8cb028b6ba50743f:function(){return I(function(e){let n=g(e).next();return u(n)},arguments)},__wbg_next_cfd0b146c9538df8:function(e){let n=g(e).next;return u(n)},__wbg_node_84ea875411254db1:function(e){let n=g(e).node;return u(n)},__wbg_now_bce4dc999095ea77:function(){return Date.now()},__wbg_now_e7c6795a7f81e10f:function(e){return g(e).now()},__wbg_parse_a5c06e19bc1187fd:function(e,n){return Date.parse(C(e,n))},__wbg_peerunistream_new:function(e){let n=X.__wrap(e);return u(n)},__wbg_performance_3fcf6e32a7e1ed0a:function(e){let n=g(e).performance;return u(n)},__wbg_process_44c7a14e11e9f69e:function(e){let n=g(e).process;return u(n)},__wbg_protocol_28aaef5ea42981d6:function(e,n){let _=g(n).protocol,r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg_prototypesetcall_956c7493c68e29b4:function(e,n,_){Uint8Array.prototype.set.call(S(e,n),g(_));},__wbg_push_ceb8ef046afb2041:function(e,n){return g(e).push(g(n))},__wbg_queueMicrotask_4698f900840e3286:function(e){queueMicrotask(g(e));},__wbg_queueMicrotask_477a5533c7100338:function(e){let n=g(e).queueMicrotask;return u(n)},__wbg_randomFillSync_6c25eac9869eb53c:function(){return I(function(e,n){g(e).randomFillSync(p(n));},arguments)},__wbg_read_8426c146431f2905:function(e){let n=g(e).read();return u(n)},__wbg_readyState_25243ad6ce649774:function(e){return g(e).readyState},__wbg_reason_4ec455bac79b33ce:function(e,n){let _=g(n).reason,r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg_releaseLock_188846ef719acb10:function(e){g(e).releaseLock();},__wbg_removeEventListener_016c1d24523b4730:function(){return I(function(e,n,_,r){g(e).removeEventListener(C(n,_),g(r));},arguments)},__wbg_require_b4edbdcf3e2a1ef0:function(){return I(function(){let e=module.require;return u(e)},arguments)},__wbg_resolve_0183de2e8c6b1d54:function(e){let n=Promise.resolve(g(e));return u(n)},__wbg_respond_3cdb4cf32683fd79:function(){return I(function(e,n){g(e).respond(n>>>0);},arguments)},__wbg_send_77521d09456dd693:function(){return I(function(e,n,_){g(e).send(S(n,_));},arguments)},__wbg_send_99d049cae69c53cc:function(){return I(function(e,n,_){g(e).send(S(n,_));},arguments)},__wbg_send_bac9d3dc4f21ef28:function(){return I(function(e,n,_){g(e).send(C(n,_));},arguments)},__wbg_setTimeout_3a808dd861dd3c12:function(e,n){let _=setTimeout(g(e),n);return u(_)},__wbg_setTimeout_6613a51400c1bf9f:function(){return I(function(e,n,_){let r=g(e).setTimeout(p(n),_);return u(r)},arguments)},__wbg_setTimeout_ef24d2fc3ad97385:function(){return I(function(e,n){let _=setTimeout(g(e),n);return u(_)},arguments)},__wbg_set_5f806304fb633ab3:function(e,n,_){let r=g(e).set(g(n),g(_));return u(r)},__wbg_set_6be42768c690e380:function(e,n,_){g(e)[p(n)]=p(_);},__wbg_set_86698c227e5b9dad:function(e,n,_){g(e).set(S(n,_));},__wbg_set_a6ba3ac0e634b822:function(){return I(function(e,n,_){return Reflect.set(g(e),g(n),g(_))},arguments)},__wbg_set_binaryType_07905e4563fcd9b2:function(e,n){g(e).binaryType=kt[n];},__wbg_set_binaryType_8c2dd2cf1cfc2e28:function(e,n){g(e).binaryType=mt[n];},__wbg_set_body_d1153b16a2b95ca1:function(e,n){g(e).body=g(n);},__wbg_set_bufferedAmountLowThreshold_8969a2db2c745257:function(e,n){g(e).bufferedAmountLowThreshold=n>>>0;},__wbg_set_cache_5a01a8b5e6ca6cf2:function(e,n){g(e).cache=yt[n];},__wbg_set_credentials_e9120ed88b1fc0b8:function(e,n){g(e).credentials=vt[n];},__wbg_set_da33c120a6584674:function(e,n,_){g(e)[n>>>0]=p(_);},__wbg_set_detail_c7af5edea934390b:function(e,n){g(e).detail=g(n);},__wbg_set_handle_event_6147c38b782c7b42:function(e,n){g(e).handleEvent=g(n);},__wbg_set_headers_877ed41890d28af2:function(e,n){g(e).headers=g(n);},__wbg_set_high_water_mark_77da20c49668427d:function(e,n){g(e).highWaterMark=n;},__wbg_set_method_b4ede299b2064f37:function(e,n,_){g(e).method=C(n,_);},__wbg_set_mode_d6c2e1991aa963c6:function(e,n){g(e).mode=It[n];},__wbg_set_onbufferedamountlow_b695487bdd219f98:function(e,n){g(e).onbufferedamountlow=g(n);},__wbg_set_onclose_9cb5c3372e16c192:function(e,n){g(e).onclose=g(n);},__wbg_set_onclose_f8bec1cbeb64aa93:function(e,n){g(e).onclose=g(n);},__wbg_set_onerror_190fe67e911ebf28:function(e,n){g(e).onerror=g(n);},__wbg_set_onmessage_4d57c4ddab951294:function(e,n){g(e).onmessage=g(n);},__wbg_set_onmessage_96337495f0bfb796:function(e,n){g(e).onmessage=g(n);},__wbg_set_onopen_3e2bf6b11d434c2d:function(e,n){g(e).onopen=g(n);},__wbg_set_signal_9022b5aa06a6ce5b:function(e,n){g(e).signal=g(n);},__wbg_signal_41dd1a8913cd0b7d:function(e){let n=g(e).signal;return u(n)},__wbg_stack_3b0d974bbf31e44f:function(e,n){let _=g(n).stack,r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg_static_accessor_GLOBAL_60a4124bab7dcc9a:function(){let e=typeof global>"u"?null:global;return x(e)?0:u(e)},__wbg_static_accessor_GLOBAL_THIS_95ca6460658b5d13:function(){let e=typeof globalThis>"u"?null:globalThis;return x(e)?0:u(e)},__wbg_static_accessor_SELF_4c95f759a91e9aae:function(){let e=typeof self>"u"?null:self;return x(e)?0:u(e)},__wbg_static_accessor_WINDOW_44b435597f9e9ee7:function(){let e=typeof window>"u"?null:window;return x(e)?0:u(e)},__wbg_status_9e6505cfa3e73a7c:function(e){return g(e).status},__wbg_subarray_42216645a367cd7a:function(e,n,_){let r=g(e).subarray(n>>>0,_>>>0);return u(r)},__wbg_then_254bab9b266a77a5:function(e,n,_){let r=g(e).then(g(n),g(_));return u(r)},__wbg_then_3ea18602c6a5123b:function(e,n){let _=g(e).then(g(n));return u(_)},__wbg_url_72c67c175685a054:function(e,n){let _=g(n).url,r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg_url_d0b8042af0d1bbba:function(e,n){let _=g(n).url,r=c(_,t.__wbindgen_export,t.__wbindgen_export2),o=i;b().setInt32(e+4,o,true),b().setInt32(e+0,r,true);},__wbg_value_3d3defe09fb1ffca:function(e){let n=g(e).value;return u(n)},__wbg_versions_276b2795b1c6a219:function(e){let n=g(e).versions;return u(n)},__wbg_view_15fa5865c6b336e3:function(e){let n=g(e).view;return x(n)?0:u(n)},__wbg_warn_633bacc13ba7e6c3:function(e){console.warn(g(e));},__wbg_wasClean_f17429d064911939:function(e){return g(e).wasClean},__wbindgen_cast_0000000000000001:function(e,n){let _=B(e,n,dt);return u(_)},__wbindgen_cast_0000000000000002:function(e,n){let _=B(e,n,ft);return u(_)},__wbindgen_cast_0000000000000003:function(e,n){let _=B(e,n,wt);return u(_)},__wbindgen_cast_0000000000000004:function(e,n){let _=B(e,n,ut);return u(_)},__wbindgen_cast_0000000000000005:function(e,n){let _=B(e,n,lt);return u(_)},__wbindgen_cast_0000000000000006:function(e,n){let _=B(e,n,at);return u(_)},__wbindgen_cast_0000000000000007:function(e,n){let _=B(e,n,pt);return u(_)},__wbindgen_cast_0000000000000008:function(e,n){let _=Ft(e,n,gt);return u(_)},__wbindgen_cast_0000000000000009:function(e,n){let _=B(e,n,bt);return u(_)},__wbindgen_cast_000000000000000a:function(e){return u(e)},__wbindgen_cast_000000000000000b:function(e){return u(e)},__wbindgen_cast_000000000000000c:function(e,n){let _=S(e,n);return u(_)},__wbindgen_cast_000000000000000d:function(e,n){let _=C(e,n);return u(_)},__wbindgen_cast_000000000000000e:function(e){let n=BigInt.asUintN(64,e);return u(n)},__wbindgen_cast_000000000000000f:function(e,n){var _=S(e,n).slice();return t.__wbindgen_export4(e,n*1,1),u(_)},__wbindgen_object_clone_ref:function(e){let n=g(e);return u(n)},__wbindgen_object_drop_ref:function(e){p(e);}}}}function at(d,e){t.__wasm_bindgen_func_elem_30539(d,e);}function pt(d,e){t.__wasm_bindgen_func_elem_31673(d,e);}function gt(d,e){t.__wasm_bindgen_func_elem_31745(d,e);}function bt(d,e){t.__wasm_bindgen_func_elem_39810(d,e);}function dt(d,e,n){t.__wasm_bindgen_func_elem_30741(d,e,u(n));}function wt(d,e,n){t.__wasm_bindgen_func_elem_28100(d,e,u(n));}function ut(d,e,n){t.__wasm_bindgen_func_elem_6714(d,e,u(n));}function lt(d,e,n){t.__wasm_bindgen_func_elem_32453(d,e,u(n));}function ft(d,e,n){try{let o=t.__wbindgen_add_to_stack_pointer(-16);t.__wasm_bindgen_func_elem_41318(o,d,e,u(n));var _=b().getInt32(o+0,!0),r=b().getInt32(o+4,!0);if(r)throw p(_)}finally{t.__wbindgen_add_to_stack_pointer(16);}}function xt(d,e,n,_){t.__wasm_bindgen_func_elem_41320(d,e,u(n),u(_));}var mt=["blob","arraybuffer"],ht=["bytes"],yt=["default","no-store","reload","no-cache","force-cache","only-if-cached"],vt=["omit","same-origin","include"],It=["same-origin","no-cors","cors","navigate"],kt=["arraybuffer","blob"],tt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_bistream_free(d,1)),Rt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_intounderlyingbytesource_free(d,1)),et=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_intounderlyingsink_free(d,1)),nt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_intounderlyingsource_free(d,1)),_t=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_peerunistream_free(d,1)),rt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_wasmclient_free(d,1)),ot=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbg_wasmpeerdatagrampolicy_free(d,1));function u(d){D===E.length&&E.push(E.length+1);let e=D;return D=E[e],E[e]=d,e}var J=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(d=>t.__wbindgen_export5(d.a,d.b));function Z(d){let e=typeof d;if(e=="number"||e=="boolean"||d==null)return `${d}`;if(e=="string")return `"${d}"`;if(e=="symbol"){let r=d.description;return r==null?"Symbol":`Symbol(${r})`}if(e=="function"){let r=d.name;return typeof r=="string"&&r.length>0?`Function(${r})`:"Function"}if(Array.isArray(d)){let r=d.length,o="[";r>0&&(o+=Z(d[0]));for(let s=1;s<r;s++)o+=", "+Z(d[s]);return o+="]",o}let n=/\[object ([^\]]+)\]/.exec(toString.call(d)),_;if(n&&n.length>1)_=n[1];else return toString.call(d);if(_=="Object")try{return "Object("+JSON.stringify(d)+")"}catch{return "Object"}return d instanceof Error?`${d.name}: ${d.message}
|
|
2
2
|
${d.stack}`:_}function At(d){d<1028||(E[d]=D,D=d);}function Ct(d,e){d=d>>>0;let n=b(),_=[];for(let r=d;r<d+4*e;r+=4)_.push(p(n.getUint32(r,true)));return _}function S(d,e){return d=d>>>0,W().subarray(d/1,d/1+e)}var j=null;function b(){return (j===null||j.buffer.detached===true||j.buffer.detached===void 0&&j.buffer!==t.memory.buffer)&&(j=new DataView(t.memory.buffer)),j}function C(d,e){return Pt(d>>>0,e)}var q=null;function W(){return (q===null||q.byteLength===0)&&(q=new Uint8Array(t.memory.buffer)),q}function g(d){return E[d]}function I(d,e){try{return d.apply(this,e)}catch(n){t.__wbindgen_export3(u(n));}}var E=new Array(1024).fill(void 0);E.push(void 0,null,true,false);var D=E.length;function x(d){return d==null}function Ft(d,e,n){let _={a:d,b:e,cnt:1},r=(...o)=>{_.cnt++;try{return n(_.a,_.b,...o)}finally{r._wbg_cb_unref();}};return r._wbg_cb_unref=()=>{--_.cnt===0&&(t.__wbindgen_export5(_.a,_.b),_.a=0,J.unregister(_));},J.register(r,_,_),r}function B(d,e,n){let _={a:d,b:e,cnt:1},r=(...o)=>{_.cnt++;let s=_.a;_.a=0;try{return n(s,_.b,...o)}finally{_.a=s,r._wbg_cb_unref();}};return r._wbg_cb_unref=()=>{--_.cnt===0&&(t.__wbindgen_export5(_.a,_.b),_.a=0,J.unregister(_));},J.register(r,_,_),r}function k(d,e){let n=e(d.length*1,1)>>>0;return W().set(d,n/1),i=d.length,n}function it(d,e){let n=e(d.length*4,4)>>>0,_=b();for(let r=0;r<d.length;r++)_.setUint32(n+4*r,u(d[r]),true);return i=d.length,n}function c(d,e,n){if(n===void 0){let a=z.encode(d),w=e(a.length,1)>>>0;return W().subarray(w,w+a.length).set(a),i=a.length,w}let _=d.length,r=e(_,1)>>>0,o=W(),s=0;for(;s<_;s++){let a=d.charCodeAt(s);if(a>127)break;o[r+s]=a;}if(s!==_){s!==0&&(d=d.slice(s)),r=n(r,_,_=s+d.length*3,1)>>>0;let a=W().subarray(r+s,r+_),w=z.encodeInto(d,a);s+=w.written,r=n(r,_,s,1)>>>0;}return i=s,r}function p(d){let e=g(d);return At(d),e}var H=new TextDecoder("utf-8",{ignoreBOM:true,fatal:true});H.decode();var St=2146435072,Y=0;function Pt(d,e){return Y+=e,Y>=St&&(H=new TextDecoder("utf-8",{ignoreBOM:true,fatal:true}),H.decode(),Y=e),H.decode(W().subarray(d,d+e))}var z=new TextEncoder;"encodeInto"in z||(z.encodeInto=function(d,e){let n=z.encode(d);return e.set(n),{read:d.length,written:n.length}});var i=0,t;function ct(d,e){return t=d.exports,j=null,q=null,t.__wbindgen_start(),t}async function Et(d,e){if(typeof Response=="function"&&d instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(d,e)}catch(r){if(d.ok&&n(d.type)&&d.headers.get("Content-Type")!=="application/wasm")console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",r);else throw r}let _=await d.arrayBuffer();return await WebAssembly.instantiate(_,e)}else {let _=await WebAssembly.instantiate(d,e);return _ instanceof WebAssembly.Instance?{instance:_,module:d}:_}function n(_){switch(_){case "basic":case "cors":case "default":return true}return false}}function Tt(d){if(t!==void 0)return t;d!==void 0&&(Object.getPrototypeOf(d)===Object.prototype?{module:d}=d:console.warn("using deprecated parameters for `initSync()`; pass a single object instead"));let e=st();d instanceof WebAssembly.Module||(d=new WebAssembly.Module(d));let n=new WebAssembly.Instance(d,e);return ct(n)}async function Nt(d){if(t!==void 0)return t;d!==void 0&&(Object.getPrototypeOf(d)===Object.prototype?{module_or_path:d}=d:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),d===void 0&&(d=new URL("openrtc_bg.wasm",import.meta.url));let e=st();(typeof d=="string"||typeof Request=="function"&&d instanceof Request||typeof URL=="function"&&d instanceof URL)&&(d=fetch(d));let{instance:n,module:_}=await Et(await d,e);return ct(n)}export{G as BiStream,$ as IntoUnderlyingByteSource,L as IntoUnderlyingSink,U as IntoUnderlyingSource,X as PeerUniStream,K as WasmClient,V as WasmPeerDatagramPolicy,Nt as default,Tt as initSync,Bt as start};
|
package/dist/openrtc_bg.wasm
CHANGED
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import {b}from'../chunk-
|
|
1
|
+
import {b}from'../chunk-TOKXRZSS.js';import'../chunk-AYHD4X2R.js';import {a}from'../chunk-DZR5WWVW.js';import'../chunk-DMCUS3TY.js';import'../chunk-XMYBBLYK.js';import'../chunk-OT7IPLZE.js';import'../chunk-OWKAJPOI.js';import'../chunk-COXQYBTI.js';import'../chunk-L2ZZXECX.js';import'../chunk-CCCYE3XN.js';import'../chunk-JPBW67B3.js';import'../chunk-F5ORG763.js';import'../chunk-WALOTASO.js';import'../chunk-2GX6GB6L.js';var n=class extends a{constructor(e){super(new b(e));}setWasmClient(e){this.unwrap().setWasmClient(e);}};export{n as WasmRuntimeAdapter};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import {a as a$2}from'../chunk-FXVEX4SB.js';import {s}from'../chunk-AZHDR5G7.js';import'../chunk-BGWJHPBC.js';import'../chunk-DZR5WWVW.js';import'../chunk-DMCUS3TY.js';import {a as a$1}from'../chunk-XMYBBLYK.js';import'../chunk-TYZS5LXQ.js';import'../chunk-OT7IPLZE.js';import'../chunk-OWKAJPOI.js';import {a}from'../chunk-LJBVXWWV.js';import'../chunk-COXQYBTI.js';import'../chunk-72NEEJQG.js';import'../chunk-L2ZZXECX.js';import'../chunk-2QE5HAPB.js';import'../chunk-CCCYE3XN.js';import'../chunk-JPBW67B3.js';import'../chunk-F5ORG763.js';import'../chunk-WALOTASO.js';import'../chunk-2GX6GB6L.js';async function l(e){let t=a$1(e),{WasmBridge:o}=await import('../WasmBridge-
|
|
1
|
+
import {a as a$2}from'../chunk-FXVEX4SB.js';import {s}from'../chunk-AZHDR5G7.js';import'../chunk-BGWJHPBC.js';import'../chunk-DZR5WWVW.js';import'../chunk-DMCUS3TY.js';import {a as a$1}from'../chunk-XMYBBLYK.js';import'../chunk-TYZS5LXQ.js';import'../chunk-OT7IPLZE.js';import'../chunk-OWKAJPOI.js';import {a}from'../chunk-LJBVXWWV.js';import'../chunk-COXQYBTI.js';import'../chunk-72NEEJQG.js';import'../chunk-L2ZZXECX.js';import'../chunk-2QE5HAPB.js';import'../chunk-CCCYE3XN.js';import'../chunk-JPBW67B3.js';import'../chunk-F5ORG763.js';import'../chunk-WALOTASO.js';import'../chunk-2GX6GB6L.js';async function l(e){let t=a$1(e),{WasmBridge:o}=await import('../WasmBridge-3TYL6SE7.js');return a$2(t,new o(t))}function y(e,t,o=new a){let m=a$1(e);return a$2(m,new s({...m,bridge:t,projectionBroker:o}))}export{y as createIpcClient,l as createWasmClient};
|
package/dist/testing.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import {a}from'./chunk-IJXTRVQS.js';import {a as a$1}from'./chunk-IAYQJZQQ.js';import {a as a$2,d,c}from'./chunk-L2ZZXECX.js';import'./chunk-GMPEZXPD.js';import {i}from'./chunk-TRUMV4SI.js';import'./chunk-FKAQDDUM.js';import'./chunk-ZA44REGI.js';import'./chunk-2QE5HAPB.js';import'./chunk-CCCYE3XN.js';import'./chunk-JPBW67B3.js';import'./chunk-F5ORG763.js';import'./chunk-WALOTASO.js';import'./chunk-2GX6GB6L.js';function v(i,o,e){let n=s=>{let t=new URL(s);return t.protocol==="http:"&&["localhost","127.0.0.1","[::1]"].includes(t.hostname)&&Number(t.port)>0&&t.pathname==="/"&&!t.username&&!t.password&&!t.search&&!t.hash};if(i.apiKey!=="pk_test_0000000000000000000000000000000000000000"||!n(o.controlPlane)||!n(o.gateway)||!/^[A-Za-z0-9_-]{1,64}$/.test(e.keyNamespace))throw new Error("Local broadcast testing requires the disposable loopback service lane")}function b(i){let o=i.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(i.length/4)*4,"=");return Uint8Array.from(atob(o),e=>e.charCodeAt(0))}function A(i,o,e){return new a(i,o,a$1(e))}function R(i$1,o,e={}){if(e.localBroadcast&&v(i$1,o,e.localBroadcast),e.initialTicketLifetimeMs!==void 0){let t=(p,c)=>{let a=new URL(p);return a.protocol===c&&["127.0.0.1","[::1]"].includes(a.hostname)&&Number(a.port)>0&&a.pathname==="/"&&!a.username&&!a.password&&!a.search&&!a.hash};if(e.initialTicketLifetimeMs!==9e4||i$1.apiKey!=="pk_test_0000000000000000000000000000000000000000"||!t(o.controlPlane,"http:")||!t(o.gateway,"http:")||!e.irohTestRelayUrl||!t(e.irohTestRelayUrl,"https:"))throw new Error("Short initial tickets require the disposable local service lane")}let n=e.localBroadcast,s=n?a$1(n.keyNamespace):void 0;return i(i$1,{endpoints:o,testingAllowInsecureLoopback:true,platform:"web",...s?{deviceKeyProvider:s}:{},...n&&s?{broadcastHostFactory:async t=>{let[{BrowserManagedBroadcastHost:p},{loadBrowserWasmRuntimeModule:c}]=await Promise.all([import('./BrowserManagedBroadcastHost-GLSYJIOR.js'),import('./WasmBridge-
|
|
1
|
+
import {a}from'./chunk-IJXTRVQS.js';import {a as a$1}from'./chunk-IAYQJZQQ.js';import {a as a$2,d,c}from'./chunk-L2ZZXECX.js';import'./chunk-GMPEZXPD.js';import {i}from'./chunk-TRUMV4SI.js';import'./chunk-FKAQDDUM.js';import'./chunk-ZA44REGI.js';import'./chunk-2QE5HAPB.js';import'./chunk-CCCYE3XN.js';import'./chunk-JPBW67B3.js';import'./chunk-F5ORG763.js';import'./chunk-WALOTASO.js';import'./chunk-2GX6GB6L.js';function v(i,o,e){let n=s=>{let t=new URL(s);return t.protocol==="http:"&&["localhost","127.0.0.1","[::1]"].includes(t.hostname)&&Number(t.port)>0&&t.pathname==="/"&&!t.username&&!t.password&&!t.search&&!t.hash};if(i.apiKey!=="pk_test_0000000000000000000000000000000000000000"||!n(o.controlPlane)||!n(o.gateway)||!/^[A-Za-z0-9_-]{1,64}$/.test(e.keyNamespace))throw new Error("Local broadcast testing requires the disposable loopback service lane")}function b(i){let o=i.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(i.length/4)*4,"=");return Uint8Array.from(atob(o),e=>e.charCodeAt(0))}function A(i,o,e){return new a(i,o,a$1(e))}function R(i$1,o,e={}){if(e.localBroadcast&&v(i$1,o,e.localBroadcast),e.initialTicketLifetimeMs!==void 0){let t=(p,c)=>{let a=new URL(p);return a.protocol===c&&["127.0.0.1","[::1]"].includes(a.hostname)&&Number(a.port)>0&&a.pathname==="/"&&!a.username&&!a.password&&!a.search&&!a.hash};if(e.initialTicketLifetimeMs!==9e4||i$1.apiKey!=="pk_test_0000000000000000000000000000000000000000"||!t(o.controlPlane,"http:")||!t(o.gateway,"http:")||!e.irohTestRelayUrl||!t(e.irohTestRelayUrl,"https:"))throw new Error("Short initial tickets require the disposable local service lane")}let n=e.localBroadcast,s=n?a$1(n.keyNamespace):void 0;return i(i$1,{endpoints:o,testingAllowInsecureLoopback:true,platform:"web",...s?{deviceKeyProvider:s}:{},...n&&s?{broadcastHostFactory:async t=>{let[{BrowserManagedBroadcastHost:p},{loadBrowserWasmRuntimeModule:c}]=await Promise.all([import('./BrowserManagedBroadcastHost-GLSYJIOR.js'),import('./WasmBridge-3TYL6SE7.js')]),a=c().then(async r=>(await r.initWasm(),r.start(),new r.WasmClient(t.apiKey))),y=await s.getOrCreate(`app_${t.apiKey.slice(-16)}`);return new p({resolve:async(r,l)=>({token:r,...await n.resolve(r,l),signBindingChallenge:async m=>b(await y.sign(m))}),loadWasm:()=>a})}}:{},...e.deviceId?{deviceIdProvider:async()=>e.deviceId}:{},...e.irohTestRelayUrl?{irohTestRelayUrl:e.irohTestRelayUrl}:{},runtimeFactory:async t=>{let{createWasmClient:p}=await import('./runtime/factories.js'),c$1=await p(t);if(e.initialTicketLifetimeMs!==void 0){let a=c$1.runtime,y=a.getTicketWithToken.bind(a);a.getTicketWithToken=async(r,l=0)=>{if(a.getTicketWithToken=y,!r.startsWith("v2:room:"))throw new Error("Short initial ticket requires room scope");let{irohTicket:m,tokenSuffix:u}=a$2(await y(r,l)),d$1=u&&d(m,u);if(!d$1||!d$1.t||d$1.s!==r||d$1.m!==l)throw new Error("Invalid initial service ticket");let f=Date.now()+9e4;return await a.registerToken({token:d$1.t,scope:r,maxConnections:l,expiresAtMs:f}),c(m,d$1.t,r,l,f)};}return c$1}})}export{R as OpenRTC,A as controlPlane};
|
|
Binary file
|
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
"platform": "darwin",
|
|
5
5
|
"arch": "arm64",
|
|
6
6
|
"rustTarget": "aarch64-apple-darwin",
|
|
7
|
-
"sourceCommit": "
|
|
8
|
-
"sourceDigest": "
|
|
9
|
-
"binarySha256": "
|
|
7
|
+
"sourceCommit": "73b8c7f0abb8a42571c5977244d859fd65f3fedc",
|
|
8
|
+
"sourceDigest": "20bfb1c9b57c3ee614cea37a5ac26597e9e23a5644002a083eb8e0d38ae4e1e8",
|
|
9
|
+
"binarySha256": "dea4f9b67a6511f833824edc0fb5fa50027bcb200c8217398e45381e6e12e543",
|
|
10
10
|
"protocol": {
|
|
11
11
|
"lifecycleOwner": "rust-peer-session",
|
|
12
12
|
"maxApplicationPayloadBytes": 65536,
|
|
@@ -16,5 +16,5 @@
|
|
|
16
16
|
},
|
|
17
17
|
"signingKeySha256": "0391c617f3df12611b419e129cace36fa792e73da03271649cbed9e9f9f155ef",
|
|
18
18
|
"signatureAlgorithm": "ed25519",
|
|
19
|
-
"signature": "
|
|
19
|
+
"signature": "/5cpKcweowCtfpLLJ24C5lpSGPfLadaITrGeUsqpHimEcjiCJGrB0xveobsmZQTvqnBGTavzFFncWrt2n3geAg=="
|
|
20
20
|
}
|
|
Binary file
|
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
"platform": "darwin",
|
|
5
5
|
"arch": "x64",
|
|
6
6
|
"rustTarget": "x86_64-apple-darwin",
|
|
7
|
-
"sourceCommit": "
|
|
8
|
-
"sourceDigest": "
|
|
9
|
-
"binarySha256": "
|
|
7
|
+
"sourceCommit": "73b8c7f0abb8a42571c5977244d859fd65f3fedc",
|
|
8
|
+
"sourceDigest": "20bfb1c9b57c3ee614cea37a5ac26597e9e23a5644002a083eb8e0d38ae4e1e8",
|
|
9
|
+
"binarySha256": "3e0a0aebdb94a6d20f7383388f19f48b52010a1937b657c4fdafab0b6ead25ed",
|
|
10
10
|
"protocol": {
|
|
11
11
|
"lifecycleOwner": "rust-peer-session",
|
|
12
12
|
"maxApplicationPayloadBytes": 65536,
|
|
@@ -16,5 +16,5 @@
|
|
|
16
16
|
},
|
|
17
17
|
"signingKeySha256": "0391c617f3df12611b419e129cace36fa792e73da03271649cbed9e9f9f155ef",
|
|
18
18
|
"signatureAlgorithm": "ed25519",
|
|
19
|
-
"signature": "+
|
|
19
|
+
"signature": "GN/6XPUNXiktCHdxCSqMPUWmbmHbnuYripxGWuB6pPrgyS6ofBIrlhaLWUXKt+IBx4nOqoX0WAYkJeW+bFC2Bw=="
|
|
20
20
|
}
|
|
Binary file
|
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
"platform": "linux",
|
|
5
5
|
"arch": "x64",
|
|
6
6
|
"rustTarget": "x86_64-unknown-linux-gnu",
|
|
7
|
-
"sourceCommit": "
|
|
8
|
-
"sourceDigest": "
|
|
9
|
-
"binarySha256": "
|
|
7
|
+
"sourceCommit": "989a14d8b55d83ace8e1e1fa84aa9390e2af0e65",
|
|
8
|
+
"sourceDigest": "20bfb1c9b57c3ee614cea37a5ac26597e9e23a5644002a083eb8e0d38ae4e1e8",
|
|
9
|
+
"binarySha256": "4da7a063dcd6884ec3a9219ef1b3598bc77e9cb904efb803ff4492fe1f758fcd",
|
|
10
10
|
"protocol": {
|
|
11
11
|
"lifecycleOwner": "rust-peer-session",
|
|
12
12
|
"maxApplicationPayloadBytes": 65536,
|
|
@@ -16,5 +16,5 @@
|
|
|
16
16
|
},
|
|
17
17
|
"signingKeySha256": "0391c617f3df12611b419e129cace36fa792e73da03271649cbed9e9f9f155ef",
|
|
18
18
|
"signatureAlgorithm": "ed25519",
|
|
19
|
-
"signature": "
|
|
19
|
+
"signature": "PYGsG/rY7zyvyHxhQXKxcTXUJHUlxjRzMRMYh0zHOEP4YpeigSYI4e6akh+rmUkbW01PisqIEHT96fuoY19CCA=="
|
|
20
20
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "openrtc",
|
|
3
|
-
"version": "2.9.
|
|
3
|
+
"version": "2.9.6",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -110,7 +110,8 @@
|
|
|
110
110
|
"test:acceptance:native:running": "vitest run tests/emulator/RealOpenRtcAcceptance.native-wasm.emulator.test.ts --no-file-parallelism --maxWorkers=1 --maxConcurrency=1",
|
|
111
111
|
"test:watch": "vitest",
|
|
112
112
|
"coverage": "vitest run --coverage",
|
|
113
|
-
"prepublishOnly": "pnpm run release:prepare"
|
|
113
|
+
"prepublishOnly": "pnpm run release:prepare",
|
|
114
|
+
"release:build:artifacts": "pnpm run build:wasm && pnpm run build:clean"
|
|
114
115
|
},
|
|
115
116
|
"dependencies": {
|
|
116
117
|
"@moq/net": "0.1.9",
|