@replit/river 0.209.4 → 0.209.6

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 (40) hide show
  1. package/dist/{chunk-MIO5URHT.js → chunk-LTSD2AMH.js} +2 -2
  2. package/dist/{chunk-MIO5URHT.js.map → chunk-LTSD2AMH.js.map} +1 -1
  3. package/dist/{chunk-VQAPXMIR.js → chunk-V2YMCSBX.js} +88 -5
  4. package/dist/chunk-V2YMCSBX.js.map +1 -0
  5. package/dist/codec/index.cjs +29 -2
  6. package/dist/codec/index.cjs.map +1 -1
  7. package/dist/codec/index.js +2 -2
  8. package/dist/{connection-T0wHyOsa.d.ts → connection-C2lYgRh0.d.ts} +6 -1
  9. package/dist/{connection-BWkuQM31.d.cts → connection-Dzkqj18h.d.cts} +6 -1
  10. package/dist/router/index.cjs +1 -1
  11. package/dist/router/index.cjs.map +1 -1
  12. package/dist/router/index.d.cts +1 -1
  13. package/dist/router/index.d.ts +1 -1
  14. package/dist/router/index.js +1 -1
  15. package/dist/testUtil/index.cjs +5 -1
  16. package/dist/testUtil/index.cjs.map +1 -1
  17. package/dist/testUtil/index.d.cts +1 -1
  18. package/dist/testUtil/index.d.ts +1 -1
  19. package/dist/testUtil/index.js +2 -2
  20. package/dist/transport/impls/ws/client.cjs +59 -55
  21. package/dist/transport/impls/ws/client.cjs.map +1 -1
  22. package/dist/transport/impls/ws/client.d.cts +1 -1
  23. package/dist/transport/impls/ws/client.d.ts +1 -1
  24. package/dist/transport/impls/ws/client.js +3 -5
  25. package/dist/transport/impls/ws/client.js.map +1 -1
  26. package/dist/transport/impls/ws/server.cjs +5 -1
  27. package/dist/transport/impls/ws/server.cjs.map +1 -1
  28. package/dist/transport/impls/ws/server.d.cts +1 -1
  29. package/dist/transport/impls/ws/server.d.ts +1 -1
  30. package/dist/transport/impls/ws/server.js +3 -5
  31. package/dist/transport/impls/ws/server.js.map +1 -1
  32. package/dist/transport/index.cjs +65 -3
  33. package/dist/transport/index.cjs.map +1 -1
  34. package/dist/transport/index.d.cts +2 -0
  35. package/dist/transport/index.d.ts +2 -0
  36. package/dist/transport/index.js +8 -4
  37. package/package.json +1 -9
  38. package/dist/chunk-SWRTP3YW.js +0 -62
  39. package/dist/chunk-SWRTP3YW.js.map +0 -1
  40. package/dist/chunk-VQAPXMIR.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  import { c as TransportClientId } from '../../../message-Dlsh5WDF.cjs';
2
2
  import { WebSocketServer } from 'ws';
3
- import { W as WebSocketConnection } from '../../../connection-BWkuQM31.cjs';
3
+ import { a as WebSocketConnection } from '../../../connection-Dzkqj18h.cjs';
4
4
  import { W as WsLike } from '../../../wslike-Dng9H1C7.cjs';
5
5
  import { S as ServerTransport } from '../../../server-BDSYa-CO.cjs';
6
6
  import { c as ProvidedServerTransportOptions } from '../../../transport-CxT7y8Qk.cjs';
@@ -1,6 +1,6 @@
1
1
  import { c as TransportClientId } from '../../../message-Dlsh5WDF.js';
2
2
  import { WebSocketServer } from 'ws';
3
- import { W as WebSocketConnection } from '../../../connection-T0wHyOsa.js';
3
+ import { a as WebSocketConnection } from '../../../connection-C2lYgRh0.js';
4
4
  import { W as WsLike } from '../../../wslike-Dng9H1C7.js';
