@libp2p/webrtc 4.0.10 → 4.0.11
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 +12 -12
- package/dist/src/webrtc/index.d.ts +1 -6
- package/dist/src/webrtc/index.d.ts.map +1 -1
- package/dist/src/webrtc/index.js +1 -6
- package/dist/src/webrtc/index.js.map +1 -1
- package/package.json +7 -7
- package/src/webrtc/index.ts +1 -6
- package/dist/src/webrtc/rtc-data-channel.d.ts +0 -29
- package/dist/src/webrtc/rtc-data-channel.d.ts.map +0 -1
- package/dist/src/webrtc/rtc-data-channel.js +0 -115
- package/dist/src/webrtc/rtc-data-channel.js.map +0 -1
- package/dist/src/webrtc/rtc-events.d.ts +0 -9
- package/dist/src/webrtc/rtc-events.d.ts.map +0 -1
- package/dist/src/webrtc/rtc-events.js +0 -15
- package/dist/src/webrtc/rtc-events.js.map +0 -1
- package/dist/src/webrtc/rtc-ice-candidate.d.ts +0 -22
- package/dist/src/webrtc/rtc-ice-candidate.d.ts.map +0 -1
- package/dist/src/webrtc/rtc-ice-candidate.js +0 -47
- package/dist/src/webrtc/rtc-ice-candidate.js.map +0 -1
- package/dist/src/webrtc/rtc-peer-connection.d.ts +0 -47
- package/dist/src/webrtc/rtc-peer-connection.d.ts.map +0 -1
- package/dist/src/webrtc/rtc-peer-connection.js +0 -245
- package/dist/src/webrtc/rtc-peer-connection.js.map +0 -1
- package/dist/src/webrtc/rtc-session-description.d.ts +0 -10
- package/dist/src/webrtc/rtc-session-description.d.ts.map +0 -1
- package/dist/src/webrtc/rtc-session-description.js +0 -18
- package/dist/src/webrtc/rtc-session-description.js.map +0 -1
- package/src/webrtc/rtc-data-channel.ts +0 -140
- package/src/webrtc/rtc-events.ts +0 -19
- package/src/webrtc/rtc-ice-candidate.ts +0 -50
- package/src/webrtc/rtc-peer-connection.ts +0 -306
- package/src/webrtc/rtc-session-description.ts +0 -19
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
import { PeerConnection } from './rtc-peer-connection.js';
|
|
3
|
-
import { SessionDescription } from './rtc-session-description.js';
|
|
4
|
-
export { SessionDescription as RTCSessionDescription };
|
|
5
|
-
export { IceCandidate as RTCIceCandidate };
|
|
6
|
-
export { PeerConnection as RTCPeerConnection };
|
|
1
|
+
export { RTCSessionDescription, RTCIceCandidate, RTCPeerConnection } from 'node-datachannel/polyfill';
|
|
7
2
|
export declare function cleanup(): void;
|
|
8
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/webrtc/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/webrtc/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAErG,wBAAgB,OAAO,IAAK,IAAI,CAE/B"}
|
package/dist/src/webrtc/index.js
CHANGED
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
import node from 'node-datachannel';
|
|
2
|
-
|
|
3
|
-
import { PeerConnection } from './rtc-peer-connection.js';
|
|
4
|
-
import { SessionDescription } from './rtc-session-description.js';
|
|
5
|
-
export { SessionDescription as RTCSessionDescription };
|
|
6
|
-
export { IceCandidate as RTCIceCandidate };
|
|
7
|
-
export { PeerConnection as RTCPeerConnection };
|
|
2
|
+
export { RTCSessionDescription, RTCIceCandidate, RTCPeerConnection } from 'node-datachannel/polyfill';
|
|
8
3
|
export function cleanup() {
|
|
9
4
|
node.cleanup();
|
|
10
5
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/webrtc/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/webrtc/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,kBAAkB,CAAA;AAEnC,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAErG,MAAM,UAAU,OAAO;IACrB,IAAI,CAAC,OAAO,EAAE,CAAA;AAChB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@libp2p/webrtc",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.11",
|
|
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/main/packages/transport-webrtc#readme",
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"@libp2p/interface-internal": "^1.0.3",
|
|
55
55
|
"@libp2p/logger": "^4.0.2",
|
|
56
56
|
"@libp2p/peer-id": "^4.0.2",
|
|
57
|
-
"@libp2p/utils": "^5.0
|
|
57
|
+
"@libp2p/utils": "^5.1.0",
|
|
58
58
|
"@multiformats/mafmt": "^12.1.6",
|
|
59
59
|
"@multiformats/multiaddr": "^12.1.10",
|
|
60
60
|
"@multiformats/multiaddr-matcher": "^1.1.0",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"it-to-buffer": "^4.0.2",
|
|
68
68
|
"multiformats": "^12.1.3",
|
|
69
69
|
"multihashes": "^4.0.3",
|
|
70
|
-
"node-datachannel": "^0.5.
|
|
70
|
+
"node-datachannel": "^0.5.3",
|
|
71
71
|
"p-defer": "^4.0.0",
|
|
72
72
|
"p-event": "^6.0.0",
|
|
73
73
|
"p-timeout": "^6.1.2",
|
|
@@ -79,10 +79,10 @@
|
|
|
79
79
|
},
|
|
80
80
|
"devDependencies": {
|
|
81
81
|
"@chainsafe/libp2p-yamux": "^6.0.1",
|
|
82
|
-
"@libp2p/circuit-relay-v2": "^1.0.
|
|
83
|
-
"@libp2p/interface-compliance-tests": "^5.0.
|
|
82
|
+
"@libp2p/circuit-relay-v2": "^1.0.8",
|
|
83
|
+
"@libp2p/interface-compliance-tests": "^5.0.8",
|
|
84
84
|
"@libp2p/peer-id-factory": "^4.0.1",
|
|
85
|
-
"@libp2p/websockets": "^8.0.
|
|
85
|
+
"@libp2p/websockets": "^8.0.8",
|
|
86
86
|
"@types/sinon": "^17.0.0",
|
|
87
87
|
"aegir": "^41.0.2",
|
|
88
88
|
"delay": "^6.0.0",
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
"it-length": "^3.0.2",
|
|
91
91
|
"it-map": "^3.0.3",
|
|
92
92
|
"it-pair": "^2.0.6",
|
|
93
|
-
"libp2p": "^1.0.
|
|
93
|
+
"libp2p": "^1.0.11",
|
|
94
94
|
"p-retry": "^6.1.0",
|
|
95
95
|
"protons": "^7.3.0",
|
|
96
96
|
"sinon": "^17.0.0",
|
package/src/webrtc/index.ts
CHANGED
|
@@ -1,11 +1,6 @@
|
|
|
1
1
|
import node from 'node-datachannel'
|
|
2
|
-
import { IceCandidate } from './rtc-ice-candidate.js'
|
|
3
|
-
import { PeerConnection } from './rtc-peer-connection.js'
|
|
4
|
-
import { SessionDescription } from './rtc-session-description.js'
|
|
5
2
|
|
|
6
|
-
export {
|
|
7
|
-
export { IceCandidate as RTCIceCandidate }
|
|
8
|
-
export { PeerConnection as RTCPeerConnection }
|
|
3
|
+
export { RTCSessionDescription, RTCIceCandidate, RTCPeerConnection } from 'node-datachannel/polyfill'
|
|
9
4
|
|
|
10
5
|
export function cleanup (): void {
|
|
11
6
|
node.cleanup()
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import type node from 'node-datachannel';
|
|
2
|
-
export declare class DataChannel extends EventTarget implements RTCDataChannel {
|
|
3
|
-
#private;
|
|
4
|
-
binaryType: BinaryType;
|
|
5
|
-
readonly maxPacketLifeTime: number | null;
|
|
6
|
-
readonly maxRetransmits: number | null;
|
|
7
|
-
readonly negotiated: boolean;
|
|
8
|
-
readonly ordered: boolean;
|
|
9
|
-
onbufferedamountlow: ((this: RTCDataChannel, ev: Event) => any) | null;
|
|
10
|
-
onclose: ((this: RTCDataChannel, ev: Event) => any) | null;
|
|
11
|
-
onclosing: ((this: RTCDataChannel, ev: Event) => any) | null;
|
|
12
|
-
onerror: ((this: RTCDataChannel, ev: Event) => any) | null;
|
|
13
|
-
onmessage: ((this: RTCDataChannel, ev: MessageEvent) => any) | null;
|
|
14
|
-
onopen: ((this: RTCDataChannel, ev: Event) => any) | null;
|
|
15
|
-
constructor(dataChannel: node.DataChannel, dataChannelDict?: RTCDataChannelInit);
|
|
16
|
-
get id(): number;
|
|
17
|
-
get label(): string;
|
|
18
|
-
get protocol(): string;
|
|
19
|
-
get bufferedAmount(): number;
|
|
20
|
-
set bufferedAmountLowThreshold(threshold: number);
|
|
21
|
-
get bufferedAmountLowThreshold(): number;
|
|
22
|
-
get readyState(): RTCDataChannelState;
|
|
23
|
-
close(): void;
|
|
24
|
-
send(data: string): void;
|
|
25
|
-
send(data: Blob): void;
|
|
26
|
-
send(data: ArrayBuffer): void;
|
|
27
|
-
send(data: ArrayBufferView): void;
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=rtc-data-channel.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rtc-data-channel.d.ts","sourceRoot":"","sources":["../../../src/webrtc/rtc-data-channel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAA;AAExC,qBAAa,WAAY,SAAQ,WAAY,YAAW,cAAc;;IACpE,UAAU,EAAE,UAAU,CAAA;IAEtB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IACzC,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IACtC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IAEzB,mBAAmB,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IACtE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IAC1D,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IAC5D,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IAC1D,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,YAAY,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IACnE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;gBAM5C,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,eAAe,GAAE,kBAAuB;IAqEpF,IAAI,EAAE,IAAK,MAAM,CAEhB;IAED,IAAI,KAAK,IAAK,MAAM,CAEnB;IAED,IAAI,QAAQ,IAAK,MAAM,CAEtB;IAED,IAAI,cAAc,IAAK,MAAM,CAE5B;IAED,IAAI,0BAA0B,CAAE,SAAS,EAAE,MAAM,EAGhD;IAED,IAAI,0BAA0B,IAAK,MAAM,CAExC;IAED,IAAI,UAAU,IAAK,mBAAmB,CAErC;IAED,KAAK,IAAK,IAAI;IAOd,IAAI,CAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IACzB,IAAI,CAAE,IAAI,EAAE,IAAI,GAAG,IAAI;IACvB,IAAI,CAAE,IAAI,EAAE,WAAW,GAAG,IAAI;IAC9B,IAAI,CAAE,IAAI,EAAE,eAAe,GAAG,IAAI;CASnC"}
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string';
|
|
2
|
-
export class DataChannel extends EventTarget {
|
|
3
|
-
binaryType;
|
|
4
|
-
maxPacketLifeTime;
|
|
5
|
-
maxRetransmits;
|
|
6
|
-
negotiated;
|
|
7
|
-
ordered;
|
|
8
|
-
onbufferedamountlow;
|
|
9
|
-
onclose;
|
|
10
|
-
onclosing;
|
|
11
|
-
onerror;
|
|
12
|
-
onmessage;
|
|
13
|
-
onopen;
|
|
14
|
-
#dataChannel;
|
|
15
|
-
#bufferedAmountLowThreshold;
|
|
16
|
-
#readyState;
|
|
17
|
-
constructor(dataChannel, dataChannelDict = {}) {
|
|
18
|
-
super();
|
|
19
|
-
this.#dataChannel = dataChannel;
|
|
20
|
-
this.#readyState = 'connecting';
|
|
21
|
-
this.#bufferedAmountLowThreshold = 0;
|
|
22
|
-
this.binaryType = 'arraybuffer';
|
|
23
|
-
this.#dataChannel.onOpen(() => {
|
|
24
|
-
this.#readyState = 'open';
|
|
25
|
-
this.dispatchEvent(new Event('open'));
|
|
26
|
-
});
|
|
27
|
-
this.#dataChannel.onClosed(() => {
|
|
28
|
-
this.#readyState = 'closed';
|
|
29
|
-
this.dispatchEvent(new Event('close'));
|
|
30
|
-
});
|
|
31
|
-
this.#dataChannel.onError((msg) => {
|
|
32
|
-
this.#readyState = 'closed';
|
|
33
|
-
this.dispatchEvent(new RTCErrorEvent('error', {
|
|
34
|
-
error: new RTCError({
|
|
35
|
-
errorDetail: 'data-channel-failure'
|
|
36
|
-
}, msg)
|
|
37
|
-
}));
|
|
38
|
-
});
|
|
39
|
-
this.#dataChannel.onBufferedAmountLow(() => {
|
|
40
|
-
this.dispatchEvent(new Event('bufferedamountlow'));
|
|
41
|
-
});
|
|
42
|
-
this.#dataChannel.onMessage((data) => {
|
|
43
|
-
if (typeof data === 'string') {
|
|
44
|
-
data = uint8ArrayFromString(data);
|
|
45
|
-
}
|
|
46
|
-
this.dispatchEvent(new MessageEvent('message', { data }));
|
|
47
|
-
});
|
|
48
|
-
// forward events to properties
|
|
49
|
-
this.addEventListener('message', event => {
|
|
50
|
-
this.onmessage?.(event);
|
|
51
|
-
});
|
|
52
|
-
this.addEventListener('bufferedamountlow', event => {
|
|
53
|
-
this.onbufferedamountlow?.(event);
|
|
54
|
-
});
|
|
55
|
-
this.addEventListener('error', event => {
|
|
56
|
-
this.onerror?.(event);
|
|
57
|
-
});
|
|
58
|
-
this.addEventListener('close', event => {
|
|
59
|
-
this.onclose?.(event);
|
|
60
|
-
});
|
|
61
|
-
this.addEventListener('closing', event => {
|
|
62
|
-
this.onclosing?.(event);
|
|
63
|
-
});
|
|
64
|
-
this.addEventListener('open', event => {
|
|
65
|
-
this.onopen?.(event);
|
|
66
|
-
});
|
|
67
|
-
this.onbufferedamountlow = null;
|
|
68
|
-
this.onclose = null;
|
|
69
|
-
this.onclosing = null;
|
|
70
|
-
this.onerror = null;
|
|
71
|
-
this.onmessage = null;
|
|
72
|
-
this.onopen = null;
|
|
73
|
-
this.maxPacketLifeTime = dataChannelDict.maxPacketLifeTime ?? null;
|
|
74
|
-
this.maxRetransmits = dataChannelDict.maxRetransmits ?? null;
|
|
75
|
-
this.negotiated = dataChannelDict.negotiated ?? false;
|
|
76
|
-
this.ordered = dataChannelDict.ordered ?? true;
|
|
77
|
-
}
|
|
78
|
-
get id() {
|
|
79
|
-
return this.#dataChannel.getId();
|
|
80
|
-
}
|
|
81
|
-
get label() {
|
|
82
|
-
return this.#dataChannel.getLabel();
|
|
83
|
-
}
|
|
84
|
-
get protocol() {
|
|
85
|
-
return this.#dataChannel.getProtocol();
|
|
86
|
-
}
|
|
87
|
-
get bufferedAmount() {
|
|
88
|
-
return this.#dataChannel.bufferedAmount();
|
|
89
|
-
}
|
|
90
|
-
set bufferedAmountLowThreshold(threshold) {
|
|
91
|
-
this.#bufferedAmountLowThreshold = threshold;
|
|
92
|
-
this.#dataChannel.setBufferedAmountLowThreshold(threshold);
|
|
93
|
-
}
|
|
94
|
-
get bufferedAmountLowThreshold() {
|
|
95
|
-
return this.#bufferedAmountLowThreshold;
|
|
96
|
-
}
|
|
97
|
-
get readyState() {
|
|
98
|
-
return this.#readyState;
|
|
99
|
-
}
|
|
100
|
-
close() {
|
|
101
|
-
this.#readyState = 'closing';
|
|
102
|
-
this.dispatchEvent(new Event('closing'));
|
|
103
|
-
this.#dataChannel.close();
|
|
104
|
-
}
|
|
105
|
-
send(data) {
|
|
106
|
-
// TODO: sending Blobs
|
|
107
|
-
if (typeof data === 'string') {
|
|
108
|
-
this.#dataChannel.sendMessage(data);
|
|
109
|
-
}
|
|
110
|
-
else {
|
|
111
|
-
this.#dataChannel.sendMessageBinary(data);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
//# sourceMappingURL=rtc-data-channel.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rtc-data-channel.js","sourceRoot":"","sources":["../../../src/webrtc/rtc-data-channel.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export declare class PeerConnectionIceEvent extends Event implements RTCPeerConnectionIceEvent {
|
|
2
|
-
readonly candidate: RTCIceCandidate | null;
|
|
3
|
-
constructor(candidate: RTCIceCandidate);
|
|
4
|
-
}
|
|
5
|
-
export declare class DataChannelEvent extends Event implements RTCDataChannelEvent {
|
|
6
|
-
readonly channel: RTCDataChannel;
|
|
7
|
-
constructor(channel: RTCDataChannel);
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=rtc-events.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rtc-events.d.ts","sourceRoot":"","sources":["../../../src/webrtc/rtc-events.ts"],"names":[],"mappings":"AAAA,qBAAa,sBAAuB,SAAQ,KAAM,YAAW,yBAAyB;IACpF,QAAQ,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI,CAAA;gBAE7B,SAAS,EAAE,eAAe;CAKxC;AAED,qBAAa,gBAAiB,SAAQ,KAAM,YAAW,mBAAmB;IACxE,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAA;gBAEnB,OAAO,EAAE,cAAc;CAKrC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export class PeerConnectionIceEvent extends Event {
|
|
2
|
-
candidate;
|
|
3
|
-
constructor(candidate) {
|
|
4
|
-
super('icecandidate');
|
|
5
|
-
this.candidate = candidate;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
export class DataChannelEvent extends Event {
|
|
9
|
-
channel;
|
|
10
|
-
constructor(channel) {
|
|
11
|
-
super('datachannel');
|
|
12
|
-
this.channel = channel;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=rtc-events.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rtc-events.js","sourceRoot":"","sources":["../../../src/webrtc/rtc-events.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IACtC,SAAS,CAAwB;IAE1C,YAAa,SAA0B;QACrC,KAAK,CAAC,cAAc,CAAC,CAAA;QAErB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAChC,OAAO,CAAgB;IAEhC,YAAa,OAAuB;QAClC,KAAK,CAAC,aAAa,CAAC,CAAA;QAEpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;CACF"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @see https://developer.mozilla.org/docs/Web/API/RTCIceCandidate
|
|
3
|
-
*/
|
|
4
|
-
export declare class IceCandidate implements RTCIceCandidate {
|
|
5
|
-
readonly address: string | null;
|
|
6
|
-
readonly candidate: string;
|
|
7
|
-
readonly component: RTCIceComponent | null;
|
|
8
|
-
readonly foundation: string | null;
|
|
9
|
-
readonly port: number | null;
|
|
10
|
-
readonly priority: number | null;
|
|
11
|
-
readonly protocol: RTCIceProtocol | null;
|
|
12
|
-
readonly relatedAddress: string | null;
|
|
13
|
-
readonly relatedPort: number | null;
|
|
14
|
-
readonly sdpMLineIndex: number | null;
|
|
15
|
-
readonly sdpMid: string | null;
|
|
16
|
-
readonly tcpType: RTCIceTcpCandidateType | null;
|
|
17
|
-
readonly type: RTCIceCandidateType | null;
|
|
18
|
-
readonly usernameFragment: string | null;
|
|
19
|
-
constructor(init: RTCIceCandidateInit);
|
|
20
|
-
toJSON(): RTCIceCandidateInit;
|
|
21
|
-
}
|
|
22
|
-
//# sourceMappingURL=rtc-ice-candidate.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rtc-ice-candidate.d.ts","sourceRoot":"","sources":["../../../src/webrtc/rtc-ice-candidate.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,YAAa,YAAW,eAAe;IAClD,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI,CAAA;IAC1C,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAA;IACxC,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IACtC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,QAAQ,CAAC,OAAO,EAAE,sBAAsB,GAAG,IAAI,CAAA;IAC/C,QAAQ,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAAA;IACzC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;gBAE3B,IAAI,EAAE,mBAAmB;IAsBtC,MAAM,IAAK,mBAAmB;CAQ/B"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @see https://developer.mozilla.org/docs/Web/API/RTCIceCandidate
|
|
3
|
-
*/
|
|
4
|
-
export class IceCandidate {
|
|
5
|
-
address;
|
|
6
|
-
candidate;
|
|
7
|
-
component;
|
|
8
|
-
foundation;
|
|
9
|
-
port;
|
|
10
|
-
priority;
|
|
11
|
-
protocol;
|
|
12
|
-
relatedAddress;
|
|
13
|
-
relatedPort;
|
|
14
|
-
sdpMLineIndex;
|
|
15
|
-
sdpMid;
|
|
16
|
-
tcpType;
|
|
17
|
-
type;
|
|
18
|
-
usernameFragment;
|
|
19
|
-
constructor(init) {
|
|
20
|
-
if (init.candidate == null) {
|
|
21
|
-
throw new DOMException('candidate must be specified');
|
|
22
|
-
}
|
|
23
|
-
this.candidate = init.candidate;
|
|
24
|
-
this.sdpMLineIndex = init.sdpMLineIndex ?? null;
|
|
25
|
-
this.sdpMid = init.sdpMid ?? null;
|
|
26
|
-
this.usernameFragment = init.usernameFragment ?? null;
|
|
27
|
-
this.address = null;
|
|
28
|
-
this.component = null;
|
|
29
|
-
this.foundation = null;
|
|
30
|
-
this.port = null;
|
|
31
|
-
this.priority = null;
|
|
32
|
-
this.protocol = null;
|
|
33
|
-
this.relatedAddress = null;
|
|
34
|
-
this.relatedPort = null;
|
|
35
|
-
this.tcpType = null;
|
|
36
|
-
this.type = null;
|
|
37
|
-
}
|
|
38
|
-
toJSON() {
|
|
39
|
-
return {
|
|
40
|
-
candidate: this.candidate,
|
|
41
|
-
sdpMLineIndex: this.sdpMLineIndex,
|
|
42
|
-
sdpMid: this.sdpMid,
|
|
43
|
-
usernameFragment: this.usernameFragment
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=rtc-ice-candidate.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rtc-ice-candidate.js","sourceRoot":"","sources":["../../../src/webrtc/rtc-ice-candidate.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,YAAY;IACd,OAAO,CAAe;IACtB,SAAS,CAAQ;IACjB,SAAS,CAAwB;IACjC,UAAU,CAAe;IACzB,IAAI,CAAe;IACnB,QAAQ,CAAe;IACvB,QAAQ,CAAuB;IAC/B,cAAc,CAAe;IAC7B,WAAW,CAAe;IAC1B,aAAa,CAAe;IAC5B,MAAM,CAAe;IACrB,OAAO,CAA+B;IACtC,IAAI,CAA4B;IAChC,gBAAgB,CAAe;IAExC,YAAa,IAAyB;QACpC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;YAC3B,MAAM,IAAI,YAAY,CAAC,6BAA6B,CAAC,CAAA;QACvD,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;QAC/B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAA;QAC/C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAA;QACjC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAA;QAErD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACrB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QACpB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QACpB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAED,MAAM;QACJ,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;SACxC,CAAA;IACH,CAAC;CACF"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
export declare class PeerConnection extends EventTarget implements RTCPeerConnection {
|
|
2
|
-
#private;
|
|
3
|
-
static generateCertificate(keygenAlgorithm: AlgorithmIdentifier): Promise<RTCCertificate>;
|
|
4
|
-
canTrickleIceCandidates: boolean | null;
|
|
5
|
-
sctp: RTCSctpTransport | null;
|
|
6
|
-
onconnectionstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
|
|
7
|
-
ondatachannel: ((this: RTCPeerConnection, ev: RTCDataChannelEvent) => any) | null;
|
|
8
|
-
onicecandidate: ((this: RTCPeerConnection, ev: RTCPeerConnectionIceEvent) => any) | null;
|
|
9
|
-
onicecandidateerror: ((this: RTCPeerConnection, ev: Event) => any) | null;
|
|
10
|
-
oniceconnectionstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
|
|
11
|
-
onicegatheringstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
|
|
12
|
-
onnegotiationneeded: ((this: RTCPeerConnection, ev: Event) => any) | null;
|
|
13
|
-
onsignalingstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
|
|
14
|
-
ontrack: ((this: RTCPeerConnection, ev: RTCTrackEvent) => any) | null;
|
|
15
|
-
constructor(init?: RTCConfiguration);
|
|
16
|
-
get connectionState(): RTCPeerConnectionState;
|
|
17
|
-
get iceConnectionState(): RTCIceConnectionState;
|
|
18
|
-
get iceGatheringState(): RTCIceGatheringState;
|
|
19
|
-
get signalingState(): RTCSignalingState;
|
|
20
|
-
get currentLocalDescription(): RTCSessionDescription | null;
|
|
21
|
-
get localDescription(): RTCSessionDescription | null;
|
|
22
|
-
get pendingLocalDescription(): RTCSessionDescription | null;
|
|
23
|
-
get currentRemoteDescription(): RTCSessionDescription | null;
|
|
24
|
-
get pendingRemoteDescription(): RTCSessionDescription | null;
|
|
25
|
-
get remoteDescription(): RTCSessionDescription | null;
|
|
26
|
-
addIceCandidate(candidate?: RTCIceCandidateInit): Promise<void>;
|
|
27
|
-
addTrack(track: MediaStreamTrack, ...streams: MediaStream[]): RTCRtpSender;
|
|
28
|
-
addTransceiver(trackOrKind: MediaStreamTrack | string, init?: RTCRtpTransceiverInit): RTCRtpTransceiver;
|
|
29
|
-
close(): void;
|
|
30
|
-
createDataChannel(label: string, dataChannelDict?: RTCDataChannelInit): RTCDataChannel;
|
|
31
|
-
createOffer(options?: RTCOfferOptions): Promise<RTCSessionDescriptionInit>;
|
|
32
|
-
createOffer(successCallback: RTCSessionDescriptionCallback, failureCallback: RTCPeerConnectionErrorCallback, options?: RTCOfferOptions): Promise<void>;
|
|
33
|
-
createAnswer(options?: RTCAnswerOptions): Promise<RTCSessionDescriptionInit>;
|
|
34
|
-
createAnswer(successCallback: RTCSessionDescriptionCallback, failureCallback: RTCPeerConnectionErrorCallback): Promise<void>;
|
|
35
|
-
getConfiguration(): RTCConfiguration;
|
|
36
|
-
getReceivers(): RTCRtpReceiver[];
|
|
37
|
-
getSenders(): RTCRtpSender[];
|
|
38
|
-
getStats(selector?: MediaStreamTrack | null): Promise<RTCStatsReport>;
|
|
39
|
-
getTransceivers(): RTCRtpTransceiver[];
|
|
40
|
-
removeTrack(sender: RTCRtpSender): void;
|
|
41
|
-
restartIce(): void;
|
|
42
|
-
setConfiguration(configuration?: RTCConfiguration): void;
|
|
43
|
-
setLocalDescription(description?: RTCLocalSessionDescriptionInit): Promise<void>;
|
|
44
|
-
setRemoteDescription(description: RTCSessionDescriptionInit): Promise<void>;
|
|
45
|
-
}
|
|
46
|
-
export { PeerConnection as RTCPeerConnection };
|
|
47
|
-
//# sourceMappingURL=rtc-peer-connection.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rtc-peer-connection.d.ts","sourceRoot":"","sources":["../../../src/webrtc/rtc-peer-connection.ts"],"names":[],"mappings":"AAOA,qBAAa,cAAe,SAAQ,WAAY,YAAW,iBAAiB;;WAC7D,mBAAmB,CAAE,eAAe,EAAE,mBAAmB,GAAG,OAAO,CAAC,cAAc,CAAC;IAIhG,uBAAuB,EAAE,OAAO,GAAG,IAAI,CAAA;IACvC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAE7B,uBAAuB,EAAE,CAAC,CAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IAC7E,aAAa,EAAE,CAAC,CAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,mBAAmB,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IACjF,cAAc,EAAE,CAAC,CAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,yBAAyB,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IACxF,mBAAmB,EAAE,CAAC,CAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IACzE,0BAA0B,EAAE,CAAC,CAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IAChF,yBAAyB,EAAE,CAAC,CAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IAC/E,mBAAmB,EAAE,CAAC,CAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IACzE,sBAAsB,EAAE,CAAC,CAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;IAC5E,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,aAAa,KAAK,GAAG,CAAC,GAAG,IAAI,CAAA;gBAQxD,IAAI,GAAE,gBAAqB;IAmGxC,IAAI,eAAe,IAAK,sBAAsB,CAE7C;IAED,IAAI,kBAAkB,IAAK,qBAAqB,CAE/C;IAED,IAAI,iBAAiB,IAAK,oBAAoB,CAE7C;IAED,IAAI,cAAc,IAAK,iBAAiB,CAEvC;IAED,IAAI,uBAAuB,IAAK,qBAAqB,GAAG,IAAI,CAE3D;IAED,IAAI,gBAAgB,IAAK,qBAAqB,GAAG,IAAI,CAEpD;IAED,IAAI,uBAAuB,IAAK,qBAAqB,GAAG,IAAI,CAE3D;IAED,IAAI,wBAAwB,IAAK,qBAAqB,GAAG,IAAI,CAG5D;IAED,IAAI,wBAAwB,IAAK,qBAAqB,GAAG,IAAI,CAG5D;IAED,IAAI,iBAAiB,IAAK,qBAAqB,GAAG,IAAI,CAGrD;IAEK,eAAe,CAAE,SAAS,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQtE,QAAQ,CAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,OAAO,EAAE,WAAW,EAAE,GAAG,YAAY;IAI3E,cAAc,CAAE,WAAW,EAAE,gBAAgB,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,qBAAqB,GAAG,iBAAiB;IAIxG,KAAK,IAAK,IAAI;IAUd,iBAAiB,CAAE,KAAK,EAAE,MAAM,EAAE,eAAe,GAAE,kBAAuB,GAAG,cAAc;IAarF,WAAW,CAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAC3E,WAAW,CAAE,eAAe,EAAE,6BAA6B,EAAE,eAAe,EAAE,8BAA8B,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvJ,YAAY,CAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAC7E,YAAY,CAAE,eAAe,EAAE,6BAA6B,EAAE,eAAe,EAAE,8BAA8B,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnI,gBAAgB,IAAK,gBAAgB;IAIrC,YAAY,IAAK,cAAc,EAAE;IAIjC,UAAU,IAAK,YAAY,EAAE;IAIvB,QAAQ,CAAE,QAAQ,CAAC,EAAE,gBAAgB,GAAG,IAAI,GAAG,OAAO,CAAC,cAAc,CAAC;IAI5E,eAAe,IAAK,iBAAiB,EAAE;IAIvC,WAAW,CAAE,MAAM,EAAE,YAAY,GAAG,IAAI;IAIxC,UAAU,IAAK,IAAI;IAInB,gBAAgB,CAAE,aAAa,GAAE,gBAAqB,GAAG,IAAI;IAIvD,mBAAmB,CAAE,WAAW,CAAC,EAAE,8BAA8B,GAAG,OAAO,CAAC,IAAI,CAAC;IAcjF,oBAAoB,CAAE,WAAW,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;CAQnF;AAED,OAAO,EAAE,cAAc,IAAI,iBAAiB,EAAE,CAAA"}
|