@pexip/media-control 17.1.2 → 17.3.0

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/CHANGELOG.md CHANGED
@@ -1,5 +1,37 @@
1
1
  # Changelog
2
2
 
3
+ ## 17.3.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 7b29d953: Update babel/traverse related deps
8
+ - 821d9a1ef8: Add toMediaDeviceInfo util function
9
+
10
+ ### Patch Changes
11
+
12
+ - Updated dependencies [7b29d953]
13
+ - @pexip/utils@16.9.0
14
+
15
+ ## 17.2.0
16
+
17
+ ### Minor Changes
18
+
19
+ - 244cb04c: Add screen capture constraints
20
+
21
+ - Add screen capture constraints
22
+ - Add fallback implementation of `mointorTypeSurfaces`
23
+ - Fix typo of `areMultipleFacingModeSupported`
24
+
25
+ - 26878b60: Add contentHint to InputConstraintSet
26
+ - 7e02391e9c: Changest to support FECC and PTZ capabilities
27
+
28
+ ### Patch Changes
29
+
30
+ - 4ea55a5205: Prettier and linting for new prettier version.
31
+ - Updated dependencies [244cb04c]
32
+ - Updated dependencies [4ea55a5205]
33
+ - @pexip/utils@16.8.0
34
+
3
35
  ## 17.1.2
4
36
 
5
37
  ## 17.1.1
package/dist/index.d.ts CHANGED
@@ -72,6 +72,16 @@ interface InputConstraintSet extends MediaTrackConstraints {
72
72
  * Image Url that is being used for video overlay effects
73
73
  */
74
74
  resizeMode?: ConstrainDOMString;
75
+ /**
76
+ * Current pan, tilt and zoom level for a PTZ controllable camera on web
77
+ */
78
+ pan?: boolean;
79
+ tilt?: boolean;
80
+ zoom?: boolean;
81
+ /**
82
+ * Content Hint for the track to apply
83
+ */
84
+ contentHint?: ConstrainDOMString;
75
85
  }
76
86
  type InputDeviceConstraint = DeviceConstraint | InputConstraintSet | boolean;
77
87
  /**
@@ -209,6 +219,35 @@ interface InputDevicePermission {
209
219
  audio: PermissionState;
210
220
  video: PermissionState;
211
221
  }
222
+ interface DisplayVideoTrackConstraint extends MediaTrackConstraintSet {
223
+ displaySurface?: ConstrainDOMString;
224
+ cursor?: ConstrainDOMString;
225
+ }
226
+ interface DisplayAudioTrackConstraint extends MediaTrackConstraintSet {
227
+ restrictOwnAudio?: ConstrainBoolean;
228
+ suppressLocalAudioPlayback?: ConstrainBoolean;
229
+ }
230
+ interface DisplayVideoTrackConstraints extends DisplayVideoTrackConstraint {
231
+ advanced?: DisplayVideoTrackConstraint[];
232
+ }
233
+ interface DisplayAudioTrackConstraints extends DisplayAudioTrackConstraint {
234
+ advanced?: DisplayAudioTrackConstraint[];
235
+ }
236
+ /**
237
+ * The `DisplayMediaStreamOptions` dictionary is used to instruct the user agent
238
+ * what sort of `MediaStreamTracks` may be included in the `MediaStream`
239
+ * returned by `getDisplayMedia`.
240
+ *
241
+ * @see {@link https://w3c.github.io/mediacapture-screen-share/#displaymediastreamoptions}
242
+ */
243
+ interface DisplayMediaOptions extends DisplayMediaStreamOptions {
244
+ audio?: boolean | DisplayAudioTrackConstraints;
245
+ video?: boolean | DisplayVideoTrackConstraints;
246
+ selfBrowserSurface?: ConstrainDOMString;
247
+ systemAudio?: ConstrainDOMString;
248
+ surfaceSwitching?: ConstrainDOMString;
249
+ monitorTypeSurfaces?: ConstrainDOMString;
250
+ }
212
251
 
213
252
  /**
214
253
  * DeviceChange Event
@@ -278,6 +317,12 @@ declare const deviceChanged: (fn: (event: DeviceChangedChanges) => void) => () =
278
317
  * @beta
279
318
  */
280
319
  declare const toMediaDeviceInfoLike: (track: MediaStreamTrack) => MediaDeviceInfoLike | undefined;
