@dxos/network-manager 0.1.3 → 0.1.4

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 (37) hide show
  1. package/dist/src/swarm/connection.d.ts.map +1 -1
  2. package/dist/src/swarm/connection.js +14 -10
  3. package/dist/src/swarm/connection.js.map +1 -1
  4. package/dist/src/transport/memory-transport.d.ts +6 -13
  5. package/dist/src/transport/memory-transport.d.ts.map +1 -1
  6. package/dist/src/transport/memory-transport.js +41 -35
  7. package/dist/src/transport/memory-transport.js.map +1 -1
  8. package/dist/src/transport/memory-transport.test.js +14 -3
  9. package/dist/src/transport/memory-transport.test.js.map +1 -1
  10. package/dist/src/transport/transport.d.ts +1 -7
  11. package/dist/src/transport/transport.d.ts.map +1 -1
  12. package/dist/src/transport/webrtc-transport-proxy.d.ts +3 -9
  13. package/dist/src/transport/webrtc-transport-proxy.d.ts.map +1 -1
  14. package/dist/src/transport/webrtc-transport-proxy.js +12 -17
  15. package/dist/src/transport/webrtc-transport-proxy.js.map +1 -1
  16. package/dist/src/transport/webrtc-transport-proxy.test.js +15 -35
  17. package/dist/src/transport/webrtc-transport-proxy.test.js.map +1 -1
  18. package/dist/src/transport/webrtc-transport-service.d.ts +1 -4
  19. package/dist/src/transport/webrtc-transport-service.d.ts.map +1 -1
  20. package/dist/src/transport/webrtc-transport-service.js +32 -36
  21. package/dist/src/transport/webrtc-transport-service.js.map +1 -1
  22. package/dist/src/transport/webrtc-transport.d.ts +8 -13
  23. package/dist/src/transport/webrtc-transport.d.ts.map +1 -1
  24. package/dist/src/transport/webrtc-transport.js +18 -44
  25. package/dist/src/transport/webrtc-transport.js.map +1 -1
  26. package/dist/src/transport/webrtc-transport.test.js +25 -14
  27. package/dist/src/transport/webrtc-transport.test.js.map +1 -1
  28. package/package.json +16 -16
  29. package/src/swarm/connection.ts +9 -5
  30. package/src/transport/memory-transport.test.ts +14 -15
  31. package/src/transport/memory-transport.ts +48 -49
  32. package/src/transport/transport.ts +1 -9
  33. package/src/transport/webrtc-transport-proxy.test.ts +17 -46
  34. package/src/transport/webrtc-transport-proxy.ts +13 -23
  35. package/src/transport/webrtc-transport-service.ts +34 -39
  36. package/src/transport/webrtc-transport.test.ts +17 -30
  37. package/src/transport/webrtc-transport.ts +22 -54
