@urun-sh/core 0.2.8 → 0.2.9

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/internal.mjs CHANGED
@@ -1,2 +1,2 @@
1
1
  import { createRequire as __urunCreateRequire } from 'node:module'; const require = globalThis.require ?? __urunCreateRequire(import.meta.url);
2
- import{A as f,B as x,C,D as l,a as e,b as r,q as o,r as t,s as a,u as n,v as p,w as s,x as m,y as c,z as i}from"./chunk-C2B5BLQW.mjs";export{e as ChannelMultiplexer,c as DOC_SYNC_WIRE_CONTRACT_VERSION,r as DeferredChannelMultiplexer,x as DeferredDocConnector,n as LoopbackStreamData,C as SessionDocumentImpl,m as TransportSession,l as createPresence,f as createWebsocketDocConnector,i as deriveYjsServerUrl,a as ensureNodeWebRTC,o as isNodeRuntime,t as nodeMediasoupHandlerName,s as streamDataLabel,p as transportStreamData};
2
+ import{A as f,B as x,C,D as l,a as e,b as r,q as o,r as t,s as a,u as n,v as p,w as s,x as m,y as c,z as i}from"./chunk-7DY3HQ7G.mjs";export{e as ChannelMultiplexer,c as DOC_SYNC_WIRE_CONTRACT_VERSION,r as DeferredChannelMultiplexer,x as DeferredDocConnector,n as LoopbackStreamData,C as SessionDocumentImpl,m as TransportSession,l as createPresence,f as createWebsocketDocConnector,i as deriveYjsServerUrl,a as ensureNodeWebRTC,o as isNodeRuntime,t as nodeMediasoupHandlerName,s as streamDataLabel,p as transportStreamData};
@@ -97,7 +97,7 @@ declare function createPresence(awareness: Awareness): Presence;
97
97
 
98
98
  type TransportState = 'connecting' | 'connected' | 'reconnecting' | 'renegotiating' | 'disconnected' | 'failed';
99
99
 
100
- type SessionPhaseName = 'idle' | 'queued' | 'unavailable' | 'provisioning' | 'connecting' | 'live' | 'error' | 'ended';
100
+ type SessionPhaseName = 'idle' | 'queued' | 'unavailable' | 'provisioning' | 'connecting' | 'live' | 'error' | 'ended' | 'expired';
101
101
 
