@urun-sh/core 0.2.5 → 0.2.7
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/chunk-47GHXEPH.mjs +3 -0
- package/dist/chunk-YYZIRCR7.mjs +4 -0
- package/dist/index.browser.d.mts +7 -56
- package/dist/index.browser.d.ts +7 -56
- package/dist/index.browser.js +2 -6
- package/dist/index.browser.mjs +1 -1
- package/dist/index.d.mts +7 -56
- package/dist/index.d.ts +7 -56
- package/dist/index.js +2 -6
- package/dist/index.mjs +2 -1
- package/dist/internal.browser.d.mts +1 -1
- package/dist/internal.browser.d.ts +1 -1
- package/dist/internal.browser.js +2 -6
- package/dist/internal.browser.mjs +1 -1
- package/dist/internal.d.mts +1 -1
- package/dist/internal.d.ts +1 -1
- package/dist/internal.js +2 -6
- package/dist/internal.mjs +2 -1
- package/dist/{stream-data-Bv0WmUUA.d.mts → stream-data-B16nTnox.d.mts} +85 -6
- package/dist/{stream-data-Bv0WmUUA.d.ts → stream-data-B16nTnox.d.ts} +85 -6
- package/package.json +32 -1
- package/dist/chunk-GSLGCYDQ.mjs +0 -7
- package/dist/chunk-XOU67U3G.mjs +0 -7
package/dist/internal.mjs
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import { createRequire as __urunCreateRequire } from 'node:module'; const require = globalThis.require ?? __urunCreateRequire(import.meta.url);
|
|
2
|
+
import{a as e,b as r,c as o,d as t,e as a,g as n,h as p,i as s,j as m,k as c,l as i,m as f,n as x,o as l}from"./chunk-YYZIRCR7.mjs";export{e as ChannelMultiplexer,r as DeferredChannelMultiplexer,f as DeferredDocConnector,n as LoopbackStreamData,x as SessionDocumentImpl,m as TransportSession,l as createPresence,i as createWebsocketDocConnector,c as deriveYjsServerUrl,a as ensureNodeWebRTC,o as isNodeRuntime,t as nodeMediasoupHandlerName,s as streamDataLabel,p as transportStreamData};
|
|
@@ -93,7 +93,13 @@ declare function createPresence(awareness: Awareness): Presence;
|
|
|
93
93
|
|
|
94
94
|
type TransportState = 'connecting' | 'connected' | 'reconnecting' | 'renegotiating' | 'disconnected' | 'failed';
|
|
95
95
|
|
|
96
|
-
type SessionPhaseName = 'idle' | 'queued' | 'provisioning' | 'connecting' | 'live' | 'error' | 'ended';
|
|
96
|
+
type SessionPhaseName = 'idle' | 'queued' | 'unavailable' | 'provisioning' | 'connecting' | 'live' | 'error' | 'ended';
|
|
97
|
+
|
|
98
|
+
interface RuntimeAvailability {
|
|
99
|
+
state: 'unavailable' | 'starting' | 'busy';
|
|
100
|
+
|
|
101
|
+
reason?: string;
|
|
102
|
+
}
|
|
97
103
|
|
|
98
104
|
type SessionFailureKind = 'create-failed' | 'never-live' | 'transport-failed' | 'media-permission' | 'ended';
|
|
99
105
|
|
|
@@ -117,6 +123,8 @@ interface SessionPhase {
|
|
|
117
123
|
depth: number;
|
|
118
124
|
};
|
|
119
125
|
|
|
126
|
+
runtime?: RuntimeAvailability;
|
|
127
|
+
|
|
120
128
|
requestId?: string;
|
|
121
129
|
|
|
122
130
|
sessionId?: string;
|
|
@@ -143,6 +151,8 @@ interface SessionStatus {
|
|
|
143
151
|
depth: number;
|
|
144
152
|
};
|
|
145
153
|
|
|
154
|
+
runtime?: RuntimeAvailability;
|
|
155
|
+
|
|
146
156
|
error?: SessionPhaseError;
|
|
147
157
|
}
|
|
148
158
|
|
|
@@ -644,6 +654,8 @@ declare class TransportSession {
|
|
|
644
654
|
|
|
645
655
|
private _pendingDataProduce;
|
|
646
656
|
|
|
657
|
+
private _sendTransportWaiters;
|
|
658
|
+
|
|
647
659
|
get consumerId(): string;
|
|
648
660
|
get state(): TransportState;
|
|
649
661
|
|
|
@@ -678,10 +690,16 @@ declare class TransportSession {
|
|
|
678
690
|
|
|
679
691
|
sendStreamData(name: string, payload: unknown, _options?: {
|
|
680
692
|
to?: string;
|
|
681
|
-
}): void
|
|
693
|
+
}): Promise<void>;
|
|
694
|
+
|
|
695
|
+
private _awaitSendTransport;
|
|
696
|
+
|
|
697
|
+
private _settleSendTransportWaiters;
|
|
682
698
|
|
|
683
699
|
private _ensureDataProducer;
|
|
684
700
|
|
|
701
|
+
private _awaitDataChannelOpen;
|
|
702
|
+
|
|
685
703
|
private _dispatchStreamData;
|
|
686
704
|
|
|
687
705
|
private _streamNameFromLabel;
|
|
@@ -756,11 +774,72 @@ declare class TransportSession {
|
|
|
756
774
|
|
|
757
775
|
private _setPhase;
|
|
758
776
|
|
|
777
|
+
reportAdmission(update: {
|
|
778
|
+
status: 'queued' | 'pending';
|
|
779
|
+
requestId?: string;
|
|
780
|
+
queue?: {
|
|
781
|
+
position: number;
|
|
782
|
+
depth: number;
|
|
783
|
+
};
|
|
784
|
+
runtime?: RuntimeAvailability;
|
|
785
|
+
}): void;
|
|
786
|
+
|
|
759
787
|
private _emitError;
|
|
760
788
|
|
|
761
789
|
reportAllocationFailure(error: Error, httpStatus?: number): void;
|
|
762
790
|
}
|
|
763
791
|
|
|
792
|
+
declare class SessionDocumentImpl implements SessionDocument {
|
|
793
|
+
private _doc;
|
|
794
|
+
private _root;
|
|
795
|
+
private _awareness;
|
|
796
|
+
private _listeners;
|
|
797
|
+
private _key;
|
|
798
|
+
private _sessionId;
|
|
799
|
+
private _connection;
|
|
800
|
+
private _connUnsub;
|
|
801
|
+
|
|
802
|
+
private _synced;
|
|
803
|
+
|
|
804
|
+
private _syncWaiters;
|
|
805
|
+
|
|
806
|
+
private _texts;
|
|
807
|
+
private _observer;
|
|
808
|
+
constructor(key: string, sessionId: string, connector?: DocConnector | null);
|
|
809
|
+
|
|
810
|
+
get awareness(): Awareness;
|
|
811
|
+
|
|
812
|
+
setSessionId(sessionId: string): void;
|
|
813
|
+
|
|
814
|
+
get synced(): boolean;
|
|
815
|
+
|
|
816
|
+
onSynced(handler: () => void): () => void;
|
|
817
|
+
|
|
818
|
+
set(patch: Record<string, unknown>): void;
|
|
819
|
+
get(path?: string, defaultValue?: unknown): unknown;
|
|
820
|
+
on(event: 'change', handler: (snap: Record<string, unknown>) => void): () => void;
|
|
821
|
+
|
|
822
|
+
text(field: string): SessionTextImpl;
|
|
823
|
+
dispose(): void;
|
|
824
|
+
private _markSynced;
|
|
825
|
+
|
|
826
|
+
private applyPatch;
|
|
827
|
+
private snapshot;
|
|
828
|
+
private notify;
|
|
829
|
+
}
|
|
830
|
+
|
|
831
|
+
declare class SessionTextImpl implements SessionText {
|
|
832
|
+
private _ytext;
|
|
833
|
+
private _delta;
|
|
834
|
+
private _observer;
|
|
835
|
+
constructor(_ytext: Y.Text);
|
|
836
|
+
append(text: string): void;
|
|
837
|
+
toString(): string;
|
|
838
|
+
get length(): number;
|
|
839
|
+
on(event: 'delta', handler: (inserted: string) => void): () => void;
|
|
840
|
+
dispose(): void;
|
|
841
|
+
}
|
|
842
|
+
|
|
764
843
|
interface StreamDataTransport {
|
|
765
844
|
|
|
766
845
|
readonly consumerId: string;
|
|
@@ -769,7 +848,7 @@ interface StreamDataTransport {
|
|
|
769
848
|
|
|
770
849
|
sendData(name: string, payload: unknown, options?: {
|
|
771
850
|
to?: string;
|
|
772
|
-
}): void
|
|
851
|
+
}): Promise<void>;
|
|
773
852
|
}
|
|
774
853
|
|
|
775
854
|
declare class LoopbackStreamData implements StreamDataTransport {
|
|
@@ -779,7 +858,7 @@ declare class LoopbackStreamData implements StreamDataTransport {
|
|
|
779
858
|
onData(name: string, handler: (payload: unknown) => void): () => void;
|
|
780
859
|
sendData(name: string, payload: unknown, options?: {
|
|
781
860
|
to?: string;
|
|
782
|
-
}): void
|
|
861
|
+
}): Promise<void>;
|
|
783
862
|
}
|
|
784
863
|
|
|
785
864
|
interface DataChannelTransport {
|
|
@@ -787,9 +866,9 @@ interface DataChannelTransport {
|
|
|
787
866
|
onStreamData(name: string, handler: (payload: unknown) => void): () => void;
|
|
788
867
|
sendStreamData(name: string, payload: unknown, options?: {
|
|
789
868
|
to?: string;
|
|
790
|
-
}): void
|
|
869
|
+
}): Promise<void>;
|
|
791
870
|
}
|
|
792
871
|
|
|
793
872
|
declare function transportStreamData(transport: DataChannelTransport): StreamDataTransport;
|
|
794
873
|
|
|
795
|
-
export {
|
|
874
|
+
export { type TransportState as $, type AccessTokenOptions as A, type RuntimeAvailability as B, type ChannelEndpoint as C, DeferredChannelMultiplexer as D, type SceneGraph as E, type Session as F, type SessionDocument as G, SessionDocumentImpl as H, type SessionFailureKind as I, type SessionPhase as J, type SessionPhaseError as K, type Layer as L, type MediaChunkBinding as M, type SessionPhaseName as N, type SessionStartOptions as O, type Presence as P, type SessionStatus as Q, type Recording as R, type SceneContext as S, type SessionStream as T, type SessionText as U, type Store as V, type StoreOptions as W, type StreamChunkOptions as X, type StreamDataTransport as Y, TransportSession as Z, type TransportSessionOptions as _, type App as a, createPresence as a0, createWebsocketDocConnector as a1, deriveYjsServerUrl as a2, isPendingRecording as a3, mediaRecorderChunkSource as a4, streamDataLabel as a5, transportStreamData as a6, type AppOptions as b, type AttachOptions as c, type ChannelMessage as d, ChannelMultiplexer as e, type ChannelName as f, type ChunkReadable as g, DeferredDocConnector as h, type DocConnection as i, type DocConnector as j, type LayoutConfig as k, type LayoutContext as l, LoopbackStreamData as m, type MediaChunkSource as n, type MediaChunkSourceFactory as o, type MediaRecorderChunkSourceOptions as p, type PresenceState as q, type RecordingBucket as r, type RecordingLifecycle as s, type RecordingStatus as t, type RecordingsAccessor as u, type RequestOptions as v, type RequestStreamOptions as w, type RuntimeArtifact as x, type RuntimeArtifactDownload as y, type RuntimeArtifactsAccessor as z };
|
|
@@ -93,7 +93,13 @@ declare function createPresence(awareness: Awareness): Presence;
|
|
|
93
93
|
|
|
94
94
|
type TransportState = 'connecting' | 'connected' | 'reconnecting' | 'renegotiating' | 'disconnected' | 'failed';
|
|
95
95
|
|
|
96
|
-
type SessionPhaseName = 'idle' | 'queued' | 'provisioning' | 'connecting' | 'live' | 'error' | 'ended';
|
|
96
|
+
type SessionPhaseName = 'idle' | 'queued' | 'unavailable' | 'provisioning' | 'connecting' | 'live' | 'error' | 'ended';
|
|
97
|
+
|
|
98
|
+
interface RuntimeAvailability {
|
|
99
|
+
state: 'unavailable' | 'starting' | 'busy';
|
|
100
|
+
|
|
101
|
+
reason?: string;
|
|
102
|
+
}
|
|
97
103
|
|
|
98
104
|
type SessionFailureKind = 'create-failed' | 'never-live' | 'transport-failed' | 'media-permission' | 'ended';
|
|
99
105
|
|
|
@@ -117,6 +123,8 @@ interface SessionPhase {
|
|
|
117
123
|
depth: number;
|
|
118
124
|
};
|
|
119
125
|
|
|
126
|
+
runtime?: RuntimeAvailability;
|
|
127
|
+
|
|
120
128
|
requestId?: string;
|
|
121
129
|
|
|
122
130
|
sessionId?: string;
|
|
@@ -143,6 +151,8 @@ interface SessionStatus {
|
|
|
143
151
|
depth: number;
|
|
144
152
|
};
|
|
145
153
|
|
|
154
|
+
runtime?: RuntimeAvailability;
|
|
155
|
+
|
|
146
156
|
error?: SessionPhaseError;
|
|
147
157
|
}
|
|
148
158
|
|
|
@@ -644,6 +654,8 @@ declare class TransportSession {
|
|
|
644
654
|
|
|
645
655
|
private _pendingDataProduce;
|
|
646
656
|
|
|
657
|
+
private _sendTransportWaiters;
|
|
658
|
+
|
|
647
659
|
get consumerId(): string;
|
|
648
660
|
get state(): TransportState;
|
|
649
661
|
|
|
@@ -678,10 +690,16 @@ declare class TransportSession {
|
|
|
678
690
|
|
|
679
691
|
sendStreamData(name: string, payload: unknown, _options?: {
|
|
680
692
|
to?: string;
|
|
681
|
-
}): void
|
|
693
|
+
}): Promise<void>;
|
|
694
|
+
|
|
695
|
+
private _awaitSendTransport;
|
|
696
|
+
|
|
697
|
+
private _settleSendTransportWaiters;
|
|
682
698
|
|
|
683
699
|
private _ensureDataProducer;
|
|
684
700
|
|
|
701
|
+
private _awaitDataChannelOpen;
|
|
702
|
+
|
|
685
703
|
private _dispatchStreamData;
|
|
686
704
|
|
|
687
705
|
private _streamNameFromLabel;
|
|
@@ -756,11 +774,72 @@ declare class TransportSession {
|
|
|
756
774
|
|
|
757
775
|
private _setPhase;
|
|
758
776
|
|
|
777
|
+
reportAdmission(update: {
|
|
778
|
+
status: 'queued' | 'pending';
|
|
779
|
+
requestId?: string;
|
|
780
|
+
queue?: {
|
|
781
|
+
position: number;
|
|
782
|
+
depth: number;
|
|
783
|
+
};
|
|
784
|
+
runtime?: RuntimeAvailability;
|
|
785
|
+
}): void;
|
|
786
|
+
|
|
759
787
|
private _emitError;
|
|
760
788
|
|
|
761
789
|
reportAllocationFailure(error: Error, httpStatus?: number): void;
|
|
762
790
|
}
|
|
763
791
|
|
|
792
|
+
declare class SessionDocumentImpl implements SessionDocument {
|
|
793
|
+
private _doc;
|
|
794
|
+
private _root;
|
|
795
|
+
private _awareness;
|
|
796
|
+
private _listeners;
|
|
797
|
+
private _key;
|
|
798
|
+
private _sessionId;
|
|
799
|
+
private _connection;
|
|
800
|
+
private _connUnsub;
|
|
801
|
+
|
|
802
|
+
private _synced;
|
|
803
|
+
|
|
804
|
+
private _syncWaiters;
|
|
805
|
+
|
|
806
|
+
private _texts;
|
|
807
|
+
private _observer;
|
|
808
|
+
constructor(key: string, sessionId: string, connector?: DocConnector | null);
|
|
809
|
+
|
|
810
|
+
get awareness(): Awareness;
|
|
811
|
+
|
|
812
|
+
setSessionId(sessionId: string): void;
|
|
813
|
+
|
|
814
|
+
get synced(): boolean;
|
|
815
|
+
|
|
816
|
+
onSynced(handler: () => void): () => void;
|
|
817
|
+
|
|
818
|
+
set(patch: Record<string, unknown>): void;
|
|
819
|
+
get(path?: string, defaultValue?: unknown): unknown;
|
|
820
|
+
on(event: 'change', handler: (snap: Record<string, unknown>) => void): () => void;
|
|
821
|
+
|
|
822
|
+
text(field: string): SessionTextImpl;
|
|
823
|
+
dispose(): void;
|
|
824
|
+
private _markSynced;
|
|
825
|
+
|
|
826
|
+
private applyPatch;
|
|
827
|
+
private snapshot;
|
|
828
|
+
private notify;
|
|
829
|
+
}
|
|
830
|
+
|
|
831
|
+
declare class SessionTextImpl implements SessionText {
|
|
832
|
+
private _ytext;
|
|
833
|
+
private _delta;
|
|
834
|
+
private _observer;
|
|
835
|
+
constructor(_ytext: Y.Text);
|
|
836
|
+
append(text: string): void;
|
|
837
|
+
toString(): string;
|
|
838
|
+
get length(): number;
|
|
839
|
+
on(event: 'delta', handler: (inserted: string) => void): () => void;
|
|
840
|
+
dispose(): void;
|
|
841
|
+
}
|
|
842
|
+
|
|
764
843
|
interface StreamDataTransport {
|
|
765
844
|
|
|
766
845
|
readonly consumerId: string;
|
|
@@ -769,7 +848,7 @@ interface StreamDataTransport {
|
|
|
769
848
|
|
|
770
849
|
sendData(name: string, payload: unknown, options?: {
|
|
771
850
|
to?: string;
|
|
772
|
-
}): void
|
|
851
|
+
}): Promise<void>;
|
|
773
852
|
}
|
|
774
853
|
|
|
775
854
|
declare class LoopbackStreamData implements StreamDataTransport {
|
|
@@ -779,7 +858,7 @@ declare class LoopbackStreamData implements StreamDataTransport {
|
|
|
779
858
|
onData(name: string, handler: (payload: unknown) => void): () => void;
|
|
780
859
|
sendData(name: string, payload: unknown, options?: {
|
|
781
860
|
to?: string;
|
|
782
|
-
}): void
|
|
861
|
+
}): Promise<void>;
|
|
783
862
|
}
|
|
784
863
|
|
|
785
864
|
interface DataChannelTransport {
|
|
@@ -787,9 +866,9 @@ interface DataChannelTransport {
|
|
|
787
866
|
onStreamData(name: string, handler: (payload: unknown) => void): () => void;
|
|
788
867
|
sendStreamData(name: string, payload: unknown, options?: {
|
|
789
868
|
to?: string;
|
|
790
|
-
}): void
|
|
869
|
+
}): Promise<void>;
|
|
791
870
|
}
|
|
792
871
|
|
|
793
872
|
declare function transportStreamData(transport: DataChannelTransport): StreamDataTransport;
|
|
794
873
|
|
|
795
|
-
export {
|
|
874
|
+
export { type TransportState as $, type AccessTokenOptions as A, type RuntimeAvailability as B, type ChannelEndpoint as C, DeferredChannelMultiplexer as D, type SceneGraph as E, type Session as F, type SessionDocument as G, SessionDocumentImpl as H, type SessionFailureKind as I, type SessionPhase as J, type SessionPhaseError as K, type Layer as L, type MediaChunkBinding as M, type SessionPhaseName as N, type SessionStartOptions as O, type Presence as P, type SessionStatus as Q, type Recording as R, type SceneContext as S, type SessionStream as T, type SessionText as U, type Store as V, type StoreOptions as W, type StreamChunkOptions as X, type StreamDataTransport as Y, TransportSession as Z, type TransportSessionOptions as _, type App as a, createPresence as a0, createWebsocketDocConnector as a1, deriveYjsServerUrl as a2, isPendingRecording as a3, mediaRecorderChunkSource as a4, streamDataLabel as a5, transportStreamData as a6, type AppOptions as b, type AttachOptions as c, type ChannelMessage as d, ChannelMultiplexer as e, type ChannelName as f, type ChunkReadable as g, DeferredDocConnector as h, type DocConnection as i, type DocConnector as j, type LayoutConfig as k, type LayoutContext as l, LoopbackStreamData as m, type MediaChunkSource as n, type MediaChunkSourceFactory as o, type MediaRecorderChunkSourceOptions as p, type PresenceState as q, type RecordingBucket as r, type RecordingLifecycle as s, type RecordingStatus as t, type RecordingsAccessor as u, type RequestOptions as v, type RequestStreamOptions as w, type RuntimeArtifact as x, type RuntimeArtifactDownload as y, type RuntimeArtifactsAccessor as z };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@urun-sh/core",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.7",
|
|
4
4
|
"description": "Core transport and channel primitives for the urun TypeScript SDK",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -17,6 +17,21 @@
|
|
|
17
17
|
"exports": {
|
|
18
18
|
".": {
|
|
19
19
|
"types": "./dist/index.d.ts",
|
|
20
|
+
"edge-light": {
|
|
21
|
+
"types": "./dist/index.browser.d.ts",
|
|
22
|
+
"import": "./dist/index.browser.mjs",
|
|
23
|
+
"require": "./dist/index.browser.js"
|
|
24
|
+
},
|
|
25
|
+
"workerd": {
|
|
26
|
+
"types": "./dist/index.browser.d.ts",
|
|
27
|
+
"import": "./dist/index.browser.mjs",
|
|
28
|
+
"require": "./dist/index.browser.js"
|
|
29
|
+
},
|
|
30
|
+
"worker": {
|
|
31
|
+
"types": "./dist/index.browser.d.ts",
|
|
32
|
+
"import": "./dist/index.browser.mjs",
|
|
33
|
+
"require": "./dist/index.browser.js"
|
|
34
|
+
},
|
|
20
35
|
"browser": {
|
|
21
36
|
"types": "./dist/index.browser.d.ts",
|
|
22
37
|
"import": "./dist/index.browser.mjs",
|
|
@@ -27,6 +42,21 @@
|
|
|
27
42
|
},
|
|
28
43
|
"./internal": {
|
|
29
44
|
"types": "./dist/internal.d.ts",
|
|
45
|
+
"edge-light": {
|
|
46
|
+
"types": "./dist/internal.browser.d.ts",
|
|
47
|
+
"import": "./dist/internal.browser.mjs",
|
|
48
|
+
"require": "./dist/internal.browser.js"
|
|
49
|
+
},
|
|
50
|
+
"workerd": {
|
|
51
|
+
"types": "./dist/internal.browser.d.ts",
|
|
52
|
+
"import": "./dist/internal.browser.mjs",
|
|
53
|
+
"require": "./dist/internal.browser.js"
|
|
54
|
+
},
|
|
55
|
+
"worker": {
|
|
56
|
+
"types": "./dist/internal.browser.d.ts",
|
|
57
|
+
"import": "./dist/internal.browser.mjs",
|
|
58
|
+
"require": "./dist/internal.browser.js"
|
|
59
|
+
},
|
|
30
60
|
"browser": {
|
|
31
61
|
"types": "./dist/internal.browser.d.ts",
|
|
32
62
|
"import": "./dist/internal.browser.mjs",
|
|
@@ -69,6 +99,7 @@
|
|
|
69
99
|
},
|
|
70
100
|
"license": "MIT",
|
|
71
101
|
"dependencies": {
|
|
102
|
+
"debug": "^4.4.3",
|
|
72
103
|
"y-protocols": "1.0.7",
|
|
73
104
|
"y-websocket": "3.0.0",
|
|
74
105
|
"yjs": "^13.6.31"
|