mediasoup-client 3.7.1 → 3.7.2

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.
Files changed (105) hide show
  1. package/README.md +85 -112
  2. package/lib/Consumer.d.ts +1 -1
  3. package/lib/Consumer.d.ts.map +1 -1
  4. package/lib/Consumer.js +1 -1
  5. package/lib/DataConsumer.d.ts +1 -1
  6. package/lib/DataConsumer.d.ts.map +1 -1
  7. package/lib/DataConsumer.js +1 -1
  8. package/lib/DataProducer.d.ts +1 -1
  9. package/lib/DataProducer.d.ts.map +1 -1
  10. package/lib/DataProducer.js +1 -1
  11. package/lib/Device.d.ts +3 -3
  12. package/lib/Device.d.ts.map +1 -1
  13. package/lib/Device.js +66 -89
  14. package/lib/EnhancedEventEmitter.d.ts.map +1 -1
  15. package/lib/Logger.d.ts.map +1 -1
  16. package/lib/Producer.d.ts +5 -15
  17. package/lib/Producer.d.ts.map +1 -1
  18. package/lib/Producer.js +2 -2
  19. package/lib/RtpParameters.d.ts.map +1 -1
  20. package/lib/SctpParameters.d.ts.map +1 -1
  21. package/lib/Transport.d.ts +14 -10
  22. package/lib/Transport.d.ts.map +1 -1
  23. package/lib/Transport.js +71 -53
  24. package/lib/errors.d.ts.map +1 -1
  25. package/lib/errors.js +6 -6
  26. package/lib/handlers/Chrome111.d.ts +4 -4
  27. package/lib/handlers/Chrome111.d.ts.map +1 -1
  28. package/lib/handlers/Chrome111.js +74 -77
  29. package/lib/handlers/Chrome55.d.ts +4 -4
  30. package/lib/handlers/Chrome55.d.ts.map +1 -1
  31. package/lib/handlers/Chrome55.js +83 -80
  32. package/lib/handlers/Chrome67.d.ts +4 -4
  33. package/lib/handlers/Chrome67.d.ts.map +1 -1
  34. package/lib/handlers/Chrome67.js +85 -83
  35. package/lib/handlers/Chrome70.d.ts +4 -4
  36. package/lib/handlers/Chrome70.d.ts.map +1 -1
  37. package/lib/handlers/Chrome70.js +76 -78
  38. package/lib/handlers/Chrome74.d.ts +4 -4
  39. package/lib/handlers/Chrome74.d.ts.map +1 -1
  40. package/lib/handlers/Chrome74.js +75 -78
  41. package/lib/handlers/Edge11.d.ts +1 -1
  42. package/lib/handlers/Edge11.d.ts.map +1 -1
  43. package/lib/handlers/Edge11.js +63 -77
  44. package/lib/handlers/FakeHandler.d.ts +3 -3
  45. package/lib/handlers/FakeHandler.d.ts.map +1 -1
  46. package/lib/handlers/FakeHandler.js +19 -22
  47. package/lib/handlers/Firefox60.d.ts +4 -4
  48. package/lib/handlers/Firefox60.d.ts.map +1 -1
  49. package/lib/handlers/Firefox60.js +75 -72
  50. package/lib/handlers/HandlerInterface.d.ts.map +1 -1
  51. package/lib/handlers/ReactNative.d.ts +4 -4
  52. package/lib/handlers/ReactNative.d.ts.map +1 -1
  53. package/lib/handlers/ReactNative.js +84 -82
  54. package/lib/handlers/ReactNativeUnifiedPlan.d.ts +4 -4
  55. package/lib/handlers/ReactNativeUnifiedPlan.d.ts.map +1 -1
  56. package/lib/handlers/ReactNativeUnifiedPlan.js +75 -78
  57. package/lib/handlers/Safari11.d.ts +4 -4
  58. package/lib/handlers/Safari11.d.ts.map +1 -1
  59. package/lib/handlers/Safari11.js +84 -81
  60. package/lib/handlers/Safari12.d.ts +4 -4
  61. package/lib/handlers/Safari12.d.ts.map +1 -1
  62. package/lib/handlers/Safari12.js +75 -77
  63. package/lib/handlers/ortc/edgeUtils.d.ts.map +1 -1
  64. package/lib/handlers/ortc/utils.d.ts.map +1 -1
  65. package/lib/handlers/ortc/utils.js +2 -2
  66. package/lib/handlers/sdp/MediaSection.d.ts +5 -5
  67. package/lib/handlers/sdp/MediaSection.d.ts.map +1 -1
  68. package/lib/handlers/sdp/MediaSection.js +293 -317
  69. package/lib/handlers/sdp/RemoteSdp.d.ts +5 -5
  70. package/lib/handlers/sdp/RemoteSdp.d.ts.map +1 -1
  71. package/lib/handlers/sdp/RemoteSdp.js +28 -30
  72. package/lib/handlers/sdp/commonUtils.d.ts +4 -4
  73. package/lib/handlers/sdp/commonUtils.d.ts.map +1 -1
  74. package/lib/handlers/sdp/commonUtils.js +47 -58
  75. package/lib/handlers/sdp/plainRtpUtils.d.ts +2 -2
  76. package/lib/handlers/sdp/plainRtpUtils.d.ts.map +1 -1
  77. package/lib/handlers/sdp/plainRtpUtils.js +5 -7
  78. package/lib/handlers/sdp/planBUtils.d.ts +2 -2
  79. package/lib/handlers/sdp/planBUtils.d.ts.map +1 -1
  80. package/lib/handlers/sdp/planBUtils.js +11 -14
  81. package/lib/handlers/sdp/unifiedPlanUtils.d.ts +2 -2
  82. package/lib/handlers/sdp/unifiedPlanUtils.d.ts.map +1 -1
  83. package/lib/handlers/sdp/unifiedPlanUtils.js +11 -14
  84. package/lib/index.d.ts +1 -1
  85. package/lib/index.js +1 -1
  86. package/lib/ortc.d.ts.map +1 -1
  87. package/lib/ortc.js +98 -108
  88. package/lib/scalabilityModes.d.ts.map +1 -1
  89. package/lib/scalabilityModes.js +2 -2
  90. package/lib/{tests → test}/fakeParameters.d.ts +2 -2
  91. package/lib/test/fakeParameters.d.ts.map +1 -0
  92. package/lib/test/fakeParameters.js +645 -0
  93. package/lib/{tests → test}/test.d.ts.map +1 -1
  94. package/lib/{tests → test}/test.js +466 -495
  95. package/lib/test/uaTestCases.d.ts.map +1 -0
  96. package/lib/{tests → test}/uaTestCases.js +17 -17
  97. package/lib/types.d.ts.map +1 -1
  98. package/lib/utils.d.ts.map +1 -1
  99. package/npm-scripts.mjs +72 -98
  100. package/package.json +93 -90
  101. package/lib/tests/fakeParameters.d.ts.map +0 -1
  102. package/lib/tests/fakeParameters.js +0 -662
  103. package/lib/tests/uaTestCases.d.ts.map +0 -1
  104. /package/lib/{tests → test}/test.d.ts +0 -0
  105. /package/lib/{tests → test}/uaTestCases.d.ts +0 -0
