mediasoup-client 3.6.92 → 3.6.94
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/Device.js +5 -6
- package/lib/Transport.js +7 -7
- package/lib/handlers/Chrome111.d.ts +2 -0
- package/lib/handlers/Chrome111.d.ts.map +1 -1
- package/lib/handlers/Chrome111.js +39 -8
- package/lib/handlers/Chrome55.js +4 -8
- package/lib/handlers/Chrome67.js +4 -8
- package/lib/handlers/Chrome70.js +4 -8
- package/lib/handlers/Chrome74.d.ts +2 -0
- package/lib/handlers/Chrome74.d.ts.map +1 -1
- package/lib/handlers/Chrome74.js +38 -8
- package/lib/handlers/FakeHandler.d.ts +2 -0
- package/lib/handlers/FakeHandler.d.ts.map +1 -1
- package/lib/handlers/FakeHandler.js +35 -2
- package/lib/handlers/Firefox60.d.ts +2 -0
- package/lib/handlers/Firefox60.d.ts.map +1 -1
- package/lib/handlers/Firefox60.js +34 -0
- package/lib/handlers/ReactNative.js +4 -8
- package/lib/handlers/ReactNativeUnifiedPlan.d.ts +2 -0
- package/lib/handlers/ReactNativeUnifiedPlan.d.ts.map +1 -1
- package/lib/handlers/ReactNativeUnifiedPlan.js +40 -9
- package/lib/handlers/Safari11.js +4 -8
- package/lib/handlers/Safari12.d.ts +2 -0
- package/lib/handlers/Safari12.d.ts.map +1 -1
- package/lib/handlers/Safari12.js +39 -8
- package/lib/handlers/ortc/utils.js +1 -2
- package/lib/handlers/sdp/MediaSection.js +1 -2
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/tests/test.js +34 -44
- package/lib/types.d.ts +9 -9
- package/lib/types.d.ts.map +1 -1
- package/lib/types.js +1 -9
- package/npm-scripts.mjs +1 -2
- package/package.json +9 -9
package/lib/tests/test.js
CHANGED
|
@@ -212,7 +212,6 @@ test('transport.produce() without "connect" listener rejects', async () => {
|
|
|
212
212
|
.toThrow(Error);
|
|
213
213
|
}, 500);
|
|
214
214
|
test('transport.produce() succeeds', async () => {
|
|
215
|
-
var _a, _b;
|
|
216
215
|
const audioTrack = new fake_mediastreamtrack_1.FakeMediaStreamTrack({ kind: 'audio' });
|
|
217
216
|
const videoTrack = new fake_mediastreamtrack_1.FakeMediaStreamTrack({ kind: 'video' });
|
|
218
217
|
let audioProducerId;
|
|
@@ -307,12 +306,12 @@ test('transport.produce() succeeds', async () => {
|
|
|
307
306
|
encodings = audioProducer.rtpParameters.encodings;
|
|
308
307
|
expect(Array.isArray(encodings)).toBe(true);
|
|
309
308
|
expect(encodings.length).toBe(1);
|
|
310
|
-
expect(typeof
|
|
309
|
+
expect(typeof encodings?.[0]).toBe('object');
|
|
311
310
|
expect(Object.keys(encodings[0])).toEqual(['ssrc', 'dtx']);
|
|
312
|
-
expect(typeof
|
|
311
|
+
expect(typeof encodings?.[0].ssrc).toBe('number');
|
|
313
312
|
rtcp = audioProducer.rtpParameters.rtcp;
|
|
314
313
|
expect(typeof rtcp).toBe('object');
|
|
315
|
-
expect(typeof
|
|
314
|
+
expect(typeof rtcp?.cname).toBe('string');
|
|
316
315
|
expect(audioProducer.paused).toBe(true);
|
|
317
316
|
expect(audioProducer.maxSpatialLayer).toBe(undefined);
|
|
318
317
|
expect(audioProducer.appData).toEqual({ foo: 'FOO' });
|
|
@@ -401,19 +400,19 @@ test('transport.produce() succeeds', async () => {
|
|
|
401
400
|
encodings = videoProducer.rtpParameters.encodings;
|
|
402
401
|
expect(Array.isArray(encodings)).toBe(true);
|
|
403
402
|
expect(encodings.length).toBe(2);
|
|
404
|
-
expect(typeof
|
|
405
|
-
expect(typeof
|
|
406
|
-
expect(typeof
|
|
403
|
+
expect(typeof encodings?.[0]).toBe('object');
|
|
404
|
+
expect(typeof encodings?.[0].ssrc).toBe('number');
|
|
405
|
+
expect(typeof encodings?.[0].rtx).toBe('object');
|
|
407
406
|
expect(Object.keys(encodings[0].rtx)).toEqual(['ssrc']);
|
|
408
|
-
expect(typeof
|
|
409
|
-
expect(typeof
|
|
410
|
-
expect(typeof
|
|
411
|
-
expect(typeof
|
|
407
|
+
expect(typeof encodings?.[0].rtx?.ssrc).toBe('number');
|
|
408
|
+
expect(typeof encodings?.[1]).toBe('object');
|
|
409
|
+
expect(typeof encodings?.[1].ssrc).toBe('number');
|
|
410
|
+
expect(typeof encodings?.[1].rtx).toBe('object');
|
|
412
411
|
expect(Object.keys(encodings[1].rtx)).toEqual(['ssrc']);
|
|
413
|
-
expect(typeof
|
|
412
|
+
expect(typeof encodings?.[1].rtx?.ssrc).toBe('number');
|
|
414
413
|
rtcp = videoProducer.rtpParameters.rtcp;
|
|
415
414
|
expect(typeof rtcp).toBe('object');
|
|
416
|
-
expect(typeof
|
|
415
|
+
expect(typeof rtcp?.cname).toBe('string');
|
|
417
416
|
expect(videoProducer.paused).toBe(false);
|
|
418
417
|
expect(videoProducer.maxSpatialLayer).toBe(undefined);
|
|
419
418
|
expect(videoProducer.appData).toEqual({});
|
|
@@ -446,7 +445,6 @@ test('transport.produce() with a non object appData rejects with TypeError', asy
|
|
|
446
445
|
.toThrow(TypeError);
|
|
447
446
|
}, 500);
|
|
448
447
|
test('transport.consume() succeeds', async () => {
|
|
449
|
-
var _a;
|
|
450
448
|
const audioConsumerRemoteParameters = fakeParameters.generateConsumerRemoteParameters({ codecMimeType: 'audio/opus' });
|
|
451
449
|
const videoConsumerRemoteParameters = fakeParameters.generateConsumerRemoteParameters({ codecMimeType: 'video/VP8' });
|
|
452
450
|
let connectEventNumTimesCalled = 0;
|
|
@@ -517,12 +515,12 @@ test('transport.consume() succeeds', async () => {
|
|
|
517
515
|
encodings = audioConsumer.rtpParameters.encodings;
|
|
518
516
|
expect(Array.isArray(encodings)).toBe(true);
|
|
519
517
|
expect(encodings.length).toBe(1);
|
|
520
|
-
expect(typeof
|
|
518
|
+
expect(typeof encodings?.[0]).toBe('object');
|
|
521
519
|
expect(Object.keys(encodings[0])).toEqual(['ssrc', 'dtx']);
|
|
522
520
|
expect(typeof encodings[0].ssrc).toBe('number');
|
|
523
521
|
rtcp = audioProducer.rtpParameters.rtcp;
|
|
524
522
|
expect(typeof rtcp).toBe('object');
|
|
525
|
-
expect(typeof
|
|
523
|
+
expect(typeof rtcp?.cname).toBe('string');
|
|
526
524
|
expect(audioConsumer.paused).toBe(false);
|
|
527
525
|
expect(audioConsumer.appData).toEqual({ bar: 'BAR' });
|
|
528
526
|
videoConsumer = await recvTransport.consume({
|
|
@@ -602,15 +600,15 @@ test('transport.consume() succeeds', async () => {
|
|
|
602
600
|
encodings = videoConsumer.rtpParameters.encodings;
|
|
603
601
|
expect(Array.isArray(encodings)).toBe(true);
|
|
604
602
|
expect(encodings.length).toBe(1);
|
|
605
|
-
expect(typeof
|
|
603
|
+
expect(typeof encodings?.[0]).toBe('object');
|
|
606
604
|
expect(Object.keys(encodings[0])).toEqual(['ssrc', 'rtx', 'dtx']);
|
|
607
|
-
expect(typeof
|
|
608
|
-
expect(typeof
|
|
605
|
+
expect(typeof encodings?.[0].ssrc).toBe('number');
|
|
606
|
+
expect(typeof encodings?.[0].rtx).toBe('object');
|
|
609
607
|
expect(Object.keys(encodings[0].rtx)).toEqual(['ssrc']);
|
|
610
|
-
expect(typeof
|
|
608
|
+
expect(typeof encodings?.[0].rtx?.ssrc).toBe('number');
|
|
611
609
|
rtcp = videoConsumer.rtpParameters.rtcp;
|
|
612
610
|
expect(typeof rtcp).toBe('object');
|
|
613
|
-
expect(typeof
|
|
611
|
+
expect(typeof rtcp?.cname).toBe('string');
|
|
614
612
|
expect(videoConsumer.paused).toBe(false);
|
|
615
613
|
expect(videoConsumer.appData).toEqual({});
|
|
616
614
|
recvTransport.removeAllListeners('connect');
|
|
@@ -854,20 +852,17 @@ test('connection state change fires "connectionstatechange" in live Transport',
|
|
|
854
852
|
sendTransport.removeAllListeners('connectionstatechange');
|
|
855
853
|
});
|
|
856
854
|
test('producer.pause() succeeds', () => {
|
|
857
|
-
var _a;
|
|
858
855
|
videoProducer.pause();
|
|
859
856
|
expect(videoProducer.paused).toBe(true);
|
|
860
857
|
// Track will be still enabled due to disableTrackOnPause: false.
|
|
861
|
-
expect(
|
|
858
|
+
expect(videoProducer.track?.enabled).toBe(true);
|
|
862
859
|
});
|
|
863
860
|
test('producer.resume() succeeds', () => {
|
|
864
|
-
var _a;
|
|
865
861
|
videoProducer.resume();
|
|
866
862
|
expect(videoProducer.paused).toBe(false);
|
|
867
|
-
expect(
|
|
863
|
+
expect(videoProducer.track?.enabled).toBe(true);
|
|
868
864
|
});
|
|
869
865
|
test('producer.replaceTrack() with a new track succeeds', async () => {
|
|
870
|
-
var _a;
|
|
871
866
|
// Have the audio Producer paused.
|
|
872
867
|
audioProducer.pause();
|
|
873
868
|
const audioProducerPreviousTrack = audioProducer.track;
|
|
@@ -876,8 +871,8 @@ test('producer.replaceTrack() with a new track succeeds', async () => {
|
|
|
876
871
|
.resolves
|
|
877
872
|
.toBe(undefined);
|
|
878
873
|
// Previous track must be 'live' due to stopTracks: false.
|
|
879
|
-
expect(audioProducerPreviousTrack
|
|
880
|
-
expect(
|
|
874
|
+
expect(audioProducerPreviousTrack?.readyState).toBe('live');
|
|
875
|
+
expect(audioProducer.track?.readyState).toBe('live');
|
|
881
876
|
expect(audioProducer.track).not.toBe(audioProducerPreviousTrack);
|
|
882
877
|
expect(audioProducer.track).toBe(newAudioTrack);
|
|
883
878
|
// Producer was already paused.
|
|
@@ -890,7 +885,7 @@ test('producer.replaceTrack() with a new track succeeds', async () => {
|
|
|
890
885
|
.resolves
|
|
891
886
|
.toBe(undefined);
|
|
892
887
|
// Previous track must be 'ended' due to stopTracks: true.
|
|
893
|
-
expect(videoProducerPreviousTrack
|
|
888
|
+
expect(videoProducerPreviousTrack?.readyState).toBe('ended');
|
|
894
889
|
expect(videoProducer.track).not.toBe(videoProducerPreviousTrack);
|
|
895
890
|
expect(videoProducer.track).toBe(newVideoTrack);
|
|
896
891
|
expect(videoProducer.paused).toBe(false);
|
|
@@ -903,7 +898,7 @@ test('producer.replaceTrack() with null succeeds', async () => {
|
|
|
903
898
|
.resolves
|
|
904
899
|
.toBe(undefined);
|
|
905
900
|
// Previous track must be 'live' due to stopTracks: false.
|
|
906
|
-
expect(audioProducerPreviousTrack
|
|
901
|
+
expect(audioProducerPreviousTrack?.readyState).toBe('live');
|
|
907
902
|
expect(audioProducer.track).toBeNull();
|
|
908
903
|
// Producer was already paused.
|
|
909
904
|
expect(audioProducer.paused).toBe(true);
|
|
@@ -919,26 +914,24 @@ test('producer.replaceTrack() with null succeeds', async () => {
|
|
|
919
914
|
// The given audio track was muted but the Producer was not, so the track
|
|
920
915
|
// must not be muted now.
|
|
921
916
|
expect(audioProducer.paused).toBe(false);
|
|
922
|
-
expect(audioProducerPreviousTrack
|
|
917
|
+
expect(audioProducerPreviousTrack?.enabled).toBe(true);
|
|
923
918
|
// Reset the audio paused state.
|
|
924
919
|
audioProducer.resume();
|
|
925
920
|
}, 500);
|
|
926
921
|
test('producer.replaceTrack() with an ended track rejects with InvalidStateError', async () => {
|
|
927
|
-
var _a;
|
|
928
922
|
const track = new fake_mediastreamtrack_1.FakeMediaStreamTrack({ kind: 'audio' });
|
|
929
923
|
track.stop();
|
|
930
924
|
await expect(videoProducer.replaceTrack({ track }))
|
|
931
925
|
.rejects
|
|
932
926
|
.toThrow(errors_1.InvalidStateError);
|
|
933
927
|
expect(track.readyState).toBe('ended');
|
|
934
|
-
expect(
|
|
928
|
+
expect(videoProducer.track?.readyState).toBe('live');
|
|
935
929
|
}, 500);
|
|
936
930
|
test('producer.replaceTrack() with the same track succeeds', async () => {
|
|
937
|
-
var _a;
|
|
938
931
|
await expect(audioProducer.replaceTrack({ track: audioProducer.track }))
|
|
939
932
|
.resolves
|
|
940
933
|
.toBe(undefined);
|
|
941
|
-
expect(
|
|
934
|
+
expect(audioProducer.track?.readyState).toBe('live');
|
|
942
935
|
}, 500);
|
|
943
936
|
test('producer.setMaxSpatialLayer() succeeds', async () => {
|
|
944
937
|
await expect(videoProducer.setMaxSpatialLayer(0))
|
|
@@ -987,11 +980,10 @@ test('consumer.getStats() succeeds', async () => {
|
|
|
987
980
|
expect(typeof stats).toBe('object');
|
|
988
981
|
}, 500);
|
|
989
982
|
test('producer.close() succeed', () => {
|
|
990
|
-
var _a;
|
|
991
983
|
audioProducer.close();
|
|
992
984
|
expect(audioProducer.closed).toBe(true);
|
|
993
985
|
// Track will be still 'live' due to stopTracks: false.
|
|
994
|
-
expect(
|
|
986
|
+
expect(audioProducer.track?.readyState).toBe('live');
|
|
995
987
|
});
|
|
996
988
|
test('producer.replaceTrack() rejects with InvalidStateError if closed', async () => {
|
|
997
989
|
const audioTrack = new fake_mediastreamtrack_1.FakeMediaStreamTrack({ kind: 'audio' });
|
|
@@ -1160,7 +1152,6 @@ test('connection state change does not fire "connectionstatechange" in closed Tr
|
|
|
1160
1152
|
sendTransport.removeAllListeners('connectionstatechange');
|
|
1161
1153
|
});
|
|
1162
1154
|
test('RemoteSdp properly handles multiple streams of the same type in planB', async () => {
|
|
1163
|
-
var _a, _b, _c;
|
|
1164
1155
|
let sdp = undefined;
|
|
1165
1156
|
let sdpObject = undefined;
|
|
1166
1157
|
const remoteSdp = new RemoteSdp_1.RemoteSdp({ planB: true });
|
|
@@ -1180,7 +1171,7 @@ test('RemoteSdp properly handles multiple streams of the same type in planB', as
|
|
|
1180
1171
|
expect(sdpObject.media[0].rtp[0].codec).toBe('VP8');
|
|
1181
1172
|
expect(sdpObject.media[0].rtp[1].payload).toBe(102);
|
|
1182
1173
|
expect(sdpObject.media[0].rtp[1].codec).toBe('rtx');
|
|
1183
|
-
expect(
|
|
1174
|
+
expect(sdpObject.media[0].ssrcs?.length).toBe(4);
|
|
1184
1175
|
await remoteSdp.receive({
|
|
1185
1176
|
mid: 'video',
|
|
1186
1177
|
kind: 'video',
|
|
@@ -1201,7 +1192,7 @@ test('RemoteSdp properly handles multiple streams of the same type in planB', as
|
|
|
1201
1192
|
expect(sdpObject.media[0].rtp[2].codec).toBe('H264');
|
|
1202
1193
|
expect(sdpObject.media[0].rtp[3].payload).toBe(104);
|
|
1203
1194
|
expect(sdpObject.media[0].rtp[3].codec).toBe('rtx');
|
|
1204
|
-
expect(
|
|
1195
|
+
expect(sdpObject.media[0].ssrcs?.length).toBe(8);
|
|
1205
1196
|
await remoteSdp.planBStopReceiving({
|
|
1206
1197
|
mid: 'video',
|
|
1207
1198
|
offerRtpParameters: fakeParameters.generateConsumerRemoteParameters({ codecMimeType: 'video/H264' }).rtpParameters
|
|
@@ -1219,10 +1210,9 @@ test('RemoteSdp properly handles multiple streams of the same type in planB', as
|
|
|
1219
1210
|
expect(sdpObject.media[0].rtp[2].codec).toBe('H264');
|
|
1220
1211
|
expect(sdpObject.media[0].rtp[3].payload).toBe(104);
|
|
1221
1212
|
expect(sdpObject.media[0].rtp[3].codec).toBe('rtx');
|
|
1222
|
-
expect(
|
|
1213
|
+
expect(sdpObject.media[0].ssrcs?.length).toBe(4);
|
|
1223
1214
|
}, 500);
|
|
1224
1215
|
test('RemoteSdp does not duplicate codec descriptions', async () => {
|
|
1225
|
-
var _a, _b;
|
|
1226
1216
|
let sdp = undefined;
|
|
1227
1217
|
let sdpObject = undefined;
|
|
1228
1218
|
const remoteSdp = new RemoteSdp_1.RemoteSdp({ planB: true });
|
|
@@ -1242,7 +1232,7 @@ test('RemoteSdp does not duplicate codec descriptions', async () => {
|
|
|
1242
1232
|
expect(sdpObject.media[0].rtp[0].codec).toBe('VP8');
|
|
1243
1233
|
expect(sdpObject.media[0].rtp[1].payload).toBe(102);
|
|
1244
1234
|
expect(sdpObject.media[0].rtp[1].codec).toBe('rtx');
|
|
1245
|
-
expect(
|
|
1235
|
+
expect(sdpObject.media[0].ssrcs?.length).toBe(4);
|
|
1246
1236
|
await remoteSdp.receive({
|
|
1247
1237
|
mid: 'video',
|
|
1248
1238
|
kind: 'video',
|
|
@@ -1259,7 +1249,7 @@ test('RemoteSdp does not duplicate codec descriptions', async () => {
|
|
|
1259
1249
|
expect(sdpObject.media[0].rtp[0].codec).toBe('VP8');
|
|
1260
1250
|
expect(sdpObject.media[0].rtp[1].payload).toBe(102);
|
|
1261
1251
|
expect(sdpObject.media[0].rtp[1].codec).toBe('rtx');
|
|
1262
|
-
expect(
|
|
1252
|
+
expect(sdpObject.media[0].ssrcs?.length).toBe(8);
|
|
1263
1253
|
}, 500);
|
|
1264
1254
|
test('parseScalabilityMode() works', () => {
|
|
1265
1255
|
expect(parseScalabilityMode('L1T3')).toEqual({ spatialLayers: 1, temporalLayers: 3 });
|
package/lib/types.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
export * from './Device';
|
|
2
|
-
export * from './Transport';
|
|
3
|
-
export * from './Producer';
|
|
4
|
-
export * from './Consumer';
|
|
5
|
-
export * from './DataProducer';
|
|
6
|
-
export * from './DataConsumer';
|
|
7
|
-
export * from './RtpParameters';
|
|
8
|
-
export * from './SctpParameters';
|
|
9
|
-
export * from './handlers/HandlerInterface';
|
|
1
|
+
export type * from './Device';
|
|
2
|
+
export type * from './Transport';
|
|
3
|
+
export type * from './Producer';
|
|
4
|
+
export type * from './Consumer';
|
|
5
|
+
export type * from './DataProducer';
|
|
6
|
+
export type * from './DataConsumer';
|
|
7
|
+
export type * from './RtpParameters';
|
|
8
|
+
export type * from './SctpParameters';
|
|
9
|
+
export type * from './handlers/HandlerInterface';
|
|
10
10
|
export * from './errors';
|
|
11
11
|
export type { ScalabilityMode } from './scalabilityModes';
|
|
12
12
|
export type AppData = {
|
package/lib/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,6BAA6B,CAAC;AAEjD,cAAc,UAAU,CAAC;AACzB,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,MAAM,MAAM,OAAO,GACnB;IACC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB,CAAC"}
|
package/lib/types.js
CHANGED
|
@@ -14,13 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
|
|
18
|
-
__exportStar(require("./Transport"), exports);
|
|
19
|
-
__exportStar(require("./Producer"), exports);
|
|
20
|
-
__exportStar(require("./Consumer"), exports);
|
|
21
|
-
__exportStar(require("./DataProducer"), exports);
|
|
22
|
-
__exportStar(require("./DataConsumer"), exports);
|
|
23
|
-
__exportStar(require("./RtpParameters"), exports);
|
|
24
|
-
__exportStar(require("./SctpParameters"), exports);
|
|
25
|
-
__exportStar(require("./handlers/HandlerInterface"), exports);
|
|
17
|
+
// We cannot export only the type of error classes because those are useless.
|
|
26
18
|
__exportStar(require("./errors"), exports);
|
package/npm-scripts.mjs
CHANGED
|
@@ -45,7 +45,6 @@ async function run()
|
|
|
45
45
|
case 'typescript:watch':
|
|
46
46
|
{
|
|
47
47
|
deleteLib();
|
|
48
|
-
|
|
49
48
|
executeCmd('tsc --watch');
|
|
50
49
|
|
|
51
50
|
break;
|
|
@@ -94,7 +93,6 @@ async function run()
|
|
|
94
93
|
case 'release':
|
|
95
94
|
{
|
|
96
95
|
checkRelease();
|
|
97
|
-
|
|
98
96
|
executeCmd(`git commit -am '${PKG.version}'`);
|
|
99
97
|
executeCmd(`git tag -a ${PKG.version} -m '${PKG.version}'`);
|
|
100
98
|
executeCmd(`git push origin v${MAYOR_VERSION}`);
|
|
@@ -219,6 +217,7 @@ function executeCmd(command, exitOnError = true)
|
|
|
219
217
|
if (exitOnError)
|
|
220
218
|
{
|
|
221
219
|
logError(`executeCmd() failed, exiting: ${error}`);
|
|
220
|
+
|
|
222
221
|
exitWithError();
|
|
223
222
|
}
|
|
224
223
|
else
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mediasoup-client",
|
|
3
|
-
"version": "3.6.
|
|
3
|
+
"version": "3.6.94",
|
|
4
4
|
"description": "mediasoup client side JavaScript library",
|
|
5
5
|
"contributors": [
|
|
6
6
|
"Iñaki Baz Castillo <ibc@aliax.net> (https://inakibaz.me)",
|
|
7
7
|
"José Luis Millán <jmillan@aliax.net> (https://github.com/jmillan)"
|
|
8
8
|
],
|
|
9
|
-
"homepage": "https://mediasoup.org",
|
|
10
9
|
"license": "ISC",
|
|
10
|
+
"homepage": "https://mediasoup.org",
|
|
11
11
|
"repository": {
|
|
12
12
|
"type": "git",
|
|
13
13
|
"url": "https://github.com/versatica/mediasoup-client.git"
|
|
@@ -22,15 +22,15 @@
|
|
|
22
22
|
"npm-scripts.mjs",
|
|
23
23
|
"lib"
|
|
24
24
|
],
|
|
25
|
+
"engines": {
|
|
26
|
+
"node": ">=16"
|
|
27
|
+
},
|
|
25
28
|
"keywords": [
|
|
26
29
|
"webrtc",
|
|
27
30
|
"ortc",
|
|
28
31
|
"browser",
|
|
29
32
|
"nodejs"
|
|
30
33
|
],
|
|
31
|
-
"engines": {
|
|
32
|
-
"node": ">=16"
|
|
33
|
-
},
|
|
34
34
|
"scripts": {
|
|
35
35
|
"prepare": "node npm-scripts.mjs prepare",
|
|
36
36
|
"typescript:build": "node npm-scripts.mjs typescript:build",
|
|
@@ -74,14 +74,14 @@
|
|
|
74
74
|
},
|
|
75
75
|
"devDependencies": {
|
|
76
76
|
"@types/events": "^3.0.0",
|
|
77
|
-
"@types/jest": "^29.5.
|
|
77
|
+
"@types/jest": "^29.5.3",
|
|
78
78
|
"@types/sdp-transform": "^2.4.6",
|
|
79
79
|
"@types/ua-parser-js": "^0.7.36",
|
|
80
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
|
81
|
-
"@typescript-eslint/parser": "^5.
|
|
80
|
+
"@typescript-eslint/eslint-plugin": "^5.62.0",
|
|
81
|
+
"@typescript-eslint/parser": "^5.62.0",
|
|
82
82
|
"eslint": "^8.44.0",
|
|
83
83
|
"eslint-plugin-jest": "^27.2.2",
|
|
84
|
-
"jest": "^29.6.
|
|
84
|
+
"jest": "^29.6.1",
|
|
85
85
|
"open-cli": "^7.2.0",
|
|
86
86
|
"ts-jest": "^29.1.1",
|
|
87
87
|
"typescript": "^5.1.6"
|