102
102
  interface RuntimeAvailability {
103
103
  state: 'unavailable' | 'starting' | 'busy';
@@ -105,7 +105,7 @@ interface RuntimeAvailability {
105
105
  reason?: string;
106
106
  }
107
107
 
108
- type SessionFailureKind = 'create-failed' | 'never-live' | 'transport-failed' | 'media-permission' | 'ended' | 'runtime-failed';
108
+ type SessionFailureKind = 'create-failed' | 'never-live' | 'transport-failed' | 'media-permission' | 'ended' | 'runtime-failed' | 'expired';
109
109
 
110
110
  interface SessionPhaseError {
111
111
 
@@ -135,6 +135,8 @@ interface SessionPhase {
135
135
 
136
136
  sessionId?: string;
137
137
 
138
+ endsAt?: Date;
139
+
138
140
  error?: SessionPhaseError;
139
141
  }
140
142
 
@@ -159,6 +161,8 @@ interface SessionStatus {
159
161
 
160
162
  runtime?: RuntimeAvailability;
161
163
 
164
+ endsAt?: Date;
165
+
162
166
  wakingSince?: number;
163
167
 
164
168
  error?: SessionPhaseError;
@@ -364,6 +368,8 @@ interface Session {
364
368
 
365
369
  readonly phase: SessionPhase;
366
370
 
371
+ readonly endsAt: Date | null;
372
+
367
373
  readonly status: SessionStatus;
368
374
 
369
375
  stream(name: string): SessionStream;
@@ -561,6 +567,8 @@ interface TransportConnection {
561
567
  jwt?: string;
562
568
 
563
569
  iceServers?: RTCIceServer[];
570
+
571
+ endsAt?: Date | null;
564
572
  }
565
573
  declare function streamDataLabel(name: string): string;
566
574
  interface TransportEvents {
@@ -606,6 +614,8 @@ declare class TransportSession {
606
614
  private _consumers;
607
615
  private _audioProducer;
608
616
  private _videoProducer;
617
+ private _publishedAudio;
618
+ private _publishedVideo;
609
619
  private _pendingProduce;
610
620
  private _multiplexer;
611
621
  private _reconnectAttempts;
@@ -628,6 +638,8 @@ declare class TransportSession {
628
638
 
629
639
  private _lastServerStatus;
630
640
 
641
+ private _endsAt;
642
+
631
643
  private _forceResolveOnNextConnect;
632
644
 
633
645
  private _connectStartedAt;
@@ -676,6 +688,12 @@ declare class TransportSession {
676
688
  get currentIncarnation(): number;
677
689
  get phase(): SessionPhase;
678
690
 
691
+ get endsAt(): Date | null;
692
+
693
+ setEndsAt(endsAt: Date | null): void;
694
+
695
+ private _pastDeadline;
696
+
679
697
  get status(): SessionStatus;
680
698
  get sessionId(): string | null;
681
699
  get tracks(): Map<string, MediaStreamTrack>;
@@ -756,6 +774,8 @@ declare class TransportSession {
756
774
  private _clearSendIceRestart;
757
775
  private _onCreateSendTransport;
758
776
 
777
+ private _republishPublishedTracks;
778
+
759
779
  private _onConsumeData;
760
780
  private _onConsume;
761
781
 
@@ -788,6 +808,8 @@ declare class TransportSession {
788
808
  private _send;
789
809
  private _setState;
790
810
 
811
+
812
+ private _isTerminalPhase;
791
813
  private _setPhase;
792
814
 
793
815
  reportAdmission(update: {
@@ -97,7 +97,7 @@ declare function createPresence(awareness: Awareness): Presence;
97
97
 
98
98
  type TransportState = 'connecting' | 'connected' | 'reconnecting' | 'renegotiating' | 'disconnected' | 'failed';
99
99
 
100
- type SessionPhaseName = 'idle' | 'queued' | 'unavailable' | 'provisioning' | 'connecting' | 'live' | 'error' | 'ended';
100
+ type SessionPhaseName = 'idle' | 'queued' | 'unavailable' | 'provisioning' | 'connecting' | 'live' | 'error' | 'ended' | 'expired';
101
101
 
102
102
  interface RuntimeAvailability {
103
103
  state: 'unavailable' | 'starting' | 'busy';
@@ -105,7 +105,7 @@ interface RuntimeAvailability {
105
105
  reason?: string;
106
106
  }
107
107
 
108
- type SessionFailureKind = 'create-failed' | 'never-live' | 'transport-failed' | 'media-permission' | 'ended' | 'runtime-failed';
108
+ type SessionFailureKind = 'create-failed' | 'never-live' | 'transport-failed' | 'media-permission' | 'ended' | 'runtime-failed' | 'expired';
109
109
 
110
110
  interface SessionPhaseError {
111
111
 
@@ -135,6 +135,8 @@ interface SessionPhase {
135
135
 
136
136
  sessionId?: string;
137
137
 
138
+ endsAt?: Date;
139
+
138
140
  error?: SessionPhaseError;
139
141
  }
140
142
 
@@ -159,6 +161,8 @@ interface SessionStatus {
159
161
 
160
162
  runtime?: RuntimeAvailability;
161
163
 
164
+ endsAt?: Date;
165
+
162
166
  wakingSince?: number;
163
167
 
164
168
  error?: SessionPhaseError;
@@ -364,6 +368,8 @@ interface Session {
364
368
 
365
369
  readonly phase: SessionPhase;
366
370
 
371
+ readonly endsAt: Date | null;
372
+
367
373
  readonly status: SessionStatus;
368
374
 
369
375
  stream(name: string): SessionStream;
@@ -561,6 +567,8 @@ interface TransportConnection {
561
567
  jwt?: string;
562
568
 
563
569
  iceServers?: RTCIceServer[];
570
+
571
+ endsAt?: Date | null;
564
572
  }
565
573
  declare function streamDataLabel(name: string): string;
566
574
  interface TransportEvents {
@@ -606,6 +614,8 @@ declare class TransportSession {
606
614
  private _consumers;
607
615
  private _audioProducer;
608
616
  private _videoProducer;
617
+ private _publishedAudio;
618
+ private _publishedVideo;
609
619
  private _pendingProduce;
610
620
  private _multiplexer;
611
621
  private _reconnectAttempts;
@@ -628,6 +638,8 @@ declare class TransportSession {
628
638
 
629
639
  private _lastServerStatus;
630
640
 
641
+ private _endsAt;
642
+
631
643
  private _forceResolveOnNextConnect;
632
644
 
633
645
  private _connectStartedAt;
@@ -676,6 +688,12 @@ declare class TransportSession {
676
688
  get currentIncarnation(): number;
677
689
  get phase(): SessionPhase;
678
690
 
691
+ get endsAt(): Date | null;
692
+
693
+ setEndsAt(endsAt: Date | null): void;
694
+
695
+ private _pastDeadline;
696
+
679
697
  get status(): SessionStatus;
680
698
  get sessionId(): string | null;
681
699
  get tracks(): Map<string, MediaStreamTrack>;
@@ -756,6 +774,8 @@ declare class TransportSession {
756
774
  private _clearSendIceRestart;
757
775
  private _onCreateSendTransport;
758
776
 
777
+ private _republishPublishedTracks;
778
+
759
779
  private _onConsumeData;
760
780
  private _onConsume;
761
781
 
@@ -788,6 +808,8 @@ declare class TransportSession {
788
808
  private _send;
789
809
  private _setState;
790
810
 
811
+
812
+ private _isTerminalPhase;
791
813
  private _setPhase;
792
814
 
793
815
  reportAdmission(update: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@urun-sh/core",
3
- "version": "0.2.8",
3
+ "version": "0.2.9",
4
4
  "description": "Core transport and channel primitives for the urun TypeScript SDK",
5
5
  "repository": {
6
6
  "type": "git",