@urun-sh/core 0.2.6 → 0.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,10 +1,12 @@
1
- import { b as AppOptions, a as App$1, H as SessionPhase, N as SessionStatus, A as AccessTokenOptions, x as RuntimeArtifact, y as RuntimeArtifactDownload, R as Recording, F as SessionDocument, j as DocConnector, Q as SessionText, E as Session$1, C as ChannelEndpoint, X as TransportSession, c as AttachOptions, u as RecordingsAccessor, z as RuntimeArtifactsAccessor, O as SessionStream$1, W as StreamDataTransport, V as StreamChunkOptions, g as ChunkReadable, P as Presence, v as RequestOptions, w as RequestStreamOptions, U as StoreOptions, T as Store, e as ChannelMultiplexer, G as SessionFailureKind } from './stream-data-u76USIkQ.mjs';
2
- export { L as Layer, k as LayoutConfig, l as LayoutContext, M as MediaChunkBinding, n as MediaChunkSource, o as MediaChunkSourceFactory, p as MediaRecorderChunkSourceOptions, q as PresenceState, r as RecordingBucket, s as RecordingLifecycle, t as RecordingStatus, S as SceneContext, B as SceneGraph, I as SessionPhaseError, J as SessionPhaseName, Z as TransportState, a1 as isPendingRecording, a2 as mediaRecorderChunkSource } from './stream-data-u76USIkQ.mjs';
3
- import * as Y from 'yjs';
4
- import { Awareness } from 'y-protocols/awareness';
1
+ import { b as AppOptions, a as App$1, K as SessionPhase, T as SessionStatus, O as SessionPhaseName, A as AccessTokenOptions, y as RuntimeArtifact, z as RuntimeArtifactDownload, R as Recording, G as Session$1, C as ChannelEndpoint, _ as TransportSession, c as AttachOptions, v as RecordingsAccessor, B as RuntimeArtifactsAccessor, U as SessionStream$1, Z as StreamDataTransport, I as SessionDocumentImpl, Y as StreamChunkOptions, g as ChunkReadable, P as Presence, k as DocConnector, w as RequestOptions, x as RequestStreamOptions, X as StoreOptions, W as Store, e as ChannelMultiplexer, J as SessionFailureKind } from './stream-data-BS3Z4V1D.mjs';
2
+ export { L as Layer, l as LayoutConfig, m as LayoutContext, M as MediaChunkBinding, o as MediaChunkSource, p as MediaChunkSourceFactory, q as MediaRecorderChunkSourceOptions, r as PresenceState, s as RecordingBucket, t as RecordingLifecycle, u as RecordingStatus, E as RuntimeAvailability, S as SceneContext, F as SceneGraph, H as SessionDocument, N as SessionPhaseError, V as SessionText, a0 as TransportState, a4 as isPendingRecording, a5 as mediaRecorderChunkSource } from './stream-data-BS3Z4V1D.mjs';
3
+ import 'yjs';
4
+ import 'y-protocols/awareness';
5
5
 
6
6
  declare function App(appId: string, options: AppOptions): App$1;
7
7
 
