@libp2p/webrtc 1.0.2 → 1.0.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.
- package/dist/index.min.js +19 -19
- package/dist/src/error.d.ts +9 -10
- package/dist/src/error.d.ts.map +1 -1
- package/dist/src/maconn.d.ts.map +1 -1
- package/dist/src/maconn.js.map +1 -1
- package/dist/src/muxer.d.ts +1 -5
- package/dist/src/muxer.d.ts.map +1 -1
- package/dist/src/muxer.js +3 -6
- package/dist/src/muxer.js.map +1 -1
- package/dist/src/sdp.d.ts +3 -2
- package/dist/src/sdp.d.ts.map +1 -1
- package/dist/src/sdp.js +2 -7
- package/dist/src/sdp.js.map +1 -1
- package/dist/src/stream.d.ts +16 -10
- package/dist/src/stream.d.ts.map +1 -1
- package/dist/src/stream.js +75 -30
- package/dist/src/stream.js.map +1 -1
- package/dist/src/transport.d.ts.map +1 -1
- package/dist/src/transport.js +31 -31
- package/dist/src/transport.js.map +1 -1
- package/dist/src/util.d.ts.map +1 -1
- package/dist/src/util.js.map +1 -1
- package/package.json +8 -7
- package/src/error.ts +9 -9
- package/src/maconn.ts +4 -4
- package/src/muxer.ts +5 -8
- package/src/sdp.ts +4 -8
- package/src/stream.ts +288 -253
- package/src/transport.ts +34 -34
- package/src/util.ts +1 -1
package/dist/src/error.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import errCode from 'err-code';
|
|
2
1
|
import type { Direction } from '@libp2p/interface-connection';
|
|
3
2
|
export declare enum codes {
|
|
4
3
|
ERR_ALREADY_ABORTED = "ERR_ALREADY_ABORTED",
|
|
@@ -18,37 +17,37 @@ export declare class WebRTCTransportError extends Error {
|
|
|
18
17
|
export declare class ConnectionClosedError extends WebRTCTransportError {
|
|
19
18
|
constructor(state: RTCPeerConnectionState, msg: string);
|
|
20
19
|
}
|
|
21
|
-
export declare function connectionClosedError(state: RTCPeerConnectionState, msg: string): Error
|
|
20
|
+
export declare function connectionClosedError(state: RTCPeerConnectionState, msg: string): Error;
|
|
22
21
|
export declare class DataChannelError extends WebRTCTransportError {
|
|
23
22
|
constructor(streamLabel: string, msg: string);
|
|
24
23
|
}
|
|
25
|
-
export declare function dataChannelError(streamLabel: string, msg: string): Error
|
|
24
|
+
export declare function dataChannelError(streamLabel: string, msg: string): Error;
|
|
26
25
|
export declare class InappropriateMultiaddrError extends WebRTCTransportError {
|
|
27
26
|
constructor(msg: string);
|
|
28
27
|
}
|
|
29
|
-
export declare function inappropriateMultiaddr(msg: string): Error
|
|
28
|
+
export declare function inappropriateMultiaddr(msg: string): Error;
|
|
30
29
|
export declare class InvalidArgumentError extends WebRTCTransportError {
|
|
31
30
|
constructor(msg: string);
|
|
32
31
|
}
|
|
33
|
-
export declare function invalidArgument(msg: string): Error
|
|
32
|
+
export declare function invalidArgument(msg: string): Error;
|
|
34
33
|
export declare class InvalidFingerprintError extends WebRTCTransportError {
|
|
35
34
|
constructor(fingerprint: string, source: string);
|
|
36
35
|
}
|
|
37
|
-
export declare function invalidFingerprint(fingerprint: string, source: string): Error
|
|
36
|
+
export declare function invalidFingerprint(fingerprint: string, source: string): Error;
|
|
38
37
|
export declare class OperationAbortedError extends WebRTCTransportError {
|
|
39
38
|
constructor(context: string, abortReason: string);
|
|
40
39
|
}
|
|
41
|
-
export declare function operationAborted(context: string, reason: string): Error
|
|
40
|
+
export declare function operationAborted(context: string, reason: string): Error;
|
|
42
41
|
export declare class OverStreamLimitError extends WebRTCTransportError {
|
|
43
42
|
constructor(msg: string);
|
|
44
43
|
}
|
|
45
|
-
export declare function overStreamLimit(dir: Direction, proto: string): Error
|
|
44
|
+
export declare function overStreamLimit(dir: Direction, proto: string): Error;
|
|
46
45
|
export declare class UnimplementedError extends WebRTCTransportError {
|
|
47
46
|
constructor(methodName: string);
|
|
48
47
|
}
|
|
49
|
-
export declare function unimplemented(methodName: string): Error
|
|
48
|
+
export declare function unimplemented(methodName: string): Error;
|
|
50
49
|
export declare class UnsupportedHashAlgorithmError extends WebRTCTransportError {
|
|
51
50
|
constructor(algo: string);
|
|
52
51
|
}
|
|
53
|
-
export declare function unsupportedHashAlgorithm(algorithm: string): Error
|
|
52
|
+
export declare function unsupportedHashAlgorithm(algorithm: string): Error;
|
|
54
53
|
//# sourceMappingURL=error.d.ts.map
|
package/dist/src/error.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/error.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/error.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAE7D,oBAAY,KAAK;IACf,mBAAmB,wBAAwB;IAC3C,gBAAgB,qBAAqB;IACrC,qBAAqB,0BAA0B;IAC/C,sBAAsB,2BAA2B;IACjD,qBAAqB,0BAA0B;IAC/C,uBAAuB,4BAA4B;IACnD,sBAAsB,2BAA2B;IACjD,mBAAmB,wBAAwB;IAC3C,qCAAqC,0CAA0C;IAC/E,sCAAsC,2CAA2C;CAClF;AAED,qBAAa,oBAAqB,SAAQ,KAAK;gBAChC,GAAG,EAAE,MAAM;CAIzB;AAED,qBAAa,qBAAsB,SAAQ,oBAAoB;gBAChD,KAAK,EAAE,sBAAsB,EAAE,GAAG,EAAE,MAAM;CAIxD;AAED,wBAAgB,qBAAqB,CAAE,KAAK,EAAE,sBAAsB,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAExF;AAED,qBAAa,gBAAiB,SAAQ,oBAAoB;gBAC3C,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;CAI9C;AAED,wBAAgB,gBAAgB,CAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAEzE;AAED,qBAAa,2BAA4B,SAAQ,oBAAoB;gBACtD,GAAG,EAAE,MAAM;CAIzB;AAED,wBAAgB,sBAAsB,CAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAE1D;AAED,qBAAa,oBAAqB,SAAQ,oBAAoB;gBAC/C,GAAG,EAAE,MAAM;CAIzB;AAED,wBAAgB,eAAe,CAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAEnD;AAED,qBAAa,uBAAwB,SAAQ,oBAAoB;gBAClD,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAIjD;AAED,wBAAgB,kBAAkB,CAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAE9E;AAED,qBAAa,qBAAsB,SAAQ,oBAAoB;gBAChD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;CAIlD;AAED,wBAAgB,gBAAgB,CAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAExE;AAED,qBAAa,oBAAqB,SAAQ,oBAAoB;gBAC/C,GAAG,EAAE,MAAM;CAIzB;AAED,wBAAgB,eAAe,CAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,CAGrE;AAED,qBAAa,kBAAmB,SAAQ,oBAAoB;gBAC7C,UAAU,EAAE,MAAM;CAIhC;AAED,wBAAgB,aAAa,CAAE,UAAU,EAAE,MAAM,GAAG,KAAK,CAExD;AAED,qBAAa,6BAA8B,SAAQ,oBAAoB;gBACxD,IAAI,EAAE,MAAM;CAK1B;AAED,wBAAgB,wBAAwB,CAAE,SAAS,EAAE,MAAM,GAAG,KAAK,CAElE"}
|
package/dist/src/maconn.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maconn.d.ts","sourceRoot":"","sources":["../../src/maconn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAA;AAEpG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAMnD,UAAU,6BAA6B;IACrC;;OAEG;IACH,cAAc,EAAE,iBAAiB,CAAA;IAEjC;;OAEG;IACH,UAAU,EAAE,SAAS,CAAA;IAErB;;OAEG;IACH,QAAQ,EAAE,2BAA2B,CAAA;CACtC;AAED,qBAAa,yBAA0B,YAAW,mBAAmB;IACnE;;OAEG;IACH,QAAQ,CAAC,cAAc,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"maconn.d.ts","sourceRoot":"","sources":["../../src/maconn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAA;AAEpG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAMnD,UAAU,6BAA6B;IACrC;;OAEG;IACH,cAAc,EAAE,iBAAiB,CAAA;IAEjC;;OAEG;IACH,UAAU,EAAE,SAAS,CAAA;IAErB;;OAEG;IACH,QAAQ,EAAE,2BAA2B,CAAA;CACtC;AAED,qBAAa,yBAA0B,YAAW,mBAAmB;IACnE;;OAEG;IACH,QAAQ,CAAC,cAAc,EAAE,iBAAiB,CAAA;IAE1C;;OAEG;IACH,UAAU,EAAE,SAAS,CAAA;IAErB;;OAEG;IACH,QAAQ,EAAE,2BAA2B,CAAA;IAErC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAY;IAEtC;;OAEG;IACH,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAU;gBAElC,IAAI,EAAE,6BAA6B;IAM1C,KAAK,CAAE,GAAG,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;CAQrD"}
|
package/dist/src/maconn.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maconn.js","sourceRoot":"","sources":["../../src/maconn.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAIvC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAE9C,MAAM,GAAG,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAA;AAmB9C,MAAM,OAAO,yBAAyB;IA0BpC,YAAa,IAAmC;QAVhD;;WAEG;QACH,WAAM,GAAuB,SAAS,CAAA;QAEtC;;WAEG;QACH,SAAI,GAAoC,OAAO,
|
|
1
|
+
{"version":3,"file":"maconn.js","sourceRoot":"","sources":["../../src/maconn.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAIvC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAE9C,MAAM,GAAG,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAA;AAmB9C,MAAM,OAAO,yBAAyB;IA0BpC,YAAa,IAAmC;QAVhD;;WAEG;QACH,WAAM,GAAuB,SAAS,CAAA;QAEtC;;WAEG;QACH,SAAI,GAAoC,OAAO,CAAA;QAG7C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;QACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QAC7B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAA;IAC3C,CAAC;IAED,KAAK,CAAC,KAAK,CAAE,GAAuB;QAClC,IAAI,GAAG,KAAK,SAAS,EAAE;YACrB,GAAG,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAA;SAC3C;QAED,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;QAC1C,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAA;IAC7B,CAAC;CACF"}
|
package/dist/src/muxer.d.ts
CHANGED
|
@@ -46,10 +46,6 @@ export declare class DataChannelMuxer implements StreamMuxer {
|
|
|
46
46
|
*/
|
|
47
47
|
sink: Sink<Uint8Array, Promise<void>>;
|
|
48
48
|
constructor(peerConnection: RTCPeerConnection, init?: StreamMuxerInit);
|
|
49
|
-
|
|
50
|
-
* Initiate a new stream with the given name. If no name is
|
|
51
|
-
* provided, the id of the stream will be used.
|
|
52
|
-
*/
|
|
53
|
-
newStream(name?: string): Stream;
|
|
49
|
+
newStream(): Stream;
|
|
54
50
|
}
|
|
55
51
|
//# sourceMappingURL=muxer.d.ts.map
|
package/dist/src/muxer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muxer.d.ts","sourceRoot":"","sources":["../../src/muxer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AACtG,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAKnD,qBAAa,uBAAwB,YAAW,kBAAkB;IAChE;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmB;IAElD;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAY;gBAEf,cAAc,EAAE,iBAAiB;IAI9C,iBAAiB,CAAE,IAAI,CAAC,EAAE,eAAe,GAAG,SAAS,GAAG,WAAW;CAGpE;AAED;;GAEG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAClD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmB;IAClD;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAY;IAErC;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAK;IAEtB;;OAEG;IACH,IAAI,CAAC,EAAE,eAAe,CAAA;IAEtB;;OAEG;IACH,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,SAAS,KAAK,IAAI,CAAW;IAEnD;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"muxer.d.ts","sourceRoot":"","sources":["../../src/muxer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AACtG,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAKnD,qBAAa,uBAAwB,YAAW,kBAAkB;IAChE;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmB;IAElD;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAY;gBAEf,cAAc,EAAE,iBAAiB;IAI9C,iBAAiB,CAAE,IAAI,CAAC,EAAE,eAAe,GAAG,SAAS,GAAG,WAAW;CAGpE;AAED;;GAEG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAClD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmB;IAClD;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAY;IAErC;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAK;IAEtB;;OAEG;IACH,IAAI,CAAC,EAAE,eAAe,CAAA;IAEtB;;OAEG;IACH,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,SAAS,KAAK,IAAI,CAAW;IAEnD;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAY;IAEtC;;OAEG;IACH,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAU;gBAElC,cAAc,EAAE,iBAAiB,EAAE,IAAI,CAAC,EAAE,eAAe;IAmCtE,SAAS,IAAK,MAAM;CAgBrB"}
|
package/dist/src/muxer.js
CHANGED
|
@@ -67,12 +67,9 @@ export class DataChannelMuxer {
|
|
|
67
67
|
}
|
|
68
68
|
};
|
|
69
69
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
*/
|
|
74
|
-
newStream(name = '') {
|
|
75
|
-
const channel = this.peerConnection.createDataChannel(name);
|
|
70
|
+
newStream() {
|
|
71
|
+
// The spec says the label SHOULD be an empty string: https://github.com/libp2p/specs/blob/master/webrtc/README.md#rtcdatachannel-label
|
|
72
|
+
const channel = this.peerConnection.createDataChannel('');
|
|
76
73
|
const stream = new WebRTCStream({
|
|
77
74
|
channel,
|
|
78
75
|
stat: {
|
package/dist/src/muxer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"muxer.js","sourceRoot":"","sources":["../../src/muxer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAE9C,MAAM,OAAO,uBAAuB;IAWlC,YAAa,cAAiC;QAL9C;;WAEG;QACH,aAAQ,GAAW,SAAS,CAAA;QAG1B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;IACtC,CAAC;IAED,iBAAiB,CAAE,IAAkC;QACnD,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;IACxD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,gBAAgB;IAmC3B,YAAa,cAAiC,EAAE,IAAsB;QA9BtE;;WAEG;QACM,aAAQ,GAAW,SAAS,CAAA;QAErC;;WAEG;QACH,YAAO,GAAa,EAAE,CAAA;QAOtB;;WAEG;QACH,UAAK,GAAsC,GAAG,EAAE,GAAE,CAAC,CAAA;QAEnD;;WAEG;QACH,WAAM,GAAuB,SAAS,
|
|
1
|
+
{"version":3,"file":"muxer.js","sourceRoot":"","sources":["../../src/muxer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAE9C,MAAM,OAAO,uBAAuB;IAWlC,YAAa,cAAiC;QAL9C;;WAEG;QACH,aAAQ,GAAW,SAAS,CAAA;QAG1B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;IACtC,CAAC;IAED,iBAAiB,CAAE,IAAkC;QACnD,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;IACxD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,gBAAgB;IAmC3B,YAAa,cAAiC,EAAE,IAAsB;QA9BtE;;WAEG;QACM,aAAQ,GAAW,SAAS,CAAA;QAErC;;WAEG;QACH,YAAO,GAAa,EAAE,CAAA;QAOtB;;WAEG;QACH,UAAK,GAAsC,GAAG,EAAE,GAAE,CAAC,CAAA;QAEnD;;WAEG;QACH,WAAM,GAAuB,SAAS,CAAA;QAEtC;;WAEG;QACH,SAAI,GAAoC,OAAO,CAAA;QAG7C;;WAEG;QACH,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAEhB;;WAEG;QACH,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;QAEpC;;;;;WAKG;QACH,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;YAClD,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC;gBAC9B,OAAO;gBACP,IAAI,EAAE;oBACJ,SAAS,EAAE,SAAS;oBACpB,QAAQ,EAAE;wBACR,IAAI,EAAE,CAAC;qBACR;iBACF;gBACD,OAAO,EAAE,IAAI,EAAE,WAAW;aAC3B,CAAC,CAAA;YAEF,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,IAAI,IAAI,EAAE;gBACpC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;aAC9B;QACH,CAAC,CAAA;IACH,CAAC;IAED,SAAS;QACP,uIAAuI;QACvI,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAA;QACzD,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC;YAC9B,OAAO;YACP,IAAI,EAAE;gBACJ,SAAS,EAAE,UAAU;gBACrB,QAAQ,EAAE;oBACR,IAAI,EAAE,CAAC;iBACR;aACF;YACD,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW;SAChC,CAAC,CAAA;QAEF,OAAO,MAAM,CAAA;IACf,CAAC;CACF"}
|
package/dist/src/sdp.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Multiaddr } from '@multiformats/multiaddr';
|
|
2
2
|
import * as multihashes from 'multihashes';
|
|
3
|
+
import type { HashCode, HashName } from 'multihashes';
|
|
3
4
|
/**
|
|
4
5
|
* Get base2 | identity decoders
|
|
5
6
|
*/
|
|
@@ -9,8 +10,8 @@ export declare function certhash(ma: Multiaddr): string;
|
|
|
9
10
|
* Convert a certhash into a multihash
|
|
10
11
|
*/
|
|
11
12
|
export declare function decodeCerthash(certhash: string): {
|
|
12
|
-
code:
|
|
13
|
-
name:
|
|
13
|
+
code: HashCode;
|
|
14
|
+
name: HashName;
|
|
14
15
|
length: number;
|
|
15
16
|
digest: Uint8Array;
|
|
16
17
|
};
|
package/dist/src/sdp.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdp.d.ts","sourceRoot":"","sources":["../../src/sdp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAExD,OAAO,KAAK,WAAW,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"sdp.d.ts","sourceRoot":"","sources":["../../src/sdp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAExD,OAAO,KAAK,WAAW,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAOrD;;GAEG;AAEH,eAAO,MAAM,SAAS,EAAE,GAAwE,CAAA;AAkBhG,wBAAgB,QAAQ,CAAE,EAAE,EAAE,SAAS,GAAG,MAAM,CAS/C;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAE,CAGxH;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAE,EAAE,EAAE,SAAS,GAAG,MAAM,EAAE,CAWvD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,GAAG,MAAM,CAW3E;AA2BD;;GAEG;AACH,wBAAgB,aAAa,CAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,yBAAyB,CAKtF;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,MAAM,GAAG,yBAAyB,CAShG"}
|
package/dist/src/sdp.js
CHANGED
|
@@ -7,12 +7,8 @@ const log = logger('libp2p:webrtc:sdp');
|
|
|
7
7
|
/**
|
|
8
8
|
* Get base2 | identity decoders
|
|
9
9
|
*/
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
let acc = decoders[0].or(decoders[1]);
|
|
13
|
-
decoders.slice(2).forEach((d) => (acc = acc.or(d)));
|
|
14
|
-
return acc;
|
|
15
|
-
})();
|
|
10
|
+
// @ts-expect-error - Not easy to combine these types.
|
|
11
|
+
export const mbdecoder = Object.values(bases).map(b => b.decoder).reduce((d, b) => d.or(b));
|
|
16
12
|
/**
|
|
17
13
|
* Get base2 | identity decoders
|
|
18
14
|
*/
|
|
@@ -45,7 +41,6 @@ export function decodeCerthash(certhash) {
|
|
|
45
41
|
* Extract the fingerprint from a multiaddr
|
|
46
42
|
*/
|
|
47
43
|
export function ma2Fingerprint(ma) {
|
|
48
|
-
// certhash_value is a multibase encoded multihash encoded string
|
|
49
44
|
const mhdecoded = decodeCerthash(certhash(ma));
|
|
50
45
|
const prefix = toSupportedHashFunction(mhdecoded.name);
|
|
51
46
|
const fingerprint = mhdecoded.digest.reduce((str, byte) => str + byte.toString(16).padStart(2, '0'), '');
|
package/dist/src/sdp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdp.js","sourceRoot":"","sources":["../../src/sdp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAEvC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,KAAK,WAAW,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"sdp.js","sourceRoot":"","sources":["../../src/sdp.ts"],"names":[],"mappings":"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"}
|
package/dist/src/stream.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Stream, StreamStat, Direction } from '@libp2p/interface-connection';
|
|
2
2
|
import { DeferredPromise } from 'p-defer';
|
|
3
|
-
import type { Source
|
|
3
|
+
import type { Source } from 'it-stream-types';
|
|
4
4
|
import { Uint8ArrayList } from 'uint8arraylist';
|
|
5
5
|
import * as pb from '../proto_ts/message.js';
|
|
6
6
|
/**
|
|
@@ -35,7 +35,7 @@ interface StreamStateInput {
|
|
|
35
35
|
*/
|
|
36
36
|
direction: 'inbound' | 'outbound';
|
|
37
37
|
/**
|
|
38
|
-
* Message flag from the
|
|
38
|
+
* Message flag from the protobufs
|
|
39
39
|
*
|
|
40
40
|
* 0 = FIN
|
|
41
41
|
* 1 = STOP_SENDING
|
|
@@ -51,6 +51,7 @@ export declare enum StreamStates {
|
|
|
51
51
|
}
|
|
52
52
|
declare class StreamState {
|
|
53
53
|
state: StreamStates;
|
|
54
|
+
isWriteClosed(): boolean;
|
|
54
55
|
transition({ direction, flag }: StreamStateInput): [StreamStates, StreamStates];
|
|
55
56
|
}
|
|
56
57
|
export declare class WebRTCStream implements Stream {
|
|
@@ -84,16 +85,15 @@ export declare class WebRTCStream implements Stream {
|
|
|
84
85
|
* and then the protobuf decoder.
|
|
85
86
|
*/
|
|
86
87
|
private readonly _innersrc;
|
|
87
|
-
/**
|
|
88
|
-
* Write data to the remote peer.
|
|
89
|
-
* It takes care of wrapping data in a protobuf and adding the length prefix.
|
|
90
|
-
*/
|
|
91
|
-
sink: Sink<Uint8ArrayList | Uint8Array, Promise<void>>;
|
|
92
88
|
/**
|
|
93
89
|
* Deferred promise that resolves when the underlying datachannel is in the
|
|
94
90
|
* open state.
|
|
95
91
|
*/
|
|
96
92
|
opened: DeferredPromise<void>;
|
|
93
|
+
/**
|
|
94
|
+
* sinkCreated is set to true once the sinkFunction is invoked
|
|
95
|
+
*/
|
|
96
|
+
_sinkCalled: boolean;
|
|
97
97
|
/**
|
|
98
98
|
* Triggers a generator which can be used to close the sink.
|
|
99
99
|
*/
|
|
@@ -106,9 +106,14 @@ export declare class WebRTCStream implements Stream {
|
|
|
106
106
|
set source(_src: Source<Uint8ArrayList>);
|
|
107
107
|
get source(): Source<Uint8ArrayList>;
|
|
108
108
|
/**
|
|
109
|
-
*
|
|
109
|
+
* Write data to the remote peer.
|
|
110
|
+
* It takes care of wrapping data in a protobuf and adding the length prefix.
|
|
111
|
+
*/
|
|
112
|
+
sink(src: Source<Uint8ArrayList | Uint8Array>): Promise<void>;
|
|
113
|
+
/**
|
|
114
|
+
* Closable sink implementation
|
|
110
115
|
*/
|
|
111
|
-
private
|
|
116
|
+
private _sink;
|
|
112
117
|
/**
|
|
113
118
|
* Handle incoming
|
|
114
119
|
*/
|
|
@@ -132,10 +137,11 @@ export declare class WebRTCStream implements Stream {
|
|
|
132
137
|
/**
|
|
133
138
|
* Close the stream for writing, and indicate to the remote side this is being done 'abruptly'
|
|
134
139
|
*
|
|
135
|
-
* @see closeWrite
|
|
140
|
+
* @see this.closeWrite
|
|
136
141
|
*/
|
|
137
142
|
reset(): void;
|
|
138
143
|
private _sendFlag;
|
|
144
|
+
private _closeWriteIterable;
|
|
139
145
|
}
|
|
140
146
|
export {};
|
|
141
147
|
//# sourceMappingURL=stream.d.ts.map
|
package/dist/src/stream.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAMjF,OAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAMjF,OAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAE/C,OAAO,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAI5C;;GAEG;AACH,wBAAgB,WAAW,CAAE,GAAG,EAAE,SAAS,GAAG,UAAU,CAQvD;AAED,UAAU,cAAc;IACtB;;;;;OAKG;IACH,OAAO,EAAE,cAAc,CAAA;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAE9B;;OAEG;IACH,IAAI,EAAE,UAAU,CAAA;IAEhB;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAA;CACzC;AAKD,UAAU,gBAAgB;IACxB;;;OAGG;IACH,SAAS,EAAE,SAAS,GAAG,UAAU,CAAA;IAEjC;;;;;;OAMG;IACH,IAAI,EAAE,EAAE,CAAC,YAAY,CAAA;CACtB;AAED,oBAAY,YAAY;IACtB,IAAI,IAAA;IACJ,WAAW,IAAA;IACX,YAAY,IAAA;IACZ,MAAM,IAAA;CACP;AAQD,cAAM,WAAW;IACf,KAAK,EAAE,YAAY,CAAoB;IAEvC,aAAa,IAAK,OAAO;IAIzB,UAAU,CAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,gBAAgB,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC;CA4DjF;AAED,qBAAa,YAAa,YAAW,MAAM;IACzC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAA;IAEV;;OAEG;IACH,IAAI,EAAE,UAAU,CAAA;IAEhB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAE7B;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IAExC;;OAEG;IACH,WAAW,cAAoB;IAE/B;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAwB;IAE7C;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAa;IAEvC;;;OAGG;IACH,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,CAAU;IAEvC;;OAEG;IACH,WAAW,EAAE,OAAO,CAAQ;IAE5B;;OAEG;IACH,iBAAiB,EAAE,eAAe,CAAC,IAAI,CAAC,CAAU;IAElD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAA;gBAE3B,IAAI,EAAE,cAAc;IAsEjC,IAAI,MAAM,CAAE,IAAI,EAAE,MAAM,CAAC,cAAc,CAAC,EAAK;IAE7C,IAAI,MAAM,IAAK,MAAM,CAAC,cAAc,CAAC,CAEpC;IAED;;;OAGG;IACG,IAAI,CAAE,GAAG,EAAE,MAAM,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAapE;;OAEG;YACW,KAAK;IAanB;;OAEG;IACH,uBAAuB,CAAE,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS;IA6BpE;;OAEG;IACH,KAAK,IAAK,IAAI;IAYd;;OAEG;IACH,SAAS,IAAK,IAAI;IAiBlB;;OAEG;IACH,UAAU,IAAK,IAAI;IAiBnB;;OAEG;IACH,KAAK,CAAE,GAAG,EAAE,KAAK,GAAG,IAAI;IAKxB;;;;OAIG;IACH,KAAK,IAAK,IAAI;IAad,OAAO,CAAC,SAAS;IAYjB,OAAO,CAAC,mBAAmB;CAS5B"}
|
package/dist/src/stream.js
CHANGED
|
@@ -26,10 +26,18 @@ export var StreamStates;
|
|
|
26
26
|
StreamStates[StreamStates["WRITE_CLOSED"] = 2] = "WRITE_CLOSED";
|
|
27
27
|
StreamStates[StreamStates["CLOSED"] = 3] = "CLOSED";
|
|
28
28
|
})(StreamStates || (StreamStates = {}));
|
|
29
|
+
// Checked by the Typescript compiler. If this fails it's because the switch
|
|
30
|
+
// statement is not exhaustive.
|
|
31
|
+
function unreachableBranch(x) {
|
|
32
|
+
throw new Error('Case not handled in switch');
|
|
33
|
+
}
|
|
29
34
|
class StreamState {
|
|
30
35
|
constructor() {
|
|
31
36
|
this.state = StreamStates.OPEN;
|
|
32
37
|
}
|
|
38
|
+
isWriteClosed() {
|
|
39
|
+
return (this.state === StreamStates.CLOSED || this.state === StreamStates.WRITE_CLOSED);
|
|
40
|
+
}
|
|
33
41
|
transition({ direction, flag }) {
|
|
34
42
|
const prev = this.state;
|
|
35
43
|
// return early if the stream is closed
|
|
@@ -57,7 +65,8 @@ class StreamState {
|
|
|
57
65
|
case pb.Message_Flag.RESET:
|
|
58
66
|
this.state = StreamStates.CLOSED;
|
|
59
67
|
break;
|
|
60
|
-
|
|
68
|
+
default:
|
|
69
|
+
unreachableBranch(flag);
|
|
61
70
|
}
|
|
62
71
|
}
|
|
63
72
|
else {
|
|
@@ -81,7 +90,8 @@ class StreamState {
|
|
|
81
90
|
case pb.Message_Flag.RESET:
|
|
82
91
|
this.state = StreamStates.CLOSED;
|
|
83
92
|
break;
|
|
84
|
-
|
|
93
|
+
default:
|
|
94
|
+
unreachableBranch(flag);
|
|
85
95
|
}
|
|
86
96
|
}
|
|
87
97
|
return [prev, this.state];
|
|
@@ -103,6 +113,10 @@ export class WebRTCStream {
|
|
|
103
113
|
* open state.
|
|
104
114
|
*/
|
|
105
115
|
this.opened = defer();
|
|
116
|
+
/**
|
|
117
|
+
* sinkCreated is set to true once the sinkFunction is invoked
|
|
118
|
+
*/
|
|
119
|
+
this._sinkCalled = false;
|
|
106
120
|
/**
|
|
107
121
|
* Triggers a generator which can be used to close the sink.
|
|
108
122
|
*/
|
|
@@ -122,11 +136,13 @@ export class WebRTCStream {
|
|
|
122
136
|
}
|
|
123
137
|
this.opened.resolve();
|
|
124
138
|
break;
|
|
125
|
-
|
|
139
|
+
case 'connecting':
|
|
140
|
+
// noop
|
|
141
|
+
break;
|
|
142
|
+
default:
|
|
143
|
+
unreachableBranch(this.channel.readyState);
|
|
126
144
|
}
|
|
127
145
|
this.metadata = opts.metadata ?? {};
|
|
128
|
-
// closable sink
|
|
129
|
-
this.sink = this._sinkFn;
|
|
130
146
|
// handle RTCDataChannel events
|
|
131
147
|
this.channel.onopen = (_evt) => {
|
|
132
148
|
this.stat.timeline.open = new Date().getTime();
|
|
@@ -164,23 +180,29 @@ export class WebRTCStream {
|
|
|
164
180
|
return this._src;
|
|
165
181
|
}
|
|
166
182
|
/**
|
|
167
|
-
*
|
|
183
|
+
* Write data to the remote peer.
|
|
184
|
+
* It takes care of wrapping data in a protobuf and adding the length prefix.
|
|
168
185
|
*/
|
|
169
|
-
async
|
|
186
|
+
async sink(src) {
|
|
187
|
+
if (this._sinkCalled) {
|
|
188
|
+
throw new Error('sink already called on this stream');
|
|
189
|
+
}
|
|
190
|
+
// await stream opening before sending data
|
|
170
191
|
await this.opened.promise;
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
return;
|
|
192
|
+
try {
|
|
193
|
+
await this._sink(src);
|
|
174
194
|
}
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
195
|
+
finally {
|
|
196
|
+
this.closeWrite();
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Closable sink implementation
|
|
201
|
+
*/
|
|
202
|
+
async _sink(src) {
|
|
203
|
+
const closeWrite = this._closeWriteIterable();
|
|
204
|
+
for await (const buf of merge(closeWrite, src)) {
|
|
205
|
+
if (this.streamState.isWriteClosed()) {
|
|
184
206
|
return;
|
|
185
207
|
}
|
|
186
208
|
const msgbuf = pb.Message.toBinary({ message: buf.subarray() });
|
|
@@ -196,7 +218,6 @@ export class WebRTCStream {
|
|
|
196
218
|
if (message.flag !== undefined) {
|
|
197
219
|
const [currentState, nextState] = this.streamState.transition({ direction: 'inbound', flag: message.flag });
|
|
198
220
|
if (currentState !== nextState) {
|
|
199
|
-
// @TODO(ddimaria): determine if we need to check for StreamStates.OPEN
|
|
200
221
|
switch (nextState) {
|
|
201
222
|
case StreamStates.READ_CLOSED:
|
|
202
223
|
this._innersrc.end();
|
|
@@ -207,7 +228,11 @@ export class WebRTCStream {
|
|
|
207
228
|
case StreamStates.CLOSED:
|
|
208
229
|
this.close();
|
|
209
230
|
break;
|
|
210
|
-
//
|
|
231
|
+
// StreamStates.OPEN will never be a nextState
|
|
232
|
+
case StreamStates.OPEN:
|
|
233
|
+
break;
|
|
234
|
+
default:
|
|
235
|
+
unreachableBranch(nextState);
|
|
211
236
|
}
|
|
212
237
|
}
|
|
213
238
|
}
|
|
@@ -231,11 +256,15 @@ export class WebRTCStream {
|
|
|
231
256
|
*/
|
|
232
257
|
closeRead() {
|
|
233
258
|
const [currentState, nextState] = this.streamState.transition({ direction: 'outbound', flag: pb.Message_Flag.STOP_SENDING });
|
|
259
|
+
if (currentState === nextState) {
|
|
260
|
+
// No change, no op
|
|
261
|
+
return;
|
|
262
|
+
}
|
|
234
263
|
if (currentState === StreamStates.OPEN || currentState === StreamStates.WRITE_CLOSED) {
|
|
235
264
|
this._sendFlag(pb.Message_Flag.STOP_SENDING);
|
|
236
|
-
|
|
265
|
+
this._innersrc.end();
|
|
237
266
|
}
|
|
238
|
-
if (
|
|
267
|
+
if (nextState === StreamStates.CLOSED) {
|
|
239
268
|
this.close();
|
|
240
269
|
}
|
|
241
270
|
}
|
|
@@ -244,11 +273,15 @@ export class WebRTCStream {
|
|
|
244
273
|
*/
|
|
245
274
|
closeWrite() {
|
|
246
275
|
const [currentState, nextState] = this.streamState.transition({ direction: 'outbound', flag: pb.Message_Flag.FIN });
|
|
276
|
+
if (currentState === nextState) {
|
|
277
|
+
// No change, no op
|
|
278
|
+
return;
|
|
279
|
+
}
|
|
247
280
|
if (currentState === StreamStates.OPEN || currentState === StreamStates.READ_CLOSED) {
|
|
248
281
|
this._sendFlag(pb.Message_Flag.FIN);
|
|
249
282
|
this.closeWritePromise.resolve();
|
|
250
283
|
}
|
|
251
|
-
if (
|
|
284
|
+
if (nextState === StreamStates.CLOSED) {
|
|
252
285
|
this.close();
|
|
253
286
|
}
|
|
254
287
|
}
|
|
@@ -256,26 +289,29 @@ export class WebRTCStream {
|
|
|
256
289
|
* Call when a local error occurs, should close the stream for reading and writing
|
|
257
290
|
*/
|
|
258
291
|
abort(err) {
|
|
259
|
-
log.error(`An error occurred,
|
|
292
|
+
log.error(`An error occurred, closing the stream for reading and writing: ${err.message}`);
|
|
260
293
|
this.close();
|
|
261
294
|
}
|
|
262
295
|
/**
|
|
263
296
|
* Close the stream for writing, and indicate to the remote side this is being done 'abruptly'
|
|
264
297
|
*
|
|
265
|
-
* @see closeWrite
|
|
298
|
+
* @see this.closeWrite
|
|
266
299
|
*/
|
|
267
300
|
reset() {
|
|
301
|
+
// TODO Why are you resetting the stat here?
|
|
268
302
|
this.stat = defaultStat(this.stat.direction);
|
|
269
303
|
const [currentState, nextState] = this.streamState.transition({ direction: 'outbound', flag: pb.Message_Flag.RESET });
|
|
270
|
-
if (currentState
|
|
271
|
-
|
|
272
|
-
|
|
304
|
+
if (currentState === nextState) {
|
|
305
|
+
// No change, no op
|
|
306
|
+
return;
|
|
273
307
|
}
|
|
308
|
+
this._sendFlag(pb.Message_Flag.RESET);
|
|
309
|
+
this.close();
|
|
274
310
|
}
|
|
275
311
|
_sendFlag(flag) {
|
|
276
312
|
try {
|
|
277
313
|
log.trace('Sending flag: %s', flag.toString());
|
|
278
|
-
const msgbuf = pb.Message.toBinary({ flag
|
|
314
|
+
const msgbuf = pb.Message.toBinary({ flag });
|
|
279
315
|
this.channel.send(lengthPrefixed.encode.single(msgbuf).subarray());
|
|
280
316
|
}
|
|
281
317
|
catch (err) {
|
|
@@ -284,5 +320,14 @@ export class WebRTCStream {
|
|
|
284
320
|
}
|
|
285
321
|
}
|
|
286
322
|
}
|
|
323
|
+
_closeWriteIterable() {
|
|
324
|
+
const self = this;
|
|
325
|
+
return {
|
|
326
|
+
async *[Symbol.asyncIterator]() {
|
|
327
|
+
await self.closeWritePromise.promise;
|
|
328
|
+
yield new Uint8Array(0);
|
|
329
|
+
}
|
|
330
|
+
};
|
|
331
|
+
}
|
|
287
332
|
}
|
|
288
333
|
//# sourceMappingURL=stream.js.map
|
package/dist/src/stream.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,cAAc,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,KAA0B,MAAM,SAAS,CAAA;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAE/C,OAAO,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAE5C,MAAM,GAAG,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAA;AAE1C;;GAEG;AACH,MAAM,UAAU,WAAW,CAAE,GAAc;IACzC,OAAO;QACL,SAAS,EAAE,GAAG;QACd,QAAQ,EAAE;YACR,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,SAAS;SACjB;KACF,CAAA;AACH,CAAC;AA+CD,MAAM,CAAN,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,+CAAI,CAAA;IACJ,6DAAW,CAAA;IACX,+DAAY,CAAA;IACZ,mDAAM,CAAA;AACR,CAAC,EALW,YAAY,KAAZ,YAAY,QAKvB;AAED,MAAM,WAAW;IAAjB;QACE,UAAK,GAAiB,YAAY,CAAC,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/transport.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAGhG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/transport.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAGhG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAOxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAYrD;;;;GAIG;AACH,eAAO,MAAM,WAAW,EAAE,MAAY,CAAA;AAEtC;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,MAAY,CAAA;AAExC;;GAEG;AAEH,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,eAAgB,YAAW,SAAS;IAC/C;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2B;gBAEzC,UAAU,EAAE,yBAAyB;IAIlD;;OAEG;IACG,IAAI,CAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC;IAM3E;;OAEG;IACH,cAAc,CAAE,OAAO,EAAE,qBAAqB,GAAG,QAAQ;IAIzD;;OAEG;IACH,MAAM,CAAE,UAAU,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE;IAI7C;;OAEG;IACH,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAK,MAAM,CAElC;IAED;;OAEG;IACH,IAAI,CAAC,MAAM,CAAC,IAAK,IAAI,CAEpB;IAED;;OAEG;IACG,QAAQ,CAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC;IA0G/E;;;OAGG;IACH,OAAO,CAAC,qBAAqB;CAyB9B"}
|