@omg-dev/client 0.6.264 → 0.6.266

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/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { type RealtimeEnvironment, type RealtimeState } from "@omg-dev/sdk/realtime";
1
2
  import type { OmgMessagesResponse, OmgSendResponse, OmgSession, OmgTranscriptEvent, OmgLiveCapabilities, OmgStatusRow, OmgChangeTopic } from "@omg-dev/protocol";
2
3
  export type { OmgChangeTopic, OmgAiStreamPart, OmgLiveChannel, OmgLiveMessage, OmgMessage, OmgQueueMessage, OmgSession, OmgSessionPrompt, OmgStatusRow, OmgTranscriptEvent, OmgLiveCapabilities, OmgDraft, } from "@omg-dev/protocol";
3
4
  export interface OmgSocket {
@@ -118,28 +119,9 @@ export declare function createSameOriginTransport(input?: {
118
119
  basePath?: string;
119
120
  }): OmgTransport;
120
121
  export declare function createGrantTransport(options: CreateGrantTransportOptions): OmgTransport;
121
- export type OmgConnectionStatus = "connecting" | "live" | "reconnecting" | "offline";
122
- export interface OmgConnectionState {
123
- status: OmgConnectionStatus;
124
- attempt: number;
125
- /** The last close code and reason, or the open failure as the reason. */
126
- lastCloseCode?: number | null;
127
- lastCloseReason?: string | null;
128
- /** Round trip of the last answered ping, while live. */
129
- latencyMs?: number | null;
130
- }
131
- /**
132
- * What the page or app around the connection knows that a socket does not:
133
- * whether anyone can see it, and whether the device is online. In a browser
134
- * the default reads `document` and `navigator`. Without one (React Native, a
135
- * server) the connection retries on its schedule only.
136
- */
137
- export interface OmgLiveEnvironment {
138
- isVisible(): boolean;
139
- onVisible(listener: () => void): () => void;
140
- isOffline(): boolean;
141
- onOnline(listener: () => void): () => void;
142
- }
122
+ export type OmgConnectionStatus = RealtimeState["status"];
123
+ export type OmgConnectionState = RealtimeState;
124
+ export type OmgLiveEnvironment = RealtimeEnvironment;
143
125
  export interface OmgLiveConnectionOptions {
144
126
  capabilities?: OmgLiveCapabilities;
145
127
  /**
@@ -170,11 +152,7 @@ type ConnectionListener = (state: OmgConnectionState) => void;
170
152
  type ChangeListener = (topics: OmgChangeTopic[]) => void;
171
153
  export declare class OmgLiveConnection {
172
154
  private readonly transport;
173
- private socket;
174
- private disposed;
175
- private connecting;
176
- private reconnectTimer;
177
- private reconnectAttempt;
155
+ private readonly connection;
178
156
  private listeners;
179
157
  private statusListeners;
180
158
  private cursors;
@@ -183,27 +161,12 @@ export declare class OmgLiveConnection {
183
161
  private connectionListeners;
184
162
  private changeListeners;
185
163
  private changesAnnounced;
186
- private connectionState;
187
164
  private readonly capabilities;
188
- private readonly environment;
189
- private readonly socketQuery;
190
165
  /** Listeners that hear a session's events without subscribing it. */
191
166
  private passiveListeners;
192
167
  /** The last send queue per session, replayed to a new listener. */
193
168
  private queues;
194
169
  private typingSentAt;
195
- private readonly onEvent;
196
- private readonly backoffMinMs;
197
- private readonly backoffMaxMs;
198
- private readonly latencyIntervalMs;
199
- private readonly visibilityProbeTimeoutMs;
200
- private backoffMs;
201
- /** A retry skipped while hidden, run when the page is visible again. */
202
- private pendingReconnect;
203
- private stopEnvironment;
204
- private latencyTimer;
205
- private latencyProbe;
206
- private visibilityProbe;
207
170
  /** Per session, the drafts in flight by draft id; see OmgDraft. */
208
171
  private drafts;
209
172
  /**
@@ -214,18 +177,6 @@ export declare class OmgLiveConnection {
214
177
  */
215
178
  /** Only `openLiveSocket` is used, so a caller can supply just that. */
216
179
  constructor(transport: Pick<OmgTransport, "openLiveSocket">, options?: OmgLiveConnectionOptions);
217
- private emitEvent;
218
- /** Listen to visibility and network once there is something to keep live. */
219
- private watchEnvironment;
220
- /**
221
- * A wake-up signal (page visible, network back) invalidates the retry
222
- * schedule: it was wound up against conditions that no longer hold.
223
- */
224
- private resetBackoff;
225
- private onVisible;
226
- private probeLatency;
227
- /** Forget the current socket without scheduling anything. */
228
- private dropSocket;
229
180
  get state(): OmgConnectionState;
230
181
  subscribeConnection(listener: ConnectionListener): () => void;
231
182
  /** Fleet status shares the transcript socket and stays open while observed. */
@@ -262,9 +213,7 @@ export declare class OmgLiveConnection {
262
213
  force?: boolean;
263
214
  }): void;
264
215
  dispose(): void;
265
- private publishConnection;
266
216
  private ensureConnected;
267
- private scheduleReconnect;
268
217
  private closeSocket;
269
218
  private scheduleSubscriptionFlush;
270
219
  private send;
@@ -295,39 +244,7 @@ export declare class OmgClient {
295
244
  interrupt(sessionId: string): Promise<void>;
296
245
  dispose(): void;
297
246
  }
298
- /** What a live collection needs from the connection. OmgLiveConnection has it. */
299
- export interface OmgChangeSource {
300
- subscribeChanges(listener: (topics: OmgChangeTopic[]) => void): () => void;
301
- readonly announcesChanges: boolean;
302
- }
303
- export interface OmgLiveCollectionOptions {
304
- /** How often to re-read when the server does not announce changes. */
305
- pollMs: number;
306
- /**
307
- * How often to re-read while it does, for writes made outside the server.
308
- * Default 5 minutes.
309
- */
310
- backstopMs?: number;
311
- }
312
- export interface OmgLiveCollection<T> {
313
- /** The last value read, or undefined before the first read finishes. */
314
- peek(): T | undefined;
315
- /** Start on the first listener, stop after the last. */
316
- subscribe(listener: (value: T) => void): () => void;
317
- /** Read now, for example when a screen comes back into view. */
318
- refresh(): Promise<void>;
319
- }
320
- /**
321
- * A list a client shows, kept current from the server's change announcements.
322
- *
323
- * It reads the list once, then re-reads it when the live socket says `topic`
324
- * changed or when the socket opens (changes made while it was closed were not
325
- * announced). While the server announces changes it polls only every
326
- * `backstopMs`; otherwise every `pollMs`, which is how a client talks to an
327
- * older server. A read already running absorbs further triggers into one more
328
- * read after it, so a burst of changes costs at most two reads.
329
- *
330
- * A failed read keeps the last value. The caller decides what an error means.
331
- */
332
- export declare function liveCollection<T>(source: OmgChangeSource, topic: OmgChangeTopic, load: () => Promise<T>, options: OmgLiveCollectionOptions): OmgLiveCollection<T>;
247
+ export { liveCollection } from "@omg-dev/sdk/realtime";
248
+ export type { RealtimeCollection as OmgLiveCollection, RealtimeCollectionOptions as OmgLiveCollectionOptions, } from "@omg-dev/sdk/realtime";
249
+ export type OmgChangeSource = import("@omg-dev/sdk/realtime").RealtimeChangeSource<OmgChangeTopic>;
333
250
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- const SOCKET_OPEN = 1;
1
+ import { RealtimeConnection } from "@omg-dev/sdk/realtime";
2
2
  const GRANT_REFRESH_SKEW_MS = 30_000;
3
3
  /**
4
4
  * Read the body ONCE, then decide whether it was JSON. `response.json()` on a
@@ -276,36 +276,8 @@ export function createGrantTransport(options) {
276
276
  openLiveSocket: (query) => openSocket(query ? `/api/live/ws?${query}` : "/api/live/ws"),
277
277
  };
278
278
  }
279
- function browserEnvironment() {
280
- const doc = globalThis.document;
281
- const win = globalThis.window;
282
- if (!doc || !win || typeof doc.addEventListener !== "function" || typeof win.addEventListener !== "function")
283
- return null;
284
- return {
285
- isVisible: () => doc.visibilityState !== "hidden",
286
- onVisible(listener) {
287
- const handler = () => {
288
- if (doc.visibilityState === "visible")
289
- listener();
290
- };
291
- doc.addEventListener("visibilitychange", handler);
292
- return () => doc.removeEventListener("visibilitychange", handler);
293
- },
294
- isOffline: () => typeof navigator !== "undefined" && navigator.onLine === false,
295
- onOnline(listener) {
296
- win.addEventListener("online", listener);
297
- return () => win.removeEventListener("online", listener);
298
- },
299
- };
300
- }
301
279
  // Comfortably inside the server's 6 s typing lifetime, far above a keystroke rate.
302
280
  const TYPING_PING_MS = 2_500;
303
- // Consecutive failed attempts after which "reconnecting" becomes "offline".
304
- const OFFLINE_AFTER_ATTEMPTS = 5;
305
- function probeId(prefix) {
306
- const random = globalThis.crypto?.randomUUID?.();
307
- return random ?? `${prefix}-${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`;
308
- }
309
281
  function channelId(channel) {
310
282
  return `${channel.kind}:${channel.key}`;
311
283
  }
@@ -329,11 +301,7 @@ function capabilityQuery(capabilities) {
329
301
  }
330
302
  export class OmgLiveConnection {
331
303
  transport;
332
- socket = null;
333
- disposed = false;
334
- connecting = false;
335
- reconnectTimer = null;
336
- reconnectAttempt = 0;
304
+ connection;
337
305
  listeners = new Map();
338
306
  statusListeners = new Set();
339
307
  cursors = new Map();
@@ -342,30 +310,12 @@ export class OmgLiveConnection {
342
310
  connectionListeners = new Set();
343
311
  changeListeners = new Set();
344
312
  changesAnnounced = false;
345
- connectionState = {
346
- status: "connecting",
347
- attempt: 0,
348
- };
349
313
  capabilities;
350
- environment;
351
- socketQuery;
352
314
  /** Listeners that hear a session's events without subscribing it. */
353
315
  passiveListeners = new Map();
354
316
  /** The last send queue per session, replayed to a new listener. */
355
317
  queues = new Map();
356
318
  typingSentAt = new Map();
357
- onEvent;
358
- backoffMinMs;
359
- backoffMaxMs;
360
- latencyIntervalMs;
361
- visibilityProbeTimeoutMs;
362
- backoffMs;
363
- /** A retry skipped while hidden, run when the page is visible again. */
364
- pendingReconnect = false;
365
- stopEnvironment = null;
366
- latencyTimer = null;
367
- latencyProbe = null;
368
- visibilityProbe = null;
369
319
  /** Per session, the drafts in flight by draft id; see OmgDraft. */
370
320
  drafts = new Map();
371
321
  /**
@@ -378,111 +328,43 @@ export class OmgLiveConnection {
378
328
  constructor(transport, options = {}) {
379
329
  this.transport = transport;
380
330
  this.capabilities = options.capabilities ?? {};
381
- this.environment = options.environment === undefined ? browserEnvironment() : options.environment;
382
- this.socketQuery = options.socketQuery;
383
- this.onEvent = options.onEvent;
384
- this.backoffMinMs = options.timing?.backoffMinMs ?? 250;
385
- this.backoffMaxMs = options.timing?.backoffMaxMs ?? 10_000;
386
- this.latencyIntervalMs = options.timing?.latencyIntervalMs ?? 0;
387
- this.visibilityProbeTimeoutMs = options.timing?.visibilityProbeTimeoutMs ?? 500;
388
- this.backoffMs = this.backoffMinMs;
389
- }
390
- emitEvent(event, fields) {
391
- try {
392
- this.onEvent?.(event, fields);
393
- }
394
- catch {
395
- // Diagnostics must never break the connection.
396
- }
397
- }
398
- /** Listen to visibility and network once there is something to keep live. */
399
- watchEnvironment() {
400
- if (this.stopEnvironment || !this.environment)
401
- return;
402
- const stopVisible = this.environment.onVisible(() => this.onVisible());
403
- const stopOnline = this.environment.onOnline(() => {
404
- this.pendingReconnect = false;
405
- this.resetBackoff();
406
- this.ensureConnected();
331
+ this.connection = new RealtimeConnection({
332
+ openSocket: () => transport.openLiveSocket(options.socketQuery?.()),
333
+ environment: options.environment,
334
+ onEvent: options.onEvent,
335
+ timing: options.timing,
336
+ heartbeat: {
337
+ ping: id => ({ t: "ping", id }),
338
+ pongId: message => {
339
+ const frame = message;
340
+ return frame?.t === "pong" ? frame.id : undefined;
341
+ },
342
+ },
343
+ onOpen: () => {
344
+ this.sentChannels.clear();
345
+ this.scheduleSubscriptionFlush();
346
+ },
347
+ onDisconnect: () => {
348
+ this.changesAnnounced = false;
349
+ this.sentChannels.clear();
350
+ },
351
+ onState: state => {
352
+ for (const listener of this.connectionListeners) {
353
+ try {
354
+ listener(state);
355
+ }
356
+ catch { /* Isolate observers. */ }
357
+ }
358
+ },
359
+ onMessage: message => this.handleMessage(message),
407
360
  });
408
- this.stopEnvironment = () => {
409
- stopVisible();
410
- stopOnline();
411
- };
412
- }
413
- /**
414
- * A wake-up signal (page visible, network back) invalidates the retry
415
- * schedule: it was wound up against conditions that no longer hold.
416
- */
417
- resetBackoff() {
418
- this.backoffMs = this.backoffMinMs;
419
- this.reconnectAttempt = 0;
420
- if (this.reconnectTimer)
421
- clearTimeout(this.reconnectTimer);
422
- this.reconnectTimer = null;
423
- }
424
- onVisible() {
425
- if (this.disposed || !this.hasSubscribers())
426
- return;
427
- const socket = this.socket;
428
- if (this.pendingReconnect || !socket) {
429
- this.pendingReconnect = false;
430
- this.resetBackoff();
431
- this.ensureConnected();
432
- return;
433
- }
434
- if (socket.readyState !== SOCKET_OPEN)
435
- return;
436
- // A browser can leave a dead connection OPEN after sleep or a tab switch.
437
- // The server answers a live socket in milliseconds, so no answer within
438
- // the probe timeout means dead: close it and take the normal reconnect.
439
- if (this.visibilityProbe)
440
- clearTimeout(this.visibilityProbe.timer);
441
- const id = probeId("visible");
442
- this.latencyProbe = { id, startedAt: Date.now() };
443
- const timer = setTimeout(() => {
444
- if (this.visibilityProbe?.id !== id)
445
- return;
446
- this.visibilityProbe = null;
447
- this.emitEvent("visibility_probe_timeout", { elapsedMs: this.visibilityProbeTimeoutMs });
448
- if (this.socket === socket)
449
- this.dropSocket();
450
- try {
451
- socket.close(4000, "visibility probe timeout");
452
- }
453
- catch { }
454
- this.resetBackoff();
455
- this.ensureConnected();
456
- }, this.visibilityProbeTimeoutMs);
457
- this.visibilityProbe = { id, socket, timer };
458
- this.send({ t: "ping", id });
459
- }
460
- probeLatency() {
461
- if (!this.socket || this.socket.readyState !== SOCKET_OPEN)
462
- return;
463
- const id = probeId("ping");
464
- this.latencyProbe = { id, startedAt: Date.now() };
465
- this.send({ t: "ping", id });
466
- }
467
- /** Forget the current socket without scheduling anything. */
468
- dropSocket() {
469
- this.socket = null;
470
- this.changesAnnounced = false;
471
- this.sentChannels.clear();
472
- if (this.latencyTimer)
473
- clearInterval(this.latencyTimer);
474
- this.latencyTimer = null;
475
- this.latencyProbe = null;
476
- if (this.visibilityProbe)
477
- clearTimeout(this.visibilityProbe.timer);
478
- this.visibilityProbe = null;
479
361
  }
480
362
  get state() {
481
- return this.connectionState;
363
+ return this.connection.state;
482
364
  }
483
365
  subscribeConnection(listener) {
484
366
  this.connectionListeners.add(listener);
485
- listener(this.connectionState);
367
+ listener(this.connection.state);
486
368
  return () => this.connectionListeners.delete(listener);
487
369
  }
488
370
  /** Fleet status shares the transcript socket and stays open while observed. */
@@ -580,14 +462,9 @@ export class OmgLiveConnection {
580
462
  * opening socket is kept.
581
463
  */
582
464
  reconnectNow(options = {}) {
583
- this.pendingReconnect = false;
584
- this.resetBackoff();
585
- if (options.force !== false)
586
- this.closeSocket(false);
587
- this.ensureConnected();
465
+ this.connection.reconnect(options);
588
466
  }
589
467
  dispose() {
590
- this.disposed = true;
591
468
  this.changeListeners.clear();
592
469
  this.changesAnnounced = false;
593
470
  this.listeners.clear();
@@ -595,123 +472,20 @@ export class OmgLiveConnection {
595
472
  this.queues.clear();
596
473
  this.statusListeners.clear();
597
474
  this.connectionListeners.clear();
598
- if (this.reconnectTimer)
599
- clearTimeout(this.reconnectTimer);
600
- this.reconnectTimer = null;
601
- this.stopEnvironment?.();
602
- this.stopEnvironment = null;
603
- this.closeSocket();
604
- }
605
- publishConnection(state) {
606
- this.connectionState = state;
607
- for (const listener of this.connectionListeners)
608
- listener(state);
475
+ this.connection.dispose();
609
476
  }
610
477
  ensureConnected() {
611
- if (this.disposed ||
612
- this.connecting ||
613
- !this.hasSubscribers() ||
614
- (this.socket && (this.socket.readyState === 0 || this.socket.readyState === SOCKET_OPEN))) {
615
- return;
616
- }
617
- this.connecting = true;
618
- this.watchEnvironment();
619
- // Once "offline", a silent retry must not flash "reconnecting" and back:
620
- // the label stays until a connection succeeds.
621
- this.publishConnection({
622
- ...this.connectionState,
623
- status: this.connectionState.status === "offline" ? "offline" : this.reconnectAttempt ? "reconnecting" : "connecting",
624
- attempt: this.reconnectAttempt,
625
- });
626
- void this.transport.openLiveSocket(this.socketQuery?.()).then((socket) => {
627
- if (this.disposed || !this.hasSubscribers()) {
628
- socket.close();
629
- this.connecting = false;
630
- return;
631
- }
632
- this.socket = socket;
633
- this.connecting = false;
634
- socket.addEventListener("open", () => {
635
- if (this.socket !== socket)
636
- return;
637
- this.emitEvent("open", { reconnects: this.reconnectAttempt });
638
- this.reconnectAttempt = 0;
639
- this.backoffMs = this.backoffMinMs;
640
- this.sentChannels.clear();
641
- this.publishConnection({ ...this.connectionState, status: "live", attempt: 0 });
642
- this.scheduleSubscriptionFlush();
643
- if (this.latencyIntervalMs > 0) {
644
- this.probeLatency();
645
- if (this.latencyTimer)
646
- clearInterval(this.latencyTimer);
647
- this.latencyTimer = setInterval(() => this.probeLatency(), this.latencyIntervalMs);
648
- }
649
- });
650
- socket.addEventListener("message", (event) => {
651
- if (this.socket !== socket || typeof event.data !== "string")
652
- return;
653
- try {
654
- this.handleMessage(JSON.parse(event.data));
655
- }
656
- catch {
657
- // A malformed frame is isolated to that frame.
658
- }
659
- });
660
- socket.addEventListener("close", (event) => {
661
- if (this.socket !== socket)
662
- return;
663
- this.dropSocket();
664
- this.scheduleReconnect(typeof event?.code === "number" ? event.code : null, event?.reason || null);
665
- });
666
- socket.addEventListener("error", () => {
667
- if (this.socket === socket)
668
- socket.close();
669
- });
670
- }, (error) => {
671
- this.connecting = false;
672
- this.scheduleReconnect(null, error instanceof Error ? error.message : "socket open failed");
673
- });
674
- }
675
- scheduleReconnect(code, reason) {
676
- if (this.disposed || !this.hasSubscribers() || this.reconnectTimer)
677
- return;
678
- this.reconnectAttempt += 1;
679
- this.emitEvent("reconnect", { attempt: this.reconnectAttempt, backoffMs: this.backoffMs, code, reason });
680
- const offline = this.environment?.isOffline() === true || this.reconnectAttempt >= OFFLINE_AFTER_ATTEMPTS;
681
- this.publishConnection({
682
- ...this.connectionState,
683
- status: offline || this.connectionState.status === "offline" ? "offline" : "reconnecting",
684
- attempt: this.reconnectAttempt,
685
- lastCloseCode: code,
686
- lastCloseReason: reason,
687
- latencyMs: null,
688
- });
689
- // While nobody can see the page, wait; becoming visible reconnects at once.
690
- if (this.environment && !this.environment.isVisible()) {
691
- this.pendingReconnect = true;
692
- return;
693
- }
694
- // Spread retries (±25%) so many clients do not reconnect in step.
695
- const delay = Math.round(this.backoffMs * (0.75 + Math.random() * 0.5));
696
- this.backoffMs = Math.min(this.backoffMaxMs, this.backoffMs * 2);
697
- this.reconnectTimer = setTimeout(() => {
698
- this.reconnectTimer = null;
699
- this.ensureConnected();
700
- }, delay);
701
- }
702
- closeSocket(markDisposed = true) {
703
- const socket = this.socket;
704
- this.dropSocket();
705
- if (socket)
706
- socket.close(markDisposed ? 1000 : 4000, "client transition");
478
+ if (this.hasSubscribers())
479
+ this.connection.connect();
707
480
  }
481
+ closeSocket() { this.connection.disconnect(); }
708
482
  scheduleSubscriptionFlush() {
709
483
  if (this.pendingFlush)
710
484
  return;
711
485
  this.pendingFlush = true;
712
486
  queueMicrotask(() => {
713
487
  this.pendingFlush = false;
714
- if (!this.socket || this.socket.readyState !== SOCKET_OPEN)
488
+ if (!this.connection.isOpen)
715
489
  return;
716
490
  const channels = [];
717
491
  for (const sessionId of this.listeners.keys()) {
@@ -732,12 +506,7 @@ export class OmgLiveConnection {
732
506
  this.send({ t: "subscribe", channels, ...subscribeCapabilities(this.capabilities) });
733
507
  });
734
508
  }
735
- send(payload) {
736
- if (!this.socket || this.socket.readyState !== SOCKET_OPEN)
737
- return false;
738
- this.socket.send(JSON.stringify(payload));
739
- return true;
740
- }
509
+ send(payload) { return this.connection.send(payload); }
741
510
  // The wire carries deltas; a client wants the text. A part with `reset` (or
742
511
  // a `text-start`) restarts its draft, a `text-delta` extends it, and the
743
512
  // draft's `kind` is the part's, defaulting to a reply for servers that
@@ -807,18 +576,8 @@ export class OmgLiveConnection {
807
576
  this.send({ t: "pong", ...(message.id ? { id: message.id } : {}) });
808
577
  return;
809
578
  }
810
- if (message.t === "pong") {
811
- if (message.id && this.visibilityProbe?.id === message.id) {
812
- clearTimeout(this.visibilityProbe.timer);
813
- this.visibilityProbe = null;
814
- }
815
- const probe = this.latencyProbe;
816
- if (message.id && probe?.id === message.id) {
817
- this.latencyProbe = null;
818
- this.publishConnection({ ...this.connectionState, latencyMs: Math.max(1, Date.now() - probe.startedAt) });
819
- }
579
+ if (message.t === "pong")
820
580
  return;
821
- }
822
581
  if ("kind" in message &&
823
582
  message.kind === "transcript" &&
824
583
  "key" in message &&
@@ -953,87 +712,7 @@ export class OmgClient {
953
712
  this.live.dispose();
954
713
  }
955
714
  }
956
- const DEFAULT_BACKSTOP_MS = 5 * 60_000;
957
- /**
958
- * A list a client shows, kept current from the server's change announcements.
959
- *
960
- * It reads the list once, then re-reads it when the live socket says `topic`
961
- * changed or when the socket opens (changes made while it was closed were not
962
- * announced). While the server announces changes it polls only every
963
- * `backstopMs`; otherwise every `pollMs`, which is how a client talks to an
964
- * older server. A read already running absorbs further triggers into one more
965
- * read after it, so a burst of changes costs at most two reads.
966
- *
967
- * A failed read keeps the last value. The caller decides what an error means.
968
- */
969
- export function liveCollection(source, topic, load, options) {
970
- const backstopMs = options.backstopMs ?? DEFAULT_BACKSTOP_MS;
971
- const listeners = new Set();
972
- let value;
973
- let reading = null;
974
- let readAgain = false;
975
- let lastReadAt = 0;
976
- let timer = null;
977
- let stopChanges = null;
978
- const read = () => {
979
- if (reading) {
980
- readAgain = true;
981
- return reading;
982
- }
983
- lastReadAt = Date.now();
984
- reading = load()
985
- .then((next) => {
986
- value = next;
987
- for (const listener of listeners)
988
- listener(next);
989
- })
990
- .catch(() => {
991
- // Keep the last value; the next trigger or poll tries again.
992
- })
993
- .finally(() => {
994
- reading = null;
995
- if (readAgain && listeners.size) {
996
- readAgain = false;
997
- void read();
998
- }
999
- });
1000
- return reading;
1001
- };
1002
- const start = () => {
1003
- stopChanges = source.subscribeChanges((topics) => {
1004
- if (topics.length === 0 || topics.includes(topic))
1005
- void read();
1006
- });
1007
- timer = setInterval(() => {
1008
- const every = source.announcesChanges ? backstopMs : options.pollMs;
1009
- if (Date.now() - lastReadAt >= every)
1010
- void read();
1011
- }, Math.min(options.pollMs, backstopMs));
1012
- void read();
1013
- };
1014
- const stop = () => {
1015
- stopChanges?.();
1016
- stopChanges = null;
1017
- if (timer)
1018
- clearInterval(timer);
1019
- timer = null;
1020
- readAgain = false;
1021
- };
1022
- return {
1023
- peek: () => value,
1024
- subscribe(listener) {
1025
- listeners.add(listener);
1026
- if (listeners.size === 1)
1027
- start();
1028
- else if (value !== undefined)
1029
- listener(value);
1030
- return () => {
1031
- listeners.delete(listener);
1032
- if (!listeners.size)
1033
- stop();
1034
- };
1035
- },
1036
- refresh: read,
1037
- };
1038
- }
715
+ // Compatibility names for existing Computer clients. The SDK owns view reads,
716
+ // invalidation coalescing and cleanup as well as the socket lifecycle.
717
+ export { liveCollection } from "@omg-dev/sdk/realtime";
1039
718
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omg-dev/client",
3
- "version": "0.6.264",
3
+ "version": "0.6.266",
4
4
  "description": "Transport-agnostic OMG API client and multiplexed live connection.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://omg.dev",
@@ -24,7 +24,8 @@
24
24
  }
25
25
  },
26
26
  "dependencies": {
27
- "@omg-dev/protocol": "0.6.264"
27
+ "@omg-dev/protocol": "0.6.266",
28
+ "@omg-dev/sdk": "0.4.54"
28
29
  },
29
30
  "publishConfig": {
30
31
  "access": "public"