@libp2p/webrtc 3.1.10-122f1e67 → 3.1.10-20d5f220
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 +11 -11
- package/dist/src/stream.d.ts +0 -8
- package/dist/src/stream.d.ts.map +1 -1
- package/dist/src/stream.js +6 -11
- package/dist/src/stream.js.map +1 -1
- package/package.json +9 -9
- package/src/stream.ts +6 -13
package/dist/src/stream.d.ts
CHANGED
|
@@ -17,11 +17,6 @@ export interface WebRTCStreamInit extends AbstractStreamInit {
|
|
|
17
17
|
dataChannelOptions?: Partial<DataChannelOpts>;
|
|
18
18
|
maxDataSize: number;
|
|
19
19
|
}
|
|
20
|
-
export declare const MAX_MESSAGE_SIZE: number;
|
|
21
|
-
export declare const MAX_BUFFERED_AMOUNT: number;
|
|
22
|
-
export declare const BUFFERED_AMOUNT_LOW_TIMEOUT: number;
|
|
23
|
-
export declare const PROTOBUF_OVERHEAD = 5;
|
|
24
|
-
export declare const VARINT_LENGTH = 2;
|
|
25
20
|
export declare class WebRTCStream extends AbstractStream {
|
|
26
21
|
/**
|
|
27
22
|
* The data channel used to send and receive data
|
|
@@ -37,9 +32,6 @@ export declare class WebRTCStream extends AbstractStream {
|
|
|
37
32
|
*/
|
|
38
33
|
private readonly incomingData;
|
|
39
34
|
private messageQueue?;
|
|
40
|
-
/**
|
|
41
|
-
* The maximum size of a message in bytes
|
|
42
|
-
*/
|
|
43
35
|
private readonly maxDataSize;
|
|
44
36
|
constructor(init: WebRTCStreamInit);
|
|
45
37
|
sendNewStream(): void;
|
package/dist/src/stream.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,uCAAuC,CAAA;AAK/F,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAE/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAE7D,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,CAAA;IACtB,iBAAiB,EAAE,MAAM,CAAA;IACzB,6BAA6B,EAAE,MAAM,CAAA;CACtC;AAED,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB;IAC1D;;;;;OAKG;IACH,OAAO,EAAE,cAAc,CAAA;IAEvB,kBAAkB,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAE7C,WAAW,EAAE,MAAM,CAAA;CACpB;
|
|
1
|
+
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,uCAAuC,CAAA;AAK/F,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAE/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAE7D,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,CAAA;IACtB,iBAAiB,EAAE,MAAM,CAAA;IACzB,6BAA6B,EAAE,MAAM,CAAA;CACtC;AAED,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB;IAC1D;;;;;OAKG;IACH,OAAO,EAAE,cAAc,CAAA;IAEvB,kBAAkB,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAE7C,WAAW,EAAE,MAAM,CAAA;CACpB;AAcD,qBAAa,YAAa,SAAQ,cAAc;IAC9C;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IAExC;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAiB;IAEpD;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IAEnD,OAAO,CAAC,YAAY,CAAC,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;gBAEvB,IAAI,EAAE,gBAAgB;IAuFnC,aAAa,IAAK,IAAI;IAIhB,YAAY,CAAE,IAAI,EAAE,cAAc,EAAE,WAAW,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAmC/E,QAAQ,CAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAc9C,SAAS,IAAK,OAAO,CAAC,IAAI,CAAC;IAI3B,cAAc,IAAK,OAAO,CAAC,IAAI,CAAC;IAIhC,aAAa,IAAK,OAAO,CAAC,IAAI,CAAC;IAIrC;;OAEG;IACH,OAAO,CAAC,uBAAuB;YAwBjB,SAAS;CAOxB;AAED,MAAM,WAAW,mBAAmB;IAClC;;;;;OAKG;IACH,OAAO,EAAE,cAAc,CAAA;IAEvB;;OAEG;IACH,SAAS,EAAE,SAAS,CAAA;IAEpB,kBAAkB,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAE7C,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,SAAS,KAAK,IAAI,CAAA;CAC1C;AAED,wBAAgB,YAAY,CAAE,OAAO,EAAE,mBAAmB,GAAG,YAAY,CAYxE"}
|
package/dist/src/stream.js
CHANGED
|
@@ -7,15 +7,13 @@ import { pEvent, TimeoutError } from 'p-event';
|
|
|
7
7
|
import { Uint8ArrayList } from 'uint8arraylist';
|
|
8
8
|
import { Message } from './pb/message.js';
|
|
9
9
|
// Max message size that can be sent to the DataChannel
|
|
10
|
-
|
|
10
|
+
const MAX_MESSAGE_SIZE = 16 * 1024;
|
|
11
11
|
// How much can be buffered to the DataChannel at once
|
|
12
|
-
|
|
12
|
+
const MAX_BUFFERED_AMOUNT = 16 * 1024 * 1024;
|
|
13
13
|
// How long time we wait for the 'bufferedamountlow' event to be emitted
|
|
14
|
-
|
|
14
|
+
const BUFFERED_AMOUNT_LOW_TIMEOUT = 30 * 1000;
|
|
15
15
|
// protobuf field definition overhead
|
|
16
|
-
|
|
17
|
-
// Length of varint, in bytes.
|
|
18
|
-
export const VARINT_LENGTH = 2;
|
|
16
|
+
const PROTOBUF_OVERHEAD = 3;
|
|
19
17
|
export class WebRTCStream extends AbstractStream {
|
|
20
18
|
/**
|
|
21
19
|
* The data channel used to send and receive data
|
|
@@ -31,9 +29,6 @@ export class WebRTCStream extends AbstractStream {
|
|
|
31
29
|
*/
|
|
32
30
|
incomingData;
|
|
33
31
|
messageQueue;
|
|
34
|
-
/**
|
|
35
|
-
* The maximum size of a message in bytes
|
|
36
|
-
*/
|
|
37
32
|
maxDataSize;
|
|
38
33
|
constructor(init) {
|
|
39
34
|
super(init);
|
|
@@ -44,7 +39,7 @@ export class WebRTCStream extends AbstractStream {
|
|
|
44
39
|
this.dataChannelOptions = {
|
|
45
40
|
bufferedAmountLowEventTimeout: init.dataChannelOptions?.bufferedAmountLowEventTimeout ?? BUFFERED_AMOUNT_LOW_TIMEOUT,
|
|
46
41
|
maxBufferedAmount: init.dataChannelOptions?.maxBufferedAmount ?? MAX_BUFFERED_AMOUNT,
|
|
47
|
-
maxMessageSize: init.dataChannelOptions?.maxMessageSize ??
|
|
42
|
+
maxMessageSize: init.dataChannelOptions?.maxMessageSize ?? MAX_MESSAGE_SIZE
|
|
48
43
|
};
|
|
49
44
|
this.maxDataSize = init.maxDataSize;
|
|
50
45
|
// set up initial state
|
|
@@ -197,7 +192,7 @@ export function createStream(options) {
|
|
|
197
192
|
return new WebRTCStream({
|
|
198
193
|
id: direction === 'inbound' ? (`i${channel.id}`) : `r${channel.id}`,
|
|
199
194
|
direction,
|
|
200
|
-
maxDataSize: (dataChannelOptions?.maxMessageSize ?? MAX_MESSAGE_SIZE) - PROTOBUF_OVERHEAD
|
|
195
|
+
maxDataSize: (dataChannelOptions?.maxMessageSize ?? MAX_MESSAGE_SIZE) - PROTOBUF_OVERHEAD,
|
|
201
196
|
dataChannelOptions,
|
|
202
197
|
onEnd,
|
|
203
198
|
channel,
|
package/dist/src/stream.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,cAAc,EAA2B,MAAM,uCAAuC,CAAA;AAC/F,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,cAAc,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAiB,QAAQ,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAuBzC,uDAAuD;AACvD,MAAM,
|
|
1
|
+
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@libp2p/webrtc",
|
|
3
|
-
"version": "3.1.10-
|
|
3
|
+
"version": "3.1.10-20d5f220",
|
|
4
4
|
"description": "A libp2p transport using WebRTC connections",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
6
|
"homepage": "https://github.com/libp2p/js-libp2p/tree/master/packages/transport-webrtc#readme",
|
|
@@ -45,10 +45,10 @@
|
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
47
|
"@chainsafe/libp2p-noise": "^13.0.0",
|
|
48
|
-
"@libp2p/interface": "0.1.2-
|
|
49
|
-
"@libp2p/interface-internal": "0.1.4-
|
|
50
|
-
"@libp2p/logger": "3.0.2-
|
|
51
|
-
"@libp2p/peer-id": "3.0.2-
|
|
48
|
+
"@libp2p/interface": "0.1.2-20d5f220",
|
|
49
|
+
"@libp2p/interface-internal": "0.1.4-20d5f220",
|
|
50
|
+
"@libp2p/logger": "3.0.2-20d5f220",
|
|
51
|
+
"@libp2p/peer-id": "3.0.2-20d5f220",
|
|
52
52
|
"@multiformats/mafmt": "^12.1.2",
|
|
53
53
|
"@multiformats/multiaddr": "^12.1.5",
|
|
54
54
|
"abortable-iterator": "^5.0.1",
|
|
@@ -70,16 +70,16 @@
|
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
72
72
|
"@chainsafe/libp2p-yamux": "^5.0.0",
|
|
73
|
-
"@libp2p/interface-compliance-tests": "4.0.5-
|
|
74
|
-
"@libp2p/peer-id-factory": "3.0.3-
|
|
75
|
-
"@libp2p/websockets": "7.0.6-
|
|
73
|
+
"@libp2p/interface-compliance-tests": "4.0.5-20d5f220",
|
|
74
|
+
"@libp2p/peer-id-factory": "3.0.3-20d5f220",
|
|
75
|
+
"@libp2p/websockets": "7.0.6-20d5f220",
|
|
76
76
|
"@types/sinon": "^10.0.15",
|
|
77
77
|
"aegir": "^40.0.8",
|
|
78
78
|
"delay": "^6.0.0",
|
|
79
79
|
"it-length": "^3.0.2",
|
|
80
80
|
"it-map": "^3.0.3",
|
|
81
81
|
"it-pair": "^2.0.6",
|
|
82
|
-
"libp2p": "0.46.10-
|
|
82
|
+
"libp2p": "0.46.10-20d5f220",
|
|
83
83
|
"protons": "^7.0.2",
|
|
84
84
|
"sinon": "^16.0.0",
|
|
85
85
|
"sinon-ts": "^1.0.0"
|
package/src/stream.ts
CHANGED
|
@@ -29,19 +29,16 @@ export interface WebRTCStreamInit extends AbstractStreamInit {
|
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
// Max message size that can be sent to the DataChannel
|
|
32
|
-
|
|
32
|
+
const MAX_MESSAGE_SIZE = 16 * 1024
|
|
33
33
|
|
|
34
34
|
// How much can be buffered to the DataChannel at once
|
|
35
|
-
|
|
35
|
+
const MAX_BUFFERED_AMOUNT = 16 * 1024 * 1024
|
|
36
36
|
|
|
37
37
|
// How long time we wait for the 'bufferedamountlow' event to be emitted
|
|
38
|
-
|
|
38
|
+
const BUFFERED_AMOUNT_LOW_TIMEOUT = 30 * 1000
|
|
39
39
|
|
|
40
40
|
// protobuf field definition overhead
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
// Length of varint, in bytes.
|
|
44
|
-
export const VARINT_LENGTH = 2
|
|
41
|
+
const PROTOBUF_OVERHEAD = 3
|
|
45
42
|
|
|
46
43
|
export class WebRTCStream extends AbstractStream {
|
|
47
44
|
/**
|
|
@@ -61,10 +58,6 @@ export class WebRTCStream extends AbstractStream {
|
|
|
61
58
|
private readonly incomingData: Pushable<Uint8Array>
|
|
62
59
|
|
|
63
60
|
private messageQueue?: Uint8ArrayList
|
|
64
|
-
|
|
65
|
-
/**
|
|
66
|
-
* The maximum size of a message in bytes
|
|
67
|
-
*/
|
|
68
61
|
private readonly maxDataSize: number
|
|
69
62
|
|
|
70
63
|
constructor (init: WebRTCStreamInit) {
|
|
@@ -77,7 +70,7 @@ export class WebRTCStream extends AbstractStream {
|
|
|
77
70
|
this.dataChannelOptions = {
|
|
78
71
|
bufferedAmountLowEventTimeout: init.dataChannelOptions?.bufferedAmountLowEventTimeout ?? BUFFERED_AMOUNT_LOW_TIMEOUT,
|
|
79
72
|
maxBufferedAmount: init.dataChannelOptions?.maxBufferedAmount ?? MAX_BUFFERED_AMOUNT,
|
|
80
|
-
maxMessageSize: init.dataChannelOptions?.maxMessageSize ??
|
|
73
|
+
maxMessageSize: init.dataChannelOptions?.maxMessageSize ?? MAX_MESSAGE_SIZE
|
|
81
74
|
}
|
|
82
75
|
this.maxDataSize = init.maxDataSize
|
|
83
76
|
|
|
@@ -282,7 +275,7 @@ export function createStream (options: WebRTCStreamOptions): WebRTCStream {
|
|
|
282
275
|
return new WebRTCStream({
|
|
283
276
|
id: direction === 'inbound' ? (`i${channel.id}`) : `r${channel.id}`,
|
|
284
277
|
direction,
|
|
285
|
-
maxDataSize: (dataChannelOptions?.maxMessageSize ?? MAX_MESSAGE_SIZE) - PROTOBUF_OVERHEAD
|
|
278
|
+
maxDataSize: (dataChannelOptions?.maxMessageSize ?? MAX_MESSAGE_SIZE) - PROTOBUF_OVERHEAD,
|
|
286
279
|
dataChannelOptions,
|
|
287
280
|
onEnd,
|
|
288
281
|
channel,
|