package/lib/Transport.js CHANGED
@@ -49,7 +49,7 @@ class ConsumerCreationTask {
49
49
  }
50
50
  }
51
51
  class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
52
- constructor({ direction, id, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, appData, handlerFactory, extendedRtpCapabilities, canProduceByKind }) {
52
+ constructor({ direction, id, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, appData, handlerFactory, extendedRtpCapabilities, canProduceByKind, }) {
53
53
  super();
54
54
  // Closed flag.
55
55
  this._closed = false;
@@ -92,8 +92,9 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
92
92
  this._direction = direction;
93
93
  this._extendedRtpCapabilities = extendedRtpCapabilities;
94
94
  this._canProduceByKind = canProduceByKind;
95
- this._maxSctpMessageSize =
96
- sctpParameters ? sctpParameters.maxMessageSize : null;
95
+ this._maxSctpMessageSize = sctpParameters
96
+ ? sctpParameters.maxMessageSize
97
+ : null;
97
98
  // Clone and sanitize additionalSettings.
98
99
  additionalSettings = utils.clone(additionalSettings) || {};
99
100
  delete additionalSettings.iceServers;
@@ -112,7 +113,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
112
113
  iceTransportPolicy,
113
114
  additionalSettings,
114
115
  proprietaryConstraints,
115
- extendedRtpCapabilities
116
+ extendedRtpCapabilities,
116
117
  });
117
118
  this._appData = appData || {};
118
119
  this.handleHandler();