5
5
  import { S as ServerTransport } from '../../../server-DFOzjvLh.js';
6
6
  import { c as ProvidedServerTransportOptions } from '../../../transport-pdbkDzmJ.js';
@@ -1,11 +1,9 @@
1
1
  import {
2
+ ServerTransport,
2
3
  WebSocketConnection
3
- } from "../../../chunk-SWRTP3YW.js";
4
- import {
5
- ServerTransport
6
- } from "../../../chunk-VQAPXMIR.js";
4
+ } from "../../../chunk-V2YMCSBX.js";
7
5
  import "../../../chunk-CC7RN7GI.js";
8
- import "../../../chunk-MIO5URHT.js";
6
+ import "../../../chunk-LTSD2AMH.js";
9
7
 
10
8
  // transport/impls/ws/server.ts
11
9
  function cleanHeaders(headers) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../transport/impls/ws/server.ts"],"sourcesContent":["import { TransportClientId } from '../../message';\nimport { WebSocketServer } from 'ws';\nimport { WebSocketConnection } from './connection';\nimport { WsLike } from './wslike';\nimport { ServerTransport } from '../../server';\nimport { ProvidedServerTransportOptions } from '../../options';\nimport { type IncomingMessage } from 'http';\nimport { TSchema } from '@sinclair/typebox';\n\nfunction cleanHeaders(\n headers: IncomingMessage['headers'],\n): Record<string, string> {\n const cleanedHeaders: Record<string, string> = {};\n\n for (const [key, value] of Object.entries(headers)) {\n if (!key.startsWith('sec-') && value) {\n const cleanedValue = Array.isArray(value) ? value[0] : value;\n cleanedHeaders[key] = cleanedValue;\n }\n }\n\n return cleanedHeaders;\n}\n\nexport class WebSocketServerTransport<\n MetadataSchema extends TSchema = TSchema,\n ParsedMetadata extends object = object,\n> extends ServerTransport<WebSocketConnection, MetadataSchema, ParsedMetadata> {\n wss: WebSocketServer;\n\n constructor(\n wss: WebSocketServer,\n clientId: TransportClientId,\n providedOptions?: ProvidedServerTransportOptions,\n ) {\n super(clientId, providedOptions);\n this.wss = wss;\n this.wss.on('connection', this.connectionHandler);\n }\n\n connectionHandler = (ws: WsLike, req: IncomingMessage) => {\n const conn = new WebSocketConnection(ws, {\n headers: cleanHeaders(req.headersDistinct),\n });\n\n this.handleConnection(conn);\n };\n\n close() {\n super.close();\n this.wss.off('connection', this.connectionHandler);\n }\n}\n"],"mappings":";;;;;;;;;;AASA,SAAS,aACP,SACwB;AACxB,QAAM,iBAAyC,CAAC;AAEhD,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,OAAO,GAAG;AAClD,QAAI,CAAC,IAAI,WAAW,MAAM,KAAK,OAAO;AACpC,YAAM,eAAe,MAAM,QAAQ,KAAK,IAAI,MAAM,CAAC,IAAI;AACvD,qBAAe,GAAG,IAAI;AAAA,IACxB;AAAA,EACF;AAEA,SAAO;AACT;AAEO,IAAM,2BAAN,cAGG,gBAAqE;AAAA,EAC7E;AAAA,EAEA,YACE,KACA,UACA,iBACA;AACA,UAAM,UAAU,eAAe;AAC/B,SAAK,MAAM;AACX,SAAK,IAAI,GAAG,cAAc,KAAK,iBAAiB;AAAA,EAClD;AAAA,EAEA,oBAAoB,CAAC,IAAY,QAAyB;AACxD,UAAM,OAAO,IAAI,oBAAoB,IAAI;AAAA,MACvC,SAAS,aAAa,IAAI,eAAe;AAAA,IAC3C,CAAC;AAED,SAAK,iBAAiB,IAAI;AAAA,EAC5B;AAAA,EAEA,QAAQ;AACN,UAAM,MAAM;AACZ,SAAK,IAAI,IAAI,cAAc,KAAK,iBAAiB;AAAA,EACnD;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../../transport/impls/ws/server.ts"],"sourcesContent":["import { TransportClientId } from '../../message';\nimport { WebSocketServer } from 'ws';\nimport { WebSocketConnection } from './connection';\nimport { WsLike } from './wslike';\nimport { ServerTransport } from '../../server';\nimport { ProvidedServerTransportOptions } from '../../options';\nimport { type IncomingMessage } from 'http';\nimport { TSchema } from '@sinclair/typebox';\n\nfunction cleanHeaders(\n headers: IncomingMessage['headers'],\n): Record<string, string> {\n const cleanedHeaders: Record<string, string> = {};\n\n for (const [key, value] of Object.entries(headers)) {\n if (!key.startsWith('sec-') && value) {\n const cleanedValue = Array.isArray(value) ? value[0] : value;\n cleanedHeaders[key] = cleanedValue;\n }\n }\n\n return cleanedHeaders;\n}\n\nexport class WebSocketServerTransport<\n MetadataSchema extends TSchema = TSchema,\n ParsedMetadata extends object = object,\n> extends ServerTransport<WebSocketConnection, MetadataSchema, ParsedMetadata> {\n wss: WebSocketServer;\n\n constructor(\n wss: WebSocketServer,\n clientId: TransportClientId,\n providedOptions?: ProvidedServerTransportOptions,\n ) {\n super(clientId, providedOptions);\n this.wss = wss;\n this.wss.on('connection', this.connectionHandler);\n }\n\n connectionHandler = (ws: WsLike, req: IncomingMessage) => {\n const conn = new WebSocketConnection(ws, {\n headers: cleanHeaders(req.headersDistinct),\n });\n\n this.handleConnection(conn);\n };\n\n close() {\n super.close();\n this.wss.off('connection', this.connectionHandler);\n }\n}\n"],"mappings":";;;;;;;;AASA,SAAS,aACP,SACwB;AACxB,QAAM,iBAAyC,CAAC;AAEhD,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,OAAO,GAAG;AAClD,QAAI,CAAC,IAAI,WAAW,MAAM,KAAK,OAAO;AACpC,YAAM,eAAe,MAAM,QAAQ,KAAK,IAAI,MAAM,CAAC,IAAI;AACvD,qBAAe,GAAG,IAAI;AAAA,IACxB;AAAA,EACF;AAEA,SAAO;AACT;AAEO,IAAM,2BAAN,cAGG,gBAAqE;AAAA,EAC7E;AAAA,EAEA,YACE,KACA,UACA,iBACA;AACA,UAAM,UAAU,eAAe;AAC/B,SAAK,MAAM;AACX,SAAK,IAAI,GAAG,cAAc,KAAK,iBAAiB;AAAA,EAClD;AAAA,EAEA,oBAAoB,CAAC,IAAY,QAAyB;AACxD,UAAM,OAAO,IAAI,oBAAoB,IAAI;AAAA,MACvC,SAAS,aAAa,IAAI,eAAe;AAAA,IAC3C,CAAC;AAED,SAAK,iBAAiB,IAAI;AAAA,EAC5B;AAAA,EAEA,QAAQ;AACN,UAAM,MAAM;AACZ,SAAK,IAAI,IAAI,cAAc,KAAK,iBAAiB;AAAA,EACnD;AACF;","names":[]}
