@replit/river 0.10.8 → 0.10.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.
@@ -57,8 +57,6 @@ var WebSocketClientTransport = class extends Transport {
57
57
  log?.info(`${this.clientId} -- establishing a new websocket to ${to}`);
58
58
  const ws = await this.wsGetter(to);
59
59
  if (ws.readyState === ws.OPEN) {
60
- if (this.state !== "open")
61
- return resolve({ err: "transport is closed" });
62
60
  return resolve({ ws });
63
61
  }
64
62
  if (ws.readyState === ws.CLOSING || ws.readyState === ws.CLOSED) {
@@ -66,14 +64,10 @@ var WebSocketClientTransport = class extends Transport {
66
64
  }
67
65
  const onOpen = () => {
68
66
  ws.removeEventListener("open", onOpen);
69
- if (this.state !== "open")
70
- return resolve({ err: "transport is closed" });
71
67
  resolve({ ws });
72
68
  };
73
69
  const onClose = (evt) => {
74
70
  ws.removeEventListener("close", onClose);
75
- if (this.state !== "open")
76
- return resolve({ err: "transport is closed" });
77
71
  resolve({ err: evt.reason });
78
72
  };
79
73
  ws.addEventListener("open", onOpen);
@@ -82,6 +76,13 @@ var WebSocketClientTransport = class extends Transport {
82
76
  this.reconnectPromises.set(to, reconnectPromise);
83
77
  }
84
78
  const res = await reconnectPromise;
79
+ if (this.state !== "open") {
80
+ this.reconnectPromises.delete(to);
81
+ if ("ws" in res) {
82
+ res.ws.close();
83
+ }
84
+ return;
85
+ }
85
86
  if ("ws" in res && res.ws.readyState === res.ws.OPEN) {
86
87
  if (res.ws === this.connections.get(to)?.ws) {
87
88
  return;
@@ -447,8 +447,6 @@ var WebSocketClientTransport = class extends Transport {
447
447
  log?.info(`${this.clientId} -- establishing a new websocket to ${to}`);
448
448
  const ws = await this.wsGetter(to);
449
449
  if (ws.readyState === ws.OPEN) {
450
- if (this.state !== "open")
451
- return resolve({ err: "transport is closed" });
452
450
  return resolve({ ws });
453
451
  }
454
452
  if (ws.readyState === ws.CLOSING || ws.readyState === ws.CLOSED) {
@@ -456,14 +454,10 @@ var WebSocketClientTransport = class extends Transport {
456
454
  }
457
455
  const onOpen = () => {
458
456
  ws.removeEventListener("open", onOpen);
459
- if (this.state !== "open")
460
- return resolve({ err: "transport is closed" });
461
457
  resolve({ ws });
462
458
  };
463
459
  const onClose = (evt) => {
464
460
  ws.removeEventListener("close", onClose);
465
- if (this.state !== "open")
466
- return resolve({ err: "transport is closed" });
467
461
  resolve({ err: evt.reason });
468
462
  };
469
463
  ws.addEventListener("open", onOpen);
@@ -472,6 +466,13 @@ var WebSocketClientTransport = class extends Transport {
472
466
  this.reconnectPromises.set(to, reconnectPromise);
473
467
  }
474
468
  const res = await reconnectPromise;
469
+ if (this.state !== "open") {
470
+ this.reconnectPromises.delete(to);
471
+ if ("ws" in res) {
472
+ res.ws.close();
473
+ }
474
+ return;
475
+ }
475
476
  if ("ws" in res && res.ws.readyState === res.ws.OPEN) {
476
477
  if (res.ws === this.connections.get(to)?.ws) {
477
478
  return;
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  WebSocketClientTransport
3
- } from "../../../chunk-WKVQ64U6.js";
3
+ } from "../../../chunk-FTVAZZ6B.js";
4
4
  import "../../../chunk-L7D75G4K.js";
5
5
  import "../../../chunk-R6H2BIMC.js";
6
6
  import "../../../chunk-LQXPKF3A.js";
@@ -484,8 +484,6 @@ var WebSocketClientTransport = class extends Transport {
484
484
  log?.info(`${this.clientId} -- establishing a new websocket to ${to}`);
485
485
  const ws = await this.wsGetter(to);
486
486
  if (ws.readyState === ws.OPEN) {
487
- if (this.state !== "open")
488
- return resolve({ err: "transport is closed" });
489
487
  return resolve({ ws });
490
488
  }
491
489
  if (ws.readyState === ws.CLOSING || ws.readyState === ws.CLOSED) {
@@ -493,14 +491,10 @@ var WebSocketClientTransport = class extends Transport {
493
491
  }
494
492
  const onOpen = () => {
495
493
  ws.removeEventListener("open", onOpen);
496
- if (this.state !== "open")
497
- return resolve({ err: "transport is closed" });
498
494
  resolve({ ws });
499
495
  };
500
496
  const onClose = (evt) => {
501
497
  ws.removeEventListener("close", onClose);
502
- if (this.state !== "open")
503
- return resolve({ err: "transport is closed" });
504
498
  resolve({ err: evt.reason });
505
499
  };
506
500
  ws.addEventListener("open", onOpen);
@@ -509,6 +503,13 @@ var WebSocketClientTransport = class extends Transport {
509
503
  this.reconnectPromises.set(to, reconnectPromise);
510
504
  }
511
505
  const res = await reconnectPromise;
506
+ if (this.state !== "open") {
507
+ this.reconnectPromises.delete(to);
508
+ if ("ws" in res) {
509
+ res.ws.close();
510
+ }
511
+ return;
512
+ }
512
513
  if ("ws" in res && res.ws.readyState === res.ws.OPEN) {
513
514
  if (res.ws === this.connections.get(to)?.ws) {
514
515
  return;
@@ -4,7 +4,7 @@ import {
4
4
  } from "../chunk-3JGVFWKQ.js";
5
5
  import {
6
6
  WebSocketClientTransport
7
- } from "../chunk-WKVQ64U6.js";
7
+ } from "../chunk-FTVAZZ6B.js";
8
8
  import {
9
9
  WebSocketServerTransport
10
10
  } from "../chunk-PJ2EUO7O.js";
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@replit/river",
3
3
  "description": "It's like tRPC but... with JSON Schema Support, duplex streaming and support for service multiplexing. Transport agnostic!",
4
- "version": "0.10.8",
4
+ "version": "0.10.9",
5
5
  "type": "module",
6
6
  "exports": {
7
7
  ".": {