8
+ declare function isWakingPhase(phase: SessionPhase | SessionPhaseName | null | undefined): boolean;
9
+
8
10
  interface PhaseObservable {
9
11
 
10
12
  readonly phase: SessionPhase;
@@ -25,6 +27,8 @@ declare const DEFAULT_WHEN_LIVE_TIMEOUT_MS = 45000;
25
27
 
26
28
  declare function whenLive(session: PhaseObservable, options?: WhenLiveOptions): Promise<void>;
27
29
 
30
+ declare function describeSessionPhase(phase: SessionPhase): string;
31
+
28
32
  interface RuntimeArtifactsClientOptions {
29
33
  baseUrl: string;
30
34
  fallbackUrls?: readonly string[];
@@ -149,57 +153,6 @@ declare class RecordingsClient {
149
153
 
150
154
  declare function createRecordingsClient(options: RecordingsClientOptions): RecordingsClient;
151
155
 
152
- declare class SessionDocumentImpl implements SessionDocument {
153
- private _doc;
154
- private _root;
155
- private _awareness;
156
- private _listeners;
157
- private _key;
158
- private _sessionId;
159
- private _connection;
160
- private _connUnsub;
161
-
162
- private _synced;
163
-
164
- private _syncWaiters;
165
-
166
- private _texts;
167
- private _observer;
168
- constructor(key: string, sessionId: string, connector?: DocConnector | null);
169
-
170
- get awareness(): Awareness;
171
-
172
- setSessionId(sessionId: string): void;
173
-
174
- get synced(): boolean;
175
-
176
- onSynced(handler: () => void): () => void;
177
-
178
- set(patch: Record<string, unknown>): void;
179
- get(path?: string, defaultValue?: unknown): unknown;
180
- on(event: 'change', handler: (snap: Record<string, unknown>) => void): () => void;
181
-
182
- text(field: string): SessionTextImpl;
183
- dispose(): void;
184
- private _markSynced;
185
-
186
- private applyPatch;
187
- private snapshot;
188
- private notify;
189
- }
190
-
191
- declare class SessionTextImpl implements SessionText {
192
- private _ytext;
193
- private _delta;
194
- private _observer;
195
- constructor(_ytext: Y.Text);
196
- append(text: string): void;
197
- toString(): string;
198
- get length(): number;
199
- on(event: 'delta', handler: (inserted: string) => void): () => void;
200
- dispose(): void;
201
- }
202
-
203
156
  declare const DEFAULT_DOC_SYNC_TIMEOUT_MS = 30000;
204
157
  declare class SessionStream implements SessionStream$1 {
205
158
  private _name;
@@ -276,6 +229,10 @@ declare class Session implements Session$1 {
276
229
  private _recordingsAccessor;
277
230
 
278
231
  private _artifactsAccessor;
232
+
233
+ private _recoveryHooks;
234
+
235
+ private _lifecycleUnsub;
279
236
  constructor(sessionId: string, multiplexer: ChannelEndpoint, transport: TransportSession, recordingsAuth?: RecordingsClientOptions, artifactsAuth?: RuntimeArtifactsClientOptions);
280
237
  private _wireControlDocIncarnation;
281
238
 
@@ -322,9 +279,17 @@ declare class Session implements Session$1 {
322
279
  requestStream(payload: unknown, options?: RequestStreamOptions): AsyncIterable<string>;
323
280
 
324
281
  complete(payload: unknown, options?: RequestStreamOptions): Promise<unknown>;
282
+
283
+ recover(): void;
284
+
285
+ onRecovery(hook: () => void): () => void;
325
286
  disconnect(): void;
326
287
  }
327
288
 
289
+ declare const FOREGROUND_COALESCE_MS = 250;
290
+
291
+ declare function observePageLifecycle(onForeground: () => void): () => void;
292
+
328
293
  declare function createStore(options: StoreOptions): Store & {
329
294
  _getInternals(): {
330
295
  multiplexer: ChannelMultiplexer;
@@ -408,4 +373,4 @@ declare class SessionAllocationError extends Error {
408
373
  });
409
374
  }
410
375
 
411
- export { App, App$1 as AppInterface, AppOptions, AttachOptions, ChunkReadable, DEFAULT_DOC_SYNC_TIMEOUT_MS, DEFAULT_WHEN_LIVE_TIMEOUT_MS, InvalidDurationError, PermanentLockedError, type PhaseObservable, PinRequiresActiveTempError, Presence, Recording, RecordingNotFoundError, RecordingsAccessor, RecordingsClient, type RecordingsClientOptions, RecordingsError, RecordingsUnauthorizedError, RequestAbortError, RequestCancelledError, RequestDocSyncError, RequestError, RequestOptions, RequestStreamOptions, RequestTimeoutError, RetainNotTempError, type RetentionIntent, RuntimeArtifact, RuntimeArtifactDownload, RuntimeArtifactNotFoundError, RuntimeArtifactsAccessor, RuntimeArtifactsClient, type RuntimeArtifactsClientOptions, RuntimeArtifactsError, RuntimeArtifactsUnauthorizedError, Session, SessionAllocationError, SessionDocument, SessionFailedError, SessionFailureKind, Session$1 as SessionInterface, SessionPhase, SessionStatus, SessionStream$1 as SessionStream, SessionText, Store, StoreOptions, StreamChunkOptions, StreamDirectionConflict, type VideoStreamOptions, type WhenLiveOptions, createRecordingsClient, createRuntimeArtifactsClient, createStore, describeSessionFailure, isDurationString, normalizeRetention, sessionFailureFromMediaError, videoStream, whenLive };
376
+ export { App, App$1 as AppInterface, AppOptions, AttachOptions, ChunkReadable, DEFAULT_DOC_SYNC_TIMEOUT_MS, DEFAULT_WHEN_LIVE_TIMEOUT_MS, FOREGROUND_COALESCE_MS, InvalidDurationError, PermanentLockedError, type PhaseObservable, PinRequiresActiveTempError, Presence, Recording, RecordingNotFoundError, RecordingsAccessor, RecordingsClient, type RecordingsClientOptions, RecordingsError, RecordingsUnauthorizedError, RequestAbortError, RequestCancelledError, RequestDocSyncError, RequestError, RequestOptions, RequestStreamOptions, RequestTimeoutError, RetainNotTempError, type RetentionIntent, RuntimeArtifact, RuntimeArtifactDownload, RuntimeArtifactNotFoundError, RuntimeArtifactsAccessor, RuntimeArtifactsClient, type RuntimeArtifactsClientOptions, RuntimeArtifactsError, RuntimeArtifactsUnauthorizedError, Session, SessionAllocationError, SessionFailedError, SessionFailureKind, Session$1 as SessionInterface, SessionPhase, SessionPhaseName, SessionStatus, SessionStream$1 as SessionStream, Store, StoreOptions, StreamChunkOptions, StreamDirectionConflict, type VideoStreamOptions, type WhenLiveOptions, createRecordingsClient, createRuntimeArtifactsClient, createStore, describeSessionFailure, describeSessionPhase, isDurationString, isWakingPhase, normalizeRetention, observePageLifecycle, sessionFailureFromMediaError, videoStream, whenLive };
@@ -1,10 +1,12 @@
1
- import { b as AppOptions, a as App$1, H as SessionPhase, N as SessionStatus, A as AccessTokenOptions, x as RuntimeArtifact, y as RuntimeArtifactDownload, R as Recording, F as SessionDocument, j as DocConnector, Q as SessionText, E as Session$1, C as ChannelEndpoint, X as TransportSession, c as AttachOptions, u as RecordingsAccessor, z as RuntimeArtifactsAccessor, O as SessionStream$1, W as StreamDataTransport, V as StreamChunkOptions, g as ChunkReadable, P as Presence, v as RequestOptions, w as RequestStreamOptions, U as StoreOptions, T as Store, e as ChannelMultiplexer, G as SessionFailureKind } from './stream-data-u76USIkQ.js';
2
- export { L as Layer, k as LayoutConfig, l as LayoutContext, M as MediaChunkBinding, n as MediaChunkSource, o as MediaChunkSourceFactory, p as MediaRecorderChunkSourceOptions, q as PresenceState, r as RecordingBucket, s as RecordingLifecycle, t as RecordingStatus, S as SceneContext, B as SceneGraph, I as SessionPhaseError, J as SessionPhaseName, Z as TransportState, a1 as isPendingRecording, a2 as mediaRecorderChunkSource } from './stream-data-u76USIkQ.js';
3
- import * as Y from 'yjs';
4
- import { Awareness } from 'y-protocols/awareness';
1
+ import { b as AppOptions, a as App$1, K as SessionPhase, T as SessionStatus, O as SessionPhaseName, A as AccessTokenOptions, y as RuntimeArtifact, z as RuntimeArtifactDownload, R as Recording, G as Session$1, C as ChannelEndpoint, _ as TransportSession, c as AttachOptions, v as RecordingsAccessor, B as RuntimeArtifactsAccessor, U as SessionStream$1, Z as StreamDataTransport, I as SessionDocumentImpl, Y as StreamChunkOptions, g as ChunkReadable, P as Presence, k as DocConnector, w as RequestOptions, x as RequestStreamOptions, X as StoreOptions, W as Store, e as ChannelMultiplexer, J as SessionFailureKind } from './stream-data-BS3Z4V1D.js';
2
+ export { L as Layer, l as LayoutConfig, m as LayoutContext, M as MediaChunkBinding, o as MediaChunkSource, p as MediaChunkSourceFactory, q as MediaRecorderChunkSourceOptions, r as PresenceState, s as RecordingBucket, t as RecordingLifecycle, u as RecordingStatus, E as RuntimeAvailability, S as SceneContext, F as SceneGraph, H as SessionDocument, N as SessionPhaseError, V as SessionText, a0 as TransportState, a4 as isPendingRecording, a5 as mediaRecorderChunkSource } from './stream-data-BS3Z4V1D.js';
3
+ import 'yjs';
4
+ import 'y-protocols/awareness';
5
5
 
6
6
  declare function App(appId: string, options: AppOptions): App$1;
7
7
 
8
+ declare function isWakingPhase(phase: SessionPhase | SessionPhaseName | null | undefined): boolean;
9
+
8
10
  interface PhaseObservable {
9
11
 
10
12
  readonly phase: SessionPhase;
@@ -25,6 +27,8 @@ declare const DEFAULT_WHEN_LIVE_TIMEOUT_MS = 45000;
25
27
 
26
28
  declare function whenLive(session: PhaseObservable, options?: WhenLiveOptions): Promise<void>;
27
29
 
30
+ declare function describeSessionPhase(phase: SessionPhase): string;
31
+
28
32
  interface RuntimeArtifactsClientOptions {
29
33
  baseUrl: string;
30
34
  fallbackUrls?: readonly string[];
@@ -149,57 +153,6 @@ declare class RecordingsClient {
149
153
 
150
154
  declare function createRecordingsClient(options: RecordingsClientOptions): RecordingsClient;
151
155
 
152
- declare class SessionDocumentImpl implements SessionDocument {
153
- private _doc;
154
- private _root;
155
- private _awareness;
156
- private _listeners;
157
- private _key;
158
- private _sessionId;
159
- private _connection;
160
- private _connUnsub;
161
-
162
- private _synced;
163
-
164
- private _syncWaiters;
165
-
166
- private _texts;
167
- private _observer;
168
- constructor(key: string, sessionId: string, connector?: DocConnector | null);
169
-
170
- get awareness(): Awareness;
171
-
172
- setSessionId(sessionId: string): void;
173
-
174
- get synced(): boolean;
175
-
176
- onSynced(handler: () => void): () => void;
177
-
178
- set(patch: Record<string, unknown>): void;
179
- get(path?: string, defaultValue?: unknown): unknown;
180
- on(event: 'change', handler: (snap: Record<string, unknown>) => void): () => void;
181
-
182
- text(field: string): SessionTextImpl;
183
- dispose(): void;
184
- private _markSynced;
185
-
186
- private applyPatch;
187
- private snapshot;
188
- private notify;
189
- }
190
-
191
- declare class SessionTextImpl implements SessionText {
192
- private _ytext;
193
- private _delta;
194
- private _observer;
195
- constructor(_ytext: Y.Text);
196
- append(text: string): void;
197
- toString(): string;
198
- get length(): number;
199
- on(event: 'delta', handler: (inserted: string) => void): () => void;
200
- dispose(): void;
201
- }
202
-
203
156
  declare const DEFAULT_DOC_SYNC_TIMEOUT_MS = 30000;
204
157
  declare class SessionStream implements SessionStream$1 {
205
158
  private _name;
@@ -276,6 +229,10 @@ declare class Session implements Session$1 {
276
229
  private _recordingsAccessor;
277
230
 
278
231
  private _artifactsAccessor;
232
+
233
+ private _recoveryHooks;
234
+
235
+ private _lifecycleUnsub;
279
236
  constructor(sessionId: string, multiplexer: ChannelEndpoint, transport: TransportSession, recordingsAuth?: RecordingsClientOptions, artifactsAuth?: RuntimeArtifactsClientOptions);
280
237
  private _wireControlDocIncarnation;
281
238
 
@@ -322,9 +279,17 @@ declare class Session implements Session$1 {
322
279
  requestStream(payload: unknown, options?: RequestStreamOptions): AsyncIterable<string>;
323
280
 
324
281
  complete(payload: unknown, options?: RequestStreamOptions): Promise<unknown>;
282
+
283
+ recover(): void;
284
+
285
+ onRecovery(hook: () => void): () => void;
325
286
  disconnect(): void;
326
287
  }
327
288
 
289
+ declare const FOREGROUND_COALESCE_MS = 250;
290
+
291
+ declare function observePageLifecycle(onForeground: () => void): () => void;
292
+
328
293
  declare function createStore(options: StoreOptions): Store & {
329
294
  _getInternals(): {
330
295
  multiplexer: ChannelMultiplexer;
@@ -408,4 +373,4 @@ declare class SessionAllocationError extends Error {
408
373
  });
409
374
  }
410
375
 
411
- export { App, App$1 as AppInterface, AppOptions, AttachOptions, ChunkReadable, DEFAULT_DOC_SYNC_TIMEOUT_MS, DEFAULT_WHEN_LIVE_TIMEOUT_MS, InvalidDurationError, PermanentLockedError, type PhaseObservable, PinRequiresActiveTempError, Presence, Recording, RecordingNotFoundError, RecordingsAccessor, RecordingsClient, type RecordingsClientOptions, RecordingsError, RecordingsUnauthorizedError, RequestAbortError, RequestCancelledError, RequestDocSyncError, RequestError, RequestOptions, RequestStreamOptions, RequestTimeoutError, RetainNotTempError, type RetentionIntent, RuntimeArtifact, RuntimeArtifactDownload, RuntimeArtifactNotFoundError, RuntimeArtifactsAccessor, RuntimeArtifactsClient, type RuntimeArtifactsClientOptions, RuntimeArtifactsError, RuntimeArtifactsUnauthorizedError, Session, SessionAllocationError, SessionDocument, SessionFailedError, SessionFailureKind, Session$1 as SessionInterface, SessionPhase, SessionStatus, SessionStream$1 as SessionStream, SessionText, Store, StoreOptions, StreamChunkOptions, StreamDirectionConflict, type VideoStreamOptions, type WhenLiveOptions, createRecordingsClient, createRuntimeArtifactsClient, createStore, describeSessionFailure, isDurationString, normalizeRetention, sessionFailureFromMediaError, videoStream, whenLive };
376
+ export { App, App$1 as AppInterface, AppOptions, AttachOptions, ChunkReadable, DEFAULT_DOC_SYNC_TIMEOUT_MS, DEFAULT_WHEN_LIVE_TIMEOUT_MS, FOREGROUND_COALESCE_MS, InvalidDurationError, PermanentLockedError, type PhaseObservable, PinRequiresActiveTempError, Presence, Recording, RecordingNotFoundError, RecordingsAccessor, RecordingsClient, type RecordingsClientOptions, RecordingsError, RecordingsUnauthorizedError, RequestAbortError, RequestCancelledError, RequestDocSyncError, RequestError, RequestOptions, RequestStreamOptions, RequestTimeoutError, RetainNotTempError, type RetentionIntent, RuntimeArtifact, RuntimeArtifactDownload, RuntimeArtifactNotFoundError, RuntimeArtifactsAccessor, RuntimeArtifactsClient, type RuntimeArtifactsClientOptions, RuntimeArtifactsError, RuntimeArtifactsUnauthorizedError, Session, SessionAllocationError, SessionFailedError, SessionFailureKind, Session$1 as SessionInterface, SessionPhase, SessionPhaseName, SessionStatus, SessionStream$1 as SessionStream, Store, StoreOptions, StreamChunkOptions, StreamDirectionConflict, type VideoStreamOptions, type WhenLiveOptions, createRecordingsClient, createRuntimeArtifactsClient, createStore, describeSessionFailure, describeSessionPhase, isDurationString, isWakingPhase, normalizeRetention, observePageLifecycle, sessionFailureFromMediaError, videoStream, whenLive };