@dxos/network-manager 0.6.12-staging.e11e696 → 0.6.12
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.
- package/dist/lib/browser/{chunk-YOKKEU6T.mjs → chunk-XYSYUN63.mjs} +998 -1192
- package/dist/lib/browser/chunk-XYSYUN63.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +19 -10
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +27 -18
- package/dist/lib/browser/testing/index.mjs.map +3 -3
- package/dist/lib/node/{chunk-7ZWQLO5T.cjs → chunk-4YAYC7WN.cjs} +1166 -1233
- package/dist/lib/node/chunk-4YAYC7WN.cjs.map +7 -0
- package/dist/lib/node/index.cjs +37 -27
- package/dist/lib/node/index.cjs.map +2 -2
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/testing/index.cjs +29 -20
- package/dist/lib/node/testing/index.cjs.map +3 -3
- package/dist/types/src/signal/integration.test.d.ts +2 -0
- package/dist/types/src/signal/integration.test.d.ts.map +1 -0
- package/dist/types/src/signal/swarm-messenger.test.d.ts +2 -0
- package/dist/types/src/signal/swarm-messenger.test.d.ts.map +1 -0
- package/dist/types/src/swarm/connection.d.ts.map +1 -1
- package/dist/types/src/swarm/swarm.d.ts +1 -1
- package/dist/types/src/testing/test-builder.d.ts +2 -2
- package/dist/types/src/testing/test-builder.d.ts.map +1 -1
- package/dist/types/src/tests/basic-test-suite.d.ts.map +1 -1
- package/dist/types/src/tests/property-test-suite.d.ts.map +1 -1
- package/dist/types/src/tests/tcp-transport.test.d.ts +2 -0
- package/dist/types/src/tests/tcp-transport.test.d.ts.map +1 -0
- package/dist/types/src/tests/utils.d.ts.map +1 -1
- package/dist/types/src/transport/index.d.ts +5 -1
- package/dist/types/src/transport/index.d.ts.map +1 -1
- package/dist/types/src/transport/libdatachannel-transport.d.ts +42 -0
- package/dist/types/src/transport/libdatachannel-transport.d.ts.map +1 -0
- package/dist/types/src/transport/libdatachannel-transport.test.d.ts +2 -0
- package/dist/types/src/transport/libdatachannel-transport.test.d.ts.map +1 -0
- package/dist/types/src/transport/memory-transport.d.ts +2 -2
- package/dist/types/src/transport/memory-transport.d.ts.map +1 -1
- package/dist/types/src/transport/memory-transport.test.d.ts +2 -0
- package/dist/types/src/transport/memory-transport.test.d.ts.map +1 -0
- package/dist/types/src/transport/simplepeer-simple-peer.d.ts +2 -0
- package/dist/types/src/transport/simplepeer-simple-peer.d.ts.map +1 -0
- package/dist/types/src/transport/simplepeer-transport-proxy-test.d.ts +2 -0
- package/dist/types/src/transport/simplepeer-transport-proxy-test.d.ts.map +1 -0
- package/dist/types/src/transport/{webrtc/rtc-transport-proxy.d.ts → simplepeer-transport-proxy.d.ts} +12 -10
- package/dist/types/src/transport/simplepeer-transport-proxy.d.ts.map +1 -0
- package/dist/types/src/transport/{webrtc/rtc-transport-service.d.ts → simplepeer-transport-service.d.ts} +7 -9
- package/dist/types/src/transport/simplepeer-transport-service.d.ts.map +1 -0
- package/dist/types/src/transport/simplepeer-transport.d.ts +36 -0
- package/dist/types/src/transport/simplepeer-transport.d.ts.map +1 -0
- package/dist/types/src/transport/simplepeer-transport.test.d.ts +2 -0
- package/dist/types/src/transport/simplepeer-transport.test.d.ts.map +1 -0
- package/dist/types/src/transport/{tcp/tcp-transport.browser.d.ts → tcp-transport.browser.d.ts} +3 -3
- package/dist/types/src/transport/tcp-transport.browser.d.ts.map +1 -0
- package/dist/types/src/transport/{tcp/tcp-transport.d.ts → tcp-transport.d.ts} +3 -3
- package/dist/types/src/transport/tcp-transport.d.ts.map +1 -0
- package/dist/types/src/transport/transport.d.ts +6 -7
- package/dist/types/src/transport/transport.d.ts.map +1 -1
- package/dist/types/src/transport/webrtc.d.ts +6 -0
- package/dist/types/src/transport/webrtc.d.ts.map +1 -0
- package/package.json +30 -53
- package/src/globals.d.ts +7 -0
- package/src/signal/ice.test.ts +3 -1
- package/src/signal/{integration.node.test.ts → integration.test.ts} +15 -9
- package/src/signal/{swarm-messenger.node.test.ts → swarm-messenger.test.ts} +23 -13
- package/src/swarm/connection-limiter.test.ts +6 -3
- package/src/swarm/connection.test.ts +38 -63
- package/src/swarm/connection.ts +5 -5
- package/src/swarm/swarm.test.ts +11 -9
- package/src/swarm/swarm.ts +1 -1
- package/src/testing/test-builder.ts +28 -12
- package/src/tests/basic-test-suite.ts +33 -34
- package/src/tests/memory-transport.test.ts +42 -40
- package/src/tests/property-test-suite.ts +22 -21
- package/src/tests/tcp-transport.test.ts +67 -0
- package/src/tests/utils.ts +2 -3
- package/src/tests/webrtc-transport.test.ts +9 -9
- package/src/transport/index.ts +5 -1
- package/src/transport/libdatachannel-transport.test.ts +100 -0
- package/src/transport/libdatachannel-transport.ts +376 -0
- package/src/transport/memory-transport.test.ts +74 -0
- package/src/transport/memory-transport.ts +0 -2
- package/src/transport/simplepeer-simple-peer.ts +26 -0
- package/src/transport/simplepeer-transport-proxy-test.ts +181 -0
- package/src/transport/simplepeer-transport-proxy.ts +246 -0
- package/src/transport/simplepeer-transport-service.ts +160 -0
- package/src/transport/simplepeer-transport.test.ts +61 -0
- package/src/transport/simplepeer-transport.ts +250 -0
- package/src/transport/{tcp/tcp-transport.browser.ts → tcp-transport.browser.ts} +3 -7
- package/src/transport/{tcp/tcp-transport.ts → tcp-transport.ts} +1 -3
- package/src/transport/transport.ts +7 -8
- package/src/transport/webrtc.ts +15 -0
- package/src/typings.d.ts +2 -8
- package/dist/lib/browser/chunk-GW3YM55A.mjs +0 -14
- package/dist/lib/browser/chunk-GW3YM55A.mjs.map +0 -7
- package/dist/lib/browser/chunk-YOKKEU6T.mjs.map +0 -7
- package/dist/lib/browser/transport/tcp/index.mjs +0 -39
- package/dist/lib/browser/transport/tcp/index.mjs.map +0 -7
- package/dist/lib/node/chunk-7ZWQLO5T.cjs.map +0 -7
- package/dist/lib/node/transport/tcp/index.cjs +0 -191
- package/dist/lib/node/transport/tcp/index.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-4VO725JT.mjs +0 -4383
- package/dist/lib/node-esm/chunk-4VO725JT.mjs.map +0 -7
- package/dist/lib/node-esm/index.mjs +0 -50
- package/dist/lib/node-esm/index.mjs.map +0 -7
- package/dist/lib/node-esm/meta.json +0 -1
- package/dist/lib/node-esm/testing/index.mjs +0 -280
- package/dist/lib/node-esm/testing/index.mjs.map +0 -7
- package/dist/lib/node-esm/transport/tcp/index.mjs +0 -159
- package/dist/lib/node-esm/transport/tcp/index.mjs.map +0 -7
- package/dist/types/src/signal/integration.node.test.d.ts +0 -2
- package/dist/types/src/signal/integration.node.test.d.ts.map +0 -1
- package/dist/types/src/signal/swarm-messenger.node.test.d.ts +0 -2
- package/dist/types/src/signal/swarm-messenger.node.test.d.ts.map +0 -1
- package/dist/types/src/tests/tcp-transport.node.test.d.ts +0 -2
- package/dist/types/src/tests/tcp-transport.node.test.d.ts.map +0 -1
- package/dist/types/src/transport/tcp/index.d.ts +0 -2
- package/dist/types/src/transport/tcp/index.d.ts.map +0 -1
- package/dist/types/src/transport/tcp/tcp-transport.browser.d.ts.map +0 -1
- package/dist/types/src/transport/tcp/tcp-transport.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/index.d.ts +0 -4
- package/dist/types/src/transport/webrtc/index.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/rtc-connection-factory.d.ts +0 -14
- package/dist/types/src/transport/webrtc/rtc-connection-factory.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/rtc-peer-connection.d.ts +0 -68
- package/dist/types/src/transport/webrtc/rtc-peer-connection.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/rtc-transport-channel.d.ts +0 -33
- package/dist/types/src/transport/webrtc/rtc-transport-channel.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/rtc-transport-channel.test.d.ts +0 -2
- package/dist/types/src/transport/webrtc/rtc-transport-channel.test.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/rtc-transport-factory.d.ts +0 -4
- package/dist/types/src/transport/webrtc/rtc-transport-factory.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/rtc-transport-proxy.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/rtc-transport-proxy.test.d.ts +0 -2
- package/dist/types/src/transport/webrtc/rtc-transport-proxy.test.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/rtc-transport-service.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/rtc-transport-stats.d.ts +0 -4
- package/dist/types/src/transport/webrtc/rtc-transport-stats.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/rtc-transport.test.d.ts +0 -2
- package/dist/types/src/transport/webrtc/rtc-transport.test.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/test-utils.d.ts +0 -5
- package/dist/types/src/transport/webrtc/test-utils.d.ts.map +0 -1
- package/dist/types/src/transport/webrtc/utils.d.ts +0 -3
- package/dist/types/src/transport/webrtc/utils.d.ts.map +0 -1
- package/src/tests/tcp-transport.node.test.ts +0 -65
- package/src/transport/tcp/index.ts +0 -5
- package/src/transport/webrtc/index.ts +0 -7
- package/src/transport/webrtc/rtc-connection-factory.ts +0 -82
- package/src/transport/webrtc/rtc-peer-connection.ts +0 -472
- package/src/transport/webrtc/rtc-transport-channel.test.ts +0 -176
- package/src/transport/webrtc/rtc-transport-channel.ts +0 -195
- package/src/transport/webrtc/rtc-transport-factory.ts +0 -28
- package/src/transport/webrtc/rtc-transport-proxy.test.ts +0 -413
- package/src/transport/webrtc/rtc-transport-proxy.ts +0 -264
- package/src/transport/webrtc/rtc-transport-service.ts +0 -192
- package/src/transport/webrtc/rtc-transport-stats.ts +0 -67
- package/src/transport/webrtc/rtc-transport.test.ts +0 -198
- package/src/transport/webrtc/test-utils.ts +0 -22
- package/src/transport/webrtc/utils.ts +0 -36
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Event } from '@dxos/async';
|
|
2
|
+
import { ErrorStream } from '@dxos/debug';
|
|
3
|
+
import { type Signal } from '@dxos/protocols/proto/dxos/mesh/swarm';
|
|
4
|
+
import { type Transport, type TransportFactory, type TransportOptions, type TransportStats } from './transport';
|
|
5
|
+
import { type IceProvider } from '../signal';
|
|
6
|
+
export type LibDataChannelTransportOptions = TransportOptions & {
|
|
7
|
+
webrtcConfig?: RTCConfiguration;
|
|
8
|
+
iceProvider?: IceProvider;
|
|
9
|
+
};
|
|
10
|
+
export declare const createLibDataChannelTransportFactory: (webrtcConfig?: RTCConfiguration, iceProvider?: IceProvider) => TransportFactory;
|
|
11
|
+
/**
|
|
12
|
+
* Transport
|
|
13
|
+
*/
|
|
14
|
+
export declare class LibDataChannelTransport implements Transport {
|
|
15
|
+
private readonly _options;
|
|
16
|
+
private static _instanceCount;
|
|
17
|
+
private _peer?;
|
|
18
|
+
private _channel;
|
|
19
|
+
private _stream;
|
|
20
|
+
private _closed;
|
|
21
|
+
private _connected;
|
|
22
|
+
private _writeCallback;
|
|
23
|
+
private readonly _readyForCandidates;
|
|
24
|
+
readonly closed: Event<void>;
|
|
25
|
+
readonly connected: Event<void>;
|
|
26
|
+
readonly errors: ErrorStream;
|
|
27
|
+
constructor(_options: LibDataChannelTransportOptions);
|
|
28
|
+
get isOpen(): boolean;
|
|
29
|
+
open(): Promise<void>;
|
|
30
|
+
close(): Promise<void>;
|
|
31
|
+
private _close;
|
|
32
|
+
/**
|
|
33
|
+
* Handle data channel events.
|
|
34
|
+
*/
|
|
35
|
+
private _handleChannel;
|
|
36
|
+
onSignal(signal: Signal): Promise<void>;
|
|
37
|
+
getDetails(): Promise<string>;
|
|
38
|
+
getStats(): Promise<TransportStats>;
|
|
39
|
+
_getStats(): Promise<any>;
|
|
40
|
+
private _disconnectStreams;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=libdatachannel-transport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"libdatachannel-transport.d.ts","sourceRoot":"","sources":["../../../../src/transport/libdatachannel-transport.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAyB,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAEpE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAChH,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAQ7C,MAAM,MAAM,8BAA8B,GAAG,gBAAgB,GAAG;IAC9D,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,eAAO,MAAM,oCAAoC,kBAChC,gBAAgB,gBACjB,WAAW,KACxB,gBASF,CAAC;AAEF;;GAEG;AAEH,qBAAa,uBAAwB,YAAW,SAAS;IAiB3C,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAhBrC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAK;IAElC,OAAO,CAAC,KAAK,CAAC,CAAoB;IAClC,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,OAAO,CAAU;IAEzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAS;IAE3B,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAiB;IAErD,QAAQ,CAAC,MAAM,cAAe;IAC9B,QAAQ,CAAC,SAAS,cAAe;IACjC,QAAQ,CAAC,MAAM,cAAqB;gBAEP,QAAQ,EAAE,8BAA8B;IAErE,IAAI,MAAM,YAET;IAEK,IAAI;IA0GJ,KAAK;YAQG,MAAM;IAiBpB;;OAEG;IACH,OAAO,CAAC,cAAc;IA8DhB,QAAQ,CAAC,MAAM,EAAE,MAAM;IAkDvB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAc7B,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IAqBnC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC;YAqBjB,kBAAkB;CAGjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"libdatachannel-transport.test.d.ts","sourceRoot":"","sources":["../../../../src/transport/libdatachannel-transport.test.ts"],"names":[],"mappings":""}
|
|
@@ -21,8 +21,8 @@ export declare class MemoryTransport implements Transport {
|
|
|
21
21
|
readonly errors: ErrorStream;
|
|
22
22
|
constructor(_options: TransportOptions);
|
|
23
23
|
get isOpen(): boolean;
|
|
24
|
-
open(): Promise<
|
|
25
|
-
close(): Promise<
|
|
24
|
+
open(): Promise<void>;
|
|
25
|
+
close(): Promise<void>;
|
|
26
26
|
onSignal({ payload }: Signal): Promise<void>;
|
|
27
27
|
getDetails(): Promise<string>;
|
|
28
28
|
getStats(): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-transport.d.ts","sourceRoot":"","sources":["../../../../src/transport/memory-transport.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAW,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI1C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAGpE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAkB3F,eAAO,MAAM,sBAAsB,EAAE,gBAEpC,CAAC;AAEF;;GAEG;AACH,qBAAa,eAAgB,YAAW,SAAS;IAuBnC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IArBrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAA8D;IAGlG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsB;IAElD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IAEpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAC5E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAE5E,OAAO,CAAC,OAAO,CAAS;IAGxB,OAAO,CAAC,iBAAiB,CAAa;IAEtC,OAAO,CAAC,iBAAiB,CAAC,CAAkB;IAE5C,SAAgB,MAAM,cAAqB;IAC3C,SAAgB,SAAS,cAAqB;IAC9C,SAAgB,MAAM,cAAqB;gBAEd,QAAQ,EAAE,gBAAgB;IAKvD,IAAI,MAAM,YAGT;IAEK,IAAI;
|
|
1
|
+
{"version":3,"file":"memory-transport.d.ts","sourceRoot":"","sources":["../../../../src/transport/memory-transport.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAW,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI1C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAGpE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAkB3F,eAAO,MAAM,sBAAsB,EAAE,gBAEpC,CAAC;AAEF;;GAEG;AACH,qBAAa,eAAgB,YAAW,SAAS;IAuBnC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IArBrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAA8D;IAGlG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsB;IAElD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IAEpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAC5E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAE5E,OAAO,CAAC,OAAO,CAAS;IAGxB,OAAO,CAAC,iBAAiB,CAAa;IAEtC,OAAO,CAAC,iBAAiB,CAAC,CAAkB;IAE5C,SAAgB,MAAM,cAAqB;IAC3C,SAAgB,SAAS,cAAqB;IAC9C,SAAgB,MAAM,cAAqB;gBAEd,QAAQ,EAAE,gBAAgB;IAKvD,IAAI,MAAM,YAGT;IAEK,IAAI;IAuDJ,KAAK;IAgCL,QAAQ,CAAC,EAAE,OAAO,EAAE,EAAE,MAAM;IAc5B,UAAU;IAIV,QAAQ;;;;;;CAQf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-transport.test.d.ts","sourceRoot":"","sources":["../../../../src/transport/memory-transport.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"simplepeer-simple-peer.d.ts","sourceRoot":"","sources":["../../../../src/transport/simplepeer-simple-peer.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"simplepeer-transport-proxy-test.d.ts","sourceRoot":"","sources":["../../../../src/transport/simplepeer-transport-proxy-test.ts"],"names":[],"mappings":""}
|
package/dist/types/src/transport/{webrtc/rtc-transport-proxy.d.ts → simplepeer-transport-proxy.d.ts}
RENAMED
|
@@ -1,35 +1,37 @@
|
|
|
1
1
|
import { Event } from '@dxos/async';
|
|
2
|
-
import { Resource } from '@dxos/context';
|
|
3
2
|
import { ErrorStream } from '@dxos/debug';
|
|
4
3
|
import { type BridgeService } from '@dxos/protocols/proto/dxos/mesh/bridge';
|
|
5
4
|
import { type Signal } from '@dxos/protocols/proto/dxos/mesh/swarm';
|
|
6
|
-
import { type Transport, type TransportFactory, type TransportOptions, type TransportStats } from '
|
|
7
|
-
export type
|
|
5
|
+
import { type Transport, type TransportFactory, type TransportOptions, type TransportStats } from './transport';
|
|
6
|
+
export type SimplePeerTransportProxyOptions = TransportOptions & {
|
|
8
7
|
bridgeService: BridgeService;
|
|
9
8
|
};
|
|
10
|
-
export declare class
|
|
9
|
+
export declare class SimplePeerTransportProxy implements Transport {
|
|
11
10
|
private readonly _options;
|
|
12
11
|
private readonly _proxyId;
|
|
12
|
+
private readonly _ctx;
|
|
13
|
+
private _timeoutCount;
|
|
13
14
|
readonly closed: Event<void>;
|
|
14
15
|
readonly connected: Event<void>;
|
|
15
16
|
readonly errors: ErrorStream;
|
|
17
|
+
private _closed;
|
|
16
18
|
private _serviceStream;
|
|
17
|
-
constructor(_options:
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
constructor(_options: SimplePeerTransportProxyOptions);
|
|
20
|
+
get isOpen(): boolean;
|
|
21
|
+
open(): Promise<void>;
|
|
22
|
+
close(): Promise<void>;
|
|
20
23
|
onSignal(signal: Signal): Promise<void>;
|
|
21
24
|
private _handleConnection;
|
|
22
25
|
private _handleData;
|
|
23
26
|
private _handleSignal;
|
|
24
27
|
getDetails(): Promise<string>;
|
|
25
28
|
getStats(): Promise<TransportStats>;
|
|
26
|
-
private _raiseIfOpen;
|
|
27
29
|
/**
|
|
28
30
|
* Called when underlying proxy service becomes unavailable.
|
|
29
31
|
*/
|
|
30
32
|
forceClose(): void;
|
|
31
33
|
}
|
|
32
|
-
export declare class
|
|
34
|
+
export declare class SimplePeerTransportProxyFactory implements TransportFactory {
|
|
33
35
|
private _bridgeService;
|
|
34
36
|
private _connections;
|
|
35
37
|
/**
|
|
@@ -39,4 +41,4 @@ export declare class RtcTransportProxyFactory implements TransportFactory {
|
|
|
39
41
|
setBridgeService(bridgeService: BridgeService | undefined): this;
|
|
40
42
|
createTransport(options: TransportOptions): Transport;
|
|
41
43
|
}
|
|
42
|
-
//# sourceMappingURL=
|
|
44
|
+
//# sourceMappingURL=simplepeer-transport-proxy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"simplepeer-transport-proxy.d.ts","sourceRoot":"","sources":["../../../../src/transport/simplepeer-transport-proxy.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAgB,MAAM,aAAa,CAAC;AAGlD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAW1C,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAC/G,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAGpE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAMhH,MAAM,MAAM,+BAA+B,GAAG,gBAAgB,GAAG;IAC/D,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,qBAAa,wBAAyB,YAAW,SAAS;IAY5C,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAXrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,aAAa,CAAK;IAE1B,QAAQ,CAAC,MAAM,cAAe;IAC9B,QAAQ,CAAC,SAAS,cAAe;IACjC,QAAQ,CAAC,MAAM,cAAqB;IAEpC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,cAAc,CAAuB;gBAEhB,QAAQ,EAAE,+BAA+B;IAEtE,IAAI,MAAM,YAGT;IAEK,IAAI;IAqEJ,KAAK;IAkBL,QAAQ,CAAC,MAAM,EAAE,MAAM;YAYf,iBAAiB;IAiB/B,OAAO,CAAC,WAAW;YAKL,aAAa;IAIrB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAI7B,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IAKzC;;OAEG;IAEH,UAAU;CAKX;AAGD,qBAAa,+BAAgC,YAAW,gBAAgB;IACtE,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,YAAY,CAAuC;IAE3D;;;OAGG;IACH,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,GAAG,IAAI;IAShE,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS;CAWtD"}
|
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
import { Stream } from '@dxos/codec-protobuf';
|
|
2
2
|
import { type BridgeService, type ConnectionRequest, type SignalRequest, type DataRequest, type BridgeEvent, type CloseRequest, type DetailsRequest, type DetailsResponse, type StatsRequest, type StatsResponse } from '@dxos/protocols/proto/dxos/mesh/bridge';
|
|
3
|
-
import { type IceProvider } from '
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
private readonly
|
|
7
|
-
private readonly
|
|
8
|
-
constructor(
|
|
9
|
-
hasOpenTransports(): boolean;
|
|
3
|
+
import { type IceProvider } from '../signal';
|
|
4
|
+
export declare class SimplePeerTransportService implements BridgeService {
|
|
5
|
+
private readonly _webrtcConfig?;
|
|
6
|
+
private readonly _iceProvider?;
|
|
7
|
+
private readonly transports;
|
|
8
|
+
constructor(_webrtcConfig?: RTCConfiguration | undefined, _iceProvider?: IceProvider | undefined);
|
|
10
9
|
open(request: ConnectionRequest): Stream<BridgeEvent>;
|
|
11
10
|
sendSignal({ proxyId, signal }: SignalRequest): Promise<void>;
|
|
12
11
|
getDetails({ proxyId }: DetailsRequest): Promise<DetailsResponse>;
|
|
13
12
|
getStats({ proxyId }: StatsRequest): Promise<StatsResponse>;
|
|
14
13
|
sendData({ proxyId, payload }: DataRequest): Promise<void>;
|
|
15
14
|
close({ proxyId }: CloseRequest): Promise<void>;
|
|
16
|
-
private _safeCloseTransport;
|
|
17
15
|
}
|
|
18
|
-
//# sourceMappingURL=
|
|
16
|
+
//# sourceMappingURL=simplepeer-transport-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"simplepeer-transport-service.d.ts","sourceRoot":"","sources":["../../../../src/transport/simplepeer-transport-service.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAI9C,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,WAAW,EAEhB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,aAAa,EACnB,MAAM,wCAAwC,CAAC;AAIhD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAS7C,qBAAa,0BAA2B,YAAW,aAAa;IAI5D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;IAJhC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6D;gBAGrE,aAAa,CAAC,EAAE,gBAAgB,YAAA,EAChC,YAAY,CAAC,EAAE,WAAW,YAAA;IAG7C,IAAI,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAAC;IA+E/C,UAAU,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7D,UAAU,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAKjE,QAAQ,CAAC,EAAE,OAAO,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;IAK3D,QAAQ,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAc1D,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,YAAY;CAQtC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Event } from '@dxos/async';
|
|
2
|
+
import { ErrorStream } from '@dxos/debug';
|
|
3
|
+
import { type Signal } from '@dxos/protocols/proto/dxos/mesh/swarm';
|
|
4
|
+
import { type Transport, type TransportFactory, type TransportOptions, type TransportStats } from './transport';
|
|
5
|
+
import { type IceProvider } from '../signal';
|
|
6
|
+
export type SimplePeerTransportParams = TransportOptions & {
|
|
7
|
+
webrtcConfig?: RTCConfiguration;
|
|
8
|
+
iceProvider?: IceProvider;
|
|
9
|
+
};
|
|
10
|
+
export declare const createSimplePeerTransportFactory: (webrtcConfig?: RTCConfiguration, iceProvider?: IceProvider) => TransportFactory;
|
|
11
|
+
/**
|
|
12
|
+
* Implements Transport for WebRTC. Uses simple-peer under the hood.
|
|
13
|
+
*/
|
|
14
|
+
export declare class SimplePeerTransport implements Transport {
|
|
15
|
+
private readonly _params;
|
|
16
|
+
private _peer?;
|
|
17
|
+
private _closed;
|
|
18
|
+
private _piped;
|
|
19
|
+
readonly closed: Event<void>;
|
|
20
|
+
readonly connected: Event<void>;
|
|
21
|
+
readonly errors: ErrorStream;
|
|
22
|
+
private readonly _instanceId;
|
|
23
|
+
get isOpen(): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* @params opts.config formatted as per https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/RTCPeerConnection
|
|
26
|
+
*/
|
|
27
|
+
constructor(_params: SimplePeerTransportParams);
|
|
28
|
+
getStats(): Promise<TransportStats>;
|
|
29
|
+
_getStats(): Promise<any>;
|
|
30
|
+
getDetails(): Promise<string>;
|
|
31
|
+
open(): Promise<void>;
|
|
32
|
+
close(): Promise<void>;
|
|
33
|
+
onSignal(signal: Signal): Promise<void>;
|
|
34
|
+
private _disconnectStreams;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=simplepeer-transport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"simplepeer-transport.d.ts","sourceRoot":"","sources":["../../../../src/transport/simplepeer-transport.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,EAAgB,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,WAAW,EAAS,MAAM,aAAa,CAAC;AAIjD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAEpE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAEhH,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,MAAM,MAAM,yBAAyB,GAAG,gBAAgB,GAAG;IACzD,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,eAAO,MAAM,gCAAgC,kBAC5B,gBAAgB,gBACjB,WAAW,KACxB,gBAOD,CAAC;AAEH;;GAEG;AACH,qBAAa,mBAAoB,YAAW,SAAS;IAmBvC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAlBpC,OAAO,CAAC,KAAK,CAAC,CAAyB;IACvC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;IAEvB,QAAQ,CAAC,MAAM,cAAe;IAC9B,QAAQ,CAAC,SAAS,cAAe;IACjC,QAAQ,CAAC,MAAM,cAAqB;IAEpC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;IAE1D,IAAI,MAAM,YAGT;IAED;;OAEG;gBAC0B,OAAO,EAAE,yBAAyB;IAEzD,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IAsBnC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC;IAwBzB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAc7B,IAAI;IAoGJ,KAAK;IAaL,QAAQ,CAAC,MAAM,EAAE,MAAM;IAU7B,OAAO,CAAC,kBAAkB;CAM3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"simplepeer-transport.test.d.ts","sourceRoot":"","sources":["../../../../src/transport/simplepeer-transport.test.ts"],"names":[],"mappings":""}
|
package/dist/types/src/transport/{tcp/tcp-transport.browser.d.ts → tcp-transport.browser.d.ts}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Event } from '@dxos/async';
|
|
2
2
|
import { ErrorStream } from '@dxos/debug';
|
|
3
|
-
import { type Transport, type TransportFactory, type TransportStats } from '
|
|
3
|
+
import { type Transport, type TransportFactory, type TransportStats } from './transport';
|
|
4
4
|
export declare const TcpTransportFactory: TransportFactory;
|
|
5
5
|
/**
|
|
6
6
|
* NOTE: Browser stub.
|
|
@@ -10,8 +10,8 @@ export declare class TcpTransport implements Transport {
|
|
|
10
10
|
readonly connected: Event<void>;
|
|
11
11
|
readonly errors: ErrorStream;
|
|
12
12
|
get isOpen(): boolean;
|
|
13
|
-
open(): Promise<
|
|
14
|
-
close(): Promise<
|
|
13
|
+
open(): Promise<void>;
|
|
14
|
+
close(): Promise<void>;
|
|
15
15
|
onSignal(): Promise<void>;
|
|
16
16
|
getStats(): Promise<TransportStats>;
|
|
17
17
|
getDetails(): Promise<string>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tcp-transport.browser.d.ts","sourceRoot":"","sources":["../../../../src/transport/tcp-transport.browser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAEzF,eAAO,MAAM,mBAAmB,EAAE,gBAEjC,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAa,YAAW,SAAS;IAC5C,SAAgB,MAAM,cAAqB;IAC3C,SAAgB,SAAS,cAAqB;IAC9C,SAAgB,MAAM,cAAqB;IAE3C,IAAI,MAAM,YAET;IAEK,IAAI;IAEJ,KAAK;IAEL,QAAQ;IAIR,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IAInC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;CAGpC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Event } from '@dxos/async';
|
|
2
2
|
import { ErrorStream } from '@dxos/debug';
|
|
3
3
|
import { type Signal } from '@dxos/protocols/proto/dxos/mesh/swarm';
|
|
4
|
-
import { type Transport, type TransportFactory, type TransportOptions, type TransportStats } from '
|
|
4
|
+
import { type Transport, type TransportFactory, type TransportOptions, type TransportStats } from './transport';
|
|
5
5
|
export declare const TcpTransportFactory: TransportFactory;
|
|
6
6
|
/**
|
|
7
7
|
* Fake transport.
|
|
@@ -17,8 +17,8 @@ export declare class TcpTransport implements Transport {
|
|
|
17
17
|
readonly errors: ErrorStream;
|
|
18
18
|
constructor(options: TransportOptions);
|
|
19
19
|
get isOpen(): boolean;
|
|
20
|
-
open(): Promise<
|
|
21
|
-
close(): Promise<
|
|
20
|
+
open(): Promise<void>;
|
|
21
|
+
close(): Promise<void>;
|
|
22
22
|
onSignal({ payload }: Signal): Promise<void>;
|
|
23
23
|
getDetails(): Promise<string>;
|
|
24
24
|
getStats(): Promise<TransportStats>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tcp-transport.d.ts","sourceRoot":"","sources":["../../../../src/transport/tcp-transport.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAEpE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAEhH,eAAO,MAAM,mBAAmB,EAAE,gBAEjC,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAa,YAAW,SAAS;IAWhC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAVpC,OAAO,CAAC,OAAO,CAAC,CAAqB;IACrC,OAAO,CAAC,OAAO,CAAC,CAAqB;IAErC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,OAAO,CAAS;IAExB,SAAgB,MAAM,cAAqB;IAC3C,SAAgB,SAAS,cAAqB;IAC9C,SAAgB,MAAM,cAAqB;gBAEd,OAAO,EAAE,gBAAgB;IAEtD,IAAI,MAAM,YAET;IAEK,IAAI;IAuCJ,KAAK;IAOL,QAAQ,CAAC,EAAE,OAAO,EAAE,EAAE,MAAM;IAW5B,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAU7B,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IASzC,OAAO,CAAC,aAAa;CAoBtB"}
|
|
@@ -3,8 +3,9 @@ import { type ErrorStream } from '@dxos/debug';
|
|
|
3
3
|
import { type PublicKey } from '@dxos/keys';
|
|
4
4
|
import { type Signal } from '@dxos/protocols/proto/dxos/mesh/swarm';
|
|
5
5
|
export declare enum TransportKind {
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
SIMPLE_PEER = "SIMPLE_PEER",
|
|
7
|
+
SIMPLE_PEER_PROXY = "SIMPLE_PEER_PROXY",
|
|
8
|
+
LIBDATACHANNEL = "LIBDATACHANNEL",
|
|
8
9
|
MEMORY = "MEMORY",
|
|
9
10
|
TCP = "TCP"
|
|
10
11
|
}
|
|
@@ -16,8 +17,9 @@ export interface Transport {
|
|
|
16
17
|
closed: Event;
|
|
17
18
|
connected: Event;
|
|
18
19
|
errors: ErrorStream;
|
|
19
|
-
open(): Promise<
|
|
20
|
-
close(): Promise<
|
|
20
|
+
open(): Promise<void>;
|
|
21
|
+
close(): Promise<void>;
|
|
22
|
+
get isOpen(): boolean;
|
|
21
23
|
/**
|
|
22
24
|
* Handle message from signaling.
|
|
23
25
|
*/
|
|
@@ -35,9 +37,6 @@ export interface Transport {
|
|
|
35
37
|
* Common options for all transports.
|
|
36
38
|
*/
|
|
37
39
|
export type TransportOptions = {
|
|
38
|
-
ownPeerKey: string;
|
|
39
|
-
remotePeerKey: string;
|
|
40
|
-
topic: string;
|
|
41
40
|
/**
|
|
42
41
|
* Did local node initiate this connection.
|
|
43
42
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../src/transport/transport.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAEpE,oBAAY,aAAa;IACvB,
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../src/transport/transport.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAEpE,oBAAY,aAAa;IACvB,WAAW,gBAAgB;IAC3B,iBAAiB,sBAAsB;IACvC,cAAc,mBAAmB;IACjC,MAAM,WAAW;IACjB,GAAG,QAAQ;CACZ;AAED;;;GAGG;AAEH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,KAAK,CAAC;IACd,SAAS,EAAE,KAAK,CAAC;IACjB,MAAM,EAAE,WAAW,CAAC;IAEpB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB,IAAI,MAAM,IAAI,OAAO,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExC;;OAEG;IACH,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC;IAEpC;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC,eAAe,CAAC;IAE/B;;OAEG;IACH,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,CAAC;CACvD;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,GAAG,CAAC;CAChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webrtc.d.ts","sourceRoot":"","sources":["../../../../src/transport/webrtc.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,QAAA,IAAI,IAAI,EAAE,GAAU,CAAC;AAOrB,OAAO,EAAE,IAAI,EAAE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,67 +1,36 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/network-manager",
|
|
3
|
-
"version": "0.6.12
|
|
3
|
+
"version": "0.6.12",
|
|
4
4
|
"description": "Network Manager",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"author": "DXOS.org",
|
|
9
|
-
"imports": {
|
|
10
|
-
"#node-datachannel": {
|
|
11
|
-
"browser": "./module-stub.js",
|
|
12
|
-
"workerd": "./module-stub.js",
|
|
13
|
-
"default": "node-datachannel"
|
|
14
|
-
},
|
|
15
|
-
"#node-datachannel/*": {
|
|
16
|
-
"browser": "./module-stub.js",
|
|
17
|
-
"workerd": "./module-stub.js",
|
|
18
|
-
"default": "node-datachannel/*"
|
|
19
|
-
},
|
|
20
|
-
"#tcp-transport": {
|
|
21
|
-
"browser": "./dist/lib/browser/transport/tcp/index.mjs",
|
|
22
|
-
"node": "./dist/lib/node/transport/tcp/index.cjs",
|
|
23
|
-
"import": "./dist/lib/browser/transport/tcp/index.mjs",
|
|
24
|
-
"require": "./dist/lib/node/transport/tcp/index.cjs",
|
|
25
|
-
"types": "./dist/types/src/transport/tcp/index.d.ts"
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
9
|
"exports": {
|
|
29
10
|
".": {
|
|
30
11
|
"browser": "./dist/lib/browser/index.mjs",
|
|
31
12
|
"node": {
|
|
32
|
-
"
|
|
33
|
-
"default": "./dist/lib/node-esm/index.mjs"
|
|
13
|
+
"default": "./dist/lib/node/index.cjs"
|
|
34
14
|
},
|
|
35
15
|
"types": "./dist/types/src/index.d.ts"
|
|
36
16
|
},
|
|
37
17
|
"./testing": {
|
|
38
18
|
"browser": "./dist/lib/browser/testing/index.mjs",
|
|
39
19
|
"node": {
|
|
40
|
-
"
|
|
41
|
-
"default": "./dist/lib/node-esm/testing/index.mjs"
|
|
20
|
+
"default": "./dist/lib/node/testing/index.cjs"
|
|
42
21
|
},
|
|
43
22
|
"types": "./dist/types/src/testing/index.d.ts"
|
|
44
|
-
},
|
|
45
|
-
"./tcp": {
|
|
46
|
-
"browser": "./dist/lib/browser/transport/tcp/index.mjs",
|
|
47
|
-
"node": {
|
|
48
|
-
"require": "./dist/lib/node/transport/tcp/index.cjs",
|
|
49
|
-
"default": "./dist/lib/node-esm/transport/tcp/index.mjs"
|
|
50
|
-
},
|
|
51
|
-
"types": "./dist/types/src/transport/tcp/index.d.ts"
|
|
52
23
|
}
|
|
53
24
|
},
|
|
54
25
|
"browser": {
|
|
55
|
-
"./src/transport/tcp
|
|
26
|
+
"./src/transport/tcp-transport.ts": "./src/transport/tcp-transport.browser.ts",
|
|
27
|
+
"./src/transport/datachannel/index.ts": "./src/transport/datachannel/index.browser.ts"
|
|
56
28
|
},
|
|
57
29
|
"types": "dist/types/src/index.d.ts",
|
|
58
30
|
"typesVersions": {
|
|
59
31
|
"*": {
|
|
60
32
|
"testing": [
|
|
61
33
|
"dist/types/src/testing/index.d.ts"
|
|
62
|
-
],
|
|
63
|
-
"tcp": [
|
|
64
|
-
"dist/types/src/transport/tcp/index.d.ts"
|
|
65
34
|
]
|
|
66
35
|
}
|
|
67
36
|
},
|
|
@@ -72,35 +41,43 @@
|
|
|
72
41
|
"src"
|
|
73
42
|
],
|
|
74
43
|
"dependencies": {
|
|
44
|
+
"@koush/wrtc": "^0.5.3",
|
|
75
45
|
"isomorphic-ws": "^5.0.0",
|
|
76
46
|
"nanomessage-rpc": "^3.0.0",
|
|
77
|
-
"node-datachannel": "^0.
|
|
47
|
+
"node-datachannel": "^0.5.5",
|
|
78
48
|
"p-defer": "^3.0.0",
|
|
79
|
-
"
|
|
49
|
+
"simple-peer": "9.11.1",
|
|
50
|
+
"stream": "^0.0.2",
|
|
80
51
|
"tiny-invariant": "^1.3.1",
|
|
81
52
|
"ws": "^8.14.2",
|
|
82
53
|
"xor-distance": "^2.0.0",
|
|
83
|
-
"@dxos/async": "0.6.12
|
|
84
|
-
"@dxos/
|
|
85
|
-
"@dxos/
|
|
86
|
-
"@dxos/
|
|
87
|
-
"@dxos/
|
|
88
|
-
"@dxos/
|
|
89
|
-
"@dxos/
|
|
90
|
-
"@dxos/
|
|
91
|
-
"@dxos/
|
|
92
|
-
"@dxos/
|
|
93
|
-
"@dxos/
|
|
94
|
-
"@dxos/
|
|
95
|
-
"@dxos/
|
|
96
|
-
"@dxos/
|
|
54
|
+
"@dxos/async": "0.6.12",
|
|
55
|
+
"@dxos/config": "0.6.12",
|
|
56
|
+
"@dxos/codec-protobuf": "0.6.12",
|
|
57
|
+
"@dxos/context": "0.6.12",
|
|
58
|
+
"@dxos/debug": "0.6.12",
|
|
59
|
+
"@dxos/credentials": "0.6.12",
|
|
60
|
+
"@dxos/crypto": "0.6.12",
|
|
61
|
+
"@dxos/edge-client": "0.6.12",
|
|
62
|
+
"@dxos/invariant": "0.6.12",
|
|
63
|
+
"@dxos/keys": "0.6.12",
|
|
64
|
+
"@dxos/log": "0.6.12",
|
|
65
|
+
"@dxos/messaging": "0.6.12",
|
|
66
|
+
"@dxos/node-std": "0.6.12",
|
|
67
|
+
"@dxos/protocols": "0.6.12",
|
|
68
|
+
"@dxos/rpc": "0.6.12",
|
|
69
|
+
"@dxos/util": "0.6.12",
|
|
70
|
+
"@dxos/teleport": "0.6.12"
|
|
97
71
|
},
|
|
98
72
|
"devDependencies": {
|
|
99
73
|
"@swc-node/register": "1.9.1",
|
|
74
|
+
"@types/simple-peer": "9.11.3",
|
|
100
75
|
"@types/ws": "^7.4.0",
|
|
76
|
+
"earljs": "~0.1.10",
|
|
101
77
|
"fast-check": "^3.19.0",
|
|
102
78
|
"fetch-mock": "^11.0.0",
|
|
103
|
-
"
|
|
79
|
+
"typescript": "^5.5.4",
|
|
80
|
+
"@dxos/signal": "0.6.12"
|
|
104
81
|
},
|
|
105
82
|
"publishConfig": {
|
|
106
83
|
"access": "public"
|
package/src/globals.d.ts
ADDED
package/src/signal/ice.test.ts
CHANGED
|
@@ -2,8 +2,10 @@
|
|
|
2
2
|
// Copyright 2024 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
+
import { expect } from 'chai';
|
|
5
6
|
import fetchMock from 'fetch-mock';
|
|
6
|
-
|
|
7
|
+
|
|
8
|
+
import { test, describe } from '@dxos/test';
|
|
7
9
|
|
|
8
10
|
import { createIceProvider } from './ice';
|
|
9
11
|
|
|
@@ -2,11 +2,15 @@
|
|
|
2
2
|
// Copyright 2022 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
// @dxos/test platform=nodejs
|
|
6
|
+
|
|
7
|
+
import { expect } from 'earljs';
|
|
8
|
+
import waitForExpect from 'wait-for-expect';
|
|
6
9
|
|
|
7
10
|
import { PublicKey } from '@dxos/keys';
|
|
8
11
|
import { Messenger, type PeerInfo, WebsocketSignalManager } from '@dxos/messaging';
|
|
9
12
|
import { runTestSignalServer, type SignalServerRunner } from '@dxos/signal';
|
|
13
|
+
import { afterAll, afterTest, beforeAll, describe, test } from '@dxos/test';
|
|
10
14
|
|
|
11
15
|
import { type SignalMessage } from './signal-messenger';
|
|
12
16
|
import { SwarmMessenger } from './swarm-messenger';
|
|
@@ -31,15 +35,13 @@ describe('Signal Integration Test', () => {
|
|
|
31
35
|
}) => {
|
|
32
36
|
const signalManager = new WebsocketSignalManager([{ server: broker.url() }]);
|
|
33
37
|
await signalManager.open();
|
|
34
|
-
|
|
35
|
-
await signalManager.close();
|
|
36
|
-
});
|
|
38
|
+
afterTest(() => signalManager.close());
|
|
37
39
|
|
|
38
40
|
const messenger = new Messenger({
|
|
39
41
|
signalManager,
|
|
40
42
|
});
|
|
41
43
|
messenger.open();
|
|
42
|
-
|
|
44
|
+
afterTest(() => messenger.close());
|
|
43
45
|
await messenger.listen({
|
|
44
46
|
peer,
|
|
45
47
|
onMessage: async (message) => await messageRouter.receiveMessage(message),
|
|
@@ -94,7 +96,7 @@ describe('Signal Integration Test', () => {
|
|
|
94
96
|
offer: {},
|
|
95
97
|
},
|
|
96
98
|
}),
|
|
97
|
-
).
|
|
99
|
+
).toBeAnObjectWith({ accept: true });
|
|
98
100
|
|
|
99
101
|
expect(
|
|
100
102
|
await peerNetworking2.messageRouter.offer({
|
|
@@ -106,7 +108,7 @@ describe('Signal Integration Test', () => {
|
|
|
106
108
|
offer: {},
|
|
107
109
|
},
|
|
108
110
|
}),
|
|
109
|
-
).
|
|
111
|
+
).toBeAnObjectWith({ accept: true });
|
|
110
112
|
|
|
111
113
|
{
|
|
112
114
|
const message: SignalMessage = {
|
|
@@ -121,7 +123,9 @@ describe('Signal Integration Test', () => {
|
|
|
121
123
|
};
|
|
122
124
|
await peerNetworking1.messageRouter.signal(message);
|
|
123
125
|
|
|
124
|
-
await
|
|
126
|
+
await waitForExpect(() => {
|
|
127
|
+
expect(peerNetworking2.receivedSignals[0]).toBeAnObjectWith(message);
|
|
128
|
+
});
|
|
125
129
|
}
|
|
126
130
|
|
|
127
131
|
{
|
|
@@ -137,7 +141,9 @@ describe('Signal Integration Test', () => {
|
|
|
137
141
|
};
|
|
138
142
|
await peerNetworking2.messageRouter.signal(message);
|
|
139
143
|
|
|
140
|
-
await
|
|
144
|
+
await waitForExpect(() => {
|
|
145
|
+
expect(peerNetworking1.receivedSignals[0]).toBeAnObjectWith(message);
|
|
146
|
+
});
|
|
141
147
|
}
|
|
142
148
|
});
|
|
143
149
|
});
|