mediasoup-client 3.9.1 → 3.9.3
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/lib/Consumer.d.ts +2 -2
- package/lib/Consumer.d.ts.map +1 -1
- package/lib/Consumer.js +20 -4
- package/lib/DataConsumer.d.ts +2 -2
- package/lib/DataConsumer.d.ts.map +1 -1
- package/lib/DataConsumer.js +14 -4
- package/lib/DataProducer.d.ts +2 -2
- package/lib/DataProducer.d.ts.map +1 -1
- package/lib/DataProducer.js +12 -4
- package/lib/Device.d.ts +5 -5
- package/lib/Device.d.ts.map +1 -1
- package/lib/Device.js +22 -41
- package/lib/Logger.d.ts +0 -1
- package/lib/Logger.d.ts.map +1 -1
- package/lib/Logger.js +4 -4
- package/lib/Producer.d.ts +2 -2
- package/lib/Producer.d.ts.map +1 -1
- package/lib/Producer.js +28 -4
- package/lib/Transport.d.ts +8 -8
- package/lib/Transport.d.ts.map +1 -1
- package/lib/Transport.js +60 -78
- package/lib/enhancedEvents.d.ts +1 -1
- package/lib/enhancedEvents.d.ts.map +1 -1
- package/lib/handlers/Chrome111.d.ts +4 -4
- package/lib/handlers/Chrome111.d.ts.map +1 -1
- package/lib/handlers/Chrome111.js +37 -52
- package/lib/handlers/Chrome55.d.ts +4 -4
- package/lib/handlers/Chrome55.d.ts.map +1 -1
- package/lib/handlers/Chrome55.js +39 -53
- package/lib/handlers/Chrome67.d.ts +4 -4
- package/lib/handlers/Chrome67.d.ts.map +1 -1
- package/lib/handlers/Chrome67.js +39 -53
- package/lib/handlers/Chrome70.d.ts +4 -4
- package/lib/handlers/Chrome70.d.ts.map +1 -1
- package/lib/handlers/Chrome70.js +34 -48
- package/lib/handlers/Chrome74.d.ts +4 -4
- package/lib/handlers/Chrome74.d.ts.map +1 -1
- package/lib/handlers/Chrome74.js +37 -52
- package/lib/handlers/Edge11.d.ts +4 -4
- package/lib/handlers/Edge11.d.ts.map +1 -1
- package/lib/handlers/Edge11.js +27 -44
- package/lib/handlers/FakeHandler.d.ts +4 -4
- package/lib/handlers/FakeHandler.d.ts.map +1 -1
- package/lib/handlers/FakeHandler.js +25 -48
- package/lib/handlers/Firefox120.d.ts +4 -4
- package/lib/handlers/Firefox120.d.ts.map +1 -1
- package/lib/handlers/Firefox120.js +33 -51
- package/lib/handlers/Firefox60.d.ts +4 -4
- package/lib/handlers/Firefox60.d.ts.map +1 -1
- package/lib/handlers/Firefox60.js +33 -51
- package/lib/handlers/HandlerInterface.d.ts +5 -5
- package/lib/handlers/HandlerInterface.d.ts.map +1 -1
- package/lib/handlers/ReactNative.d.ts +4 -4
- package/lib/handlers/ReactNative.d.ts.map +1 -1
- package/lib/handlers/ReactNative.js +39 -53
- package/lib/handlers/ReactNativeUnifiedPlan.d.ts +4 -4
- package/lib/handlers/ReactNativeUnifiedPlan.d.ts.map +1 -1
- package/lib/handlers/ReactNativeUnifiedPlan.js +37 -52
- package/lib/handlers/Safari11.d.ts +4 -4
- package/lib/handlers/Safari11.d.ts.map +1 -1
- package/lib/handlers/Safari11.js +39 -53
- package/lib/handlers/Safari12.d.ts +4 -4
- package/lib/handlers/Safari12.d.ts.map +1 -1
- package/lib/handlers/Safari12.js +37 -51
- package/lib/handlers/ortc/edgeUtils.d.ts +1 -1
- package/lib/handlers/ortc/edgeUtils.d.ts.map +1 -1
- package/lib/handlers/ortc/edgeUtils.js +2 -35
- package/lib/handlers/ortc/utils.d.ts +1 -1
- package/lib/handlers/ortc/utils.d.ts.map +1 -1
- package/lib/handlers/sdp/MediaSection.d.ts +5 -6
- package/lib/handlers/sdp/MediaSection.d.ts.map +1 -1
- package/lib/handlers/sdp/MediaSection.js +10 -39
- package/lib/handlers/sdp/RemoteSdp.d.ts +9 -6
- package/lib/handlers/sdp/RemoteSdp.d.ts.map +1 -1
- package/lib/handlers/sdp/RemoteSdp.js +29 -40
- package/lib/handlers/sdp/commonUtils.d.ts +2 -2
- package/lib/handlers/sdp/commonUtils.d.ts.map +1 -1
- package/lib/handlers/sdp/commonUtils.js +11 -44
- package/lib/handlers/sdp/plainRtpUtils.d.ts +1 -1
- package/lib/handlers/sdp/plainRtpUtils.d.ts.map +1 -1
- package/lib/handlers/sdp/plainRtpUtils.js +4 -4
- package/lib/handlers/sdp/planBUtils.d.ts +1 -1
- package/lib/handlers/sdp/planBUtils.d.ts.map +1 -1
- package/lib/handlers/sdp/planBUtils.js +6 -6
- package/lib/handlers/sdp/unifiedPlanUtils.d.ts +1 -1
- package/lib/handlers/sdp/unifiedPlanUtils.d.ts.map +1 -1
- package/lib/handlers/sdp/unifiedPlanUtils.js +4 -4
- package/lib/index.d.ts +11 -5
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +22 -44
- package/lib/ortc.d.ts +2 -2
- package/lib/ortc.d.ts.map +1 -1
- package/lib/ortc.js +6 -39
- package/lib/test/fakeParameters.d.ts +1 -1
- package/lib/test/fakeParameters.d.ts.map +1 -1
- package/lib/test/fakeParameters.js +1 -34
- package/lib/test/test.js +20 -53
- package/lib/test/uaTestCases.d.ts +1 -1
- package/lib/test/uaTestCases.d.ts.map +1 -1
- package/npm-scripts.mjs +34 -28
- package/package.json +32 -34
package/lib/Consumer.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EnhancedEventEmitter } from './enhancedEvents';
|
|
2
|
-
import { MediaKind, RtpParameters } from './RtpParameters';
|
|
3
|
-
import { AppData } from './types';
|
|
2
|
+
import type { MediaKind, RtpParameters } from './RtpParameters';
|
|
3
|
+
import type { AppData } from './types';
|
|
4
4
|
export type ConsumerOptions<ConsumerAppData extends AppData = AppData> = {
|
|
5
5
|
id?: string;
|
|
6
6
|
producerId?: string;
|
package/lib/Consumer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Consumer.d.ts","sourceRoot":"","sources":["../src/Consumer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"Consumer.d.ts","sourceRoot":"","sources":["../src/Consumer.ts"],"names":[],"mappings":"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"}
|
package/lib/Consumer.js
CHANGED
|
@@ -6,12 +6,28 @@ const enhancedEvents_1 = require("./enhancedEvents");
|
|
|
6
6
|
const errors_1 = require("./errors");
|
|
7
7
|
const logger = new Logger_1.Logger('Consumer');
|
|
8
8
|
class Consumer extends enhancedEvents_1.EnhancedEventEmitter {
|
|
9
|
+
// Id.
|
|
10
|
+
_id;
|
|
11
|
+
// Local id.
|
|
12
|
+
_localId;
|
|
13
|
+
// Associated Producer id.
|
|
14
|
+
_producerId;
|
|
15
|
+
// Closed flag.
|
|
16
|
+
_closed = false;
|
|
17
|
+
// Associated RTCRtpReceiver.
|
|
18
|
+
_rtpReceiver;
|
|
19
|
+
// Remote track.
|
|
20
|
+
_track;
|
|
21
|
+
// RTP parameters.
|
|
22
|
+
_rtpParameters;
|
|
23
|
+
// Paused flag.
|
|
24
|
+
_paused;
|
|
25
|
+
// App custom data.
|
|
26
|
+
_appData;
|
|
27
|
+
// Observer instance.
|
|
28
|
+
_observer = new enhancedEvents_1.EnhancedEventEmitter();
|
|
9
29
|
constructor({ id, localId, producerId, rtpReceiver, track, rtpParameters, appData, }) {
|
|
10
30
|
super();
|
|
11
|
-
// Closed flag.
|
|
12
|
-
this._closed = false;
|
|
13
|
-
// Observer instance.
|
|
14
|
-
this._observer = new enhancedEvents_1.EnhancedEventEmitter();
|
|
15
31
|
logger.debug('constructor()');
|
|
16
32
|
this._id = id;
|
|
17
33
|
this._localId = localId;
|
package/lib/DataConsumer.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EnhancedEventEmitter } from './enhancedEvents';
|
|
2
|
-
import { SctpStreamParameters } from './SctpParameters';
|
|
3
|
-
import { AppData } from './types';
|
|
2
|
+
import type { SctpStreamParameters } from './SctpParameters';
|
|
3
|
+
import type { AppData } from './types';
|
|
4
4
|
export type DataConsumerOptions<DataConsumerAppData extends AppData = AppData> = {
|
|
5
5
|
id?: string;
|
|
6
6
|
dataProducerId?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataConsumer.d.ts","sourceRoot":"","sources":["../src/DataConsumer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"DataConsumer.d.ts","sourceRoot":"","sources":["../src/DataConsumer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIvC,MAAM,MAAM,mBAAmB,CAAC,mBAAmB,SAAS,OAAO,GAAG,OAAO,IAC5E;IACC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC9B,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAC/B,oBAAoB,CAAC,0BAA0B,CAAC,CAAC;AAElD,MAAM,MAAM,kBAAkB,GAAG;IAChC,cAAc,EAAE,EAAE,CAAC;IACnB,IAAI,EAAE,EAAE,CAAC;IACT,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;IACf,KAAK,EAAE,EAAE,CAAC;IACV,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;IAEf,QAAQ,EAAE,EAAE,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACxC,KAAK,EAAE,EAAE,CAAC;CACV,CAAC;AAEF,qBAAa,YAAY,CACxB,mBAAmB,SAAS,OAAO,GAAG,OAAO,CAC5C,SAAQ,oBAAoB,CAAC,kBAAkB,CAAC;IAEjD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IAEzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiB;IAE9C,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAuB;IAE7D,OAAO,CAAC,QAAQ,CAAsB;IAEtC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CACM;gBAE5C,EACX,EAAE,EACF,cAAc,EACd,WAAW,EACX,oBAAoB,EACpB,OAAO,GACP,EAAE;QACF,EAAE,EAAE,MAAM,CAAC;QACX,cAAc,EAAE,MAAM,CAAC;QACvB,WAAW,EAAE,cAAc,CAAC;QAC5B,oBAAoB,EAAE,oBAAoB,CAAC;QAC3C,OAAO,CAAC,EAAE,mBAAmB,CAAC;KAC9B;IAcD;;OAEG;IACH,IAAI,EAAE,IAAI,MAAM,CAEf;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;OAEG;IACH,IAAI,oBAAoB,IAAI,oBAAoB,CAE/C;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,mBAAmB,CAEpC;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAElB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,UAAU,CAE3B;IAED;;OAEG;IACH,IAAI,UAAU,CAAC,UAAU,EAAE,UAAU,EAEpC;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,mBAAmB,CAEjC;IAED;;OAEG;IACH,IAAI,OAAO,CAAC,OAAO,EAAE,mBAAmB,EAEvC;IAED,IAAI,QAAQ,IAAI,oBAAoB,CAEnC;IAED;;OAEG;IACH,KAAK,IAAI,IAAI;IAiBb;;OAEG;IACH,eAAe,IAAI,IAAI;IAiBvB,OAAO,CAAC,iBAAiB;CA2DzB"}
|
package/lib/DataConsumer.js
CHANGED
|
@@ -5,12 +5,22 @@ const Logger_1 = require("./Logger");
|
|
|
5
5
|
const enhancedEvents_1 = require("./enhancedEvents");
|
|
6
6
|
const logger = new Logger_1.Logger('DataConsumer');
|
|
7
7
|
class DataConsumer extends enhancedEvents_1.EnhancedEventEmitter {
|
|
8
|
+
// Id.
|
|
9
|
+
_id;
|
|
10
|
+
// Associated DataProducer Id.
|
|
11
|
+
_dataProducerId;
|
|
12
|
+
// The underlying RTCDataChannel instance.
|
|
13
|
+
_dataChannel;
|
|
14
|
+
// Closed flag.
|
|
15
|
+
_closed = false;
|
|
16
|
+
// SCTP stream parameters.
|
|
17
|
+
_sctpStreamParameters;
|
|
18
|
+
// App custom data.
|
|
19
|
+
_appData;
|
|
20
|
+
// Observer instance.
|
|
21
|
+
_observer = new enhancedEvents_1.EnhancedEventEmitter();
|
|
8
22
|
constructor({ id, dataProducerId, dataChannel, sctpStreamParameters, appData, }) {
|
|
9
23
|
super();
|
|
10
|
-
// Closed flag.
|
|
11
|
-
this._closed = false;
|
|
12
|
-
// Observer instance.
|
|
13
|
-
this._observer = new enhancedEvents_1.EnhancedEventEmitter();
|
|
14
24
|
logger.debug('constructor()');
|
|
15
25
|
this._id = id;
|
|
16
26
|
this._dataProducerId = dataProducerId;
|
package/lib/DataProducer.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EnhancedEventEmitter } from './enhancedEvents';
|
|
2
|
-
import { SctpStreamParameters } from './SctpParameters';
|
|
3
|
-
import { AppData } from './types';
|
|
2
|
+
import type { SctpStreamParameters } from './SctpParameters';
|
|
3
|
+
import type { AppData } from './types';
|
|
4
4
|
export type DataProducerOptions<DataProducerAppData extends AppData = AppData> = {
|
|
5
5
|
ordered?: boolean;
|
|
6
6
|
maxPacketLifeTime?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataProducer.d.ts","sourceRoot":"","sources":["../src/DataProducer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"DataProducer.d.ts","sourceRoot":"","sources":["../src/DataProducer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIvC,MAAM,MAAM,mBAAmB,CAAC,mBAAmB,SAAS,OAAO,GAAG,OAAO,IAC5E;IACC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC9B,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAC/B,oBAAoB,CAAC,0BAA0B,CAAC,CAAC;AAElD,MAAM,MAAM,kBAAkB,GAAG;IAChC,cAAc,EAAE,EAAE,CAAC;IACnB,IAAI,EAAE,EAAE,CAAC;IACT,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;IACf,KAAK,EAAE,EAAE,CAAC;IACV,iBAAiB,EAAE,EAAE,CAAC;IAEtB,QAAQ,EAAE,EAAE,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACxC,KAAK,EAAE,EAAE,CAAC;CACV,CAAC;AAEF,qBAAa,YAAY,CACxB,mBAAmB,SAAS,OAAO,GAAG,OAAO,CAC5C,SAAQ,oBAAoB,CAAC,kBAAkB,CAAC;IAEjD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiB;IAE9C,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAuB;IAE7D,OAAO,CAAC,QAAQ,CAAsB;IAEtC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CACM;gBAE5C,EACX,EAAE,EACF,WAAW,EACX,oBAAoB,EACpB,OAAO,GACP,EAAE;QACF,EAAE,EAAE,MAAM,CAAC;QACX,WAAW,EAAE,cAAc,CAAC;QAC5B,oBAAoB,EAAE,oBAAoB,CAAC;QAC3C,OAAO,CAAC,EAAE,mBAAmB,CAAC;KAC9B;IAaD;;OAEG;IACH,IAAI,EAAE,IAAI,MAAM,CAEf;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;OAEG;IACH,IAAI,oBAAoB,IAAI,oBAAoB,CAE/C;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,mBAAmB,CAEpC;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAElB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED;;OAEG;IACH,IAAI,0BAA0B,IAAI,MAAM,CAEvC;IAED;;OAEG;IACH,IAAI,0BAA0B,CAAC,0BAA0B,EAAE,MAAM,EAEhE;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,mBAAmB,CAEjC;IAED;;OAEG;IACH,IAAI,OAAO,CAAC,OAAO,EAAE,mBAAmB,EAEvC;IAED,IAAI,QAAQ,IAAI,oBAAoB,CAEnC;IAED;;OAEG;IACH,KAAK,IAAI,IAAI;IAiBb;;OAEG;IACH,eAAe,IAAI,IAAI;IAiBvB;;;;OAIG;IACH,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI;IAUrB,OAAO,CAAC,iBAAiB;CAqEzB"}
|
package/lib/DataProducer.js
CHANGED
|
@@ -6,12 +6,20 @@ const enhancedEvents_1 = require("./enhancedEvents");
|
|
|
6
6
|
const errors_1 = require("./errors");
|
|
7
7
|
const logger = new Logger_1.Logger('DataProducer');
|
|
8
8
|
class DataProducer extends enhancedEvents_1.EnhancedEventEmitter {
|
|
9
|
+
// Id.
|
|
10
|
+
_id;
|
|
11
|
+
// The underlying RTCDataChannel instance.
|
|
12
|
+
_dataChannel;
|
|
13
|
+
// Closed flag.
|
|
14
|
+
_closed = false;
|
|
15
|
+
// SCTP stream parameters.
|
|
16
|
+
_sctpStreamParameters;
|
|
17
|
+
// App custom data.
|
|
18
|
+
_appData;
|
|
19
|
+
// Observer instance.
|
|
20
|
+
_observer = new enhancedEvents_1.EnhancedEventEmitter();
|
|
9
21
|
constructor({ id, dataChannel, sctpStreamParameters, appData, }) {
|
|
10
22
|
super();
|
|
11
|
-
// Closed flag.
|
|
12
|
-
this._closed = false;
|
|
13
|
-
// Observer instance.
|
|
14
|
-
this._observer = new enhancedEvents_1.EnhancedEventEmitter();
|
|
15
23
|
logger.debug('constructor()');
|
|
16
24
|
this._id = id;
|
|
17
25
|
this._dataChannel = dataChannel;
|
package/lib/Device.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { EnhancedEventEmitter } from './enhancedEvents';
|
|
2
|
-
import { Transport, TransportOptions } from './Transport';
|
|
3
|
-
import { HandlerFactory } from './handlers/HandlerInterface';
|
|
4
|
-
import { RtpCapabilities, MediaKind } from './RtpParameters';
|
|
5
|
-
import { SctpCapabilities } from './SctpParameters';
|
|
6
|
-
import { AppData } from './types';
|
|
2
|
+
import { Transport, type TransportOptions } from './Transport';
|
|
3
|
+
import { type HandlerFactory } from './handlers/HandlerInterface';
|
|
4
|
+
import type { RtpCapabilities, MediaKind } from './RtpParameters';
|
|
5
|
+
import type { SctpCapabilities } from './SctpParameters';
|
|
6
|
+
import type { AppData } from './types';
|
|
7
7
|
export type BuiltinHandlerName = 'Chrome111' | 'Chrome74' | 'Chrome70' | 'Chrome67' | 'Chrome55' | 'Firefox120' | 'Firefox60' | 'Safari12' | 'Safari11' | 'Edge11' | 'ReactNativeUnifiedPlan' | 'ReactNative';
|
|
8
8
|
export type DeviceOptions = {
|
|
9
9
|
/**
|
package/lib/Device.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../src/Device.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAIxD,OAAO,
|
|
1
|
+
{"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../src/Device.ts"],"names":[],"mappings":"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"}
|
package/lib/Device.js
CHANGED
|
@@ -1,37 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
3
|
exports.Device = void 0;
|
|
37
4
|
exports.detectDevice = detectDevice;
|
|
@@ -39,8 +6,8 @@ const ua_parser_js_1 = require("ua-parser-js");
|
|
|
39
6
|
const Logger_1 = require("./Logger");
|
|
40
7
|
const enhancedEvents_1 = require("./enhancedEvents");
|
|
41
8
|
const errors_1 = require("./errors");
|
|
42
|
-
const utils =
|
|
43
|
-
const ortc =
|
|
9
|
+
const utils = require("./utils");
|
|
10
|
+
const ortc = require("./ortc");
|
|
44
11
|
const Transport_1 = require("./Transport");
|
|
45
12
|
const Chrome111_1 = require("./handlers/Chrome111");
|
|
46
13
|
const Chrome74_1 = require("./handlers/Chrome74");
|
|
@@ -58,7 +25,8 @@ const logger = new Logger_1.Logger('Device');
|
|
|
58
25
|
function detectDevice(userAgent) {
|
|
59
26
|
// React-Native.
|
|
60
27
|
// NOTE: react-native-webrtc >= 1.75.0 is required.
|
|
61
|
-
// NOTE: react-native-webrtc
|
|
28
|
+
// NOTE: For Unified-Plan support, react-native-webrtc version >= 106.0.0 is
|
|
29
|
+
// required.
|
|
62
30
|
if (!userAgent &&
|
|
63
31
|
typeof navigator === 'object' &&
|
|
64
32
|
navigator.product === 'ReactNative') {
|
|
@@ -79,7 +47,7 @@ function detectDevice(userAgent) {
|
|
|
79
47
|
// Browser.
|
|
80
48
|
else if (userAgent ||
|
|
81
49
|
(typeof navigator === 'object' && typeof navigator.userAgent === 'string')) {
|
|
82
|
-
userAgent
|
|
50
|
+
userAgent ??= navigator.userAgent;
|
|
83
51
|
const uaParser = new ua_parser_js_1.UAParser(userAgent);
|
|
84
52
|
logger.debug('detectDevice() | browser detected [userAgent:%s, parsed:%o]', userAgent, uaParser.getResult());
|
|
85
53
|
const browser = uaParser.getBrowser();
|
|
@@ -194,16 +162,29 @@ function detectDevice(userAgent) {
|
|
|
194
162
|
}
|
|
195
163
|
}
|
|
196
164
|
class Device {
|
|
165
|
+
// RTC handler factory.
|
|
166
|
+
_handlerFactory;
|
|
167
|
+
// Handler name.
|
|
168
|
+
_handlerName;
|
|
169
|
+
// Loaded flag.
|
|
170
|
+
_loaded = false;
|
|
171
|
+
// Extended RTP capabilities.
|
|
172
|
+
_extendedRtpCapabilities;
|
|
173
|
+
// Local RTP capabilities for receiving media.
|
|
174
|
+
_recvRtpCapabilities;
|
|
175
|
+
// Whether we can produce audio/video based on computed extended RTP
|
|
176
|
+
// capabilities.
|
|
177
|
+
_canProduceByKind;
|
|
178
|
+
// Local SCTP capabilities.
|
|
179
|
+
_sctpCapabilities;
|
|
180
|
+
// Observer instance.
|
|
181
|
+
_observer = new enhancedEvents_1.EnhancedEventEmitter();
|
|
197
182
|
/**
|
|
198
183
|
* Create a new Device to connect to mediasoup server.
|
|
199
184
|
*
|
|
200
185
|
* @throws {UnsupportedError} if device is not supported.
|
|
201
186
|
*/
|
|
202
187
|
constructor({ handlerName, handlerFactory } = {}) {
|
|
203
|
-
// Loaded flag.
|
|
204
|
-
this._loaded = false;
|
|
205
|
-
// Observer instance.
|
|
206
|
-
this._observer = new enhancedEvents_1.EnhancedEventEmitter();
|
|
207
188
|
logger.debug('constructor()');
|
|
208
189
|
if (handlerName && handlerFactory) {
|
|
209
190
|
throw new TypeError('just one of handlerName or handlerInterface can be given');
|
package/lib/Logger.d.ts
CHANGED
package/lib/Logger.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../src/Logger.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../src/Logger.ts"],"names":[],"mappings":"AAIA,qBAAa,MAAM;IAClB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;gBAE5B,MAAM,CAAC,EAAE,MAAM;IAkB3B,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,CAE1B;IAED,IAAI,IAAI,IAAI,KAAK,CAAC,QAAQ,CAEzB;IAED,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,CAE1B;CACD"}
|
package/lib/Logger.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.Logger = void 0;
|
|
7
|
-
const debug_1 =
|
|
4
|
+
const debug_1 = require("debug");
|
|
8
5
|
const APP_NAME = 'mediasoup-client';
|
|
9
6
|
class Logger {
|
|
7
|
+
_debug;
|
|
8
|
+
_warn;
|
|
9
|
+
_error;
|
|
10
10
|
constructor(prefix) {
|
|
11
11
|
if (prefix) {
|
|
12
12
|
this._debug = (0, debug_1.default)(`${APP_NAME}:${prefix}`);
|
package/lib/Producer.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EnhancedEventEmitter } from './enhancedEvents';
|
|
2
|
-
import { MediaKind, RtpCodecCapability, RtpParameters, RtpEncodingParameters } from './RtpParameters';
|
|
3
|
-
import { AppData } from './types';
|
|
2
|
+
import type { MediaKind, RtpCodecCapability, RtpParameters, RtpEncodingParameters } from './RtpParameters';
|
|
3
|
+
import type { AppData } from './types';
|
|
4
4
|
export type ProducerOptions<ProducerAppData extends AppData = AppData> = {
|
|
5
5
|
track?: MediaStreamTrack;
|
|
6
6
|
encodings?: RtpEncodingParameters[];
|
package/lib/Producer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Producer.d.ts","sourceRoot":"","sources":["../src/Producer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,
|
|
1
|
+
{"version":3,"file":"Producer.d.ts","sourceRoot":"","sources":["../src/Producer.ts"],"names":[],"mappings":"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"}
|
package/lib/Producer.js
CHANGED
|
@@ -6,12 +6,36 @@ const enhancedEvents_1 = require("./enhancedEvents");
|
|
|
6
6
|
const errors_1 = require("./errors");
|
|
7
7
|
const logger = new Logger_1.Logger('Producer');
|
|
8
8
|
class Producer extends enhancedEvents_1.EnhancedEventEmitter {
|
|
9
|
+
// Id.
|
|
10
|
+
_id;
|
|
11
|
+
// Local id.
|
|
12
|
+
_localId;
|
|
13
|
+
// Closed flag.
|
|
14
|
+
_closed = false;
|
|
15
|
+
// Associated RTCRtpSender.
|
|
16
|
+
_rtpSender;
|
|
17
|
+
// Local track.
|
|
18
|
+
_track;
|
|
19
|
+
// Producer kind.
|
|
20
|
+
_kind;
|
|
21
|
+
// RTP parameters.
|
|
22
|
+
_rtpParameters;
|
|
23
|
+
// Paused flag.
|
|
24
|
+
_paused;
|
|
25
|
+
// Video max spatial layer.
|
|
26
|
+
_maxSpatialLayer;
|
|
27
|
+
// Whether the Producer should call stop() in given tracks.
|
|
28
|
+
_stopTracks;
|
|
29
|
+
// Whether the Producer should set track.enabled = false when paused.
|
|
30
|
+
_disableTrackOnPause;
|
|
31
|
+
// Whether we should replace the RTCRtpSender.track with null when paused.
|
|
32
|
+
_zeroRtpOnPause;
|
|
33
|
+
// App custom data.
|
|
34
|
+
_appData;
|
|
35
|
+
// Observer instance.
|
|
36
|
+
_observer = new enhancedEvents_1.EnhancedEventEmitter();
|
|
9
37
|
constructor({ id, localId, rtpSender, track, rtpParameters, stopTracks, disableTrackOnPause, zeroRtpOnPause, appData, }) {
|
|
10
38
|
super();
|
|
11
|
-
// Closed flag.
|
|
12
|
-
this._closed = false;
|
|
13
|
-
// Observer instance.
|
|
14
|
-
this._observer = new enhancedEvents_1.EnhancedEventEmitter();
|
|
15
39
|
logger.debug('constructor()');
|
|
16
40
|
this._id = id;
|
|
17
41
|
this._localId = localId;
|
package/lib/Transport.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { EnhancedEventEmitter } from './enhancedEvents';
|
|
2
|
-
import { HandlerFactory, HandlerInterface } from './handlers/HandlerInterface';
|
|
3
|
-
import { Producer, ProducerOptions } from './Producer';
|
|
4
|
-
import { Consumer, ConsumerOptions } from './Consumer';
|
|
5
|
-
import { DataProducer, DataProducerOptions } from './DataProducer';
|
|
6
|
-
import { DataConsumer, DataConsumerOptions } from './DataConsumer';
|
|
7
|
-
import { RtpParameters, MediaKind } from './RtpParameters';
|
|
8
|
-
import { SctpParameters, SctpStreamParameters } from './SctpParameters';
|
|
9
|
-
import { AppData } from './types';
|
|
2
|
+
import { type HandlerFactory, HandlerInterface } from './handlers/HandlerInterface';
|
|
3
|
+
import { Producer, type ProducerOptions } from './Producer';
|
|
4
|
+
import { Consumer, type ConsumerOptions } from './Consumer';
|
|
5
|
+
import { DataProducer, type DataProducerOptions } from './DataProducer';
|
|
6
|
+
import { DataConsumer, type DataConsumerOptions } from './DataConsumer';
|
|
7
|
+
import type { RtpParameters, MediaKind } from './RtpParameters';
|
|
8
|
+
import type { SctpParameters, SctpStreamParameters } from './SctpParameters';
|
|
9
|
+
import type { AppData } from './types';
|
|
10
10
|
export type TransportOptions<TransportAppData extends AppData = AppData> = {
|
|
11
11
|
id: string;
|
|
12
12
|
iceParameters: IceParameters;
|
package/lib/Transport.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../src/Transport.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../src/Transport.ts"],"names":[],"mappings":"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"}
|
package/lib/Transport.js
CHANGED
|
@@ -1,55 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
3
|
exports.Transport = void 0;
|
|
40
4
|
const awaitqueue_1 = require("awaitqueue");
|
|
41
|
-
const queue_microtask_1 = __importDefault(require("queue-microtask"));
|
|
42
5
|
const Logger_1 = require("./Logger");
|
|
43
6
|
const enhancedEvents_1 = require("./enhancedEvents");
|
|
44
7
|
const errors_1 = require("./errors");
|
|
45
|
-
const utils =
|
|
46
|
-
const ortc =
|
|
8
|
+
const utils = require("./utils");
|
|
9
|
+
const ortc = require("./ortc");
|
|
47
10
|
const Producer_1 = require("./Producer");
|
|
48
11
|
const Consumer_1 = require("./Consumer");
|
|
49
12
|
const DataProducer_1 = require("./DataProducer");
|
|
50
13
|
const DataConsumer_1 = require("./DataConsumer");
|
|
51
14
|
const logger = new Logger_1.Logger('Transport');
|
|
52
15
|
class ConsumerCreationTask {
|
|
16
|
+
consumerOptions;
|
|
17
|
+
promise;
|
|
18
|
+
resolve;
|
|
19
|
+
reject;
|
|
53
20
|
constructor(consumerOptions) {
|
|
54
21
|
this.consumerOptions = consumerOptions;
|
|
55
22
|
this.promise = new Promise((resolve, reject) => {
|
|
@@ -59,44 +26,59 @@ class ConsumerCreationTask {
|
|
|
59
26
|
}
|
|
60
27
|
}
|
|
61
28
|
class Transport extends enhancedEvents_1.EnhancedEventEmitter {
|
|
29
|
+
// Id.
|
|
30
|
+
_id;
|
|
31
|
+
// Closed flag.
|
|
32
|
+
_closed = false;
|
|
33
|
+
// Direction.
|
|
34
|
+
_direction;
|
|
35
|
+
// Extended RTP capabilities.
|
|
36
|
+
_extendedRtpCapabilities;
|
|
37
|
+
// Whether we can produce audio/video based on computed extended RTP
|
|
38
|
+
// capabilities.
|
|
39
|
+
_canProduceByKind;
|
|
40
|
+
// SCTP max message size if enabled, null otherwise.
|
|
41
|
+
_maxSctpMessageSize;
|
|
42
|
+
// RTC handler isntance.
|
|
43
|
+
_handler;
|
|
44
|
+
// Transport ICE gathering state.
|
|
45
|
+
_iceGatheringState = 'new';
|
|
46
|
+
// Transport connection state.
|
|
47
|
+
_connectionState = 'new';
|
|
48
|
+
// App custom data.
|
|
49
|
+
_appData;
|
|
50
|
+
// Map of Producers indexed by id.
|
|
51
|
+
_producers = new Map();
|
|
52
|
+
// Map of Consumers indexed by id.
|
|
53
|
+
_consumers = new Map();
|
|
54
|
+
// Map of DataProducers indexed by id.
|
|
55
|
+
_dataProducers = new Map();
|
|
56
|
+
// Map of DataConsumers indexed by id.
|
|
57
|
+
_dataConsumers = new Map();
|
|
58
|
+
// Whether the Consumer for RTP probation has been created.
|
|
59
|
+
_probatorConsumerCreated = false;
|
|
60
|
+
// AwaitQueue instance to make async tasks happen sequentially.
|
|
61
|
+
_awaitQueue = new awaitqueue_1.AwaitQueue();
|
|
62
|
+
// Consumer creation tasks awaiting to be processed.
|
|
63
|
+
_pendingConsumerTasks = [];
|
|
64
|
+
// Consumer creation in progress flag.
|
|
65
|
+
_consumerCreationInProgress = false;
|
|
66
|
+
// Consumers pending to be paused.
|
|
67
|
+
_pendingPauseConsumers = new Map();
|
|
68
|
+
// Consumer pause in progress flag.
|
|
69
|
+
_consumerPauseInProgress = false;
|
|
70
|
+
// Consumers pending to be resumed.
|
|
71
|
+
_pendingResumeConsumers = new Map();
|
|
72
|
+
// Consumer resume in progress flag.
|
|
73
|
+
_consumerResumeInProgress = false;
|
|
74
|
+
// Consumers pending to be closed.
|
|
75
|
+
_pendingCloseConsumers = new Map();
|
|
76
|
+
// Consumer close in progress flag.
|
|
77
|
+
_consumerCloseInProgress = false;
|
|
78
|
+
// Observer instance.
|
|
79
|
+
_observer = new enhancedEvents_1.EnhancedEventEmitter();
|
|
62
80
|
constructor({ direction, id, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, appData, handlerFactory, extendedRtpCapabilities, canProduceByKind, }) {
|
|
63
81
|
super();
|
|
64
|
-
// Closed flag.
|
|
65
|
-
this._closed = false;
|
|
66
|
-
// Transport ICE gathering state.
|
|
67
|
-
this._iceGatheringState = 'new';
|
|
68
|
-
// Transport connection state.
|
|
69
|
-
this._connectionState = 'new';
|
|
70
|
-
// Map of Producers indexed by id.
|
|
71
|
-
this._producers = new Map();
|
|
72
|
-
// Map of Consumers indexed by id.
|
|
73
|
-
this._consumers = new Map();
|
|
74
|
-
// Map of DataProducers indexed by id.
|
|
75
|
-
this._dataProducers = new Map();
|
|
76
|
-
// Map of DataConsumers indexed by id.
|
|
77
|
-
this._dataConsumers = new Map();
|
|
78
|
-
// Whether the Consumer for RTP probation has been created.
|
|
79
|
-
this._probatorConsumerCreated = false;
|
|
80
|
-
// AwaitQueue instance to make async tasks happen sequentially.
|
|
81
|
-
this._awaitQueue = new awaitqueue_1.AwaitQueue();
|
|
82
|
-
// Consumer creation tasks awaiting to be processed.
|
|
83
|
-
this._pendingConsumerTasks = [];
|
|
84
|
-
// Consumer creation in progress flag.
|
|
85
|
-
this._consumerCreationInProgress = false;
|
|
86
|
-
// Consumers pending to be paused.
|
|
87
|
-
this._pendingPauseConsumers = new Map();
|
|
88
|
-
// Consumer pause in progress flag.
|
|
89
|
-
this._consumerPauseInProgress = false;
|
|
90
|
-
// Consumers pending to be resumed.
|
|
91
|
-
this._pendingResumeConsumers = new Map();
|
|
92
|
-
// Consumer resume in progress flag.
|
|
93
|
-
this._consumerResumeInProgress = false;
|
|
94
|
-
// Consumers pending to be closed.
|
|
95
|
-
this._pendingCloseConsumers = new Map();
|
|
96
|
-
// Consumer close in progress flag.
|
|
97
|
-
this._consumerCloseInProgress = false;
|
|
98
|
-
// Observer instance.
|
|
99
|
-
this._observer = new enhancedEvents_1.EnhancedEventEmitter();
|
|
100
82
|
logger.debug('constructor() [id:%s, direction:%s]', id, direction);
|
|
101
83
|
this._id = id;
|
|
102
84
|
this._direction = direction;
|
|
@@ -428,7 +410,7 @@ class Transport extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
428
410
|
// Store the Consumer creation task.
|
|
429
411
|
this._pendingConsumerTasks.push(consumerCreationTask);
|
|
430
412
|
// There is no Consumer creation in progress, create it now.
|
|
431
|
-
(
|
|
413
|
+
queueMicrotask(() => {
|
|
432
414
|
if (this._closed) {
|
|
433
415
|
return;
|
|
434
416
|
}
|
|
@@ -832,7 +814,7 @@ class Transport extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
832
814
|
// Store the Consumer into the pending list.
|
|
833
815
|
this._pendingPauseConsumers.set(consumer.id, consumer);
|
|
834
816
|
// There is no Consumer pause in progress, do it now.
|
|
835
|
-
(
|
|
817
|
+
queueMicrotask(() => {
|
|
836
818
|
if (this._closed) {
|
|
837
819
|
return;
|
|
838
820
|
}
|
|
@@ -849,7 +831,7 @@ class Transport extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
849
831
|
// Store the Consumer into the pending list.
|
|
850
832
|
this._pendingResumeConsumers.set(consumer.id, consumer);
|
|
851
833
|
// There is no Consumer resume in progress, do it now.
|
|
852
|
-
(
|
|
834
|
+
queueMicrotask(() => {
|
|
853
835
|
if (this._closed) {
|
|
854
836
|
return;
|
|
855
837
|
}
|
package/lib/enhancedEvents.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EventEmitter, Listener } from 'npm-events-package';
|
|
1
|
+
import { EventEmitter, type Listener } from 'npm-events-package';
|
|
2
2
|
type Events = Record<string, any[]>;
|
|
3
3
|
export declare class EnhancedEventEmitter<E extends Events = Events> extends EventEmitter {
|
|
4
4
|
constructor();
|