@stream-io/video-client 1.34.1 → 1.35.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
@@ -2,6 +2,12 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [1.35.0](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-client-1.34.1...@stream-io/video-client-1.35.0) (2025-10-24)
6
+
7
+ ### Features
8
+
9
+ - Participant Stats ([#1922](https://github.com/GetStream/stream-video-js/issues/1922)) ([b96de03](https://github.com/GetStream/stream-video-js/commit/b96de03a2b96db2288a6d2d52a25d3deea9148d8))
10
+
5
11
  ## [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
12
 
7
13
  ### Bug Fixes
@@ -67,6 +67,13 @@ const IngressAudioEncodingOptionsRequestChannelsEnum = {
67
67
  NUMBER_1: 1,
68
68
  NUMBER_2: 2,
69
69
  };
70
+ /**
71
+ * @export
72
+ */
73
+ const IngressSourceRequestFpsEnum = {
74
+ NUMBER_30: 30,
75
+ NUMBER_60: 60,
76
+ };
70
77
  /**
71
78
  * @export
72
79
  */
@@ -5853,7 +5860,7 @@ const getSdkVersion = (sdk) => {
5853
5860
  return sdk ? `${sdk.major}.${sdk.minor}.${sdk.patch}` : '0.0.0-development';
5854
5861
  };
5855
5862
 
5856
- const version = "1.34.1";
5863
+ const version = "1.35.0";
5857
5864
  const [major, minor, patch] = version.split('.');
5858
5865
  let sdkInfo = {
5859
5866
  type: SdkType.PLAIN_JAVASCRIPT,
@@ -13218,13 +13225,10 @@ class Call {
13218
13225
  };
13219
13226
  /**
13220
13227
  * Allows you to grant or revoke a specific permission to a user in a call. The permissions are specific to the call experience and do not survive the call itself.
13221
- *
13222
13228
  * When revoking a permission, this endpoint will also mute the relevant track from the user. This is similar to muting a user with the difference that the user will not be able to unmute afterwards.
13223
- *
13224
13229
  * Supported permissions that can be granted or revoked: `send-audio`, `send-video` and `screenshare`.
13225
13230
  *
13226
13231
  * `call.permissions_updated` event is sent to all members of the call.
13227
- *
13228
13232
  */
13229
13233
  this.updateUserPermissions = async (data) => {
13230
13234
  return this.streamClient.post(`${this.streamClientBasePath}/user_permissions`, data);
@@ -13457,6 +13461,22 @@ class Call {
13457
13461
  const params = callSessionID !== '' ? { session_id: callSessionID } : {};
13458
13462
  return this.streamClient.get(endpoint, params);
13459
13463
  };
13464
+ /**
13465
+ * Loads the call participant stats for the given parameters.
13466
+ */
13467
+ this.getCallParticipantsStats = async (opts) => {
13468
+ const { sessionId = this.state.session?.id, userId = this.currentUserId, userSessionId = this.unifiedSessionId, kind = 'details', } = opts;
13469
+ if (!sessionId)
13470
+ return;
13471
+ const base = `${this.streamClient.baseURL}/call_stats/${this.type}/${this.id}/${sessionId}`;
13472
+ if (!userId || !userSessionId) {
13473
+ return this.streamClient.get(`${base}/participants`);
13474
+ }
13475
+ if (kind === 'details') {
13476
+ return this.streamClient.get(`${base}/participant/${userId}/${userSessionId}/details`);
13477
+ }
13478
+ return this.streamClient.get(`${base}/participants/${userId}/${userSessionId}/timeline`);
13479
+ };
13460
13480
  /**
13461
13481
  * Submit user feedback for the call
13462
13482
  *
@@ -14805,7 +14825,7 @@ class StreamClient {
14805
14825
  this.getUserAgent = () => {
14806
14826
  if (!this.cachedUserAgent) {
14807
14827
  const { clientAppIdentifier = {} } = this.options;
14808
- const { sdkName = 'js', sdkVersion = "1.34.1", ...extras } = clientAppIdentifier;
14828
+ const { sdkName = 'js', sdkVersion = "1.35.0", ...extras } = clientAppIdentifier;
14809
14829
  this.cachedUserAgent = [
14810
14830
  `stream-video-${sdkName}-v${sdkVersion}`,
14811
14831
  ...Object.entries(extras).map(([key, value]) => `${key}=${value}`),
@@ -15402,5 +15422,5 @@ class StreamVideoClient {
15402
15422
  }
15403
15423
  StreamVideoClient._instances = new Map();
15404
15424
 
15405
- export { AudioSettingsRequestDefaultDeviceEnum, AudioSettingsResponseDefaultDeviceEnum, browsers as Browsers, Call, CallState, CallType, CallTypes, CallingState, CameraManager, CameraManagerState, CreateDeviceRequestPushProviderEnum, DebounceType, DeviceManager, DeviceManagerState, DynascaleManager, ErrorFromResponse, FrameRecordingSettingsRequestModeEnum, FrameRecordingSettingsRequestQualityEnum, FrameRecordingSettingsResponseModeEnum, IngressAudioEncodingOptionsRequestChannelsEnum, IngressVideoLayerRequestCodecEnum, LayoutSettingsRequestNameEnum, MicrophoneManager, MicrophoneManagerState, NoiseCancellationSettingsModeEnum, OwnCapability, RNSpeechDetector, RTMPBroadcastRequestQualityEnum, RTMPSettingsRequestQualityEnum, RecordSettingsRequestModeEnum, RecordSettingsRequestQualityEnum, rxUtils as RxUtils, ScreenShareManager, ScreenShareState, events as SfuEvents, models as SfuModels, SpeakerManager, SpeakerState, StartClosedCaptionsRequestLanguageEnum, StartTranscriptionRequestLanguageEnum, StreamSfuClient, StreamVideoClient, StreamVideoReadOnlyStateStore, StreamVideoWriteableStateStore, TranscriptionSettingsRequestClosedCaptionModeEnum, TranscriptionSettingsRequestLanguageEnum, TranscriptionSettingsRequestModeEnum, TranscriptionSettingsResponseClosedCaptionModeEnum, TranscriptionSettingsResponseLanguageEnum, TranscriptionSettingsResponseModeEnum, VideoSettingsRequestCameraFacingEnum, VideoSettingsResponseCameraFacingEnum, ViewportTracker, VisibilityState, checkIfAudioOutputChangeSupported, combineComparators, conditional, createSoundDetector, defaultSortPreset, descending, deviceIds$, disposeOfMediaStream, dominantSpeaker, getAudioBrowserPermission, getAudioDevices, getAudioOutputDevices, getAudioStream, getClientDetails, getDeviceState, getLogLevel, getLogger, getScreenShareStream, getSdkInfo, getVideoBrowserPermission, getVideoDevices, getVideoStream, getWebRTCInfo, hasAudio, hasPausedTrack, hasScreenShare, hasScreenShareAudio, hasVideo, isPinned, livestreamOrAudioRoomSortPreset, logLevels, logToConsole, name, noopComparator, paginatedLayoutSortPreset, pinned, publishingAudio, publishingVideo, reactionType, resolveDeviceId, role, screenSharing, setDeviceInfo, setLogLevel, setLogger, setOSInfo, setPowerState, setSdkInfo, setThermalState, setWebRTCInfo, speakerLayoutSortPreset, speaking, withParticipantSource };
15425
+ export { AudioSettingsRequestDefaultDeviceEnum, AudioSettingsResponseDefaultDeviceEnum, browsers as Browsers, Call, CallState, CallType, CallTypes, CallingState, CameraManager, CameraManagerState, CreateDeviceRequestPushProviderEnum, DebounceType, DeviceManager, DeviceManagerState, DynascaleManager, ErrorFromResponse, FrameRecordingSettingsRequestModeEnum, FrameRecordingSettingsRequestQualityEnum, FrameRecordingSettingsResponseModeEnum, IngressAudioEncodingOptionsRequestChannelsEnum, IngressSourceRequestFpsEnum, IngressVideoLayerRequestCodecEnum, LayoutSettingsRequestNameEnum, MicrophoneManager, MicrophoneManagerState, NoiseCancellationSettingsModeEnum, OwnCapability, RNSpeechDetector, RTMPBroadcastRequestQualityEnum, RTMPSettingsRequestQualityEnum, RecordSettingsRequestModeEnum, RecordSettingsRequestQualityEnum, rxUtils as RxUtils, ScreenShareManager, ScreenShareState, events as SfuEvents, models as SfuModels, SpeakerManager, SpeakerState, StartClosedCaptionsRequestLanguageEnum, StartTranscriptionRequestLanguageEnum, StreamSfuClient, StreamVideoClient, StreamVideoReadOnlyStateStore, StreamVideoWriteableStateStore, TranscriptionSettingsRequestClosedCaptionModeEnum, TranscriptionSettingsRequestLanguageEnum, TranscriptionSettingsRequestModeEnum, TranscriptionSettingsResponseClosedCaptionModeEnum, TranscriptionSettingsResponseLanguageEnum, TranscriptionSettingsResponseModeEnum, VideoSettingsRequestCameraFacingEnum, VideoSettingsResponseCameraFacingEnum, ViewportTracker, VisibilityState, checkIfAudioOutputChangeSupported, combineComparators, conditional, createSoundDetector, defaultSortPreset, descending, deviceIds$, disposeOfMediaStream, dominantSpeaker, getAudioBrowserPermission, getAudioDevices, getAudioOutputDevices, getAudioStream, getClientDetails, getDeviceState, getLogLevel, getLogger, getScreenShareStream, getSdkInfo, getVideoBrowserPermission, getVideoDevices, getVideoStream, getWebRTCInfo, hasAudio, hasPausedTrack, hasScreenShare, hasScreenShareAudio, hasVideo, isPinned, livestreamOrAudioRoomSortPreset, logLevels, logToConsole, name, noopComparator, paginatedLayoutSortPreset, pinned, publishingAudio, publishingVideo, reactionType, resolveDeviceId, role, screenSharing, setDeviceInfo, setLogLevel, setLogger, setOSInfo, setPowerState, setSdkInfo, setThermalState, setWebRTCInfo, speakerLayoutSortPreset, speaking, withParticipantSource };
15406
15426
  //# sourceMappingURL=index.browser.es.js.map