@replit/river 0.25.2 → 0.26.1

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.
Files changed (53) hide show
  1. package/dist/{chunk-GDHQCPWW.js → chunk-4W5LENT2.js} +2 -2
  2. package/dist/{chunk-GDHQCPWW.js.map → chunk-4W5LENT2.js.map} +1 -1
  3. package/dist/{chunk-PF74DCPQ.js → chunk-6UVTCZ6K.js} +5 -5
  4. package/dist/chunk-6UVTCZ6K.js.map +1 -0
  5. package/dist/{chunk-ZWMWRM23.js → chunk-AYIMQWS7.js} +2 -2
  6. package/dist/{chunk-QXMZJ7LF.js → chunk-IVNX5H6C.js} +56 -44
  7. package/dist/chunk-IVNX5H6C.js.map +1 -0
  8. package/dist/{chunk-Q3PZBJXR.js → chunk-M43R4RPL.js} +10 -4
  9. package/dist/chunk-M43R4RPL.js.map +1 -0
  10. package/dist/{chunk-EHD2JJBW.js → chunk-UQOD22AN.js} +14 -4
  11. package/dist/chunk-UQOD22AN.js.map +1 -0
  12. package/dist/{chunk-ONIPHO7J.js → chunk-XRI2BXMM.js} +23 -9
  13. package/dist/chunk-XRI2BXMM.js.map +1 -0
  14. package/dist/{client-edc8e2de.d.ts → client-0f636b3a.d.ts} +2 -2
  15. package/dist/{connection-ef50ac3a.d.ts → connection-07e97a79.d.ts} +1 -1
  16. package/dist/{handshake-12d57161.d.ts → handshake-8752f79e.d.ts} +10 -6
  17. package/dist/logging/index.d.cts +1 -1
  18. package/dist/logging/index.d.ts +1 -1
  19. package/dist/{message-e6c560fd.d.ts → message-57296605.d.ts} +3 -1
  20. package/dist/router/index.cjs +12 -3
  21. package/dist/router/index.cjs.map +1 -1
  22. package/dist/router/index.d.cts +8 -8
  23. package/dist/router/index.d.ts +8 -8
  24. package/dist/router/index.js +2 -2
  25. package/dist/{server-f8228636.d.ts → server-e304daec.d.ts} +2 -2
  26. package/dist/{services-4b9e5232.d.ts → services-fc99aae1.d.ts} +3 -3
  27. package/dist/transport/impls/ws/client.cjs +41 -12
  28. package/dist/transport/impls/ws/client.cjs.map +1 -1
  29. package/dist/transport/impls/ws/client.d.cts +4 -4
  30. package/dist/transport/impls/ws/client.d.ts +4 -4
  31. package/dist/transport/impls/ws/client.js +5 -5
  32. package/dist/transport/impls/ws/server.cjs +73 -47
  33. package/dist/transport/impls/ws/server.cjs.map +1 -1
  34. package/dist/transport/impls/ws/server.d.cts +4 -4
  35. package/dist/transport/impls/ws/server.d.ts +4 -4
  36. package/dist/transport/impls/ws/server.js +5 -5
  37. package/dist/transport/index.cjs +92 -52
  38. package/dist/transport/index.cjs.map +1 -1
  39. package/dist/transport/index.d.cts +4 -4
  40. package/dist/transport/index.d.ts +4 -4
  41. package/dist/transport/index.js +5 -5
  42. package/dist/util/testHelpers.cjs +20 -5
  43. package/dist/util/testHelpers.cjs.map +1 -1
  44. package/dist/util/testHelpers.d.cts +4 -4
  45. package/dist/util/testHelpers.d.ts +4 -4
  46. package/dist/util/testHelpers.js +3 -3
  47. package/package.json +1 -1
  48. package/dist/chunk-EHD2JJBW.js.map +0 -1
  49. package/dist/chunk-ONIPHO7J.js.map +0 -1
  50. package/dist/chunk-PF74DCPQ.js.map +0 -1
  51. package/dist/chunk-Q3PZBJXR.js.map +0 -1
  52. package/dist/chunk-QXMZJ7LF.js.map +0 -1
  53. /package/dist/{chunk-ZWMWRM23.js.map → chunk-AYIMQWS7.js.map} +0 -0
