mediasoup-client 3.15.2 → 3.15.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"FakeHandler.d.ts","sourceRoot":"","sources":["../../src/handlers/FakeHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FakeHandler.d.ts","sourceRoot":"","sources":["../../src/handlers/FakeHandler.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ const Logger_1 = require("../Logger");
7
7
  const utils = require("../utils");
8
8
  const ortc = require("../ortc");
9
9
  const errors_1 = require("../errors");
10
+ const FakeEventTarget_1 = require("./fakeEvents/FakeEventTarget");
10
11
  const logger = new Logger_1.Logger('FakeHandler');
11
12
  const NAME = 'FakeHandler';
12
13
  class FakeHandler extends enhancedEvents_1.EnhancedEventEmitter {
@@ -277,8 +278,12 @@ class FakeHandler extends enhancedEvents_1.EnhancedEventEmitter {
277
278
  }
278
279
  }
279
280
  exports.FakeHandler = FakeHandler;
280
- /* eslint-disable @typescript-eslint/no-explicit-any */
281
- class FakeRTCDataChannel extends EventTarget {
281
+ /**
282
+ * @remarks
283
+ * - We use a custom FakeEventTarget class because Hermes JS engine in
284
+ * React-Native doesn't implement EventListener.
285
+ */
286
+ class FakeRTCDataChannel extends FakeEventTarget_1.FakeEventTarget {
282
287
  // Members for RTCDataChannel standard public getters/setters.
283
288
  _id;
284
289
  _negotiated = true; // mediasoup just uses negotiated DataChannels.
@@ -442,4 +447,3 @@ class FakeRTCDataChannel extends EventTarget {
442
447
  }
443
448
  }
444
449
  }
445
- /* eslint-enable @typescript-eslint/no-explicit-any */
@@ -0,0 +1,48 @@
1
+ export declare class FakeEvent implements Event {
2
+ /**
3
+ * Constants.
4
+ */
5
+ readonly NONE = 0;
6
+ readonly CAPTURING_PHASE = 1;
7
+ readonly AT_TARGET = 2;
8
+ readonly BUBBLING_PHASE = 3;
9
+ /**
10
+ * Members.
11
+ */
12
+ readonly type: string;
13
+ readonly bubbles: boolean;
14
+ readonly cancelable: boolean;
15
+ defaultPrevented: boolean;
16
+ readonly composed: boolean;
17
+ readonly currentTarget: EventTarget | null;
18
+ readonly eventPhase: number;
19
+ readonly isTrusted: boolean;
20
+ readonly target: EventTarget | null;
21
+ readonly timeStamp: number;
22
+ readonly cancelBubble: boolean;
23
+ readonly returnValue: boolean;
24
+ readonly srcElement: EventTarget | null;
25
+ constructor(type: string, options?: {
26
+ bubbles?: boolean;
27
+ cancelable?: boolean;
28
+ });
29
+ preventDefault(): void;
30
+ /**
31
+ * Not implemented.
32
+ */
33
+ stopPropagation(): void;
34
+ /**
35
+ * Not implemented.
36
+ */
37
+ stopImmediatePropagation(): void;
38
+ /**
39
+ * Not implemented.
40
+ */
41
+ composedPath(): EventTarget[];
42
+ /**
43
+ * Not implemented.
44
+ * @deprecated
45
+ */
46
+ initEvent(type: string, bubbles: boolean, cancelable: true): void;
47
+ }
48
+ //# sourceMappingURL=FakeEvent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FakeEvent.d.ts","sourceRoot":"","sources":["../../../src/handlers/fakeEvents/FakeEvent.ts"],"names":[],"mappings":"AAGA,qBAAa,SAAU,YAAW,KAAK;IACtC;;OAEG;IACH,QAAQ,CAAC,IAAI,KAAK;IAClB,QAAQ,CAAC,eAAe,KAAK;IAC7B,QAAQ,CAAC,SAAS,KAAK;IACvB,QAAQ,CAAC,cAAc,KAAK;IAC5B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,gBAAgB,EAAE,OAAO,CAAS;IAClC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAS;IACnC,QAAQ,CAAC,aAAa,EAAE,WAAW,GAAG,IAAI,CAAQ;IAElD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAa;IACxC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAQ;IACnC,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAQ;IAC3C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAK;IAE/B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAS;IACvC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAQ;IACrC,QAAQ,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI,CAAQ;gBAG9C,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAO;IAO1D,cAAc,IAAI,IAAI;IAMtB;;OAEG;IACH,eAAe,IAAI,IAAI;IAEvB;;OAEG;IACH,wBAAwB,IAAI,IAAI;IAEhC;;OAEG;IACH,YAAY,IAAI,WAAW,EAAE;IAI7B;;;OAGG;IAEH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,GAAG,IAAI;CAGjE"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FakeEvent = void 0;
4
+ // NOTE: Do not use our FakeEventTarget type inside this class, otherwise TS
5
+ // will complain because "Property 'listeners' is missing in type 'EventTarget'
6
+ // but required in type 'FakeEventTarget'".
7
+ class FakeEvent {
8
+ /**
9
+ * Constants.
10
+ */
11
+ NONE = 0;
12
+ CAPTURING_PHASE = 1;
13
+ AT_TARGET = 2;
14
+ BUBBLING_PHASE = 3;
15
+ /**
16
+ * Members.
17
+ */
18
+ type;
19
+ bubbles;
20
+ cancelable;
21
+ defaultPrevented = false;
22
+ composed = false;
23
+ currentTarget = null;
24
+ // Not implemented.
25
+ eventPhase = this.NONE;
26
+ isTrusted = true;
27
+ target = null;
28
+ timeStamp = 0;
29
+ // Deprecated.
30
+ cancelBubble = false;
31
+ returnValue = true;
32
+ srcElement = null;
33
+ constructor(type, options = {}) {
34
+ this.type = type;
35
+ this.bubbles = options.bubbles ?? false;
36
+ this.cancelable = options.cancelable ?? false;
37
+ }
38
+ preventDefault() {
39
+ if (this.cancelable) {
40
+ this.defaultPrevented = true;
41
+ }
42
+ }
43
+ /**
44
+ * Not implemented.
45
+ */
46
+ stopPropagation() { }
47
+ /**
48
+ * Not implemented.
49
+ */
50
+ stopImmediatePropagation() { }
51
+ /**
52
+ * Not implemented.
53
+ */
54
+ composedPath() {
55
+ return [];
56
+ }
57
+ /**
58
+ * Not implemented.
59
+ * @deprecated
60
+ */
61
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
62
+ initEvent(type, bubbles, cancelable) {
63
+ // Not implemented.
64
+ }
65
+ }
66
+ exports.FakeEvent = FakeEvent;
@@ -0,0 +1,18 @@
1
+ import { FakeEvent } from './FakeEvent';
2
+ export type FakeEventListenerOrEventListenerObject = FakeEventListener | FakeEventListenerObject;
3
+ export interface FakeEventListener {
4
+ (evt: FakeEvent): void;
5
+ }
6
+ export interface FakeEventListenerObject {
7
+ handleEvent(object: FakeEvent): void;
8
+ }
9
+ export interface FakeAddEventListenerOptions {
10
+ capture?: boolean;
11
+ once?: boolean;
12
+ passive?: boolean;
13
+ signal?: AbortSignal;
14
+ }
15
+ export interface FakeEventListenerOptions {
16
+ capture?: boolean;
17
+ }
18
+ //# sourceMappingURL=FakeEventListener.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FakeEventListener.d.ts","sourceRoot":"","sources":["../../../src/handlers/fakeEvents/FakeEventListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,MAAM,sCAAsC,GAC/C,iBAAiB,GACjB,uBAAuB,CAAC;AAE3B,MAAM,WAAW,iBAAiB;IACjC,CAAC,GAAG,EAAE,SAAS,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,uBAAuB;IACvC,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,2BAA2B;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACxC,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,9 @@
1
+ import { FakeEventListenerOrEventListenerObject, FakeAddEventListenerOptions, FakeEventListenerOptions } from './FakeEventListener';
2
+ import { FakeEvent } from './FakeEvent';
3
+ export declare class FakeEventTarget implements EventTarget {
4
+ private readonly listeners;
5
+ addEventListener(type: string, callback: FakeEventListenerOrEventListenerObject | null, options?: FakeAddEventListenerOptions | boolean): void;
6
+ removeEventListener(type: string, callback: FakeEventListenerOrEventListenerObject | null, options?: boolean | FakeEventListenerOptions): void;
7
+ dispatchEvent(event: FakeEvent): boolean;
8
+ }
9
+ //# sourceMappingURL=FakeEventTarget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FakeEventTarget.d.ts","sourceRoot":"","sources":["../../../src/handlers/fakeEvents/FakeEventTarget.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,sCAAsC,EAEtC,2BAA2B,EAC3B,wBAAwB,EACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAOxC,qBAAa,eAAgB,YAAW,WAAW;IAClD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2C;IAErE,gBAAgB,CACf,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,sCAAsC,GAAG,IAAI,EACvD,OAAO,CAAC,EAAE,2BAA2B,GAAG,OAAO,GAC7C,IAAI;IAcP,mBAAmB,CAClB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,sCAAsC,GAAG,IAAI,EAEvD,OAAO,CAAC,EAAE,OAAO,GAAG,wBAAwB,GAC1C,IAAI;IAgBP,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;CA4BxC"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FakeEventTarget = void 0;
4
+ class FakeEventTarget {
5
+ listeners = {};
6
+ addEventListener(type, callback, options) {
7
+ if (!callback) {
8
+ return;
9
+ }
10
+ this.listeners[type] ??= [];
11
+ this.listeners[type].push({
12
+ callback: typeof callback === 'function' ? callback : callback.handleEvent,
13
+ once: typeof options === 'object' && options.once === true,
14
+ });
15
+ }
16
+ removeEventListener(type, callback,
17
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
18
+ options) {
19
+ if (!this.listeners[type]) {
20
+ return;
21
+ }
22
+ if (!callback) {
23
+ return;
24
+ }
25
+ this.listeners[type] = this.listeners[type].filter(listener => listener.callback !==
26
+ (typeof callback === 'function' ? callback : callback.handleEvent));
27
+ }
28
+ dispatchEvent(event) {
29
+ if (!event || typeof event.type !== 'string') {
30
+ throw new Error('invalid event object');
31
+ }
32
+ const entries = this.listeners[event.type];
33
+ if (!entries) {
34
+ return true;
35
+ }
36
+ for (const listener of [...entries]) {
37
+ try {
38
+ listener.callback.call(this, event);
39
+ }
40
+ catch (error) {
41
+ // Avoid that the error breaks the iteration.
42
+ setTimeout(() => {
43
+ throw error;
44
+ }, 0);
45
+ }
46
+ if (listener.once) {
47
+ this.removeEventListener(event.type, listener.callback);
48
+ }
49
+ }
50
+ return !event.defaultPrevented;
51
+ }
52
+ }
53
+ exports.FakeEventTarget = FakeEventTarget;
package/lib/index.d.ts CHANGED
@@ -6,7 +6,7 @@ export * as types from './types';
6
6
  /**
7
7
  * Expose mediasoup-client version.
8
8
  */
9
- export declare const version = "3.15.2";
9
+ export declare const version = "3.15.4";
10
10
  /**
11
11
  * Expose Device class and device detector helpers.
12
12
  */
package/lib/index.js CHANGED
@@ -10,7 +10,7 @@ exports.types = require("./types");
10
10
  /**
11
11
  * Expose mediasoup-client version.
12
12
  */
13
- exports.version = '3.15.2';
13
+ exports.version = '3.15.4';
14
14
  /**
15
15
  * Expose Device class and device detector helpers.
16
16
  */
package/npm-scripts.mjs CHANGED
@@ -105,12 +105,7 @@ async function run() {
105
105
  }
106
106
 
107
107
  case 'release': {
108
- checkRelease();
109
- executeCmd(`git commit -am '${pkg.version}'`);
110
- executeCmd(`git tag -a ${pkg.version} -m '${pkg.version}'`);
111
- executeCmd(`git push origin v${MAYOR_VERSION}`);
112
- executeCmd(`git push origin '${pkg.version}'`);
113
- executeInteractiveCmd('npm publish');
108
+ release();
114
109
 
115
110
  break;
116
111
  }
@@ -225,6 +220,17 @@ function checkRelease() {
225
220
  test();
226
221
  }
227
222
 
223
+ function release() {
224
+ logInfo('release()');
225
+
226
+ checkRelease();
227
+ executeCmd(`git commit -am '${pkg.version}'`);
228
+ executeCmd(`git tag -a ${pkg.version} -m '${pkg.version}'`);
229
+ executeCmd(`git push origin v${MAYOR_VERSION}`);
230
+ executeCmd(`git push origin '${pkg.version}'`);
231
+ executeInteractiveCmd('npm publish');
232
+ }
233
+
228
234
  function executeCmd(command) {
229
235
  logInfo(`executeCmd(): ${command}`);
230
236
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mediasoup-client",
3
- "version": "3.15.2",
3
+ "version": "3.15.4",
4
4
  "description": "mediasoup client side TypeScript library",
5
5
  "contributors": [
6
6
  "Iñaki Baz Castillo <ibc@aliax.net> (https://inakibaz.me)",
@@ -76,27 +76,28 @@
76
76
  "awaitqueue": "^3.2.4",
77
77
  "debug": "^4.4.1",
78
78
  "events-alias": "npm:events@^3.3.0",
79
- "fake-mediastreamtrack": "^2.1.2",
79
+ "fake-mediastreamtrack": "^2.1.4",
80
80
  "h264-profile-level-id": "^2.2.3",
81
81
  "sdp-transform": "^2.15.0",
82
- "supports-color": "^10.1.0",
82
+ "supports-color": "^10.2.0",
83
83
  "ua-parser-js": "^2.0.4"
84
84
  },
85
85
  "devDependencies": {
86
- "@eslint/js": "^9.33.0",
86
+ "@eslint/js": "^9.34.0",
87
87
  "@types/jest": "^30.0.0",
88
- "@types/node": "^24.2.1",
88
+ "@types/node": "^24.3.0",
89
+ "@types/sdp-transform": "^2.15.0",
89
90
  "@types/ua-parser-js": "^0.7.39",
90
- "eslint": "^9.33.0",
91
+ "eslint": "^9.34.0",
91
92
  "eslint-config-prettier": "^10.1.8",
92
93
  "eslint-plugin-jest": "^29.0.1",
93
94
  "eslint-plugin-prettier": "^5.5.4",
94
95
  "globals": "^16.3.0",
95
- "jest": "^30.0.5",
96
+ "jest": "^30.1.0",
96
97
  "open-cli": "^8.0.0",
97
98
  "prettier": "^3.6.2",
98
99
  "ts-jest": "^29.4.1",
99
- "typescript": "^5.8.3",
100
- "typescript-eslint": "^8.39.1"
100
+ "typescript": "^5.9.2",
101
+ "typescript-eslint": "^8.41.0"
101
102
  }
102
103
  }