@@ -221,7 +222,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
221
222
  /**
222
223
  * Restart ICE connection.
223
224
  */
224
- async restartIce({ iceParameters }) {
225
+ async restartIce({ iceParameters, }) {
225
226
  logger.debug('restartIce()');
226
227
  if (this._closed) {
227
228
  throw new errors_1.InvalidStateError('closed');
@@ -235,7 +236,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
235
236
  /**
236
237
  * Update ICE servers.
237
238
  */
238
- async updateIceServers({ iceServers } = {}) {
239
+ async updateIceServers({ iceServers, } = {}) {
239
240
  logger.debug('updateIceServers()');
240
241
  if (this._closed) {
241
242
  throw new errors_1.InvalidStateError('closed');
@@ -249,7 +250,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
249
250
  /**
250
251
  * Create a Producer.
251
252
  */
252
- async produce({ track, encodings, codecOptions, codec, stopTracks = true, disableTrackOnPause = true, zeroRtpOnPause = false, appData = {} } = {}) {
253
+ async produce({ track, encodings, codecOptions, codec, stopTracks = true, disableTrackOnPause = true, zeroRtpOnPause = false, appData = {}, } = {}) {
253
254
  logger.debug('produce() [track:%o]', track);
254
255
  if (this._closed) {
255
256
  throw new errors_1.InvalidStateError('closed');
@@ -266,7 +267,8 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
266
267
  else if (track.readyState === 'ended') {
267
268
  throw new errors_1.InvalidStateError('track ended');
268
269
  }
269
- else if (this.listenerCount('connect') === 0 && this._connectionState === 'new') {
270
+ else if (this.listenerCount('connect') === 0 &&
271
+ this._connectionState === 'new') {
270
272
  throw new TypeError('no "connect" listener set into this transport');
271
273
  }
272
274
  else if (this.listenerCount('produce') === 0) {
@@ -276,7 +278,8 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
276
278
  throw new TypeError('if given, appData must be an object');
277
279
  }
278
280
  // Enqueue command.
279
- return this._awaitQueue.push(async () => {
281
+ return (this._awaitQueue
282
+ .push(async () => {
280
283
  let normalizedEncodings;
281
284
  if (encodings && !Array.isArray(encodings)) {
282
285
  throw TypeError('encodings must be an array');
@@ -285,8 +288,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
285
288
  normalizedEncodings = undefined;
286
289
  }
287
290
  else if (encodings) {
288
- normalizedEncodings = encodings
289
- .map((encoding) => {
291
+ normalizedEncodings = encodings.map((encoding) => {
290
292
  const normalizedEncoding = { active: true };
291
293
  if (encoding.active === false) {
292
294
  normalizedEncoding.active = false;
@@ -298,7 +300,8 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
298
300
  normalizedEncoding.scalabilityMode = encoding.scalabilityMode;
299
301
  }
300
302
  if (typeof encoding.scaleResolutionDownBy === 'number') {
301
- normalizedEncoding.scaleResolutionDownBy = encoding.scaleResolutionDownBy;
303
+ normalizedEncoding.scaleResolutionDownBy =
304
+ encoding.scaleResolutionDownBy;
302
305
  }
303
306
  if (typeof encoding.maxBitrate === 'number') {
304
307
  normalizedEncoding.maxBitrate = encoding.maxBitrate;
@@ -322,7 +325,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
322
325
  track,
323
326
  encodings: normalizedEncodings,
324
327
  codecOptions,
325
- codec
328
+ codec,
326
329
  });
327
330
  try {
328
331
  // This will fill rtpParameters's missing fields with default values.
@@ -331,7 +334,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
331
334
  this.safeEmit('produce', {
332
335
  kind: track.kind,
333
336
  rtpParameters,
334
- appData
337
+ appData,
335
338
  }, resolve, reject);
336
339
  });
337
340
  const producer = new Producer_1.Producer({
@@ -343,7 +346,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
343
346
  stopTracks,
344
347
  disableTrackOnPause,
345
348
  zeroRtpOnPause,
346
- appData
349
+ appData,
347
350
  });
348
351
  this._producers.set(producer.id, producer);
349
352
  this.handleProducer(producer);
@@ -352,8 +355,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
352
355
  return producer;
353
356
  }
354
357
  catch (error) {
355
- this._handler.stopSending(localId)
356
- .catch(() => { });
358
+ this._handler.stopSending(localId).catch(() => { });
357
359
  throw error;
358
360
  }
359
361
  }, 'transport.produce()')
@@ -367,12 +369,12 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
367
369
  catch (error2) { }
368
370
  }
369
371
  throw error;
370
- });
372
+ }));
371
373
  }
372
374
  /**
373
375
  * Create a Consumer to consume a remote Producer.
374
376
  */
375
- async consume({ id, producerId, kind, rtpParameters, streamId, appData = {} }) {
377
+ async consume({ id, producerId, kind, rtpParameters, streamId, appData = {}, }) {
376
378
  logger.debug('consume()');
377
379
  rtpParameters = utils.clone(rtpParameters);
378
380
  if (this._closed) {
@@ -390,7 +392,8 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
390
392
  else if (kind !== 'audio' && kind !== 'video') {
391
393
  throw new TypeError(`invalid kind '${kind}'`);
392
394
  }
393
- else if (this.listenerCount('connect') === 0 && this._connectionState === 'new') {
395
+ else if (this.listenerCount('connect') === 0 &&
396
+ this._connectionState === 'new') {
394
397
  throw new TypeError('no "connect" listener set into this transport');
395
398
  }
396
399
  else if (appData && typeof appData !== 'object') {
@@ -407,7 +410,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
407
410
  kind,
408
411
  rtpParameters,
409
412
  streamId,
410
- appData
413
+ appData,
411
414
  });
412
415
  // Store the Consumer creation task.
413
416
  this._pendingConsumerTasks.push(consumerCreationTask);
@@ -425,7 +428,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
425
428
  /**
426
429
  * Create a DataProducer
427
430
  */
428
- async produceData({ ordered = true, maxPacketLifeTime, maxRetransmits, label = '', protocol = '', appData = {} } = {}) {
431
+ async produceData({ ordered = true, maxPacketLifeTime, maxRetransmits, label = '', protocol = '', appData = {}, } = {}) {
429
432
  logger.debug('produceData()');
430
433
  if (this._closed) {
431
434
  throw new errors_1.InvalidStateError('closed');
@@ -436,7 +439,8 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
436
439
  else if (!this._maxSctpMessageSize) {
437
440
  throw new errors_1.UnsupportedError('SCTP not enabled by remote Transport');
438
441
  }
439
- else if (this.listenerCount('connect') === 0 && this._connectionState === 'new') {
442
+ else if (this.listenerCount('connect') === 0 &&
443
+ this._connectionState === 'new') {
440
444
  throw new TypeError('no "connect" listener set into this transport');
441
445
  }
442
446
  else if (this.listenerCount('producedata') === 0) {
@@ -455,7 +459,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
455
459
  maxPacketLifeTime,
456
460
  maxRetransmits,
457
461
  label,
458
- protocol
462
+ protocol,
459
463
  });
460
464
  // This will fill sctpStreamParameters's missing fields with default values.
461
465
  ortc.validateSctpStreamParameters(sctpStreamParameters);
@@ -464,14 +468,14 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
464
468
  sctpStreamParameters,
465
469
  label,
466
470
  protocol,
467
- appData
471
+ appData,
468
472
  }, resolve, reject);
469
473
  });
470
474
  const dataProducer = new DataProducer_1.DataProducer({
471
475
  id,
472
476
  dataChannel,
473
477
  sctpStreamParameters,
474
- appData
478
+ appData,
475
479
  });
476
480
  this._dataProducers.set(dataProducer.id, dataProducer);
477
481
  this.handleDataProducer(dataProducer);
@@ -483,7 +487,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
483
487
  /**
484
488
  * Create a DataConsumer
485
489
  */
486
- async consumeData({ id, dataProducerId, sctpStreamParameters, label = '', protocol = '', appData = {} }) {
490
+ async consumeData({ id, dataProducerId, sctpStreamParameters, label = '', protocol = '', appData = {}, }) {
487
491
  logger.debug('consumeData()');
488
492
  sctpStreamParameters = utils.clone(sctpStreamParameters);
489
493
  if (this._closed) {
@@ -501,7 +505,8 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
501
505
  else if (typeof dataProducerId !== 'string') {
502
506
  throw new TypeError('missing dataProducerId');
503
507
  }
504
- else if (this.listenerCount('connect') === 0 && this._connectionState === 'new') {
508
+ else if (this.listenerCount('connect') === 0 &&
509
+ this._connectionState === 'new') {
505
510
  throw new TypeError('no "connect" listener set into this transport');
506
511
  }
507
512
  else if (appData && typeof appData !== 'object') {
@@ -514,14 +519,14 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
514
519
  const { dataChannel } = await this._handler.receiveDataChannel({
515
520
  sctpStreamParameters,
516
521
  label,
517
- protocol
522
+ protocol,
518
523
  });
519
524
  const dataConsumer = new DataConsumer_1.DataConsumer({
520
525
  id,
521
526
  dataProducerId,
522
527
  dataChannel,
523
528
  sctpStreamParameters,
524
- appData
529
+ appData,
525
530
  });
526
531
  this._dataConsumers.set(dataConsumer.id, dataConsumer);
527
532
  this.handleDataConsumer(dataConsumer);
@@ -533,7 +538,8 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
533
538
  // This method is guaranteed to never throw.
534
539
  async createPendingConsumers() {
535
540
  this._consumerCreationInProgress = true;
536
- this._awaitQueue.push(async () => {
541
+ this._awaitQueue
542
+ .push(async () => {
537
543
  if (this._pendingConsumerTasks.length === 0) {
538
544
  logger.debug('createPendingConsumers() | there is no Consumer to be created');
539
545
  return;
@@ -551,7 +557,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
551
557
  trackId: id,
552
558
  kind: kind,
553
559
  rtpParameters,
554
- streamId
560
+ streamId,
555
561
  });
556
562
  }
557
563
  try {
@@ -568,14 +574,15 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
568
574
  rtpReceiver,
569
575
  track,
570
576
  rtpParameters,
571
- appData: appData
577
+ appData: appData,
572
578
  });
573
579
  this._consumers.set(consumer.id, consumer);
574
580
  this.handleConsumer(consumer);
575
581
  // If this is the first video Consumer and the Consumer for RTP probation
576
582
  // has not yet been created, it's time to create it.
577
583
  if (!this._probatorConsumerCreated &&
578
- !videoConsumerForProbator && kind === 'video') {
584
+ !videoConsumerForProbator &&
585
+ kind === 'video') {
579
586
  videoConsumerForProbator = consumer;
580
587
  }
581
588
  // Emit observer event.
@@ -592,11 +599,13 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
592
599
  if (videoConsumerForProbator) {
593
600
  try {
594
601
  const probatorRtpParameters = ortc.generateProbatorRtpParameters(videoConsumerForProbator.rtpParameters);
595
- await this._handler.receive([{
602
+ await this._handler.receive([
603
+ {
596
604
  trackId: 'probator',
597
605
  kind: 'video',
598
- rtpParameters: probatorRtpParameters
599
- }]);
606
+ rtpParameters: probatorRtpParameters,
607
+ },
608
+ ]);
600
609
  logger.debug('createPendingConsumers() | Consumer for RTP probation created');
601
610
  this._probatorConsumerCreated = true;
602
611
  }
@@ -617,7 +626,8 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
617
626
  }
618
627
  pausePendingConsumers() {
619
628
  this._consumerPauseInProgress = true;
620
- this._awaitQueue.push(async () => {
629
+ this._awaitQueue
630
+ .push(async () => {
621
631
  if (this._pendingPauseConsumers.size === 0) {
622
632
  logger.debug('pausePendingConsumers() | there is no Consumer to be paused');
623
633
  return;
@@ -626,8 +636,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
626
636
  // Clear pending pause Consumer map.
627
637
  this._pendingPauseConsumers.clear();
628
638
  try {
629
- const localIds = pendingPauseConsumers
630
- .map((consumer) => consumer.localId);
639
+ const localIds = pendingPauseConsumers.map(consumer => consumer.localId);
631
640
  await this._handler.pauseReceiving(localIds);
632
641
  }
633
642
  catch (error) {
@@ -646,7 +655,8 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
646
655
  }
647
656
  resumePendingConsumers() {
648
657
  this._consumerResumeInProgress = true;
649
- this._awaitQueue.push(async () => {
658
+ this._awaitQueue
659
+ .push(async () => {
650
660
  if (this._pendingResumeConsumers.size === 0) {
651
661
  logger.debug('resumePendingConsumers() | there is no Consumer to be resumed');
652
662
  return;
@@ -655,8 +665,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
655
665
  // Clear pending resume Consumer map.
656
666
  this._pendingResumeConsumers.clear();
657
667
  try {
658
- const localIds = pendingResumeConsumers
659
- .map((consumer) => consumer.localId);
668
+ const localIds = pendingResumeConsumers.map(consumer => consumer.localId);
660
669
  await this._handler.resumeReceiving(localIds);
661
670
  }
662
671
  catch (error) {
@@ -675,7 +684,8 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
675
684
  }
676
685
  closePendingConsumers() {
677
686
  this._consumerCloseInProgress = true;
678
- this._awaitQueue.push(async () => {
687
+ this._awaitQueue
688
+ .push(async () => {
679
689
  if (this._pendingCloseConsumers.size === 0) {
680
690
  logger.debug('closePendingConsumers() | there is no Consumer to be closed');
681
691
  return;
@@ -684,7 +694,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
684
694
  // Clear pending close Consumer map.
685
695
  this._pendingCloseConsumers.clear();
686
696
  try {
687
- await this._handler.stopReceiving(pendingCloseConsumers.map((consumer) => consumer.localId));
697
+ await this._handler.stopReceiving(pendingCloseConsumers.map(consumer => consumer.localId));
688
698
  }
689
699
  catch (error) {
690
700
  logger.error('closePendingConsumers() | failed to close Consumers:', error);
@@ -736,31 +746,37 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
736
746
  if (this._closed) {
737
747
  return;
738
748
  }
739
- this._awaitQueue.push(async () => await this._handler.stopSending(producer.localId), 'producer @close event')
749
+ this._awaitQueue
750
+ .push(async () => await this._handler.stopSending(producer.localId), 'producer @close event')
740
751
  .catch((error) => logger.warn('producer.close() failed:%o', error));
741
752
  });
742
753
  producer.on('@pause', (callback, errback) => {
743
- this._awaitQueue.push(async () => await this._handler.pauseSending(producer.localId), 'producer @pause event')
754
+ this._awaitQueue
755
+ .push(async () => await this._handler.pauseSending(producer.localId), 'producer @pause event')
744
756
  .then(callback)
745
757
  .catch(errback);
746
758
  });
747
759
  producer.on('@resume', (callback, errback) => {
748
- this._awaitQueue.push(async () => await this._handler.resumeSending(producer.localId), 'producer @resume event')
760
+ this._awaitQueue
761
+ .push(async () => await this._handler.resumeSending(producer.localId), 'producer @resume event')
749
762
  .then(callback)
750
763
  .catch(errback);
751
764
  });
752
765
  producer.on('@replacetrack', (track, callback, errback) => {
753
- this._awaitQueue.push(async () => await this._handler.replaceTrack(producer.localId, track), 'producer @replacetrack event')
766
+ this._awaitQueue
767
+ .push(async () => await this._handler.replaceTrack(producer.localId, track), 'producer @replacetrack event')
754
768
  .then(callback)
755
769
  .catch(errback);
756
770
  });
757
771
  producer.on('@setmaxspatiallayer', (spatialLayer, callback, errback) => {
758
- this._awaitQueue.push(async () => (await this._handler.setMaxSpatialLayer(producer.localId, spatialLayer)), 'producer @setmaxspatiallayer event')
772
+ this._awaitQueue
773
+ .push(async () => await this._handler.setMaxSpatialLayer(producer.localId, spatialLayer), 'producer @setmaxspatiallayer event')
759
774
  .then(callback)
760
775
  .catch(errback);
761
776
  });
762
777
  producer.on('@setrtpencodingparameters', (params, callback, errback) => {
763
- this._awaitQueue.push(async () => (await this._handler.setRtpEncodingParameters(producer.localId, params)), 'producer @setrtpencodingparameters event')
778
+ this._awaitQueue
779
+ .push(async () => await this._handler.setRtpEncodingParameters(producer.localId, params), 'producer @setrtpencodingparameters event')
764
780
  .then(callback)
765
781
  .catch(errback);
766
782
  });
@@ -768,7 +784,8 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
768
784
  if (this._closed) {
769
785
  return errback(new errors_1.InvalidStateError('closed'));
770
786
  }
771
- this._handler.getSenderStats(producer.localId)
787
+ this._handler
788
+ .getSenderStats(producer.localId)
772
789
  .then(callback)
773
790
  .catch(errback);
774
791
  });
@@ -826,7 +843,8 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
826
843
  if (this._closed) {
827
844
  return errback(new errors_1.InvalidStateError('closed'));
828
845
  }
829
- this._handler.getReceiverStats(consumer.localId)
846
+ this._handler
847
+ .getReceiverStats(consumer.localId)
830
848
  .then(callback)
831
849
  .catch(errback);
832
850
  });
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;gBAE9B,OAAO,EAAE,MAAM;CAgB3B;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;gBAE/B,OAAO,EAAE,MAAM;CAgB3B"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;gBAC9B,OAAO,EAAE,MAAM;CAa3B;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;gBAC/B,OAAO,EAAE,MAAM;CAa3B"}
package/lib/errors.js CHANGED
@@ -8,13 +8,13 @@ class UnsupportedError extends Error {
8
8
  constructor(message) {
9
9
  super(message);
10
10
  this.name = 'UnsupportedError';
11
- if (Error.hasOwnProperty('captureStackTrace')) // Just in V8.
12
- {
11
+ if (Error.hasOwnProperty('captureStackTrace')) {
12
+ // Just in V8.
13
13
  // @ts-ignore
14
14
  Error.captureStackTrace(this, UnsupportedError);
15
15
  }
16
16
  else {
17
- this.stack = (new Error(message)).stack;
17
+ this.stack = new Error(message).stack;
18
18
  }
19
19
  }
20
20
  }
@@ -26,13 +26,13 @@ class InvalidStateError extends Error {
26
26
  constructor(message) {
27
27
  super(message);
28
28
  this.name = 'InvalidStateError';
29
- if (Error.hasOwnProperty('captureStackTrace')) // Just in V8.
30
- {
29
+ if (Error.hasOwnProperty('captureStackTrace')) {
30
+ // Just in V8.
31
31
  // @ts-ignore
32
32
  Error.captureStackTrace(this, InvalidStateError);
33
33
  }
34
34
  else {
35
- this.stack = (new Error(message)).stack;
35
+ this.stack = new Error(message).stack;
36
36
  }
37
37
  }
38
38
  }
@@ -24,11 +24,11 @@ export declare class Chrome111 extends HandlerInterface {
24
24
  close(): void;
25
25
  getNativeRtpCapabilities(): Promise<RtpCapabilities>;
26
26
  getNativeSctpCapabilities(): Promise<SctpCapabilities>;
27
- run({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, extendedRtpCapabilities }: HandlerRunOptions): void;
27
+ run({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, extendedRtpCapabilities, }: HandlerRunOptions): void;
28
28
  updateIceServers(iceServers: RTCIceServer[]): Promise<void>;
29
29
  restartIce(iceParameters: IceParameters): Promise<void>;
30
30
  getTransportStats(): Promise<RTCStatsReport>;
31
- send({ track, encodings, codecOptions, codec }: HandlerSendOptions): Promise<HandlerSendResult>;
31
+ send({ track, encodings, codecOptions, codec, }: HandlerSendOptions): Promise<HandlerSendResult>;
32
32
  stopSending(localId: string): Promise<void>;
33
33
  pauseSending(localId: string): Promise<void>;
34
34
  resumeSending(localId: string): Promise<void>;
@@ -36,13 +36,13 @@ export declare class Chrome111 extends HandlerInterface {
36
36
  setMaxSpatialLayer(localId: string, spatialLayer: number): Promise<void>;
37
37
  setRtpEncodingParameters(localId: string, params: any): Promise<void>;
38
38
  getSenderStats(localId: string): Promise<RTCStatsReport>;
39
- sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol }: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
39
+ sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol, }: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
40
40
  receive(optionsList: HandlerReceiveOptions[]): Promise<HandlerReceiveResult[]>;
41
41
  stopReceiving(localIds: string[]): Promise<void>;
42
42
  pauseReceiving(localIds: string[]): Promise<void>;
43
43
  resumeReceiving(localIds: string[]): Promise<void>;
44
44
  getReceiverStats(localId: string): Promise<RTCStatsReport>;
45
- receiveDataChannel({ sctpStreamParameters, label, protocol }: HandlerReceiveDataChannelOptions): Promise<HandlerReceiveDataChannelResult>;
45
+ receiveDataChannel({ sctpStreamParameters, label, protocol, }: HandlerReceiveDataChannelOptions): Promise<HandlerReceiveDataChannelResult>;
46
46
  private setupTransport;
47
47
  private assertNotClosed;
48
48
  private assertSendDirection;
@@ -1 +1 @@
1
- {"version":3,"file":"Chrome111.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome111.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Chrome111.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome111.ts"],"names":[],"mappings":"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"}