@dxos/network-manager 0.3.10 → 0.3.11-main.00a28cb

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.
@@ -32,50 +32,19 @@ function _ts_decorate(decorators, target, key, desc) {
32
32
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
33
33
  return c > 3 && r && Object.defineProperty(target, key, r), r;
34
34
  }
35
- var __dxlog_file = "/home/circleci/project/packages/core/mesh/network-manager/src/swarm/connection.ts";
35
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/swarm/connection.ts";
36
36
  var STARTING_SIGNALLING_DELAY = 10;
37
37
  var TRANSPORT_CONNECTION_TIMEOUT = 1e4;
38
38
  var TRANSPORT_STATS_INTERVAL = 5e3;
39
39
  var MAX_SIGNALLING_DELAY = 300;
40
40
  var ConnectionState;
41
41
  (function(ConnectionState5) {
42
- ConnectionState5[
43
- /**
44
- * Connection is created, but not yet passed through the connection limiter.
45
- */
46
- "CREATED"
47
- ] = "CREATED";
48
- ConnectionState5[
49
- /**
50
- * Initial state. Connection is registered but no attempt to connect to the remote peer has been performed.
51
- * Might mean that we are waiting for the answer signal from the remote peer.
52
- */
53
- "INITIAL"
54
- ] = "INITIAL";
55
- ConnectionState5[
56
- /**
57
- * Trying to establish connection.
58
- */
59
- "CONNECTING"
60
- ] = "CONNECTING";
61
- ConnectionState5[
62
- /**
63
- * Connection is established.
64
- */
65
- "CONNECTED"
66
- ] = "CONNECTED";
67
- ConnectionState5[
68
- /**
69
- * Connection is being closed.
70
- */
71
- "CLOSING"
72
- ] = "CLOSING";
73
- ConnectionState5[
74
- /**
75
- * Connection closed.
76
- */
77
- "CLOSED"
78
- ] = "CLOSED";
42
+ ConnectionState5["CREATED"] = "CREATED";
43
+ ConnectionState5["INITIAL"] = "INITIAL";
44
+ ConnectionState5["CONNECTING"] = "CONNECTING";
45
+ ConnectionState5["CONNECTED"] = "CONNECTED";
46
+ ConnectionState5["CLOSING"] = "CLOSING";
47
+ ConnectionState5["CLOSED"] = "CLOSED";
79
48
  ConnectionState5["ABORTING"] = "ABORTING";
80
49
  ConnectionState5["ABORTED"] = "ABORTED";
81
50
  })(ConnectionState || (ConnectionState = {}));