@@ -1 +1 @@
1
- {"version":3,"file":"webrtc-transport-proxy.test.js","sourceRoot":"","sources":["../../../src/transport/webrtc-transport-proxy.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webrtc-transport-proxy.test.js","sourceRoot":"","sources":["../../../src/transport/webrtc-transport-proxy.test.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,8 @@
1
- import SimplePeerConstructor from 'simple-peer';
2
1
  import { Stream } from '@dxos/codec-protobuf';
3
- import { PublicKey } from '@dxos/keys';
4
2
  import { BridgeService, ConnectionRequest, SignalRequest, DataRequest, BridgeEvent, CloseRequest } from '@dxos/protocols/proto/dxos/mesh/bridge';
5
- import { ComplexMap } from '@dxos/util';
6
3
  export declare class WebRTCTransportService implements BridgeService {
7
4
  private readonly _webrtcConfig?;
8
- protected peers: ComplexMap<PublicKey, SimplePeerConstructor.Instance>;
5
+ private readonly transports;
9
6
  constructor(_webrtcConfig?: any);
10
7
  open(request: ConnectionRequest): Stream<BridgeEvent>;
11
8
  sendSignal({ proxyId, signal }: SignalRequest): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"webrtc-transport-service.d.ts","sourceRoot":"","sources":["../../../src/transport/webrtc-transport-service.ts"],"names":[],"mappings":"AAKA,OAAO,qBAAiD,MAAM,aAAa,CAAC;AAE5E,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,WAAW,EAEX,YAAY,EACb,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAIxC,qBAAa,sBAAuB,YAAW,aAAa;IAKxD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IAJjC,SAAS,CAAC,KAAK,wDAAyD;gBAIrD,aAAa,CAAC,KAAK;IAGtC,IAAI,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAAC;IAkE/C,UAAU,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAM7D,QAAQ,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1D,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,YAAY;CAKtC"}
1
+ {"version":3,"file":"webrtc-transport-service.d.ts","sourceRoot":"","sources":["../../../src/transport/webrtc-transport-service.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,WAAW,EAEX,YAAY,EACb,MAAM,wCAAwC,CAAC;AAKhD,qBAAa,sBAAuB,YAAW,aAAa;IAOxD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IANjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAEzB;gBAIiB,aAAa,CAAC,KAAK;IAGtC,IAAI,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAAC;IA4D/C,UAAU,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7D,QAAQ,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1D,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,YAAY;CAMtC"}
@@ -8,55 +8,50 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.WebRTCTransportService = void 0;
10
10
  const assert_1 = __importDefault(require("assert"));
11
- const simple_peer_1 = __importDefault(require("simple-peer"));
11
+ const stream_1 = require("stream");
12
12
  const codec_protobuf_1 = require("@dxos/codec-protobuf");
13
- const debug_1 = require("@dxos/debug");
14
13
  const keys_1 = require("@dxos/keys");
15
14
  const log_1 = require("@dxos/log");
16
15
  const bridge_1 = require("@dxos/protocols/proto/dxos/mesh/bridge");
17
16
  const util_1 = require("@dxos/util");
18
- const webrtc_1 = require("./webrtc");
17
+ const webrtc_transport_1 = require("./webrtc-transport");
19
18
  class WebRTCTransportService {
20
19
  // prettier-ignore
21
20
  constructor(_webrtcConfig) {
22
21
  this._webrtcConfig = _webrtcConfig;
23
- this.peers = new util_1.ComplexMap(keys_1.PublicKey.hash);
22
+ this.transports = new util_1.ComplexMap(keys_1.PublicKey.hash);
24
23
  }
25
24
  open(request) {
26
- return new codec_protobuf_1.Stream(({ ready, next, close }) => {
27
- (0, log_1.log)(`Creating webrtc connection initiator=${request.initiator} webrtcConfig=${JSON.stringify(this._webrtcConfig)}`, {}, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport-service.ts", line: 35 });
28
- const peer = new simple_peer_1.default({
25
+ const rpcStream = new codec_protobuf_1.Stream(({ ready, next, close }) => {
26
+ const duplex = new stream_1.Duplex({
27
+ read: () => { },
28
+ write: function (chunk, _, callback) {
29
+ next({ data: { payload: chunk } });
30
+ callback();
31
+ }
32
+ });
33
+ const transport = new webrtc_transport_1.WebRTCTransport({
29
34
  initiator: request.initiator,
30
- wrtc: simple_peer_1.default.WEBRTC_SUPPORT ? undefined : webrtc_1.wrtc !== null && webrtc_1.wrtc !== void 0 ? webrtc_1.wrtc : (0, debug_1.raise)(new Error('wrtc not available')),
31
- config: this._webrtcConfig
35
+ stream: duplex,
36
+ sendSignal: async (signal) => {
37
+ next({
38
+ signal: { payload: signal }
39
+ });
40
+ }
32
41
  });
33
42
  next({
34
43
  connection: {
35
44
  state: bridge_1.ConnectionState.CONNECTING
36
45
  }
37
46
  });
38
- peer.on('data', async (payload) => {
39
- next({
40
- data: {
41
- payload
42
- }
43
- });
44
- });
45
- peer.on('signal', async (data) => {
46
- next({
47
- signal: {
48
- payload: { json: JSON.stringify(data) }
49
- }
50
- });
51
- });
52
- peer.on('connect', () => {
47
+ transport.connected.on(() => {
53
48
  next({
54
49
  connection: {
55
50
  state: bridge_1.ConnectionState.CONNECTED
56
51
  }
57
52
  });
58
53
  });
59
- peer.on('error', async (err) => {
54
+ transport.errors.handle((err) => {
60
55
  next({
61
56
  connection: {
62
57
  state: bridge_1.ConnectionState.CLOSED,
@@ -65,7 +60,7 @@ class WebRTCTransportService {
65
60
  });
66
61
  close(err);
67
62
  });
68
- peer.on('close', async () => {
63
+ transport.closed.on(() => {
69
64
  next({
70
65
  connection: {
71
66
  state: bridge_1.ConnectionState.CLOSED
@@ -73,24 +68,25 @@ class WebRTCTransportService {
73
68
  });
74
69
  close();
75
70
  });
76
- this.peers.set(request.proxyId, peer);
77
71
  ready();
72
+ this.transports.set(request.proxyId, { transport, stream: duplex });
78
73
  });
74
+ return rpcStream;
79
75
  }
80
76
  async sendSignal({ proxyId, signal }) {
81
- (0, assert_1.default)(this.peers.has(proxyId), 'Connection not ready to accept signals.');
82
- (0, assert_1.default)(signal.json, 'Signal message must contain signal data.');
83
- this.peers.get(proxyId).signal(JSON.parse(signal.json));
77
+ (0, assert_1.default)(this.transports.has(proxyId));
78
+ await this.transports.get(proxyId).transport.signal(signal);
84
79
  }
85
80
  async sendData({ proxyId, payload }) {
86
- (0, assert_1.default)(this.peers.has(proxyId));
87
- this.peers.get(proxyId).write(payload);
81
+ (0, assert_1.default)(this.transports.has(proxyId));
82
+ await this.transports.get(proxyId).stream.push(payload);
88
83
  }
89
84
  async close({ proxyId }) {
90
- var _a;
91
- (_a = this.peers.get(proxyId)) === null || _a === void 0 ? void 0 : _a.destroy();
92
- this.peers.delete(proxyId);
93
- (0, log_1.log)('Closed.', {}, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport-service.ts", line: 113 });
85
+ var _a, _b;
86
+ await ((_a = this.transports.get(proxyId)) === null || _a === void 0 ? void 0 : _a.transport.close());
87
+ await ((_b = this.transports.get(proxyId)) === null || _b === void 0 ? void 0 : _b.stream.end());
88
+ this.transports.delete(proxyId);
89
+ (0, log_1.log)('Closed.', {}, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport-service.ts", line: 108 });
94
90
  }
95
91
  }
96
92
  exports.WebRTCTransportService = WebRTCTransportService;
@@ -1 +1 @@
1
- {"version":3,"file":"webrtc-transport-service.js","sourceRoot":"","sources":["../../../src/transport/webrtc-transport-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webrtc-transport-service.js","sourceRoot":"","sources":["../../../src/transport/webrtc-transport-service.ts"],"names":[],"mappings":"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"}
@@ -2,29 +2,24 @@
2
2
  import SimplePeerConstructor from 'simple-peer';
3
3
  import { Event } from '@dxos/async';
4
4
  import { ErrorStream } from '@dxos/debug';
5
- import { PublicKey } from '@dxos/keys';
6
5
  import { Signal } from '@dxos/protocols/proto/dxos/mesh/swarm';
7
- import { SignalMessage } from '../signal';
8
6
  import { Transport, TransportFactory } from './transport';
7
+ export declare type WebRTCTransportParams = {
8
+ initiator: boolean;
9
+ stream: NodeJS.ReadWriteStream;
10
+ webrtcConfig?: any;
11
+ sendSignal: (signal: Signal) => Promise<void>;
12
+ };
9
13
  /**
10
14
  * Implements Transport for WebRTC. Uses simple-peer under the hood.
11
15
  */
12
16
  export declare class WebRTCTransport implements Transport {
13
- private readonly _initiator;
14
- private readonly _stream;
15
- private readonly _ownId;
16
- private readonly _remoteId;
17
- private readonly _sessionId;
18
- private readonly _topic;
19
- private readonly _sendSignal;
20
- private readonly _webrtcConfig?;
17
+ private readonly params;
21
18
  private readonly _peer;
22
19
  readonly closed: Event<void>;
23
20
  readonly connected: Event<void>;
24
21
  readonly errors: ErrorStream;
25
- constructor(_initiator: boolean, _stream: NodeJS.ReadWriteStream, _ownId: PublicKey, _remoteId: PublicKey, _sessionId: PublicKey, _topic: PublicKey, _sendSignal: (msg: SignalMessage) => void, _webrtcConfig?: any);
26
- get remoteId(): PublicKey;
27
- get sessionId(): PublicKey;
22
+ constructor(params: WebRTCTransportParams);
28
23
  get peer(): SimplePeerConstructor.Instance;
29
24
  close(): Promise<void>;
30
25
  signal(signal: Signal): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"webrtc-transport.d.ts","sourceRoot":"","sources":["../../../src/transport/webrtc-transport.ts"],"names":[],"mappings":";AAKA,OAAO,qBAAiD,MAAM,aAAa,CAAC;AAE5E,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,WAAW,EAAS,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG1D;;GAEG;AACH,qBAAa,eAAgB,YAAW,SAAS;IAQ7C,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IAdjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IAEnC,QAAQ,CAAC,MAAM,cAAe;IAC9B,QAAQ,CAAC,SAAS,cAAe;IACjC,QAAQ,CAAC,MAAM,cAAqB;gBAGjB,UAAU,EAAE,OAAO,EACnB,OAAO,EAAE,MAAM,CAAC,eAAe,EAC/B,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,SAAS,EACrB,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,EACzC,aAAa,CAAC,KAAK;IA+CtC,IAAI,QAAQ,cAEX;IAED,IAAI,SAAS,cAEZ;IAED,IAAI,IAAI,mCAEP;IAEK,KAAK;IAOL,MAAM,CAAC,MAAM,EAAE,MAAM;YAMb,kBAAkB;CAIjC;AAGD,eAAO,MAAM,4BAA4B,kBAAmB,GAAG,KAAG,gBAYhE,CAAC"}
1
+ {"version":3,"file":"webrtc-transport.d.ts","sourceRoot":"","sources":["../../../src/transport/webrtc-transport.ts"],"names":[],"mappings":";AAKA,OAAO,qBAAiD,MAAM,aAAa,CAAC;AAE5E,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,WAAW,EAAS,MAAM,aAAa,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAE/D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG1D,oBAAY,qBAAqB,GAAG;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC,eAAe,CAAC;IAC/B,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C,CAAC;AAEF;;GAEG;AACH,qBAAa,eAAgB,YAAW,SAAS;IAOnC,OAAO,CAAC,QAAQ,CAAC,MAAM;IANnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IAEnC,QAAQ,CAAC,MAAM,cAAe;IAC9B,QAAQ,CAAC,SAAS,cAAe;IACjC,QAAQ,CAAC,MAAM,cAAqB;gBAEP,MAAM,EAAE,qBAAqB;IA+B1D,IAAI,IAAI,mCAEP;IAEK,KAAK;IAQL,MAAM,CAAC,MAAM,EAAE,MAAM;YAMb,kBAAkB;CAIjC;AAGD,eAAO,MAAM,4BAA4B,kBAAmB,GAAG,KAAG,gBAMhE,CAAC"}
@@ -17,51 +17,28 @@ const webrtc_1 = require("./webrtc");
17
17
  * Implements Transport for WebRTC. Uses simple-peer under the hood.
18
18
  */
19
19
  class WebRTCTransport {
20
- constructor(_initiator, _stream, _ownId, _remoteId, _sessionId, _topic, _sendSignal, _webrtcConfig) {
21
- this._initiator = _initiator;
22
- this._stream = _stream;
23
- this._ownId = _ownId;
24
- this._remoteId = _remoteId;
25
- this._sessionId = _sessionId;
26
- this._topic = _topic;
27
- this._sendSignal = _sendSignal;
28
- this._webrtcConfig = _webrtcConfig;
20
+ constructor(params) {
21
+ this.params = params;
29
22
  this.closed = new async_1.Event();
30
23
  this.connected = new async_1.Event();
31
24
  this.errors = new debug_1.ErrorStream();
32
- (0, log_1.log)('created connection', {
33
- id: this._ownId,
34
- topic: this._topic,
35
- remoteId: this._remoteId,
36
- initiator: this._initiator,
37
- config: this._webrtcConfig
38
- }, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport.ts", line: 38 });
25
+ (0, log_1.log)('created connection', params, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport.ts", line: 34 });
39
26
  this._peer = new simple_peer_1.default({
40
- initiator: this._initiator,
27
+ initiator: this.params.initiator,
41
28
  wrtc: simple_peer_1.default.WEBRTC_SUPPORT ? undefined : webrtc_1.wrtc !== null && webrtc_1.wrtc !== void 0 ? webrtc_1.wrtc : (0, debug_1.raise)(new Error('wrtc not available')),
42
- config: this._webrtcConfig
29
+ config: this.params.webrtcConfig
43
30
  });
44
31
  this._peer.on('signal', async (data) => {
45
- try {
46
- await this._sendSignal({
47
- author: this._ownId,
48
- recipient: this._remoteId,
49
- sessionId: this._sessionId,
50
- topic: this._topic,
51
- data: { signal: { json: JSON.stringify(data) } }
52
- });
53
- }
54
- catch (err) {
55
- this.errors.raise(err);
56
- }
32
+ (0, log_1.log)('signal', data, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport.ts", line: 42 });
33
+ await this.params.sendSignal({ json: JSON.stringify(data) });
57
34
  });
58
35
  this._peer.on('connect', () => {
59
- (0, log_1.log)('connected', { id: this._ownId, remoteId: this._remoteId }, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport.ts", line: 66 });
60
- this._stream.pipe(this._peer).pipe(this._stream);
36
+ (0, log_1.log)('connected', {}, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport.ts", line: 47 });
37
+ this.params.stream.pipe(this._peer).pipe(this.params.stream);
61
38
  this.connected.emit();
62
39
  });
63
40
  this._peer.on('close', async () => {
64
- (0, log_1.log)('closed', { id: this._ownId, remoteId: this._remoteId }, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport.ts", line: 72 });
41
+ (0, log_1.log)('closed', {}, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport.ts", line: 53 });
65
42
  await this._disconnectStreams();
66
43
  this.closed.emit();
67
44
  });
@@ -70,20 +47,15 @@ class WebRTCTransport {
70
47
  await this.close();
71
48
  });
72
49
  }
73
- get remoteId() {
74
- return this._remoteId;
75
- }
76
- get sessionId() {
77
- return this._sessionId;
78
- }
79
50
  get peer() {
80
51
  return this._peer;
81
52
  }
82
53
  async close() {
83
- (0, log_1.log)('closing...', {}, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport.ts", line: 96 });
54
+ (0, log_1.log)('closing...', {}, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport.ts", line: 69 });
84
55
  await this._disconnectStreams();
85
56
  this._peer.destroy();
86
- (0, log_1.log)('closed', {}, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport.ts", line: 99 });
57
+ this.closed.emit();
58
+ (0, log_1.log)('closed', {}, { file: "packages/core/mesh/network-manager/src/transport/webrtc-transport.ts", line: 73 });
87
59
  }
88
60
  async signal(signal) {
89
61
  (0, node_assert_1.default)(this._peer, 'Connection not ready to accept signals.');
@@ -93,14 +65,16 @@ class WebRTCTransport {
93
65
  async _disconnectStreams() {
94
66
  var _a, _b, _c, _d;
95
67
  // TODO(rzadp): Find a way of unpiping this?
96
- (_d = (_c = (_b = (_a = this._stream).unpipe) === null || _b === void 0 ? void 0 : _b.call(_a, this._peer)) === null || _c === void 0 ? void 0 : _c.unpipe) === null || _d === void 0 ? void 0 : _d.call(_c, this._stream);
68
+ (_d = (_c = (_b = (_a = this.params.stream).unpipe) === null || _b === void 0 ? void 0 : _b.call(_a, this._peer)) === null || _c === void 0 ? void 0 : _c.unpipe) === null || _d === void 0 ? void 0 : _d.call(_c, this.params.stream);
97
69
  }
98
70
  }
99
71
  exports.WebRTCTransport = WebRTCTransport;
100
72
  // TODO(dmaretskyi): Convert to class.
101
73
  const createWebRTCTransportFactory = (webrtcConfig) => ({
102
- create: (opts) => new WebRTCTransport(// TODO(burdon): Refactor with to take opts in constructor.
103
- opts.initiator, opts.stream, opts.ownId, opts.remoteId, opts.sessionId, opts.topic, opts.sendSignal, webrtcConfig)
74
+ create: (params) => new WebRTCTransport({
75
+ ...params,
76
+ webrtcConfig
77
+ })
104
78
  });
105
79
  exports.createWebRTCTransportFactory = createWebRTCTransportFactory;
106
80
  //# sourceMappingURL=webrtc-transport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"webrtc-transport.js","sourceRoot":"","sources":["../../../src/transport/webrtc-transport.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,8DAAiC;AACjC,8DAA4E;AAE5E,uCAAoC;AACpC,uCAAiD;AAEjD,mCAAgC;AAKhC,qCAAgC;AAEhC;;GAEG;AACH,MAAa,eAAe;IAO1B,YACmB,UAAmB,EACnB,OAA+B,EAC/B,MAAiB,EACjB,SAAoB,EACpB,UAAqB,EACrB,MAAiB,EACjB,WAAyC,EACzC,aAAmB;QAPnB,eAAU,GAAV,UAAU,CAAS;QACnB,YAAO,GAAP,OAAO,CAAwB;QAC/B,WAAM,GAAN,MAAM,CAAW;QACjB,cAAS,GAAT,SAAS,CAAW;QACpB,eAAU,GAAV,UAAU,CAAW;QACrB,WAAM,GAAN,MAAM,CAAW;QACjB,gBAAW,GAAX,WAAW,CAA8B;QACzC,kBAAa,GAAb,aAAa,CAAM;QAZ7B,WAAM,GAAG,IAAI,aAAK,EAAE,CAAC;QACrB,cAAS,GAAG,IAAI,aAAK,EAAE,CAAC;QACxB,WAAM,GAAG,IAAI,mBAAW,EAAE,CAAC;QAYlC,IAAA,SAAG,EAAC,oBAAoB,EAAE;YACxB,EAAE,EAAE,IAAI,CAAC,MAAM;YACf,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,MAAM,EAAE,IAAI,CAAC,aAAa;SAC3B,6FAAC,CAAC;QACH,IAAI,CAAC,KAAK,GAAG,IAAI,qBAAqB,CAAC;YACrC,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,IAAI,EAAE,qBAAqB,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAI,aAAJ,aAAI,cAAJ,aAAI,GAAI,IAAA,aAAK,EAAC,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACvG,MAAM,EAAE,IAAI,CAAC,aAAa;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACrC,IAAI;gBACF,MAAM,IAAI,CAAC,WAAW,CAAC;oBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,SAAS,EAAE,IAAI,CAAC,UAAU;oBAC1B,KAAK,EAAE,IAAI,CAAC,MAAM;oBAClB,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE;iBACjD,CAAC,CAAC;aACJ;YAAC,OAAO,GAAQ,EAAE;gBACjB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;aACxB;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YAC5B,IAAA,SAAG,EAAC,WAAW,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,6FAAC,CAAC;YAChE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAClD,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YAChC,IAAA,SAAG,EAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,6FAAC,CAAC;YAC7D,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACnC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAA,SAAG,EAAC,YAAY,iGAAC,CAAC;QAClB,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,IAAI,CAAC,KAAM,CAAC,OAAO,EAAE,CAAC;QACtB,IAAA,SAAG,EAAC,QAAQ,iGAAC,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAc;QACzB,IAAA,qBAAM,EAAC,IAAI,CAAC,KAAK,EAAE,yCAAyC,CAAC,CAAC;QAC9D,IAAA,qBAAM,EAAC,MAAM,CAAC,IAAI,EAAE,0CAA0C,CAAC,CAAC;QAChE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7C,CAAC;IAEO,KAAK,CAAC,kBAAkB;;QAC9B,4CAA4C;QAC5C,MAAA,MAAA,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,MAAM,mDAAG,IAAI,CAAC,KAAK,CAAC,0CAAE,MAAM,mDAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5D,CAAC;CACF;AA3FD,0CA2FC;AAED,sCAAsC;AAC/B,MAAM,4BAA4B,GAAG,CAAC,YAAkB,EAAoB,EAAE,CAAC,CAAC;IACrF,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CACf,IAAI,eAAe,CAAE,2DAA2D;IAC9E,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,UAAU,EACf,YAAY,CACb;CACJ,CAAC,CAAC;AAZU,QAAA,4BAA4B,gCAYtC"}
1
+ {"version":3,"file":"webrtc-transport.js","sourceRoot":"","sources":["../../../src/transport/webrtc-transport.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,11 @@ const webrtc_transport_1 = require("./webrtc-transport");
19
19
  describe('WebRTCTransport', function () {
20
20
  // This doesn't clean up correctly and crashes with SIGSEGV / SIGABRT at the end. Probably an issue with wrtc package.
21
21
  it('open and close', async function () {
22
- const connection = new webrtc_transport_1.WebRTCTransport(true, new stream_1.Duplex(), keys_1.PublicKey.random(), keys_1.PublicKey.random(), keys_1.PublicKey.random(), keys_1.PublicKey.random(), async (msg) => { });
22
+ const connection = new webrtc_transport_1.WebRTCTransport({
23
+ initiator: true,
24
+ stream: new stream_1.Duplex(),
25
+ sendSignal: async () => { }
26
+ });
23
27
  let callsCounter = 0;
24
28
  const closedCb = () => {
25
29
  callsCounter++;
@@ -36,26 +40,33 @@ describe('WebRTCTransport', function () {
36
40
  const topic = keys_1.PublicKey.random();
37
41
  const peer1Id = keys_1.PublicKey.random();
38
42
  const peer2Id = keys_1.PublicKey.random();
39
- const sessionId = keys_1.PublicKey.random();
40
43
  const plugin1 = new testing_1.TestProtocolPlugin(peer1Id.asBuffer());
41
44
  const protocolProvider1 = (0, testing_1.testProtocolProvider)(topic.asBuffer(), peer1Id.asBuffer(), plugin1);
42
- const connection1 = new webrtc_transport_1.WebRTCTransport(true, protocolProvider1({
43
- channel: (0, crypto_1.discoveryKey)(topic),
44
- initiator: true
45
- }).stream, peer1Id, peer2Id, sessionId, topic, async (msg) => {
46
- await (0, async_1.sleep)(10);
47
- await connection2.signal(msg.data.signal);
45
+ const connection1 = new webrtc_transport_1.WebRTCTransport({
46
+ initiator: true,
47
+ stream: protocolProvider1({
48
+ channel: (0, crypto_1.discoveryKey)(topic),
49
+ initiator: true
50
+ }).stream,
51
+ sendSignal: async (signal) => {
52
+ await (0, async_1.sleep)(10);
53
+ await connection2.signal(signal);
54
+ }
48
55
  });
49
56
  (0, testutils_1.afterTest)(() => connection1.close());
50
57
  (0, testutils_1.afterTest)(() => connection1.errors.assertNoUnhandledErrors());
51
58
  const plugin2 = new testing_1.TestProtocolPlugin(peer2Id.asBuffer());
52
59
  const protocolProvider2 = (0, testing_1.testProtocolProvider)(topic.asBuffer(), peer2Id.asBuffer(), plugin2);
53
- const connection2 = new webrtc_transport_1.WebRTCTransport(false, protocolProvider2({
54
- channel: (0, crypto_1.discoveryKey)(topic),
55
- initiator: false
56
- }).stream, peer2Id, peer1Id, sessionId, topic, async (msg) => {
57
- await (0, async_1.sleep)(10);
58
- await connection1.signal(msg.data.signal);
60
+ const connection2 = new webrtc_transport_1.WebRTCTransport({
61
+ initiator: false,
62
+ stream: protocolProvider2({
63
+ channel: (0, crypto_1.discoveryKey)(topic),
64
+ initiator: false
65
+ }).stream,
66
+ sendSignal: async (signal) => {
67
+ await (0, async_1.sleep)(10);
68
+ await connection1.signal(signal);
69
+ }
59
70
  });
60
71
  (0, testutils_1.afterTest)(() => connection2.close());
61
72
  (0, testutils_1.afterTest)(() => connection2.errors.assertNoUnhandledErrors());
@@ -1 +1 @@
1
- {"version":3,"file":"webrtc-transport.test.js","sourceRoot":"","sources":["../../../src/transport/webrtc-transport.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webrtc-transport.test.js","sourceRoot":"","sources":["../../../src/transport/webrtc-transport.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/network-manager",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Network Manager",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -17,19 +17,19 @@
17
17
  "README.md"
18
18
  ],
19
19
  "dependencies": {
20
- "@dxos/async": "0.1.3",
21
- "@dxos/codec-protobuf": "0.1.3",
22
- "@dxos/credentials": "0.1.3",
23
- "@dxos/crypto": "0.1.3",
24
- "@dxos/debug": "0.1.3",
25
- "@dxos/keys": "0.1.3",
26
- "@dxos/log": "0.1.3",
27
- "@dxos/mesh-protocol": "0.1.3",
28
- "@dxos/messaging": "0.1.3",
29
- "@dxos/protocol-plugin-presence": "0.1.3",
30
- "@dxos/protocols": "0.1.3",
31
- "@dxos/rpc": "0.1.3",
32
- "@dxos/util": "0.1.3",
20
+ "@dxos/async": "0.1.4",
21
+ "@dxos/codec-protobuf": "0.1.4",
22
+ "@dxos/credentials": "0.1.4",
23
+ "@dxos/crypto": "0.1.4",
24
+ "@dxos/debug": "0.1.4",
25
+ "@dxos/keys": "0.1.4",
26
+ "@dxos/log": "0.1.4",
27
+ "@dxos/mesh-protocol": "0.1.4",
28
+ "@dxos/messaging": "0.1.4",
29
+ "@dxos/protocol-plugin-presence": "0.1.4",
30
+ "@dxos/protocols": "0.1.4",
31
+ "@dxos/rpc": "0.1.4",
32
+ "@dxos/util": "0.1.4",
33
33
  "@koush/wrtc": "^0.5.3",
34
34
  "assert": "^2.0.0",
35
35
  "isomorphic-ws": "^4.0.1",
@@ -39,8 +39,8 @@
39
39
  "xor-distance": "^2.0.0"
40
40
  },
41
41
  "devDependencies": {
42
- "@dxos/signal": "0.1.3",
43
- "@dxos/testutils": "0.1.3",
42
+ "@dxos/signal": "0.1.4",
43
+ "@dxos/testutils": "0.1.4",
44
44
  "@swc-node/register": "^1.5.4",
45
45
  "@swc/core": "^1.3.9",
46
46
  "@types/simple-peer": "9.11.3",
@@ -131,13 +131,17 @@ export class Connection {
131
131
 
132
132
  assert(!this._transport);
133
133
  this._transport = this._transportFactory.create({
134
- topic: this.topic,
135
- ownId: this.ownId,
136
- remoteId: this.remoteId,
137
- sessionId: this.sessionId,
138
134
  initiator: this.initiator,
139
135
  stream: this._protocol.stream,
140
- sendSignal: this._signalMessaging.signal.bind(this._signalMessaging)
136
+ sendSignal: async (signal) => {
137
+ await this._signalMessaging.signal({
138
+ author: this.ownId,
139
+ recipient: this.remoteId,
140
+ sessionId: this.sessionId,
141
+ topic: this.topic,
142
+ data: { signal }
143
+ });
144
+ }
141
145
  });
142
146
 
143
147
  this._transport.connected.once(() => {
@@ -22,30 +22,29 @@ const createPair = () => {
22
22
  const topic = PublicKey.random();
23
23
  const peer1Id = PublicKey.random();
24
24
  const peer2Id = PublicKey.random();
25
- const sessionId = PublicKey.random();
26
25
 
27
26
  const plugin1 = new TestProtocolPlugin(peer1Id.asBuffer());
28
27
  const protocolProvider1 = testProtocolProvider(topic.asBuffer(), peer1Id.asBuffer(), plugin1);
29
- const connection1 = new MemoryTransport(
30
- peer1Id,
31
- peer2Id,
32
- sessionId,
33
- topic,
34
- protocolProvider1({ channel: discoveryKey(topic), initiator: true }).stream
35
- );
28
+ const connection1 = new MemoryTransport({
29
+ stream: protocolProvider1({ channel: discoveryKey(topic), initiator: true }).stream,
30
+ sendSignal: async (signal) => {
31
+ await connection2.signal(signal);
32
+ },
33
+ initiator: true
34
+ });
36
35
 
37
36
  afterTest(() => connection1.close());
38
37
  afterTest(() => connection1.errors.assertNoUnhandledErrors());
39
38
 
40
39
  const plugin2 = new TestProtocolPlugin(peer2Id.asBuffer());
41
40
  const protocolProvider2 = testProtocolProvider(topic.asBuffer(), peer2Id.asBuffer(), plugin2);
42
- const connection2 = new MemoryTransport(
43
- peer2Id,
44
- peer1Id,
45
- sessionId,
46
- topic,
47
- protocolProvider2({ channel: discoveryKey(topic), initiator: false }).stream
48
- );
41
+ const connection2 = new MemoryTransport({
42
+ stream: protocolProvider2({ channel: discoveryKey(topic), initiator: false }).stream,
43
+ sendSignal: async (signal) => {
44
+ await connection1.signal(signal);
45
+ },
46
+ initiator: false
47
+ });
49
48
 
50
49
  afterTest(() => connection2.close());
51
50
  afterTest(() => connection2.errors.assertNoUnhandledErrors());