@@ -27,7 +27,9 @@ __export(transport_exports, {
27
27
  ServerTransport: () => ServerTransport,
28
28
  SessionState: () => SessionState,
29
29
  Transport: () => Transport,
30
- TransportMessageSchema: () => TransportMessageSchema
30
+ TransportMessageSchema: () => TransportMessageSchema,
31
+ WebSocketCloseError: () => WebSocketCloseError,
32
+ WebSocketConnection: () => WebSocketConnection
31
33
  });
32
34
  module.exports = __toCommonJS(transport_exports);
33
35
 
@@ -158,6 +160,8 @@ var NaiveJsonCodec = {
158
160
  const val = this[key];
159
161
  if (val instanceof Uint8Array) {
160
162
  return { $t: uint8ArrayToBase64(val) };
163
+ } else if (typeof val === "bigint") {
164
+ return { $b: val.toString() };
161
165
  } else {
162
166
  return val;
163
167
  }
@@ -170,6 +174,8 @@ var NaiveJsonCodec = {
170
174
  function reviver(_key, val) {
171
175
  if (val?.$t !== void 0) {
172
176
  return base64ToUint8Array(val.$t);
177
+ } else if (val?.$b !== void 0) {
178
+ return BigInt(val.$b);
173
179
  } else {
174
180
  return val;
175
181
  }
@@ -641,7 +647,7 @@ function coerceErrorString(err) {
641
647
  }
642
648
 
643
649
  // package.json
644
- var version = "0.209.4";
650
+ var version = "0.209.6";
645
651
 
646
652
  // tracing/index.ts
647
653
  function getPropagationContext(ctx) {
@@ -2493,6 +2499,60 @@ var Connection = class {
2493
2499
  this.errorListener = void 0;
2494
2500
  }
2495
2501
  };
2502
+
2503
+ // transport/impls/ws/connection.ts
2504
+ var WS_HEALTHY_CLOSE_CODE = 1e3;
2505
+ var WebSocketCloseError = class extends Error {
2506
+ code;
2507
+ reason;
2508
+ constructor(code, reason) {
2509
+ super(`websocket closed with code and reason: ${code} - ${reason}`);
2510
+ this.code = code;
2511
+ this.reason = reason;
2512
+ }
2513
+ };
2514
+ var WebSocketConnection = class extends Connection {
2515
+ ws;
2516
+ extras;
2517
+ get loggingMetadata() {
2518
+ const metadata = super.loggingMetadata;
2519
+ if (this.extras) {
2520
+ metadata.extras = this.extras;
2521
+ }
2522
+ return metadata;
2523
+ }
2524
+ constructor(ws, extras) {
2525
+ super();
2526
+ this.ws = ws;
2527
+ this.extras = extras;
2528
+ this.ws.binaryType = "arraybuffer";
2529
+ let didError = false;
2530
+ this.ws.onerror = () => {
2531
+ didError = true;
2532
+ };
2533
+ this.ws.onclose = ({ code, reason }) => {
2534
+ if (didError) {
2535
+ const err = new WebSocketCloseError(code, reason);
2536
+ this.onError(err);
2537
+ }
2538
+ this.onClose();
2539
+ };
2540
+ this.ws.onmessage = (msg) => {
2541
+ this.onData(msg.data);
2542
+ };
2543
+ }
2544
+ send(payload) {
2545
+ try {
2546
+ this.ws.send(payload);
2547
+ return true;
2548
+ } catch {
2549
+ return false;
2550
+ }
2551
+ }
2552
+ close() {
2553
+ this.ws.close(WS_HEALTHY_CLOSE_CODE);
2554
+ }
2555
+ };
2496
2556
  // Annotate the CommonJS export names for ESM import in node:
2497
2557
  0 && (module.exports = {
2498
2558
  ClientTransport,
@@ -2502,6 +2562,8 @@ var Connection = class {
2502
2562
  ServerTransport,
2503
2563
  SessionState,
2504
2564
  Transport,
2505
- TransportMessageSchema
2565
+ TransportMessageSchema,
2566
+ WebSocketCloseError,
2567
+ WebSocketConnection
2506
2568
  });
2507
2569
  //# sourceMappingURL=index.cjs.map