@@ -1,14 +1,14 @@
1
- import { A as AnyServiceSchemaMap, I as InstantiatedServiceSchemaMap, P as PayloadType, b as Result, R as RiverError } from '../services-4b9e5232.js';
2
- export { C as Client, E as Err, O as Ok, z as Output, j as ProcErrors, f as ProcHandler, g as ProcInit, h as ProcInput, i as ProcOutput, k as ProcType, a as Procedure, p as ProcedureMap, d as ProcedureResult, q as RPCProcedure, y as ResultUnwrapErr, x as ResultUnwrapOk, w as RiverErrorSchema, c as RiverUncaughtSchema, o as SerializedProcedureSchema, m as SerializedServerSchema, n as SerializedServiceSchema, S as Service, e as ServiceConfiguration, l as ServiceSchema, t as StreamProcedure, r as SubscriptionProcedure, v as UNCAUGHT_ERROR, U as UploadProcedure, V as ValidProcType, u as createClient, s as serializeSchema } from '../services-4b9e5232.js';
1
+ import { A as AnyServiceSchemaMap, I as InstantiatedServiceSchemaMap, P as PayloadType, b as Result, R as RiverError } from '../services-fc99aae1.js';
2
+ export { C as Client, E as Err, O as Ok, z as Output, j as ProcErrors, f as ProcHandler, g as ProcInit, h as ProcInput, i as ProcOutput, k as ProcType, a as Procedure, p as ProcedureMap, d as ProcedureResult, q as RPCProcedure, y as ResultUnwrapErr, x as ResultUnwrapOk, w as RiverErrorSchema, c as RiverUncaughtSchema, o as SerializedProcedureSchema, m as SerializedServerSchema, n as SerializedServiceSchema, S as Service, e as ServiceConfiguration, l as ServiceSchema, t as StreamProcedure, r as SubscriptionProcedure, v as UNCAUGHT_ERROR, U as UploadProcedure, V as ValidProcType, u as createClient, s as serializeSchema } from '../services-fc99aae1.js';
3
3
  import { Static } from '@sinclair/typebox';
4
4
  import { Pushable } from 'it-pushable';
5
- import { C as Connection, s as ServerHandshakeOptions, o as ServiceContext } from '../handshake-12d57161.js';
6
- export { t as ParsedMetadata, u as ServiceContextWithState, v as ServiceContextWithTransportInfo, w as createClientHandshakeOptions, x as createServerHandshakeOptions } from '../handshake-12d57161.js';
7
- import { S as ServerTransport } from '../server-f8228636.js';
8
- import '../message-e6c560fd.js';
5
+ import { C as Connection, s as ServerHandshakeOptions, o as ServiceContext } from '../handshake-8752f79e.js';
6
+ export { t as ParsedMetadata, u as ServiceContextWithState, v as ServiceContextWithTransportInfo, w as createClientHandshakeOptions, x as createServerHandshakeOptions } from '../handshake-8752f79e.js';
7
+ import { S as ServerTransport } from '../server-e304daec.js';
8
+ import '../message-57296605.js';
9
9
  import '@sinclair/typebox/value';
10
10
  import '@opentelemetry/api';
11
- import '../client-edc8e2de.js';
11
+ import '../client-0f636b3a.js';
12
12
  import '../types-3e5768ec.js';
13
13
 