320
+ declare const toMediaDeviceInfo: (info: MediaDeviceInfoLike) => {
321
+ deviceId: string;
322
+ groupId: string;
323
+ kind: MediaDeviceKind;
324
+ label: string;
325
+ };
281
326
  /**
282
327
  * Find the MediaDeviceInfo from provided MediaDeviceInfo[] by comparing with
283
328
  * provided MediaStreamTrack
@@ -553,7 +598,7 @@ declare const hasChangedInput: (oldInput: MediaDeviceInfoLike | undefined, newIn
553
598
  * i.e. `navigator.mediaDevices.getSupportedConstraints()`
554
599
  * @param tracks - Current video input track
555
600
  */
556
- declare const areMultipleFacingModeSupportted: (currentDevices: MediaDeviceInfoLike[], getSupportedConstraints?: () => MediaTrackSupportedConstraints) => boolean;
601
+ declare const areMultipleFacingModeSupported: (currentDevices: MediaDeviceInfoLike[], getSupportedConstraints?: () => MediaTrackSupportedConstraints) => boolean;
557
602
  /**
558
603
  * Interpret the current facing mode from the provided track, and try to get the
559
604
  * mode from settings, or use the label to guess the facing mode when facingMode
@@ -601,7 +646,7 @@ declare const findDevice: (deviceToFind: MediaDeviceInfoLike, useFallback?: bool
601
646
  * Reference https://w3c.github.io/mediacapture-main/#dom-mediatrackconstraintset
602
647
  */
603
648
  declare const CONSTRAIN_STRING_KEYS: readonly ["facingMode", "resizeMode", "deviceId", "groupId"];
604
- declare const EXTENDED_CONSTRAIN_STRING_KEYS: readonly ["videoSegmentation", "videoSegmentationModel", "bgImageUrl"];
649
+ declare const EXTENDED_CONSTRAIN_STRING_KEYS: readonly ["videoSegmentation", "videoSegmentationModel", "bgImageUrl", "contentHint"];
605
650
  type ExtendedConstrainStringKeys = (typeof EXTENDED_CONSTRAIN_STRING_KEYS)[number];
606
651
  type ConstrainStringKeys = (typeof CONSTRAIN_STRING_KEYS)[number];
607
652
  declare const CONSTRAIN_U_LONG_KEYS: readonly ["width", "height", "sampleRate", "sampleSize", "channelCount"];