@@ -92,7 +61,7 @@ var Connection = class {
92
61
  this._callbacks = _callbacks;
93
62
  this._ctx = new Context();
94
63
  this.connectedTimeoutContext = new Context();
95
- this._state = ConnectionState.CREATED;
64
+ this._state = "CREATED";
96
65
  this._incomingSignalBuffer = [];
97
66
  this._outgoingSignalBuffer = [];
98
67
  this.stateChanged = new Event();
@@ -132,7 +101,7 @@ var Connection = class {
132
101
  * Create an underlying transport and prepares it for the connection.
133
102
  */
134
103
  async openConnection() {
135
- invariant(this._state === ConnectionState.INITIAL, "Invalid state.", {
104
+ invariant(this._state === "INITIAL", "Invalid state.", {
136
105
  F: __dxlog_file,
137
106
  L: 164,
138
107
  S: this,
@@ -161,7 +130,7 @@ var Connection = class {
161
130
  S: this,
162
131
  C: (f, a) => f(...a)
163
132
  });
164
- this._changeState(ConnectionState.CONNECTING);
133
+ this._changeState("CONNECTING");
165
134
  this._protocol.open(this.sessionId).catch((err) => {
166
135
  this.errors.raise(err);
167
136
  });
@@ -199,7 +168,7 @@ var Connection = class {
199
168
  sessionId: this.sessionId
200
169
  });
201
170
  this._transport.connected.once(async () => {
202
- this._changeState(ConnectionState.CONNECTED);
171
+ this._changeState("CONNECTED");
203
172
  await this.connectedTimeoutContext.dispose();
204
173
  this._callbacks?.onConnected?.();
205
174
  scheduleTaskInterval(this._ctx, async () => this._emitTransportStats(), TRANSPORT_STATS_INTERVAL);
@@ -252,7 +221,7 @@ var Connection = class {
252
221
  C: (f, a) => f(...a)
253
222
  });
254
223
  }
255
- if (this._state !== ConnectionState.CLOSED && this._state !== ConnectionState.CLOSING) {
224
+ if (this._state !== "CLOSED" && this._state !== "CLOSING") {
256
225
  await this.connectedTimeoutContext.dispose();
257
226
  this.errors.raise(err);
258
227
  }
@@ -279,7 +248,7 @@ var Connection = class {
279
248
  S: this,
280
249
  C: (f, a) => f(...a)
281
250
  });
282
- if (this._state === ConnectionState.CLOSED || this._state === ConnectionState.ABORTED) {
251
+ if (this._state === "CLOSED" || this._state === "ABORTED") {
283
252
  log(`abort ignored: already ${this._state}`, this.closeReason, {
284
253
  F: __dxlog_file,
285
254
  L: 259,
@@ -289,7 +258,7 @@ var Connection = class {
289
258
  return;
290
259
  }
291
260
  await this.connectedTimeoutContext.dispose();
292
- this._changeState(ConnectionState.ABORTING);
261
+ this._changeState("ABORTING");
293
262
  if (!this.closeReason) {
294
263
  this.closeReason = err?.message;
295
264
  }
@@ -330,7 +299,7 @@ var Connection = class {
330
299
  C: (f, a) => f(...a)
331
300
  });
332
301
  }
333
- this._changeState(ConnectionState.ABORTED);
302
+ this._changeState("ABORTED");
334
303
  }
335
304
  async close(err) {
336
305
  if (!this.closeReason) {
@@ -338,11 +307,11 @@ var Connection = class {
338
307
  } else {
339
308
  this.closeReason += `; ${err?.message}`;
340
309
  }
341
- if (this._state === ConnectionState.CLOSED || this._state === ConnectionState.ABORTING || this._state === ConnectionState.ABORTED) {
310
+ if (this._state === "CLOSED" || this._state === "ABORTING" || this._state === "ABORTED") {
342
311
  return;
343
312
  }
344
313
  const lastState = this._state;
345
- this._changeState(ConnectionState.CLOSING);
314
+ this._changeState("CLOSING");
346
315
  await this.connectedTimeoutContext.dispose();
347
316
  await this._ctx.dispose();
348
317
  log("closing...", {
@@ -353,7 +322,7 @@ var Connection = class {
353
322
  S: this,
354
323
  C: (f, a) => f(...a)
355
324
  });
356
- if (lastState === ConnectionState.CONNECTED) {
325
+ if (lastState === "CONNECTED") {
357
326
  try {
358
327
  await this._protocol.close();
359
328
  } catch (err2) {
@@ -410,7 +379,7 @@ var Connection = class {
410
379
  S: this,
411
380
  C: (f, a) => f(...a)
412
381
  });
413
- this._changeState(ConnectionState.CLOSED);
382
+ this._changeState("CLOSED");
414
383
  this._callbacks?.onClosed?.(err);
415
384
  }
416
385
  _sendSignal(signal) {
@@ -513,8 +482,8 @@ var Connection = class {
513
482
  continue;
514
483
  }
515
484
  if ([
516
- ConnectionState.CREATED,
517
- ConnectionState.INITIAL
485
+ "CREATED",
486
+ "INITIAL"
518
487
  ].includes(this.state)) {
519
488
  log("buffered signal", {
520
489
  peerId: this.ownId,
@@ -552,7 +521,7 @@ var Connection = class {
552
521
  }
553
522
  }
554
523
  initiate() {
555
- this._changeState(ConnectionState.INITIAL);
524
+ this._changeState("INITIAL");
556
525
  }
557
526
  _changeState(state) {
558
527
  log("stateChanged", {
@@ -601,7 +570,7 @@ import { PublicKey as PublicKey2 } from "@dxos/keys";
601
570
  import { log as log2 } from "@dxos/log";
602
571
  import { schema, TimeoutError as TimeoutError2 } from "@dxos/protocols";
603
572
  import { ComplexMap } from "@dxos/util";
604
- var __dxlog_file2 = "/home/circleci/project/packages/core/mesh/network-manager/src/signal/swarm-messenger.ts";
573
+ var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/signal/swarm-messenger.ts";
605
574
  var SwarmMessage = schema.getCodecForType("dxos.mesh.swarm.SwarmMessage");
606
575
  var SwarmMessenger = class {
607
576
  constructor({ sendMessage, onSignal, onOffer, topic }) {
@@ -864,7 +833,7 @@ function _ts_decorate2(decorators, target, key, desc) {
864
833
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
865
834
  return c > 3 && r && Object.defineProperty(target, key, r), r;
866
835
  }
867
- var __dxlog_file3 = "/home/circleci/project/packages/core/mesh/network-manager/src/swarm/peer.ts";
836
+ var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/swarm/peer.ts";
868
837
  var ConnectionDisplacedError = class extends SystemError {
869
838
  constructor() {
870
839
  super("Connection displaced by remote initiator.");
@@ -1342,7 +1311,7 @@ function _ts_decorate3(decorators, target, key, desc) {
1342
1311
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1343
1312
  return c > 3 && r && Object.defineProperty(target, key, r), r;
1344
1313
  }
1345
- var __dxlog_file4 = "/home/circleci/project/packages/core/mesh/network-manager/src/swarm/swarm.ts";
1314
+ var __dxlog_file4 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/swarm/swarm.ts";
1346
1315
  var INITIATION_DELAY = 100;
1347
1316
  var getClassName = (obj) => Object.getPrototypeOf(obj).constructor.name;
1348
1317
  var Swarm = class {
@@ -1833,7 +1802,7 @@ import { Event as Event4, EventSubscriptions } from "@dxos/async";
1833
1802
  import { PublicKey as PublicKey5 } from "@dxos/keys";
1834
1803
  import { log as log5 } from "@dxos/log";
1835
1804
  import { ComplexMap as ComplexMap3 } from "@dxos/util";
1836
- var __dxlog_file5 = "/home/circleci/project/packages/core/mesh/network-manager/src/swarm/swarm-mapper.ts";
1805
+ var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/swarm/swarm-mapper.ts";
1837
1806
  var SwarmMapper = class {
1838
1807
  get peers() {
1839
1808
  return Array.from(this._peers.values());
@@ -1905,7 +1874,7 @@ import { PublicKey as PublicKey6 } from "@dxos/keys";
1905
1874
  import { log as log6 } from "@dxos/log";
1906
1875
  import { CancelledError as CancelledError3 } from "@dxos/protocols";
1907
1876
  import { ComplexMap as ComplexMap4 } from "@dxos/util";
1908
- var __dxlog_file6 = "/home/circleci/project/packages/core/mesh/network-manager/src/swarm/connection-limiter.ts";
1877
+ var __dxlog_file6 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/swarm/connection-limiter.ts";
1909
1878
  var MAX_CONCURRENT_INITIATING_CONNECTIONS = 50;
1910
1879
  var ConnectionLimiter = class {
1911
1880
  constructor({ maxConcurrentInitConnections = MAX_CONCURRENT_INITIATING_CONNECTIONS } = {}) {
@@ -2035,7 +2004,7 @@ var ConnectionLog = class {
2035
2004
  connectionInfo.closeReason = connection.closeReason;
2036
2005
  connectionInfo.lastUpdate = /* @__PURE__ */ new Date();
2037
2006
  connectionInfo.events.push({
2038
- type: EventType.CONNECTION_STATE_CHANGED,
2007
+ type: "CONNECTION_STATE_CHANGED",
2039
2008
  newState: state
2040
2009
  });
2041
2010
  if (state === ConnectionState.CONNECTED) {
@@ -2080,9 +2049,9 @@ import { Messenger } from "@dxos/messaging";
2080
2049
  import { trace as trace3 } from "@dxos/protocols";
2081
2050
  import { ConnectionState as ConnectionState2 } from "@dxos/protocols/proto/dxos/client/services";
2082
2051
  import { ComplexMap as ComplexMap6 } from "@dxos/util";
2083
- var __dxlog_file7 = "/home/circleci/project/packages/core/mesh/network-manager/src/network-manager.ts";
2052
+ var __dxlog_file7 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/network-manager.ts";
2084
2053
  var NetworkManager = class {
2085
- constructor({ transportFactory, signalManager, log: log1 }) {
2054
+ constructor({ transportFactory, signalManager, log: log15 }) {
2086
2055
  /**
2087
2056
  * @internal
2088
2057
  */
@@ -2103,7 +2072,7 @@ var NetworkManager = class {
2103
2072
  leave: (opts) => this._signalManager.leave(opts)
2104
2073
  };
2105
2074
  this._connectionLimiter = new ConnectionLimiter();
2106
- if (log1) {
2075
+ if (log15) {
2107
2076
  this._connectionLog = new ConnectionLog();
2108
2077
  }
2109
2078
  }
@@ -2316,7 +2285,7 @@ var NetworkManager = class {
2316
2285
 
2317
2286
  // packages/core/mesh/network-manager/src/topology/fully-connected-topology.ts
2318
2287
  import { invariant as invariant7 } from "@dxos/invariant";
2319
- var __dxlog_file8 = "/home/circleci/project/packages/core/mesh/network-manager/src/topology/fully-connected-topology.ts";
2288
+ var __dxlog_file8 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/topology/fully-connected-topology.ts";
2320
2289
  var FullyConnectedTopology = class {
2321
2290
  toString() {
2322
2291
  return "FullyConnectedTopology";
@@ -2359,7 +2328,7 @@ var FullyConnectedTopology = class {
2359
2328
  import distance from "xor-distance";
2360
2329
  import { invariant as invariant8 } from "@dxos/invariant";
2361
2330
  import { log as log8 } from "@dxos/log";
2362
- var __dxlog_file9 = "/home/circleci/project/packages/core/mesh/network-manager/src/topology/mmst-topology.ts";
2331
+ var __dxlog_file9 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/topology/mmst-topology.ts";
2363
2332
  var MIN_UPDATE_INTERVAL = 1e3 * 10;
2364
2333
  var MAX_CHANGES_PER_UPDATE = 1;
2365
2334
  var MMSTTopology = class {
@@ -2528,7 +2497,7 @@ var sortByXorDistance = (keys, reference) => keys.sort((a, b) => distance.gt(dis
2528
2497
  // packages/core/mesh/network-manager/src/topology/star-topology.ts
2529
2498
  import { invariant as invariant9 } from "@dxos/invariant";
2530
2499
  import { log as log9 } from "@dxos/log";
2531
- var __dxlog_file10 = "/home/circleci/project/packages/core/mesh/network-manager/src/topology/star-topology.ts";
2500
+ var __dxlog_file10 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/topology/star-topology.ts";
2532
2501
  var StarTopology = class {
2533
2502
  constructor(_centralPeer) {
2534
2503
  this._centralPeer = _centralPeer;
@@ -2639,7 +2608,7 @@ function _ts_decorate4(decorators, target, key, desc) {
2639
2608
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
2640
2609
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2641
2610
  }
2642
- var __dxlog_file11 = "/home/circleci/project/packages/core/mesh/network-manager/src/transport/memory-transport.ts";
2611
+ var __dxlog_file11 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/transport/memory-transport.ts";
2643
2612
  var MEMORY_TRANSPORT_DELAY = 1;
2644
2613
  var createStreamDelay = (delay) => {
2645
2614
  return new Transform({
@@ -2848,7 +2817,7 @@ try {
2848
2817
  }
2849
2818
 
2850
2819
  // packages/core/mesh/network-manager/src/transport/simplepeer-transport.ts
2851
- var __dxlog_file12 = "/home/circleci/project/packages/core/mesh/network-manager/src/transport/simplepeer-transport.ts";
2820
+ var __dxlog_file12 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/transport/simplepeer-transport.ts";
2852
2821
  var SimplePeerTransport = class {
2853
2822
  /**
2854
2823
  * @params opts.config formatted as per https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/RTCPeerConnection
@@ -3103,7 +3072,7 @@ import { PublicKey as PublicKey11 } from "@dxos/keys";
3103
3072
  import { log as log12 } from "@dxos/log";
3104
3073
  import { ConnectionState as ConnectionState3 } from "@dxos/protocols/proto/dxos/mesh/bridge";
3105
3074
  import { ComplexMap as ComplexMap8 } from "@dxos/util";
3106
- var __dxlog_file13 = "/home/circleci/project/packages/core/mesh/network-manager/src/transport/simplepeer-transport-service.ts";
3075
+ var __dxlog_file13 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/transport/simplepeer-transport-service.ts";
3107
3076
  var SimplePeerTransportService = class {
3108
3077
  constructor(_webrtcConfig) {
3109
3078
  this._webrtcConfig = _webrtcConfig;
@@ -3274,7 +3243,7 @@ import { log as log13 } from "@dxos/log";
3274
3243
  import { ConnectionResetError as ConnectionResetError3, TimeoutError as TimeoutError3, ProtocolError as ProtocolError3, ConnectivityError as ConnectivityError3, UnknownProtocolError as UnknownProtocolError3 } from "@dxos/protocols";
3275
3244
  import { ConnectionState as ConnectionState4 } from "@dxos/protocols/proto/dxos/mesh/bridge";
3276
3245
  import { arrayToBuffer } from "@dxos/util";
3277
- var __dxlog_file14 = "/home/circleci/project/packages/core/mesh/network-manager/src/transport/simplepeer-transport-proxy.ts";
3246
+ var __dxlog_file14 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/transport/simplepeer-transport-proxy.ts";
3278
3247
  var RESP_MIN_THRESHOLD = 500;
3279
3248
  var TIMEOUT_THRESHOLD = 10;
3280
3249
  var SimplePeerTransportProxy = class {
@@ -3313,11 +3282,13 @@ var SimplePeerTransportProxy = class {
3313
3282
  this._params.bridgeService.sendData({
3314
3283
  proxyId: this._proxyId,
3315
3284
  payload: chunk
3285
+ }, {
3286
+ timeout: 1e4
3316
3287
  }).then(() => {
3317
3288
  if (performance.now() - then > RESP_MIN_THRESHOLD) {
3318
3289
  log13("slow response, delaying callback", void 0, {
3319
3290
  F: __dxlog_file14,
3320
- L: 80,
3291
+ L: 83,
3321
3292
  S: this,
3322
3293
  C: (f, a) => f(...a)
3323
3294
  });
@@ -3333,7 +3304,7 @@ var SimplePeerTransportProxy = class {
3333
3304
  } else {
3334
3305
  log13("timeout error, but still invoking callback", void 0, {
3335
3306
  F: __dxlog_file14,
3336
- L: 92,
3307
+ L: 95,
3337
3308
  S: this,
3338
3309
  C: (f, a) => f(...a)
3339
3310
  });
@@ -3342,7 +3313,7 @@ var SimplePeerTransportProxy = class {
3342
3313
  } else {
3343
3314
  log13.catch(err, void 0, {
3344
3315
  F: __dxlog_file14,
3345
- L: 96,
3316
+ L: 99,
3346
3317
  S: this,
3347
3318
  C: (f, a) => f(...a)
3348
3319
  });
@@ -3355,7 +3326,7 @@ var SimplePeerTransportProxy = class {
3355
3326
  err
3356
3327
  }, {
3357
3328
  F: __dxlog_file14,
3358
- L: 104,
3329
+ L: 107,
3359
3330
  S: this,
3360
3331
  C: (f, a) => f(...a)
3361
3332
  });
@@ -3363,7 +3334,7 @@ var SimplePeerTransportProxy = class {
3363
3334
  this._params.stream.pipe(proxyStream);
3364
3335
  }, (error) => log13.catch(error, void 0, {
3365
3336
  F: __dxlog_file14,
3366
- L: 109,
3337
+ L: 112,
3367
3338
  S: this,
3368
3339
  C: (f, a) => f(...a)
3369
3340
  }));
@@ -3419,7 +3390,7 @@ var SimplePeerTransportProxy = class {
3419
3390
  } catch (err) {
3420
3391
  log13.catch(err, void 0, {
3421
3392
  F: __dxlog_file14,
3422
- L: 168,
3393
+ L: 171,
3423
3394
  S: this,
3424
3395
  C: (f, a) => f(...a)
3425
3396
  });
@@ -3455,7 +3426,7 @@ var SimplePeerTransportProxyFactory = class {
3455
3426
  createTransport(options) {
3456
3427
  invariant13(this._bridgeService, "SimplePeerTransportProxyFactory is not ready to open connections", {
3457
3428
  F: __dxlog_file14,
3458
- L: 205,
3429
+ L: 208,
3459
3430
  S: this,
3460
3431
  A: [
3461
3432
  "this._bridgeService",
@@ -3503,7 +3474,7 @@ function _ts_decorate5(decorators, target, key, desc) {
3503
3474
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
3504
3475
  return c > 3 && r && Object.defineProperty(target, key, r), r;
3505
3476
  }
3506
- var __dxlog_file15 = "/home/circleci/project/packages/core/mesh/network-manager/src/transport/libdatachannel-transport.ts";
3477
+ var __dxlog_file15 = "/home/runner/work/dxos/dxos/packages/core/mesh/network-manager/src/transport/libdatachannel-transport.ts";
3507
3478
  var DATACHANNEL_LABEL = "dxos.mesh.transport";
3508
3479
  var MAX_BUFFERED_AMOUNT = 64 * 1024;
3509
3480
  var MAX_MESSAGE_SIZE = 64 * 1024;
@@ -3975,4 +3946,4 @@ export {
3975
3946
  TcpTransport,
3976
3947
  createTeleportProtocolFactory
3977
3948
  };
3978
- //# sourceMappingURL=chunk-6FAP5I7S.mjs.map
3949
+ //# sourceMappingURL=chunk-F6YEZ3WP.mjs.map