14
14
  /**
@@ -45,6 +45,6 @@ declare function createServer<Services extends AnyServiceSchemaMap>(transport: S
45
45
  extendedContext?: Omit<ServiceContext, 'state'>;
46
46
  }>): Server<Services>;
47
47
 
48
- var version = "0.25.2";
48
+ var version = "0.26.1";
49
49
 
50
50
  export { PayloadType, version as RIVER_VERSION, Result, RiverError, Server, ServiceContext, createServer };
@@ -1,14 +1,14 @@
1
- import { A as AnyServiceSchemaMap, I as InstantiatedServiceSchemaMap, P as PayloadType, b as Result, R as RiverError } from '../services-4b9e5232.js';
2
- export { C as Client, E as Err, O as Ok, z as Output, j as ProcErrors, f as ProcHandler, g as ProcInit, h as ProcInput, i as ProcOutput, k as ProcType, a as Procedure, p as ProcedureMap, d as ProcedureResult, q as RPCProcedure, y as ResultUnwrapErr, x as ResultUnwrapOk, w as RiverErrorSchema, c as RiverUncaughtSchema, o as SerializedProcedureSchema, m as SerializedServerSchema, n as SerializedServiceSchema, S as Service, e as ServiceConfiguration, l as ServiceSchema, t as StreamProcedure, r as SubscriptionProcedure, v as UNCAUGHT_ERROR, U as UploadProcedure, V as ValidProcType, u as createClient, s as serializeSchema } from '../services-4b9e5232.js';
1
+ import { A as AnyServiceSchemaMap, I as InstantiatedServiceSchemaMap, P as PayloadType, b as Result, R as RiverError } from '../services-fc99aae1.js';
2
+ export { C as Client, E as Err, O as Ok, z as Output, j as ProcErrors, f as ProcHandler, g as ProcInit, h as ProcInput, i as ProcOutput, k as ProcType, a as Procedure, p as ProcedureMap, d as ProcedureResult, q as RPCProcedure, y as ResultUnwrapErr, x as ResultUnwrapOk, w as RiverErrorSchema, c as RiverUncaughtSchema, o as SerializedProcedureSchema, m as SerializedServerSchema, n as SerializedServiceSchema, S as Service, e as ServiceConfiguration, l as ServiceSchema, t as StreamProcedure, r as SubscriptionProcedure, v as UNCAUGHT_ERROR, U as UploadProcedure, V as ValidProcType, u as createClient, s as serializeSchema } from '../services-fc99aae1.js';
3
3
  import { Static } from '@sinclair/typebox';
4
4
  import { Pushable } from 'it-pushable';
5
- import { C as Connection, s as ServerHandshakeOptions, o as ServiceContext } from '../handshake-12d57161.js';
6
- export { t as ParsedMetadata, u as ServiceContextWithState, v as ServiceContextWithTransportInfo, w as createClientHandshakeOptions, x as createServerHandshakeOptions } from '../handshake-12d57161.js';
7
- import { S as ServerTransport } from '../server-f8228636.js';
8
- import '../message-e6c560fd.js';
5
+ import { C as Connection, s as ServerHandshakeOptions, o as ServiceContext } from '../handshake-8752f79e.js';
6
+ export { t as ParsedMetadata, u as ServiceContextWithState, v as ServiceContextWithTransportInfo, w as createClientHandshakeOptions, x as createServerHandshakeOptions } from '../handshake-8752f79e.js';
7
+ import { S as ServerTransport } from '../server-e304daec.js';
8
+ import '../message-57296605.js';
9
9
  import '@sinclair/typebox/value';
10
10
  import '@opentelemetry/api';
11
- import '../client-edc8e2de.js';
11
+ import '../client-0f636b3a.js';
12
12
  import '../types-3e5768ec.js';
13
13
 
14
14
  /**
@@ -45,6 +45,6 @@ declare function createServer<Services extends AnyServiceSchemaMap>(transport: S
45
45
  extendedContext?: Omit<ServiceContext, 'state'>;
46
46
  }>): Server<Services>;
47
47
 
48
- var version = "0.25.2";
48
+ var version = "0.26.1";
49
49
 
50
50
  export { PayloadType, version as RIVER_VERSION, Result, RiverError, Server, ServiceContext, createServer };
@@ -10,10 +10,10 @@ import {
10
10
  createServer,
11
11
  createServerHandshakeOptions,
12
12
  serializeSchema
13
- } from "../chunk-GDHQCPWW.js";
13
+ } from "../chunk-4W5LENT2.js";
14
14
  import {
15
15
  version
16
- } from "../chunk-EHD2JJBW.js";
16
+ } from "../chunk-UQOD22AN.js";
17
17
  export {
18
18
  Err,
19
19
  Ok,
@@ -1,5 +1,5 @@
1
- import { C as Connection, y as CommonSession, d as SessionState, z as SessionHandshakingListeners, A as CommonSessionProps, T as Transport, B as ServerTransportOptions, s as ServerHandshakeOptions, t as ParsedMetadata, D as ServerSession, c as ProvidedServerTransportOptions } from './handshake-12d57161.js';
2
- import { M as MessageMetadata, a as TransportMessage, c as TransportClientId, P as PartialTransportMessage, b as OpaqueTransportMessage } from './message-e6c560fd.js';
1
+ import { C as Connection, y as CommonSession, d as SessionState, z as SessionHandshakingListeners, A as CommonSessionProps, T as Transport, B as ServerTransportOptions, s as ServerHandshakeOptions, t as ParsedMetadata, D as ServerSession, c as ProvidedServerTransportOptions } from './handshake-8752f79e.js';
2
+ import { M as MessageMetadata, a as TransportMessage, c as TransportClientId, P as PartialTransportMessage, b as OpaqueTransportMessage } from './message-57296605.js';
3
3
 
4
4
  interface SessionWaitingForHandshakeProps<ConnType extends Connection> extends CommonSessionProps {
5
5
  conn: ConnType;
@@ -1,8 +1,8 @@
1
1
  import { Static, TObject, TUnion, TString, TSchema, TNever, TLiteral } from '@sinclair/typebox';
2
2
  import { Pushable } from 'it-pushable';
3
- import { C as Connection, p as ClientHandshakeOptions, v as ServiceContextWithTransportInfo, o as ServiceContext } from './handshake-12d57161.js';
4
- import { c as TransportClientId } from './message-e6c560fd.js';
5
- import { C as ClientTransport } from './client-edc8e2de.js';
3
+ import { C as Connection, p as ClientHandshakeOptions, v as ServiceContextWithTransportInfo, o as ServiceContext } from './handshake-8752f79e.js';
4
+ import { c as TransportClientId } from './message-57296605.js';
5
+ import { C as ClientTransport } from './client-0f636b3a.js';
6
6
 
7
7
  type AsyncIter<T> = AsyncGenerator<T, T>;
8
8
  /**
@@ -85,11 +85,20 @@ var ControlMessageHandshakeRequestSchema = import_typebox.Type.Object({
85
85
  var HandshakeErrorRetriableResponseCodes = import_typebox.Type.Union([
86
86
  import_typebox.Type.Literal("SESSION_STATE_MISMATCH")
87
87
  ]);
88
+ var HandshakeErrorCustomHandlerFatalResponseCodes = import_typebox.Type.Union([
89
+ // The custom validation handler rejected the handler because the client is unsupported.
90
+ import_typebox.Type.Literal("REJECTED_UNSUPPORTED_CLIENT"),
91
+ // The custom validation handler rejected the handshake.
92
+ import_typebox.Type.Literal("REJECTED_BY_CUSTOM_HANDLER")
93
+ ]);
88
94
  var HandshakeErrorFatalResponseCodes = import_typebox.Type.Union([
95
+ HandshakeErrorCustomHandlerFatalResponseCodes,
96
+ // The ciient sent a handshake that doesn't comply with the extended handshake metadata.
89
97
  import_typebox.Type.Literal("MALFORMED_HANDSHAKE_META"),
98
+ // The ciient sent a handshake that doesn't comply with ControlMessageHandshakeRequestSchema.
90
99
  import_typebox.Type.Literal("MALFORMED_HANDSHAKE"),
91
- import_typebox.Type.Literal("PROTOCOL_VERSION_MISMATCH"),
92
- import_typebox.Type.Literal("REJECTED_BY_CUSTOM_HANDLER")
100
+ // The client's protocol version does not match the server's.
101
+ import_typebox.Type.Literal("PROTOCOL_VERSION_MISMATCH")
93
102
  ]);
94
103
  var HandshakeErrorResponseCodes = import_typebox.Type.Union([
95
104
  HandshakeErrorRetriableResponseCodes,
@@ -599,7 +608,7 @@ var SessionNoConnection = class extends IdentifiedSession {
599
608
  var import_api = require("@opentelemetry/api");
600
609
 
601
610
  // package.json
602
- var version = "0.25.2";
611
+ var version = "0.26.1";
603
612
 
604
613
  // tracing/index.ts
605
614
  function getPropagationContext(ctx) {
@@ -650,7 +659,10 @@ var SessionWaitingForHandshake = class extends CommonSession {
650
659
  onHandshakeData = (msg) => {
651
660
  const parsedMsg = this.parseMsg(msg);
652
661
  if (parsedMsg === null) {
653
- this.listeners.onInvalidHandshake("could not parse message");
662
+ this.listeners.onInvalidHandshake(
663
+ "could not parse message",
664
+ "MALFORMED_HANDSHAKE"
665
+ );
654
666
  return;
655
667
  }
656
668
  this.listeners.onHandshake(parsedMsg);
@@ -696,7 +708,10 @@ var SessionHandshaking = class extends IdentifiedSession {
696
708
  onHandshakeData = (msg) => {
697
709
  const parsedMsg = this.parseMsg(msg);
698
710
  if (parsedMsg === null) {
699
- this.listeners.onInvalidHandshake("could not parse message");
711
+ this.listeners.onInvalidHandshake(
712
+ "could not parse message",
713
+ "MALFORMED_HANDSHAKE"
714
+ );
700
715
  return;
701
716
  }
702
717
  this.listeners.onHandshake(parsedMsg);
@@ -1186,8 +1201,8 @@ var Transport = class {
1186
1201
  removeEventListener(type, handler) {
1187
1202
  this.eventDispatcher.removeEventListener(type, handler);
1188
1203
  }
1189
- protocolError(type, message) {
1190
- this.eventDispatcher.dispatchEvent("protocolError", { type, message });
1204
+ protocolError(message) {
1205
+ this.eventDispatcher.dispatchEvent("protocolError", message);
1191
1206
  }
1192
1207
  /**
1193
1208
  * Default close implementation for transports. You should override this in the downstream
@@ -1381,13 +1396,17 @@ var ClientTransport = class extends Transport {
1381
1396
  onHandshake: (msg) => {
1382
1397
  this.onHandshakeResponse(handshakingSession, msg);
1383
1398
  },
1384
- onInvalidHandshake: (reason) => {
1399
+ onInvalidHandshake: (reason, code) => {
1385
1400
  this.log?.error(
1386
1401
  `invalid handshake: ${reason}`,
1387
1402
  handshakingSession.loggingMetadata
1388
1403
  );
1389
1404
  this.deleteSession(session);
1390
- this.protocolError(ProtocolError.HandshakeFailed, reason);
1405
+ this.protocolError({
1406
+ type: ProtocolError.HandshakeFailed,
1407
+ code,
1408
+ message: reason
1409
+ });
1391
1410
  },
1392
1411
  onHandshakeTimeout: () => {
1393
1412
  this.log?.error(
@@ -1436,7 +1455,11 @@ var ClientTransport = class extends Transport {
1436
1455
  this.tryReconnecting(session.to);
1437
1456
  } else {
1438
1457
  this.deleteSession(session);
1439
- this.protocolError(ProtocolError.HandshakeFailed, reason);
1458
+ this.protocolError({
1459
+ type: ProtocolError.HandshakeFailed,
1460
+ code: msg.payload.status.code,
1461
+ message: reason
1462
+ });
1440
1463
  }
1441
1464
  return;
1442
1465
  }
@@ -1470,7 +1493,10 @@ var ClientTransport = class extends Transport {
1470
1493
  onMessage: (msg2) => this.handleMsg(msg2),
1471
1494
  onInvalidMessage: (reason) => {
1472
1495
  this.deleteSession(connectedSession);
1473
- this.protocolError(ProtocolError.MessageOrderingViolated, reason);
1496
+ this.protocolError({
1497
+ type: ProtocolError.MessageOrderingViolated,
1498
+ message: reason
1499
+ });
1474
1500
  }
1475
1501
  });
1476
1502
  this.updateSession(connectedSession);
@@ -1501,7 +1527,10 @@ var ClientTransport = class extends Transport {
1501
1527
  const budgetConsumed = this.retryBudget.getBudgetConsumed();
1502
1528
  const errMsg = `tried to connect to ${to} but retry budget exceeded (more than ${budgetConsumed} attempts in the last ${this.retryBudget.totalBudgetRestoreTime}ms)`;
1503
1529
  this.log?.error(errMsg, session.loggingMetadata);
1504
- this.protocolError(ProtocolError.RetriesExceeded, errMsg);
1530
+ this.protocolError({
1531
+ type: ProtocolError.RetriesExceeded,
1532
+ message: errMsg
1533
+ });
1505
1534
  return;
1506
1535
  }
1507
1536
  const backoffMs = this.retryBudget.getBackoffMs();