@@ -612,7 +657,7 @@ declare const CONSTRAIN_DOUBLE_KEYS: readonly ["aspectRatio", "frameRate", "late
612
657
  declare const EXTENDED_CONSTRAIN_DOUBLE_KEYS: readonly ["foregroundThreshold"];
613
658
  type ExtendedConstrainDoubleKeys = (typeof EXTENDED_CONSTRAIN_DOUBLE_KEYS)[number];
614
659
  type ConstrainDoubleKeys = (typeof CONSTRAIN_DOUBLE_KEYS)[number];
615
- declare const CONSTRAIN_BOOLEAN_KEYS: readonly ["echoCancellation", "autoGainControl", "noiseSuppression"];
660
+ declare const CONSTRAIN_BOOLEAN_KEYS: readonly ["echoCancellation", "autoGainControl", "noiseSuppression", "pan", "tilt", "zoom"];
616
661
  /**
617
662
  * Extends boolean constraint keys for our own implementation of the media
618
663
  * feature
@@ -696,7 +741,7 @@ type Constraints = ConstrainStrings & ConstrainNumbers & ConstrainBooleans & Con
696
741
  * expect(noiseSuppressionParam).toEqual('ideal');
697
742
  * ```
698
743
  */
699
- declare const extractConstraintsWithKeys: <T extends "deviceId" | "groupId" | "facingMode" | "resizeMode" | "videoSegmentation" | "videoSegmentationModel" | "bgImageUrl" | ConstrainNumberKeys | "echoCancellation" | "autoGainControl" | "noiseSuppression" | "vad" | "asd" | "mixWithAdditionalMedia" | "denoise" | "flipHorizontal" | "device">(keys: T[]) => (constraints: InputDeviceConstraint | undefined) => Pick<Constraints, T>;
744
+ declare const extractConstraintsWithKeys: <T extends "deviceId" | "groupId" | "facingMode" | "resizeMode" | "videoSegmentation" | "videoSegmentationModel" | "bgImageUrl" | "contentHint" | ConstrainNumberKeys | "echoCancellation" | "autoGainControl" | "noiseSuppression" | "pan" | "tilt" | "zoom" | "vad" | "asd" | "mixWithAdditionalMedia" | "denoise" | "flipHorizontal" | "device">(keys: T[]) => (constraints: InputDeviceConstraint | undefined) => Pick<Constraints, T>;
700
745
  /**
701
746
  * Find device from the device list with provided constraints
702
747
  *
@@ -876,6 +921,59 @@ interface Logger extends LogMethods {
876
921
 
877
922
  declare function setLogger(newLogger: Logger): void;
878
923
 
924
+ type ExtractObjectValueTypes<T extends object> = T[keyof T];
925
+ /**
926
+ * The `DisplayCaptureSurfaceType` enumeration describes the different types of
927
+ * display surface
928
+ *
929
+ * @see {@link https://w3c.github.io/mediacapture-screen-share/#displaycapturesurfacetype}
930
+ */
931
+ declare const DISPLAY_CAPTURE_SURFACE_TYPE: {
932
+ readonly Monitor: "monitor";
933
+ readonly Window: "window";
934
+ readonly Browser: "browser";
935
+ };
936
+ /**
937
+ * The `DisplayCaptureSurfaceType` enumeration describes the different types of
938
+ * display surface
939
+ *
940
+ * @see {@link https://w3c.github.io/mediacapture-screen-share/#displaycapturesurfacetype}
941
+ */
942
+ type DisplayCaptureSurfaceType = ExtractObjectValueTypes<typeof DISPLAY_CAPTURE_SURFACE_TYPE>;
943
+ /**
944
+ * The `CursorCaptureConstraint` enumerates the conditions under which the
945
+ * cursor is captured.
946
+ *
947
+ * @see {@link https://w3c.github.io/mediacapture-screen-share/#cursorcaptureconstraint}
948
+ */
949
+ declare const CURSOR_CAPTURE_CONSTRAINT: {
950
+ readonly Never: "never";
951
+ readonly Always: "always";
952
+ readonly Motion: "motion";
953
+ };
954
+ /**
955
+ * The `CursorCaptureConstraint` enumerates the conditions under which the
956
+ * cursor is captured.
957
+ *
958
+ * @see {@link https://w3c.github.io/mediacapture-screen-share/#cursorcaptureconstraint}
959
+ */
960
+ type CursorCaptureConstraint = ExtractObjectValueTypes<typeof CURSOR_CAPTURE_CONSTRAINT>;
961
+ declare const INCLUDE_EXCLUDE_CONSTRAINT: {
962
+ readonly Include: "include";
963
+ readonly Exclude: "exclude";
964
+ };
965
+ type IncludeExcludeConstraint = ExtractObjectValueTypes<typeof INCLUDE_EXCLUDE_CONSTRAINT>;
966
+
967
+ /**
968
+ * A fallback implementation of `monitorTypeSurfaces` limitation when it is not
969
+ * supported by the current browser and the source of the `displaySurface` is
970
+ * available.
971
+ *
972
+ * @param constraints - The constraints used to request display media.
973
+ * @param stream - The MediaStream returned from the requesting display media.
974
+ */
975
+ declare const limitSharingMonitorInterface: (constraints: DisplayMediaOptions, stream: MediaStream) => MediaStream;
976
+
879
977
  /**
880
978
  * media-control is meant to extend the mediaDevices api methods such as
881
979
  * `getUserMedia`, `enumerateDevices` and events on media streams and tracks.
@@ -924,4 +1022,4 @@ interface MediaControl {
924
1022
  subscribe: typeof subscribe;
925
1023
  }
926
1024
 
927
- export { DeviceChangedChanges, Events, FacingMode, InputConstraintSet, InputDevicePermission, MediaControl, MediaDeviceFailure, MediaDeviceInfoLike, MediaDeviceKinds, MediaDeviceRequest, MediaEvent, MediaEventType, MediaInput, MediaStreamTrackLike, StreamTrackEventHandlers, Unsubscribe, applyConstraints, areMultipleFacingModeSupportted, areTracksEnabled, compareDevices, createStreamTrackEventSubscriptions, createTrackDevicesChanges, deviceChanged, extractConstraintsWithKeys, findAudioInputDevices, findAudioOutputDevices, findCurrentAudioOutputId, findCurrentVideoInputDeviceIdFromStream, findDevice, findDeviceFromConstraints, findDeviceWithDeviceId, findDevicesByKind, findMediaInputFromMediaStreamTrack, findMediaInputFromStream, findPermissionGrantedDevices, findVideoInputDevices, getDevices, getFacingModeFromConstraintString, getInputDevicePermissionState, getUserMedia, getValueFromConstrainNumber, hasAnyGrantedInput, hasAnyInputs, hasAudioInputs, hasAudioOrVideoInputs, hasChangedInput, hasRequestingDevice, hasVideoInputs, interpretCurrentFacingMode, isAudioInput, isAudioOutput, isDeviceGranted, isExactDeviceConstraint, isFacingMode, isMediaDeviceInfo, isMediaDeviceInfoArray, isMediaStreamTrack, isRequestedInputDevice, isRequestedInputTrack, isRequestedResolution, isStreamingRequestedDevices, isStreamingRequestedDevicesBase, isVideoInput, mergeConstraints, muteStreamTrack, relaxInputConstraint, setDefaultConstraints, setLogger, shouldRequestDevice, stopMediaStream, subscribe, toKey, toMediaDeviceInfoLike };
1025
+ export { CURSOR_CAPTURE_CONSTRAINT, CursorCaptureConstraint, DISPLAY_CAPTURE_SURFACE_TYPE, DeviceChangedChanges, DisplayCaptureSurfaceType, DisplayMediaOptions, Events, FacingMode, INCLUDE_EXCLUDE_CONSTRAINT, IncludeExcludeConstraint, InputConstraintSet, InputDevicePermission, MediaControl, MediaDeviceFailure, MediaDeviceInfoLike, MediaDeviceKinds, MediaDeviceRequest, MediaEvent, MediaEventType, MediaInput, MediaStreamTrackLike, StreamTrackEventHandlers, Unsubscribe, applyConstraints, areMultipleFacingModeSupported, areTracksEnabled, compareDevices, createStreamTrackEventSubscriptions, createTrackDevicesChanges, deviceChanged, extractConstraintsWithKeys, findAudioInputDevices, findAudioOutputDevices, findCurrentAudioOutputId, findCurrentVideoInputDeviceIdFromStream, findDevice, findDeviceFromConstraints, findDeviceWithDeviceId, findDevicesByKind, findMediaInputFromMediaStreamTrack, findMediaInputFromStream, findPermissionGrantedDevices, findVideoInputDevices, getDevices, getFacingModeFromConstraintString, getInputDevicePermissionState, getUserMedia, getValueFromConstrainNumber, hasAnyGrantedInput, hasAnyInputs, hasAudioInputs, hasAudioOrVideoInputs, hasChangedInput, hasRequestingDevice, hasVideoInputs, interpretCurrentFacingMode, isAudioInput, isAudioOutput, isDeviceGranted, isExactDeviceConstraint, isFacingMode, isMediaDeviceInfo, isMediaDeviceInfoArray, isMediaStreamTrack, isRequestedInputDevice, isRequestedInputTrack, isRequestedResolution, isStreamingRequestedDevices, isStreamingRequestedDevicesBase, isVideoInput, limitSharingMonitorInterface, mergeConstraints, muteStreamTrack, relaxInputConstraint, setDefaultConstraints, setLogger, shouldRequestDevice, stopMediaStream, subscribe, toKey, toMediaDeviceInfo, toMediaDeviceInfoLike };
package/dist/index.mjs CHANGED
@@ -41,7 +41,8 @@ var CONSTRAIN_STRING_KEYS = [
41
41
  var EXTENDED_CONSTRAIN_STRING_KEYS = [
42
42
  "videoSegmentation",
43
43
  "videoSegmentationModel",
44
- "bgImageUrl"
44
+ "bgImageUrl",
45
+ "contentHint"
45
46
  ];
46
47
  var CONSTRAIN_U_LONG_KEYS = [
47
48
  "width",
@@ -63,7 +64,10 @@ var EXTENDED_CONSTRAIN_DOUBLE_KEYS = ["foregroundThreshold"];
63
64
  var CONSTRAIN_BOOLEAN_KEYS = [
64
65
  "echoCancellation",
65
66
  "autoGainControl",
66
- "noiseSuppression"
67
+ "noiseSuppression",
68
+ "pan",
69
+ "tilt",
70
+ "zoom"
67
71
  ];
68
72
  var EXTENDED_CONSTRAIN_BOOLEAN_KEYS = [
69
73
  // Voice Activity Detection
@@ -348,15 +352,18 @@ var normalizeDeviceConstraint = (constraints) => {
348
352
  return void 0;
349
353
  }
350
354
  if (isConstraintDeviceParameters(constraints)) {
351
- return Object.keys(constraints).filter((k) => ["ideal", "exact"].includes(k)).reduce((cs, k) => {
352
- const key = k;
353
- const value = constraints[key];
354
- const devices = normalizeDevice(value);
355
- if (devices) {
356
- return { ...cs ?? {}, [key]: devices };
357
- }
358
- return cs;
359
- }, void 0);
355
+ return Object.keys(constraints).filter((k) => ["ideal", "exact"].includes(k)).reduce(
356
+ (cs, k) => {
357
+ const key = k;
358
+ const value = constraints[key];
359
+ const devices = normalizeDevice(value);
360
+ if (devices) {
361
+ return { ...cs ?? {}, [key]: devices };
362
+ }
363
+ return cs;
364
+ },
365
+ void 0
366
+ );
360
367
  }
361
368
  const normalized = normalizeDevice(constraints);
362
369
  return normalized && { ideal: normalized };
@@ -655,21 +662,36 @@ function extractConstraints(key) {
655
662
  return [void 0, "ideal"];
656
663
  };
657
664
  }
658
- var extractConstraintsWithKeys = (keys) => (constraints) => keys.reduce((result, key) => {
659
- if (key === "device") {
660
- return { ...result, [key]: extractConstraints(key)(constraints) };
661
- }
662
- if (isConstrainULongKeys(key) || isConstrainDoubleKeys(key) || isExtendedConstrainULongKeys(key) || isExtendedConstrainDoubleKeys(key)) {
663
- return { ...result, [key]: extractConstraints(key)(constraints) };
664
- }
665
- if (isConstrainStringKeys(key) || isExtendedConstrainStringKeys(key)) {
666
- return { ...result, [key]: extractConstraints(key)(constraints) };
667
- }
668
- if (isConstrainBooleanKeys(key) || isExtendedConstrainBooleanKeys(key)) {
669
- return { ...result, [key]: extractConstraints(key)(constraints) };
670
- }
671
- return result;
672
- }, {});
665
+ var extractConstraintsWithKeys = (keys) => (constraints) => keys.reduce(
666
+ (result, key) => {
667
+ if (key === "device") {
668
+ return {
669
+ ...result,
670
+ [key]: extractConstraints(key)(constraints)
671
+ };
672
+ }
673
+ if (isConstrainULongKeys(key) || isConstrainDoubleKeys(key) || isExtendedConstrainULongKeys(key) || isExtendedConstrainDoubleKeys(key)) {
674
+ return {
675
+ ...result,
676
+ [key]: extractConstraints(key)(constraints)
677
+ };
678
+ }
679
+ if (isConstrainStringKeys(key) || isExtendedConstrainStringKeys(key)) {
680
+ return {
681
+ ...result,
682
+ [key]: extractConstraints(key)(constraints)
683
+ };
684
+ }
685
+ if (isConstrainBooleanKeys(key) || isExtendedConstrainBooleanKeys(key)) {
686
+ return {
687
+ ...result,
688
+ [key]: extractConstraints(key)(constraints)
689
+ };
690
+ }
691
+ return result;
692
+ },
693
+ {}
694
+ );
673
695
  var extractDeviceId = extractConstrainString("deviceId");
674
696
  var findDeviceFromConstraints = (constraints, devices) => {
675
697
  if (typeof constraints === "boolean") {
@@ -836,6 +858,12 @@ var toMediaDeviceInfoLikeJSON = (info) => ({
836
858
  label: info.label,
837
859
  settings: info.settings
838
860
  });
861
+ var toMediaDeviceInfo = (info) => ({
862
+ deviceId: info.deviceId,
863
+ groupId: info.groupId,
864
+ kind: info.kind,
865
+ label: info.label
866
+ });
839
867
  var findMediaInputFromMediaStreamTrack = (devices) => (track) => {
840
868
  if (!devices.length || !track) {
841
869
  return void 0;
@@ -1142,7 +1170,7 @@ var hasChangedInput = (oldInput, newInput) => {
1142
1170
  }
1143
1171
  return false;
1144
1172
  };
1145
- var areMultipleFacingModeSupportted = (currentDevices, getSupportedConstraints = () => navigator.mediaDevices.getSupportedConstraints()) => {
1173
+ var areMultipleFacingModeSupported = (currentDevices, getSupportedConstraints = () => navigator.mediaDevices.getSupportedConstraints()) => {
1146
1174
  if (!getSupportedConstraints().facingMode) {
1147
1175
  return false;
1148
1176
  }
@@ -1492,6 +1520,44 @@ var createStreamTrackMap = (tracks) => {
1492
1520
  };
1493
1521
  };
1494
1522
 
1523
+ // src/constants.ts
1524
+ var DISPLAY_CAPTURE_SURFACE_TYPE = {
1525
+ Monitor: "monitor",
1526
+ Window: "window",
1527
+ Browser: "browser"
1528
+ };
1529
+ var CURSOR_CAPTURE_CONSTRAINT = {
1530
+ Never: "never",
1531
+ Always: "always",
1532
+ Motion: "motion"
1533
+ };
1534
+ var INCLUDE_EXCLUDE_CONSTRAINT = {
1535
+ Include: "include",
1536
+ Exclude: "exclude"
1537
+ };
1538
+
1539
+ // src/displayMedia.ts
1540
+ var limitSharingMonitorInterface = (constraints, stream) => {
1541
+ if (!constraints.monitorTypeSurfaces || constraints.monitorTypeSurfaces !== "exclude") {
1542
+ return stream;
1543
+ }
1544
+ for (const track of stream.getTracks()) {
1545
+ const { displaySurface } = track.getSettings();
1546
+ if (!displaySurface || displaySurface !== "monitor") {
1547
+ continue;
1548
+ }
1549
+ stopMediaStream(stream);
1550
+ throw new TypeError("MonitorSharingNotAllowed", {
1551
+ cause: {
1552
+ monitorTypeSurfaces: constraints.monitorTypeSurfaces,
1553
+ track,
1554
+ displaySurface
1555
+ }
1556
+ });
1557
+ }
1558
+ return stream;
1559
+ };
1560
+
1495
1561
  // src/index.ts
1496
1562
  var state = () => {
1497
1563
  const { dispatch, subscriber } = eventEmitter();
@@ -1572,11 +1638,14 @@ var {
1572
1638
  subscribe
1573
1639
  } = state();
1574
1640
  export {
1641
+ CURSOR_CAPTURE_CONSTRAINT,
1642
+ DISPLAY_CAPTURE_SURFACE_TYPE,
1643
+ INCLUDE_EXCLUDE_CONSTRAINT,
1575
1644
  MediaDeviceFailure,
1576
1645
  MediaDeviceKinds,
1577
1646
  MediaEventType,
1578
1647
  applyConstraints,
1579
- areMultipleFacingModeSupportted,
1648
+ areMultipleFacingModeSupported,
1580
1649
  areTracksEnabled,
1581
1650
  compareDevices,
1582
1651
  createStreamTrackEventSubscriptions,
@@ -1622,6 +1691,7 @@ export {
1622
1691
  isStreamingRequestedDevices,
1623
1692
  isStreamingRequestedDevicesBase,
1624
1693
  isVideoInput,
1694
+ limitSharingMonitorInterface,
1625
1695
  mergeConstraints,
1626
1696
  muteStreamTrack,
1627
1697
  relaxInputConstraint,
@@ -1631,5 +1701,6 @@ export {
1631
1701
  stopMediaStream,
1632
1702
  subscribe,
1633
1703
  toKey,
1704
+ toMediaDeviceInfo,
1634
1705
  toMediaDeviceInfoLike
1635
1706
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pexip/media-control",
3
- "version": "17.1.2",
3
+ "version": "17.3.0",
4
4
  "homepage": "https://gitlab.com/pexip/zoo",
5
5
  "bugs": "https://gitlab.com/pexip/zoo/issues",
6
6
  "repository": {
@@ -26,18 +26,18 @@
26
26
  "typecheck": "yarn tsc --noEmit -p tsconfig.build.json"
27
27
  },
28
28
  "dependencies": {
29
- "@pexip/utils": "16.7.0"
29
+ "@pexip/utils": "16.9.0"
30
30
  },
31
31
  "devDependencies": {
32
- "@jest/globals": "^29.5.0",
33
- "@pexip/bundler": "16.4.0",
32
+ "@jest/globals": "^29.7.0",
33
+ "@pexip/bundler": "16.5.0",
34
34
  "@types/core-js": "^2.5.3",
35
35
  "@types/prettier": "^2.0.2",
36
36
  "@types/uuid": "^8.3.0",
37
37
  "@types/webrtc": "^0.0.31",
38
38
  "core-js": "^3.6.5",
39
- "prettier": "2.8.8",
40
- "typescript": "~5.0.0",
39
+ "prettier": "^3.0.3",
40
+ "typescript": "~5.3.0",
41
41
  "uuid": "^9.0.0"
42
42
  },
43
43
  "publishConfig": {