@stream-io/video-client 1.33.1 → 1.34.1

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
@@ -2,6 +2,25 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [1.34.1](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-client-1.34.0...@stream-io/video-client-1.34.1) (2025-10-17)
6
+
7
+ ### Bug Fixes
8
+
9
+ - camera toggle along with flip ([#1961](https://github.com/GetStream/stream-video-js/issues/1961)) ([2703121](https://github.com/GetStream/stream-video-js/commit/2703121d27aee7a54bdc07b99a30feea9a4e4512))
10
+
11
+ ## [1.34.0](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-client-1.33.1...@stream-io/video-client-1.34.0) (2025-10-14)
12
+
13
+ - use fromPartial instead of suppressing ts-errors ([#1949](https://github.com/GetStream/stream-video-js/issues/1949)) ([95e5654](https://github.com/GetStream/stream-video-js/commit/95e5654e2bac5dc7c5126079795fca9951652290))
14
+
15
+ ### Features
16
+
17
+ - **deps:** React 19.1, React Native 0.81, NextJS 15.5, Expo 54 ([#1940](https://github.com/GetStream/stream-video-js/issues/1940)) ([30f8ce2](https://github.com/GetStream/stream-video-js/commit/30f8ce2b335189e1f77160236839bc6c6a02f634))
18
+ - move audio route manager inside SDK ([#1840](https://github.com/GetStream/stream-video-js/issues/1840)) ([847dd30](https://github.com/GetStream/stream-video-js/commit/847dd30d6240a0780fe3d58d681554bc392f6f51)), closes [#1829](https://github.com/GetStream/stream-video-js/issues/1829)
19
+
20
+ ### Bug Fixes
21
+
22
+ - flush rtc stats when reconnecting ([#1946](https://github.com/GetStream/stream-video-js/issues/1946)) ([fb1f6fc](https://github.com/GetStream/stream-video-js/commit/fb1f6fcb2837154a4fe746a6efe4f9a4830bca20))
23
+
5
24
  ## [1.33.1](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-client-1.33.0...@stream-io/video-client-1.33.1) (2025-10-02)
6
25
 
7
26
  ### Bug Fixes
@@ -5853,7 +5853,7 @@ const getSdkVersion = (sdk) => {
5853
5853
  return sdk ? `${sdk.major}.${sdk.minor}.${sdk.patch}` : '0.0.0-development';
5854
5854
  };
5855
5855
 
5856
- const version = "1.33.1";
5856
+ const version = "1.34.1";
5857
5857
  const [major, minor, patch] = version.split('.');
5858
5858
  let sdkInfo = {
5859
5859
  type: SdkType.PLAIN_JAVASCRIPT,
@@ -10680,12 +10680,13 @@ class CameraManager extends DeviceManager {
10680
10680
  await videoTrack?.applyConstraints({
10681
10681
  facingMode: direction === 'front' ? 'user' : 'environment',
10682
10682
  });
10683
- this.state.setDirection(direction);
10684
- return;
10685
10683
  }
10686
10684
  // providing both device id and direction doesn't work, so we deselect the device
10687
10685
  this.state.setDirection(direction);
10688
10686
  this.state.setDevice(undefined);
10687
+ if (isReactNative()) {
10688
+ return;
10689
+ }
10689
10690
  this.getTracks().forEach((track) => track.stop());
10690
10691
  try {
10691
10692
  await this.unmuteStream();
@@ -11643,13 +11644,18 @@ class SpeakerManager {
11643
11644
  * @param volume a number between 0 and 1. Set it to `undefined` to use the default volume.
11644
11645
  */
11645
11646
  setParticipantVolume(sessionId, volume) {
11646
- if (isReactNative()) {
11647
- throw new Error('This feature is not supported in React Native. Please visit https://getstream.io/video/docs/reactnative/core/camera-and-microphone/#speaker-management for more details');
11648
- }
11649
11647
  if (volume && (volume < 0 || volume > 1)) {
11650
11648
  throw new Error('Volume must be between 0 and 1, or undefined');
11651
11649
  }
11652
- this.call.state.updateParticipant(sessionId, { audioVolume: volume });
11650
+ this.call.state.updateParticipant(sessionId, (p) => {
11651
+ if (isReactNative() && p.audioStream) {
11652
+ for (const track of p.audioStream.getAudioTracks()) {
11653
+ // @ts-expect-error track._setVolume is present in react-native-webrtc
11654
+ track?._setVolume(volume);
11655
+ }
11656
+ }
11657
+ return { audioVolume: volume };
11658
+ });
11653
11659
  }
11654
11660
  }
11655
11661
 
@@ -12463,6 +12469,7 @@ class Call {
12463
12469
  });
12464
12470
  }
12465
12471
  this.tracer.setEnabled(enableTracing);
12472
+ this.sfuStatsReporter?.flush();
12466
12473
  this.sfuStatsReporter?.stop();
12467
12474
  if (statsOptions?.reporting_interval_ms > 0) {
12468
12475
  this.sfuStatsReporter = new SfuStatsReporter(sfuClient, {
@@ -14798,7 +14805,7 @@ class StreamClient {
14798
14805
  this.getUserAgent = () => {
14799
14806
  if (!this.cachedUserAgent) {
14800
14807
  const { clientAppIdentifier = {} } = this.options;
14801
- const { sdkName = 'js', sdkVersion = "1.33.1", ...extras } = clientAppIdentifier;
14808
+ const { sdkName = 'js', sdkVersion = "1.34.1", ...extras } = clientAppIdentifier;
14802
14809
  this.cachedUserAgent = [
14803
14810
  `stream-video-${sdkName}-v${sdkVersion}`,
14804
14811
  ...Object.entries(extras).map(([key, value]) => `${key}=${value}`),