@stream-io/video-react-sdk 0.3.41 → 0.3.43

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.
Files changed (261) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +1 -1
  3. package/dist/index.cjs.js +2737 -0
  4. package/dist/index.cjs.js.map +1 -0
  5. package/dist/index.d.ts +0 -1
  6. package/dist/index.es.js +2633 -0
  7. package/dist/index.es.js.map +1 -0
  8. package/dist/src/components/Button/CompositeButton.d.ts +1 -1
  9. package/dist/src/core/components/ParticipantView/ParticipantView.d.ts +1 -1
  10. package/dist/src/hooks/useFloatingUIPreset.d.ts +1 -1
  11. package/index.ts +3 -3
  12. package/package.json +17 -15
  13. package/src/components/Permissions/PermissionRequests.tsx +1 -1
  14. package/dist/index.js +0 -18
  15. package/dist/index.js.map +0 -1
  16. package/dist/src/components/Avatar/Avatar.js +0 -24
  17. package/dist/src/components/Avatar/Avatar.js.map +0 -1
  18. package/dist/src/components/Avatar/index.js +0 -2
  19. package/dist/src/components/Avatar/index.js.map +0 -1
  20. package/dist/src/components/Button/CompositeButton.js +0 -13
  21. package/dist/src/components/Button/CompositeButton.js.map +0 -1
  22. package/dist/src/components/Button/CopyToClipboardButton.js +0 -54
  23. package/dist/src/components/Button/CopyToClipboardButton.js.map +0 -1
  24. package/dist/src/components/Button/IconButton.js +0 -26
  25. package/dist/src/components/Button/IconButton.js.map +0 -1
  26. package/dist/src/components/Button/TextButton.js +0 -17
  27. package/dist/src/components/Button/TextButton.js.map +0 -1
  28. package/dist/src/components/Button/index.js +0 -5
  29. package/dist/src/components/Button/index.js.map +0 -1
  30. package/dist/src/components/CallControls/AcceptCallButton.js +0 -27
  31. package/dist/src/components/CallControls/AcceptCallButton.js.map +0 -1
  32. package/dist/src/components/CallControls/CallControls.js +0 -5
  33. package/dist/src/components/CallControls/CallControls.js.map +0 -1
  34. package/dist/src/components/CallControls/CallStatsButton.js +0 -8
  35. package/dist/src/components/CallControls/CallStatsButton.js.map +0 -1
  36. package/dist/src/components/CallControls/CancelCallButton.js +0 -27
  37. package/dist/src/components/CallControls/CancelCallButton.js.map +0 -1
  38. package/dist/src/components/CallControls/ReactionsButton.js +0 -45
  39. package/dist/src/components/CallControls/ReactionsButton.js.map +0 -1
  40. package/dist/src/components/CallControls/RecordCallButton.js +0 -22
  41. package/dist/src/components/CallControls/RecordCallButton.js.map +0 -1
  42. package/dist/src/components/CallControls/ScreenShareButton.js +0 -15
  43. package/dist/src/components/CallControls/ScreenShareButton.js.map +0 -1
  44. package/dist/src/components/CallControls/ToggleAudioButton.js +0 -24
  45. package/dist/src/components/CallControls/ToggleAudioButton.js.map +0 -1
  46. package/dist/src/components/CallControls/ToggleAudioOutputButton.js +0 -10
  47. package/dist/src/components/CallControls/ToggleAudioOutputButton.js.map +0 -1
  48. package/dist/src/components/CallControls/ToggleVideoButton.js +0 -24
  49. package/dist/src/components/CallControls/ToggleVideoButton.js.map +0 -1
  50. package/dist/src/components/CallControls/index.js +0 -11
  51. package/dist/src/components/CallControls/index.js.map +0 -1
  52. package/dist/src/components/CallParticipantsList/BlockedUserListing.js +0 -18
  53. package/dist/src/components/CallParticipantsList/BlockedUserListing.js.map +0 -1
  54. package/dist/src/components/CallParticipantsList/CallParticipantListHeader.js +0 -10
  55. package/dist/src/components/CallParticipantsList/CallParticipantListHeader.js.map +0 -1
  56. package/dist/src/components/CallParticipantsList/CallParticipantListing.js +0 -4
  57. package/dist/src/components/CallParticipantsList/CallParticipantListing.js.map +0 -1
  58. package/dist/src/components/CallParticipantsList/CallParticipantListingItem.js +0 -128
  59. package/dist/src/components/CallParticipantsList/CallParticipantListingItem.js.map +0 -1
  60. package/dist/src/components/CallParticipantsList/CallParticipantsList.js +0 -83
  61. package/dist/src/components/CallParticipantsList/CallParticipantsList.js.map +0 -1
  62. package/dist/src/components/CallParticipantsList/EmptyParticipantSearchList.js +0 -7
  63. package/dist/src/components/CallParticipantsList/EmptyParticipantSearchList.js.map +0 -1
  64. package/dist/src/components/CallParticipantsList/index.js +0 -4
  65. package/dist/src/components/CallParticipantsList/index.js.map +0 -1
  66. package/dist/src/components/CallPreview/CallPreview.js +0 -21
  67. package/dist/src/components/CallPreview/CallPreview.js.map +0 -1
  68. package/dist/src/components/CallPreview/index.js +0 -2
  69. package/dist/src/components/CallPreview/index.js.map +0 -1
  70. package/dist/src/components/CallRecordingList/CallRecordingList.js +0 -9
  71. package/dist/src/components/CallRecordingList/CallRecordingList.js.map +0 -1
  72. package/dist/src/components/CallRecordingList/CallRecordingListHeader.js +0 -6
  73. package/dist/src/components/CallRecordingList/CallRecordingListHeader.js.map +0 -1
  74. package/dist/src/components/CallRecordingList/CallRecordingListItem.js +0 -11
  75. package/dist/src/components/CallRecordingList/CallRecordingListItem.js.map +0 -1
  76. package/dist/src/components/CallRecordingList/EmptyCallRecordingListing.js +0 -5
  77. package/dist/src/components/CallRecordingList/EmptyCallRecordingListing.js.map +0 -1
  78. package/dist/src/components/CallRecordingList/LoadingCallRecordingListing.js +0 -7
  79. package/dist/src/components/CallRecordingList/LoadingCallRecordingListing.js.map +0 -1
  80. package/dist/src/components/CallRecordingList/index.js +0 -6
  81. package/dist/src/components/CallRecordingList/index.js.map +0 -1
  82. package/dist/src/components/CallStats/CallStats.js +0 -70
  83. package/dist/src/components/CallStats/CallStats.js.map +0 -1
  84. package/dist/src/components/CallStats/CallStatsLatencyChart.js +0 -39
  85. package/dist/src/components/CallStats/CallStatsLatencyChart.js.map +0 -1
  86. package/dist/src/components/CallStats/index.js +0 -3
  87. package/dist/src/components/CallStats/index.js.map +0 -1
  88. package/dist/src/components/Debug/DebugParticipantPublishQuality.js +0 -46
  89. package/dist/src/components/Debug/DebugParticipantPublishQuality.js.map +0 -1
  90. package/dist/src/components/Debug/DebugStatsView.js +0 -66
  91. package/dist/src/components/Debug/DebugStatsView.js.map +0 -1
  92. package/dist/src/components/Debug/useIsDebugMode.js +0 -18
  93. package/dist/src/components/Debug/useIsDebugMode.js.map +0 -1
  94. package/dist/src/components/DeviceSettings/DeviceSelector.js +0 -26
  95. package/dist/src/components/DeviceSettings/DeviceSelector.js.map +0 -1
  96. package/dist/src/components/DeviceSettings/DeviceSelectorAudio.js +0 -20
  97. package/dist/src/components/DeviceSettings/DeviceSelectorAudio.js.map +0 -1
  98. package/dist/src/components/DeviceSettings/DeviceSelectorVideo.js +0 -11
  99. package/dist/src/components/DeviceSettings/DeviceSelectorVideo.js.map +0 -1
  100. package/dist/src/components/DeviceSettings/DeviceSettings.js +0 -15
  101. package/dist/src/components/DeviceSettings/DeviceSettings.js.map +0 -1
  102. package/dist/src/components/DeviceSettings/index.js +0 -5
  103. package/dist/src/components/DeviceSettings/index.js.map +0 -1
  104. package/dist/src/components/Icon/Icon.js +0 -4
  105. package/dist/src/components/Icon/Icon.js.map +0 -1
  106. package/dist/src/components/Icon/index.js +0 -2
  107. package/dist/src/components/Icon/index.js.map +0 -1
  108. package/dist/src/components/LoadingIndicator/LoadingIndicator.js +0 -6
  109. package/dist/src/components/LoadingIndicator/LoadingIndicator.js.map +0 -1
  110. package/dist/src/components/LoadingIndicator/index.js +0 -2
  111. package/dist/src/components/LoadingIndicator/index.js.map +0 -1
  112. package/dist/src/components/Menu/GenericMenu.js +0 -20
  113. package/dist/src/components/Menu/GenericMenu.js.map +0 -1
  114. package/dist/src/components/Menu/MenuToggle.js +0 -40
  115. package/dist/src/components/Menu/MenuToggle.js.map +0 -1
  116. package/dist/src/components/Menu/index.js +0 -3
  117. package/dist/src/components/Menu/index.js.map +0 -1
  118. package/dist/src/components/Notification/Notification.js +0 -25
  119. package/dist/src/components/Notification/Notification.js.map +0 -1
  120. package/dist/src/components/Notification/PermissionNotification.js +0 -26
  121. package/dist/src/components/Notification/PermissionNotification.js.map +0 -1
  122. package/dist/src/components/Notification/SpeakingWhileMutedNotification.js +0 -50
  123. package/dist/src/components/Notification/SpeakingWhileMutedNotification.js.map +0 -1
  124. package/dist/src/components/Notification/index.js +0 -4
  125. package/dist/src/components/Notification/index.js.map +0 -1
  126. package/dist/src/components/Permissions/PermissionRequests.js +0 -122
  127. package/dist/src/components/Permissions/PermissionRequests.js.map +0 -1
  128. package/dist/src/components/Permissions/index.js +0 -2
  129. package/dist/src/components/Permissions/index.js.map +0 -1
  130. package/dist/src/components/Reaction/Reaction.js +0 -29
  131. package/dist/src/components/Reaction/Reaction.js.map +0 -1
  132. package/dist/src/components/Reaction/index.js +0 -2
  133. package/dist/src/components/Reaction/index.js.map +0 -1
  134. package/dist/src/components/RingingCall/RingingCall.js +0 -45
  135. package/dist/src/components/RingingCall/RingingCall.js.map +0 -1
  136. package/dist/src/components/RingingCall/RingingCallControls.js +0 -14
  137. package/dist/src/components/RingingCall/RingingCallControls.js.map +0 -1
  138. package/dist/src/components/RingingCall/index.js +0 -3
  139. package/dist/src/components/RingingCall/index.js.map +0 -1
  140. package/dist/src/components/Search/SearchInput.js +0 -34
  141. package/dist/src/components/Search/SearchInput.js.map +0 -1
  142. package/dist/src/components/Search/SearchResults.js +0 -12
  143. package/dist/src/components/Search/SearchResults.js.map +0 -1
  144. package/dist/src/components/Search/hooks/index.js +0 -2
  145. package/dist/src/components/Search/hooks/index.js.map +0 -1
  146. package/dist/src/components/Search/hooks/useSearch.js +0 -39
  147. package/dist/src/components/Search/hooks/useSearch.js.map +0 -1
  148. package/dist/src/components/Search/index.js +0 -3
  149. package/dist/src/components/Search/index.js.map +0 -1
  150. package/dist/src/components/StreamTheme/StreamTheme.js +0 -18
  151. package/dist/src/components/StreamTheme/StreamTheme.js.map +0 -1
  152. package/dist/src/components/StreamTheme/index.js +0 -2
  153. package/dist/src/components/StreamTheme/index.js.map +0 -1
  154. package/dist/src/components/Tooltip/Tooltip.js +0 -22
  155. package/dist/src/components/Tooltip/Tooltip.js.map +0 -1
  156. package/dist/src/components/Tooltip/WithTooltip.js +0 -23
  157. package/dist/src/components/Tooltip/WithTooltip.js.map +0 -1
  158. package/dist/src/components/Tooltip/hooks/index.js +0 -2
  159. package/dist/src/components/Tooltip/hooks/index.js.map +0 -1
  160. package/dist/src/components/Tooltip/hooks/useEnterLeaveHandlers.js +0 -14
  161. package/dist/src/components/Tooltip/hooks/useEnterLeaveHandlers.js.map +0 -1
  162. package/dist/src/components/Tooltip/index.js +0 -3
  163. package/dist/src/components/Tooltip/index.js.map +0 -1
  164. package/dist/src/components/Video/VideoPreview.js +0 -75
  165. package/dist/src/components/Video/VideoPreview.js.map +0 -1
  166. package/dist/src/components/Video/index.js +0 -5
  167. package/dist/src/components/Video/index.js.map +0 -1
  168. package/dist/src/components/index.js +0 -18
  169. package/dist/src/components/index.js.map +0 -1
  170. package/dist/src/core/components/Audio/Audio.js +0 -30
  171. package/dist/src/core/components/Audio/Audio.js.map +0 -1
  172. package/dist/src/core/components/Audio/ParticipantsAudio.js +0 -21
  173. package/dist/src/core/components/Audio/ParticipantsAudio.js.map +0 -1
  174. package/dist/src/core/components/Audio/index.js +0 -3
  175. package/dist/src/core/components/Audio/index.js.map +0 -1
  176. package/dist/src/core/components/CallLayout/LivestreamLayout.js +0 -89
  177. package/dist/src/core/components/CallLayout/LivestreamLayout.js.map +0 -1
  178. package/dist/src/core/components/CallLayout/PaginatedGridLayout.js +0 -47
  179. package/dist/src/core/components/CallLayout/PaginatedGridLayout.js.map +0 -1
  180. package/dist/src/core/components/CallLayout/SpeakerLayout.js +0 -71
  181. package/dist/src/core/components/CallLayout/SpeakerLayout.js.map +0 -1
  182. package/dist/src/core/components/CallLayout/hooks.js +0 -41
  183. package/dist/src/core/components/CallLayout/hooks.js.map +0 -1
  184. package/dist/src/core/components/CallLayout/index.js +0 -4
  185. package/dist/src/core/components/CallLayout/index.js.map +0 -1
  186. package/dist/src/core/components/ParticipantView/DefaultParticipantViewUI.js +0 -48
  187. package/dist/src/core/components/ParticipantView/DefaultParticipantViewUI.js.map +0 -1
  188. package/dist/src/core/components/ParticipantView/ParticipantView.js +0 -54
  189. package/dist/src/core/components/ParticipantView/ParticipantView.js.map +0 -1
  190. package/dist/src/core/components/ParticipantView/index.js +0 -3
  191. package/dist/src/core/components/ParticipantView/index.js.map +0 -1
  192. package/dist/src/core/components/StreamCall/StreamCall.js +0 -7
  193. package/dist/src/core/components/StreamCall/StreamCall.js.map +0 -1
  194. package/dist/src/core/components/StreamCall/index.js +0 -2
  195. package/dist/src/core/components/StreamCall/index.js.map +0 -1
  196. package/dist/src/core/components/StreamVideo/StreamVideo.js +0 -7
  197. package/dist/src/core/components/StreamVideo/StreamVideo.js.map +0 -1
  198. package/dist/src/core/components/StreamVideo/index.js +0 -2
  199. package/dist/src/core/components/StreamVideo/index.js.map +0 -1
  200. package/dist/src/core/components/Video/BaseVideo.js +0 -48
  201. package/dist/src/core/components/Video/BaseVideo.js.map +0 -1
  202. package/dist/src/core/components/Video/DefaultVideoPlaceholder.js +0 -9
  203. package/dist/src/core/components/Video/DefaultVideoPlaceholder.js.map +0 -1
  204. package/dist/src/core/components/Video/Video.js +0 -82
  205. package/dist/src/core/components/Video/Video.js.map +0 -1
  206. package/dist/src/core/components/Video/index.js +0 -3
  207. package/dist/src/core/components/Video/index.js.map +0 -1
  208. package/dist/src/core/components/index.js +0 -7
  209. package/dist/src/core/components/index.js.map +0 -1
  210. package/dist/src/core/contexts/MediaDevicesContext.js +0 -178
  211. package/dist/src/core/contexts/MediaDevicesContext.js.map +0 -1
  212. package/dist/src/core/contexts/index.js +0 -2
  213. package/dist/src/core/contexts/index.js.map +0 -1
  214. package/dist/src/core/hooks/index.js +0 -5
  215. package/dist/src/core/hooks/index.js.map +0 -1
  216. package/dist/src/core/hooks/useAudioPublisher.js +0 -114
  217. package/dist/src/core/hooks/useAudioPublisher.js.map +0 -1
  218. package/dist/src/core/hooks/useCalculateHardLimit.js +0 -56
  219. package/dist/src/core/hooks/useCalculateHardLimit.js.map +0 -1
  220. package/dist/src/core/hooks/useDevices.js +0 -172
  221. package/dist/src/core/hooks/useDevices.js.map +0 -1
  222. package/dist/src/core/hooks/useTrackElementVisibility.js +0 -15
  223. package/dist/src/core/hooks/useTrackElementVisibility.js.map +0 -1
  224. package/dist/src/core/hooks/useVideoPublisher.js +0 -139
  225. package/dist/src/core/hooks/useVideoPublisher.js.map +0 -1
  226. package/dist/src/core/index.js +0 -4
  227. package/dist/src/core/index.js.map +0 -1
  228. package/dist/src/hooks/index.js +0 -8
  229. package/dist/src/hooks/index.js.map +0 -1
  230. package/dist/src/hooks/useFloatingUIPreset.js +0 -30
  231. package/dist/src/hooks/useFloatingUIPreset.js.map +0 -1
  232. package/dist/src/hooks/useRequestPermission.js +0 -46
  233. package/dist/src/hooks/useRequestPermission.js.map +0 -1
  234. package/dist/src/hooks/useScrollPosition.js +0 -63
  235. package/dist/src/hooks/useScrollPosition.js.map +0 -1
  236. package/dist/src/hooks/useToggleAudioMuteState.js +0 -34
  237. package/dist/src/hooks/useToggleAudioMuteState.js.map +0 -1
  238. package/dist/src/hooks/useToggleCallRecording.js +0 -44
  239. package/dist/src/hooks/useToggleCallRecording.js.map +0 -1
  240. package/dist/src/hooks/useToggleScreenShare.js +0 -38
  241. package/dist/src/hooks/useToggleScreenShare.js.map +0 -1
  242. package/dist/src/hooks/useToggleVideoMuteState.js +0 -34
  243. package/dist/src/hooks/useToggleVideoMuteState.js.map +0 -1
  244. package/dist/src/translations/en.json +0 -73
  245. package/dist/src/translations/index.js +0 -3
  246. package/dist/src/translations/index.js.map +0 -1
  247. package/dist/src/types/components.js +0 -2
  248. package/dist/src/types/components.js.map +0 -1
  249. package/dist/src/types/index.js +0 -2
  250. package/dist/src/types/index.js.map +0 -1
  251. package/dist/src/utilities/applyElementToRef.js +0 -8
  252. package/dist/src/utilities/applyElementToRef.js.map +0 -1
  253. package/dist/src/utilities/chunk.js +0 -5
  254. package/dist/src/utilities/chunk.js.map +0 -1
  255. package/dist/src/utilities/index.js +0 -4
  256. package/dist/src/utilities/index.js.map +0 -1
  257. package/dist/src/utilities/isComponentType.js +0 -7
  258. package/dist/src/utilities/isComponentType.js.map +0 -1
  259. package/dist/version.d.ts +0 -1
  260. package/dist/version.js +0 -2
  261. package/dist/version.js.map +0 -1
@@ -1,24 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Restricted, useCallStateHooks, useI18n, } from '@stream-io/video-react-bindings';
3
- import { OwnCapability, SfuModels } from '@stream-io/video-client';
4
- import { CompositeButton, IconButton } from '../Button/';
5
- import { useMediaDevices } from '../../core';
6
- import { DeviceSelectorVideo } from '../DeviceSettings';
7
- import { PermissionNotification } from '../Notification';
8
- import { useToggleVideoMuteState } from '../../hooks';
9
- export const ToggleVideoPreviewButton = (props) => {
10
- const { toggleInitialVideoMuteState, initialVideoState } = useMediaDevices();
11
- const { t } = useI18n();
12
- const { caption = t('Video'), Menu = DeviceSelectorVideo } = props;
13
- return (_jsx(CompositeButton, Object.assign({ Menu: Menu, active: !initialVideoState.enabled, caption: caption }, { children: _jsx(IconButton, { icon: initialVideoState.enabled ? 'camera' : 'camera-off', onClick: toggleInitialVideoMuteState }) })));
14
- };
15
- export const ToggleVideoPublishingButton = (props) => {
16
- const { useLocalParticipant } = useCallStateHooks();
17
- const localParticipant = useLocalParticipant();
18
- const { t } = useI18n();
19
- const { caption = t('Video'), Menu = DeviceSelectorVideo } = props;
20
- const isVideoMute = !(localParticipant === null || localParticipant === void 0 ? void 0 : localParticipant.publishedTracks.includes(SfuModels.TrackType.VIDEO));
21
- const { toggleVideoMuteState: handleClick, isAwaitingPermission } = useToggleVideoMuteState();
22
- return (_jsx(Restricted, Object.assign({ requiredGrants: [OwnCapability.SEND_VIDEO] }, { children: _jsx(PermissionNotification, Object.assign({ permission: OwnCapability.SEND_VIDEO, isAwaitingApproval: isAwaitingPermission, messageApproved: t('You can now share your video.'), messageAwaitingApproval: t('Awaiting for an approval to share your video.'), messageRevoked: t('You can no longer share your video.') }, { children: _jsx(CompositeButton, Object.assign({ Menu: Menu, active: isVideoMute, caption: caption }, { children: _jsx(IconButton, { icon: isVideoMute ? 'camera-off' : 'camera', onClick: handleClick }) })) })) })));
23
- };
24
- //# sourceMappingURL=ToggleVideoButton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToggleVideoButton.js","sourceRoot":"","sources":["../../../../src/components/CallControls/ToggleVideoButton.tsx"],"names":[],"mappings":";AACA,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,OAAO,GACR,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAOtD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,KAAoC,EACpC,EAAE;IACF,MAAM,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,GAAG,eAAe,EAAE,CAAC;IAC7E,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC;IACxB,MAAM,EAAE,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,GAAG,mBAAmB,EAAE,GAAG,KAAK,CAAC;IAEnE,OAAO,CACL,KAAC,eAAe,kBACd,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAClC,OAAO,EAAE,OAAO,gBAEhB,KAAC,UAAU,IACT,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,EACzD,OAAO,EAAE,2BAA2B,GACpC,IACc,CACnB,CAAC;AACJ,CAAC,CAAC;AAOF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CACzC,KAAuC,EACvC,EAAE;IACF,MAAM,EAAE,mBAAmB,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACpD,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC;IAExB,MAAM,EAAE,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,GAAG,mBAAmB,EAAE,GAAG,KAAK,CAAC;IAEnE,MAAM,WAAW,GAAG,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,eAAe,CAAC,QAAQ,CAC7D,SAAS,CAAC,SAAS,CAAC,KAAK,CAC1B,CAAA,CAAC;IAEF,MAAM,EAAE,oBAAoB,EAAE,WAAW,EAAE,oBAAoB,EAAE,GAC/D,uBAAuB,EAAE,CAAC;IAE5B,OAAO,CACL,KAAC,UAAU,kBAAC,cAAc,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,gBACpD,KAAC,sBAAsB,kBACrB,UAAU,EAAE,aAAa,CAAC,UAAU,EACpC,kBAAkB,EAAE,oBAAoB,EACxC,eAAe,EAAE,CAAC,CAAC,+BAA+B,CAAC,EACnD,uBAAuB,EAAE,CAAC,CACxB,+CAA+C,CAChD,EACD,cAAc,EAAE,CAAC,CAAC,qCAAqC,CAAC,gBAExD,KAAC,eAAe,kBAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,gBAChE,KAAC,UAAU,IACT,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,EAC3C,OAAO,EAAE,WAAW,GACpB,IACc,IACK,IACd,CACd,CAAC;AACJ,CAAC,CAAC"}
@@ -1,11 +0,0 @@
1
- export * from './AcceptCallButton';
2
- export * from './CallControls';
3
- export * from './CallStatsButton';
4
- export * from './CancelCallButton';
5
- export * from './ReactionsButton';
6
- export * from './RecordCallButton';
7
- export * from './ScreenShareButton';
8
- export * from './ToggleAudioButton';
9
- export * from './ToggleAudioOutputButton';
10
- export * from './ToggleVideoButton';
11
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/CallControls/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC"}
@@ -1,18 +0,0 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Restricted, useCall } from '@stream-io/video-react-bindings';
3
- import { OwnCapability } from '@stream-io/video-client';
4
- import { TextButton } from '../Button';
5
- export const BlockedUserListing = ({ data }) => {
6
- if (!data.length)
7
- return null;
8
- return (_jsx(_Fragment, { children: _jsx("div", Object.assign({ className: "str-video__participant-listing" }, { children: data.map((userId) => (_jsx(BlockedUserListingItem, { userId: userId }, userId))) })) }));
9
- };
10
- const BlockedUserListingItem = ({ userId }) => {
11
- const call = useCall();
12
- const unblockUserClickHandler = () => {
13
- if (userId)
14
- call === null || call === void 0 ? void 0 : call.unblockUser(userId);
15
- };
16
- return (_jsxs("div", Object.assign({ className: "str-video__participant-listing-item" }, { children: [_jsx("div", Object.assign({ className: "str-video__participant-listing-item__display-name" }, { children: userId })), _jsx(Restricted, Object.assign({ requiredGrants: [OwnCapability.BLOCK_USERS] }, { children: _jsx(TextButton, Object.assign({ onClick: unblockUserClickHandler }, { children: "Unblock" })) }))] })));
17
- };
18
- //# sourceMappingURL=BlockedUserListing.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BlockedUserListing.js","sourceRoot":"","sources":["../../../../src/components/CallParticipantsList/BlockedUserListing.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAAE,IAAI,EAAsB,EAAE,EAAE;IACjE,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAE9B,OAAO,CACL,4BACE,4BAAK,SAAS,EAAC,gCAAgC,gBAC5C,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACpB,KAAC,sBAAsB,IAAc,MAAM,EAAE,MAAM,IAAtB,MAAM,CAAoB,CACxD,CAAC,IACE,GACL,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,EAAE,MAAM,EAAsB,EAAE,EAAE;IAChE,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IAEvB,MAAM,uBAAuB,GAAG,GAAG,EAAE;QACnC,IAAI,MAAM;YAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC,CAAC;IAEF,OAAO,CACL,6BAAK,SAAS,EAAC,qCAAqC,iBAClD,4BAAK,SAAS,EAAC,mDAAmD,gBAC/D,MAAM,IACH,EACN,KAAC,UAAU,kBAAC,cAAc,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,gBACrD,KAAC,UAAU,kBAAC,OAAO,EAAE,uBAAuB,6BAAsB,IACvD,KACT,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -1,10 +0,0 @@
1
- import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
- import { useCallStateHooks, useI18n } from '@stream-io/video-react-bindings';
3
- export const CallParticipantListHeader = ({ onClose, }) => {
4
- const { useParticipants, useAnonymousParticipantCount } = useCallStateHooks();
5
- const participants = useParticipants();
6
- const anonymousParticipantCount = useAnonymousParticipantCount();
7
- const { t } = useI18n();
8
- return (_jsxs("div", Object.assign({ className: "str-video__participant-list-header" }, { children: [_jsxs("div", Object.assign({ className: "str-video__participant-list-header__title" }, { children: [t('Participants'), ' ', _jsxs("span", Object.assign({ className: "str-video__participant-list-header__title-count" }, { children: ["(", participants.length, ")"] })), anonymousParticipantCount > 0 && (_jsx("span", Object.assign({ className: "str-video__participant-list-header__title-anonymous" }, { children: t('Anonymous', { count: anonymousParticipantCount }) })))] })), _jsx("button", Object.assign({ onClick: onClose, className: "str-video__participant-list-header__close-button" }, { children: _jsx("span", { className: "str-video__participant-list-header__close-button--icon" }) }))] })));
9
- };
10
- //# sourceMappingURL=CallParticipantListHeader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CallParticipantListHeader.js","sourceRoot":"","sources":["../../../../src/components/CallParticipantsList/CallParticipantListHeader.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAO7E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,EACxC,OAAO,GACwB,EAAE,EAAE;IACnC,MAAM,EAAE,eAAe,EAAE,4BAA4B,EAAE,GAAG,iBAAiB,EAAE,CAAC;IAC9E,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,MAAM,yBAAyB,GAAG,4BAA4B,EAAE,CAAC;IACjE,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC;IAExB,OAAO,CACL,6BAAK,SAAS,EAAC,oCAAoC,iBACjD,6BAAK,SAAS,EAAC,2CAA2C,iBACvD,CAAC,CAAC,cAAc,CAAC,EAAE,GAAG,EACvB,8BAAM,SAAS,EAAC,iDAAiD,sBAC7D,YAAY,CAAC,MAAM,UAChB,EACN,yBAAyB,GAAG,CAAC,IAAI,CAChC,6BAAM,SAAS,EAAC,qDAAqD,gBAClE,CAAC,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC,IAChD,CACR,KACG,EACN,+BACE,OAAO,EAAE,OAAO,EAChB,SAAS,EAAC,kDAAkD,gBAE5D,eAAM,SAAS,EAAC,wDAAwD,GAAG,IACpE,KACL,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -1,4 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { CallParticipantListingItem } from './CallParticipantListingItem';
3
- export const CallParticipantListing = ({ data, }) => (_jsx("div", Object.assign({ className: "str-video__participant-listing" }, { children: data.map((participant) => (_jsx(CallParticipantListingItem, { participant: participant }, participant.sessionId))) })));
4
- //# sourceMappingURL=CallParticipantListing.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CallParticipantListing.js","sourceRoot":"","sources":["../../../../src/components/CallParticipantsList/CallParticipantListing.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAQ1E,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EACrC,IAAI,GACwB,EAAE,EAAE,CAAC,CACjC,4BAAK,SAAS,EAAC,gCAAgC,gBAC5C,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CACzB,KAAC,0BAA0B,IAEzB,WAAW,EAAE,WAAW,IADnB,WAAW,CAAC,SAAS,CAE1B,CACH,CAAC,IACE,CACP,CAAC"}
@@ -1,128 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import clsx from 'clsx';
3
- import { forwardRef, useEffect, useState, } from 'react';
4
- import { Restricted, useCall, useConnectedUser, useI18n, } from '@stream-io/video-react-bindings';
5
- import { OwnCapability, SfuModels, } from '@stream-io/video-client';
6
- import { IconButton } from '../Button';
7
- import { GenericMenu, GenericMenuButtonItem, MenuToggle, } from '../Menu';
8
- import { WithTooltip } from '../Tooltip';
9
- import { Icon } from '../Icon';
10
- export const CallParticipantListingItem = ({ participant, DisplayName = DefaultDisplayName, }) => {
11
- const isAudioOn = participant.publishedTracks.includes(SfuModels.TrackType.AUDIO);
12
- const isVideoOn = participant.publishedTracks.includes(SfuModels.TrackType.VIDEO);
13
- const isPinned = !!participant.pin;
14
- const { t } = useI18n();
15
- return (_jsxs("div", Object.assign({ className: "str-video__participant-listing-item" }, { children: [_jsx(DisplayName, { participant: participant }), _jsxs("div", Object.assign({ className: "str-video__participant-listing-item__media-indicator-group" }, { children: [_jsx(MediaIndicator, { title: isAudioOn ? t('Microphone on') : t('Microphone off'), className: clsx('str-video__participant-listing-item__icon', `str-video__participant-listing-item__icon-${isAudioOn ? 'mic' : 'mic-off'}`) }), _jsx(MediaIndicator, { title: isVideoOn ? t('Camera on') : t('Camera off'), className: clsx('str-video__participant-listing-item__icon', `str-video__participant-listing-item__icon-${isVideoOn ? 'camera' : 'camera-off'}`) }), isPinned && (_jsx(MediaIndicator, { title: t('Pinned'), className: clsx('str-video__participant-listing-item__icon', 'str-video__participant-listing-item__icon-pinned') })), _jsx(MenuToggle, Object.assign({ placement: "bottom-end", ToggleButton: ToggleButton }, { children: _jsx(ParticipantActionsContextMenu, { participant: participant }) }))] }))] })));
16
- };
17
- const MediaIndicator = (props) => (_jsx(WithTooltip, Object.assign({}, props)));
18
- // todo: implement display device flag
19
- const DefaultDisplayName = ({ participant }) => {
20
- const connectedUser = useConnectedUser();
21
- const { t } = useI18n();
22
- const meFlag = participant.userId === (connectedUser === null || connectedUser === void 0 ? void 0 : connectedUser.id) ? t('Me') : '';
23
- const nameOrId = participant.name || participant.userId || t('Unknown');
24
- let displayName;
25
- if (!participant.name) {
26
- displayName = meFlag || nameOrId || t('Unknown');
27
- }
28
- else if (meFlag) {
29
- displayName = `${nameOrId} (${meFlag})`;
30
- }
31
- else {
32
- displayName = nameOrId;
33
- }
34
- return (_jsx(WithTooltip, Object.assign({ className: "str-video__participant-listing-item__display-name", title: displayName }, { children: displayName })));
35
- };
36
- const ToggleButton = forwardRef((props, ref) => {
37
- return _jsx(IconButton, { enabled: props.menuShown, icon: "ellipsis", ref: ref });
38
- });
39
- export const ParticipantActionsContextMenu = ({ participant, participantViewElement, videoElement, }) => {
40
- const [fullscreenModeOn, setFullscreenModeOn] = useState(!!document.fullscreenElement);
41
- const [pictureInPictureElement, setPictureInPictureElement] = useState(document.pictureInPictureElement);
42
- const call = useCall();
43
- const { t } = useI18n();
44
- const { pin, publishedTracks, sessionId, userId } = participant;
45
- const hasAudio = publishedTracks.includes(SfuModels.TrackType.AUDIO);
46
- const hasVideo = publishedTracks.includes(SfuModels.TrackType.VIDEO);
47
- const hasScreenShare = publishedTracks.includes(SfuModels.TrackType.SCREEN_SHARE);
48
- const hasScreenShareAudio = publishedTracks.includes(SfuModels.TrackType.SCREEN_SHARE_AUDIO);
49
- const blockUser = () => call === null || call === void 0 ? void 0 : call.blockUser(userId);
50
- const muteAudio = () => call === null || call === void 0 ? void 0 : call.muteUser(userId, 'audio');
51
- const muteVideo = () => call === null || call === void 0 ? void 0 : call.muteUser(userId, 'video');
52
- const muteScreenShare = () => call === null || call === void 0 ? void 0 : call.muteUser(userId, 'screenshare');
53
- const muteScreenShareAudio = () => call === null || call === void 0 ? void 0 : call.muteUser(userId, 'screenshare_audio');
54
- const grantPermission = (permission) => () => {
55
- call === null || call === void 0 ? void 0 : call.updateUserPermissions({
56
- user_id: userId,
57
- grant_permissions: [permission],
58
- });
59
- };
60
- const revokePermission = (permission) => () => {
61
- call === null || call === void 0 ? void 0 : call.updateUserPermissions({
62
- user_id: userId,
63
- revoke_permissions: [permission],
64
- });
65
- };
66
- const toggleParticipantPinnedAt = () => {
67
- if (pin) {
68
- call === null || call === void 0 ? void 0 : call.unpin(sessionId);
69
- }
70
- else {
71
- call === null || call === void 0 ? void 0 : call.pin(sessionId);
72
- }
73
- };
74
- const pinForEveryone = () => {
75
- call === null || call === void 0 ? void 0 : call.pinForEveryone({
76
- user_id: userId,
77
- session_id: sessionId,
78
- }).catch((err) => {
79
- console.error(`Failed to pin participant ${userId}`, err);
80
- });
81
- };
82
- const unpinForEveryone = () => {
83
- call === null || call === void 0 ? void 0 : call.unpinForEveryone({
84
- user_id: userId,
85
- session_id: sessionId,
86
- }).catch((err) => {
87
- console.error(`Failed to unpin participant ${userId}`, err);
88
- });
89
- };
90
- const toggleFullscreenMode = () => {
91
- if (!fullscreenModeOn) {
92
- return participantViewElement === null || participantViewElement === void 0 ? void 0 : participantViewElement.requestFullscreen().then(() => setFullscreenModeOn(true)).catch(console.error);
93
- }
94
- document
95
- .exitFullscreen()
96
- .catch(console.error)
97
- .finally(() => setFullscreenModeOn(false));
98
- };
99
- useEffect(() => {
100
- if (!videoElement)
101
- return;
102
- const handlePictureInPicture = () => {
103
- setPictureInPictureElement(document.pictureInPictureElement);
104
- };
105
- videoElement.addEventListener('enterpictureinpicture', handlePictureInPicture);
106
- videoElement.addEventListener('leavepictureinpicture', handlePictureInPicture);
107
- return () => {
108
- videoElement.removeEventListener('enterpictureinpicture', handlePictureInPicture);
109
- videoElement.removeEventListener('leavepictureinpicture', handlePictureInPicture);
110
- };
111
- }, [videoElement]);
112
- const togglePictureInPicture = () => {
113
- if (videoElement && pictureInPictureElement !== videoElement) {
114
- return videoElement
115
- .requestPictureInPicture()
116
- .catch(console.error);
117
- }
118
- document.exitPictureInPicture().catch(console.error);
119
- };
120
- return (_jsxs(GenericMenu, { children: [_jsxs(GenericMenuButtonItem, Object.assign({ onClick: toggleParticipantPinnedAt, disabled: pin && !pin.isLocalPin }, { children: [_jsx(Icon, { icon: "pin" }), pin ? t('Unpin') : t('Pin')] })), _jsxs(Restricted, Object.assign({ requiredGrants: [OwnCapability.PIN_FOR_EVERYONE] }, { children: [_jsxs(GenericMenuButtonItem, Object.assign({ onClick: pinForEveryone, disabled: pin && !pin.isLocalPin }, { children: [_jsx(Icon, { icon: "pin" }), t('Pin for everyone')] })), _jsxs(GenericMenuButtonItem, Object.assign({ onClick: unpinForEveryone, disabled: !pin || pin.isLocalPin }, { children: [_jsx(Icon, { icon: "pin" }), t('Unpin for everyone')] }))] })), _jsx(Restricted, Object.assign({ requiredGrants: [OwnCapability.BLOCK_USERS] }, { children: _jsxs(GenericMenuButtonItem, Object.assign({ onClick: blockUser }, { children: [_jsx(Icon, { icon: "not-allowed" }), t('Block')] })) })), _jsxs(Restricted, Object.assign({ requiredGrants: [OwnCapability.MUTE_USERS] }, { children: [_jsxs(GenericMenuButtonItem, Object.assign({ disabled: !hasVideo, onClick: muteVideo }, { children: [_jsx(Icon, { icon: "camera-off-outline" }), t('Turn off video')] })), _jsxs(GenericMenuButtonItem, Object.assign({ disabled: !hasScreenShare, onClick: muteScreenShare }, { children: [_jsx(Icon, { icon: "screen-share-off" }), t('Turn off screen share')] })), _jsxs(GenericMenuButtonItem, Object.assign({ disabled: !hasAudio, onClick: muteAudio }, { children: [_jsx(Icon, { icon: "no-audio" }), t('Mute audio')] })), _jsxs(GenericMenuButtonItem, Object.assign({ disabled: !hasScreenShareAudio, onClick: muteScreenShareAudio }, { children: [_jsx(Icon, { icon: "no-audio" }), t('Mute screen share audio')] }))] })), participantViewElement && (_jsx(GenericMenuButtonItem, Object.assign({ onClick: toggleFullscreenMode }, { children: t('{{ direction }} fullscreen', {
121
- direction: fullscreenModeOn ? t('Leave') : t('Enter'),
122
- }) }))), videoElement && document.pictureInPictureEnabled && (_jsx(GenericMenuButtonItem, Object.assign({ onClick: togglePictureInPicture }, { children: t('{{ direction }} picture-in-picture', {
123
- direction: pictureInPictureElement === videoElement
124
- ? t('Leave')
125
- : t('Enter'),
126
- }) }))), _jsxs(Restricted, Object.assign({ requiredGrants: [OwnCapability.UPDATE_CALL_PERMISSIONS] }, { children: [_jsx(GenericMenuButtonItem, Object.assign({ onClick: grantPermission(OwnCapability.SEND_AUDIO) }, { children: t('Allow audio') })), _jsx(GenericMenuButtonItem, Object.assign({ onClick: grantPermission(OwnCapability.SEND_VIDEO) }, { children: t('Allow video') })), _jsx(GenericMenuButtonItem, Object.assign({ onClick: grantPermission(OwnCapability.SCREENSHARE) }, { children: t('Allow screen sharing') })), _jsx(GenericMenuButtonItem, Object.assign({ onClick: revokePermission(OwnCapability.SEND_AUDIO) }, { children: t('Disable audio') })), _jsx(GenericMenuButtonItem, Object.assign({ onClick: revokePermission(OwnCapability.SEND_VIDEO) }, { children: t('Disable video') })), _jsx(GenericMenuButtonItem, Object.assign({ onClick: revokePermission(OwnCapability.SCREENSHARE) }, { children: t('Disable screen sharing') }))] }))] }));
127
- };
128
- //# sourceMappingURL=CallParticipantListingItem.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CallParticipantListingItem.js","sourceRoot":"","sources":["../../../../src/components/CallParticipantsList/CallParticipantListingItem.tsx"],"names":[],"mappings":"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"}
@@ -1,83 +0,0 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
12
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
- import { forwardRef, useCallback, useState, } from 'react';
14
- import { Restricted, useCall, useCallStateHooks, } from '@stream-io/video-react-bindings';
15
- import { name, OwnCapability, } from '@stream-io/video-client';
16
- import { clsx } from 'clsx';
17
- import { BlockedUserListing } from './BlockedUserListing';
18
- import { CopyToClipboardButtonWithPopup, IconButton, TextButton, } from '../Button';
19
- import { CallParticipantListHeader } from './CallParticipantListHeader';
20
- import { CallParticipantListing } from './CallParticipantListing';
21
- import { EmptyParticipantSearchList } from './EmptyParticipantSearchList';
22
- import { LoadingIndicator } from '../LoadingIndicator';
23
- import { SearchInput, SearchResults } from '../Search';
24
- import { useSearch } from '../Search/hooks';
25
- import { GenericMenu, GenericMenuButtonItem, MenuToggle, } from '../Menu';
26
- const UserListTypes = {
27
- active: 'Active users',
28
- blocked: 'Blocked users',
29
- };
30
- const DEFAULT_DEBOUNCE_SEARCH_INTERVAL = 200;
31
- export const CallParticipantsList = ({ onClose, activeUsersSearchFn, blockedUsersSearchFn, debounceSearchInterval, }) => {
32
- const [searchQuery, setSearchQuery] = useState('');
33
- const [userListType, setUserListType] = useState('active');
34
- const exitSearch = useCallback(() => setSearchQuery(''), []);
35
- return (_jsxs("div", Object.assign({ className: "str-video__participant-list" }, { children: [_jsx(CallParticipantListHeader, { onClose: onClose }), _jsx(SearchInput, { value: searchQuery, onChange: ({ currentTarget }) => setSearchQuery(currentTarget.value), exitSearch: exitSearch, isActive: !!searchQuery }), _jsx(CallParticipantListContentHeader, { userListType: userListType, setUserListType: setUserListType }), _jsxs("div", Object.assign({ className: "str-video__participant-list__content" }, { children: [userListType === 'active' && (_jsx(ActiveUsersSearchResults, { searchQuery: searchQuery, activeUsersSearchFn: activeUsersSearchFn, debounceSearchInterval: debounceSearchInterval })), userListType === 'blocked' && (_jsx(BlockedUsersSearchResults, { searchQuery: searchQuery, blockedUsersSearchFn: blockedUsersSearchFn, debounceSearchInterval: debounceSearchInterval }))] })), _jsx("div", Object.assign({ className: "str-video__participant-list__footer" }, { children: _jsx(CopyToClipboardButtonWithPopup, { Button: InviteLinkButton, copyValue: typeof window !== 'undefined' ? window.location.href : '' }) }))] })));
36
- };
37
- const CallParticipantListContentHeader = ({ userListType, setUserListType, }) => {
38
- const call = useCall();
39
- const muteAll = () => {
40
- call === null || call === void 0 ? void 0 : call.muteAllUsers('audio');
41
- };
42
- return (_jsxs("div", Object.assign({ className: "str-video__participant-list__content-header" }, { children: [_jsxs("div", Object.assign({ className: "str-video__participant-list__content-header-title" }, { children: [_jsx("span", { children: UserListTypes[userListType] }), userListType === 'active' && (_jsx(Restricted, Object.assign({ requiredGrants: [OwnCapability.MUTE_USERS], hasPermissionsOnly: true }, { children: _jsx(TextButton, Object.assign({ onClick: muteAll }, { children: "Mute all" })) })))] })), _jsx(MenuToggle, Object.assign({ placement: "bottom-end", ToggleButton: ToggleButton }, { children: _jsx(GenericMenu, { children: Object.keys(UserListTypes).map((lt) => (_jsx(GenericMenuButtonItem, Object.assign({ "aria-selected": lt === userListType, onClick: () => setUserListType(lt) }, { children: UserListTypes[lt] }), lt))) }) }))] })));
43
- };
44
- const ActiveUsersSearchResults = ({ searchQuery, activeUsersSearchFn: activeUsersSearchFnFromProps, debounceSearchInterval = DEFAULT_DEBOUNCE_SEARCH_INTERVAL, }) => {
45
- const { useParticipants } = useCallStateHooks();
46
- const participants = useParticipants({ sortBy: name });
47
- const activeUsersSearchFn = useCallback((queryString) => {
48
- const queryRegExp = new RegExp(queryString, 'i');
49
- return Promise.resolve(participants.filter((participant) => {
50
- return participant.name.match(queryRegExp);
51
- }));
52
- }, [participants]);
53
- const { searchQueryInProgress, searchResults } = useSearch({
54
- searchFn: activeUsersSearchFnFromProps !== null && activeUsersSearchFnFromProps !== void 0 ? activeUsersSearchFnFromProps : activeUsersSearchFn,
55
- debounceInterval: debounceSearchInterval,
56
- searchQuery,
57
- });
58
- return (_jsx(SearchResults, { EmptySearchResultComponent: EmptyParticipantSearchList, LoadingIndicator: LoadingIndicator, searchQueryInProgress: searchQueryInProgress, searchResults: searchQuery ? searchResults : participants, SearchResultList: CallParticipantListing }));
59
- };
60
- const BlockedUsersSearchResults = ({ blockedUsersSearchFn: blockedUsersSearchFnFromProps, debounceSearchInterval = DEFAULT_DEBOUNCE_SEARCH_INTERVAL, searchQuery, }) => {
61
- const { useCallBlockedUserIds } = useCallStateHooks();
62
- const blockedUsers = useCallBlockedUserIds();
63
- const blockedUsersSearchFn = useCallback((queryString) => {
64
- const queryRegExp = new RegExp(queryString, 'i');
65
- return Promise.resolve(blockedUsers.filter((blockedUser) => {
66
- return blockedUser.match(queryRegExp);
67
- }));
68
- }, [blockedUsers]);
69
- const { searchQueryInProgress, searchResults } = useSearch({
70
- searchFn: blockedUsersSearchFnFromProps !== null && blockedUsersSearchFnFromProps !== void 0 ? blockedUsersSearchFnFromProps : blockedUsersSearchFn,
71
- debounceInterval: debounceSearchInterval,
72
- searchQuery,
73
- });
74
- return (_jsx(SearchResults, { EmptySearchResultComponent: EmptyParticipantSearchList, LoadingIndicator: LoadingIndicator, searchQueryInProgress: searchQueryInProgress, searchResults: searchQuery ? searchResults : blockedUsers, SearchResultList: BlockedUserListing }));
75
- };
76
- const ToggleButton = forwardRef((props, ref) => {
77
- return _jsx(IconButton, { enabled: props.menuShown, icon: "filter", ref: ref });
78
- });
79
- const InviteLinkButton = forwardRef((_a, ref) => {
80
- var { className } = _a, props = __rest(_a, ["className"]);
81
- return (_jsxs("button", Object.assign({}, props, { className: clsx('str-video__invite-link-button', className), ref: ref }, { children: [_jsx("div", { className: "str-video__invite-participant-icon" }), _jsx("div", Object.assign({ className: "str-video__invite-link-button__text" }, { children: "Invite Link" }))] })));
82
- });
83
- //# sourceMappingURL=CallParticipantsList.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CallParticipantsList.js","sourceRoot":"","sources":["../../../../src/components/CallParticipantsList/CallParticipantsList.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useI18n } from '@stream-io/video-react-bindings';
3
- export const EmptyParticipantSearchList = () => {
4
- const { t } = useI18n();
5
- return (_jsx("div", Object.assign({ className: "str-video__participant-list--empty" }, { children: t('No participants found') })));
6
- };
7
- //# sourceMappingURL=EmptyParticipantSearchList.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmptyParticipantSearchList.js","sourceRoot":"","sources":["../../../../src/components/CallParticipantsList/EmptyParticipantSearchList.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAE1D,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,EAAE;IAC7C,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC;IACxB,OAAO,CACL,4BAAK,SAAS,EAAC,oCAAoC,gBAChD,CAAC,CAAC,uBAAuB,CAAC,IACvB,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -1,4 +0,0 @@
1
- export * from './CallParticipantsList';
2
- export * from './CallParticipantListing';
3
- export * from './CallParticipantListingItem';
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/CallParticipantsList/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC"}
@@ -1,21 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import clsx from 'clsx';
3
- import { useEffect, useState } from 'react';
4
- import { useCall, useCallStateHooks } from '@stream-io/video-react-bindings';
5
- export const CallPreview = (props) => {
6
- const { className, style } = props;
7
- const call = useCall();
8
- const { useCallThumbnail } = useCallStateHooks();
9
- const thumbnail = useCallThumbnail();
10
- const [imageRef, setImageRef] = useState(null);
11
- useEffect(() => {
12
- if (!imageRef || !call)
13
- return;
14
- const cleanup = call.bindCallThumbnailElement(imageRef);
15
- return () => cleanup();
16
- }, [imageRef, call]);
17
- if (!thumbnail)
18
- return null;
19
- return (_jsx("img", { className: clsx('str-video__call-preview', className), style: style, alt: "Call Preview Thumbnail", ref: setImageRef }));
20
- };
21
- //# sourceMappingURL=CallPreview.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CallPreview.js","sourceRoot":"","sources":["../../../../src/components/CallPreview/CallPreview.tsx"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAiB,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAc7E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAuB,EAAE,EAAE;IACrD,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IACnC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,EAAE,gBAAgB,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACjD,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;IAErC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAA0B,IAAI,CAAC,CAAC;IACxE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI;YAAE,OAAO;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QACxD,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;IAErB,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,OAAO,CACL,cACE,SAAS,EAAE,IAAI,CAAC,yBAAyB,EAAE,SAAS,CAAC,EACrD,KAAK,EAAE,KAAK,EACZ,GAAG,EAAC,wBAAwB,EAC5B,GAAG,EAAE,WAAW,GAChB,CACH,CAAC;AACJ,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './CallPreview';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/CallPreview/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -1,9 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { CallRecordingListHeader as DefaultCallRecordingListHeader, } from './CallRecordingListHeader';
3
- import { CallRecordingListItem as DefaultCallRecordingListItem, } from './CallRecordingListItem';
4
- import { EmptyCallRecordingListing as DefaultEmptyCallRecordingList } from './EmptyCallRecordingListing';
5
- import { LoadingCallRecordingListing as DefaultLoadingCallRecordingList, } from './LoadingCallRecordingListing';
6
- export const CallRecordingList = ({ callRecordings, CallRecordingListHeader = DefaultCallRecordingListHeader, CallRecordingListItem = DefaultCallRecordingListItem, EmptyCallRecordingList = DefaultEmptyCallRecordingList, loading, LoadingCallRecordingList = DefaultLoadingCallRecordingList, onRefresh, }) => {
7
- return (_jsxs("div", Object.assign({ className: "str-video__call-recording-list" }, { children: [_jsx(CallRecordingListHeader, { callRecordings: callRecordings, onRefresh: onRefresh }), _jsx("div", Object.assign({ className: "str-video__call-recording-list__listing" }, { children: loading ? (_jsx(LoadingCallRecordingList, { callRecordings: callRecordings })) : callRecordings.length ? (callRecordings.map((recording) => (_jsx(CallRecordingListItem, { recording: recording }, recording.filename)))) : (_jsx(EmptyCallRecordingList, {})) }))] })));
8
- };
9
- //# sourceMappingURL=CallRecordingList.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CallRecordingList.js","sourceRoot":"","sources":["../../../../src/components/CallRecordingList/CallRecordingList.tsx"],"names":[],"mappings":";AAGA,OAAO,EACL,uBAAuB,IAAI,8BAA8B,GAE1D,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,qBAAqB,IAAI,4BAA4B,GAEtD,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,yBAAyB,IAAI,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AACzG,OAAO,EACL,2BAA2B,IAAI,+BAA+B,GAE/D,MAAM,+BAA+B,CAAC;AAmBvC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAChC,cAAc,EACd,uBAAuB,GAAG,8BAA8B,EACxD,qBAAqB,GAAG,4BAA4B,EACpD,sBAAsB,GAAG,6BAA6B,EACtD,OAAO,EACP,wBAAwB,GAAG,+BAA+B,EAC1D,SAAS,GACc,EAAE,EAAE;IAC3B,OAAO,CACL,6BAAK,SAAS,EAAC,gCAAgC,iBAC7C,KAAC,uBAAuB,IACtB,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,SAAS,GACpB,EACF,4BAAK,SAAS,EAAC,yCAAyC,gBACrD,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,wBAAwB,IAAC,cAAc,EAAE,cAAc,GAAI,CAC7D,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAC1B,cAAc,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAChC,KAAC,qBAAqB,IACpB,SAAS,EAAE,SAAS,IACf,SAAS,CAAC,QAAQ,CACvB,CACH,CAAC,CACH,CAAC,CAAC,CAAC,CACF,KAAC,sBAAsB,KAAG,CAC3B,IACG,KACF,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -1,6 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { IconButton } from '../Button';
3
- export const CallRecordingListHeader = ({ callRecordings, onRefresh, }) => {
4
- return (_jsxs("div", Object.assign({ className: "str-video__call-recording-list__header" }, { children: [_jsxs("div", Object.assign({ className: "str-video__call-recording-list__title" }, { children: [_jsx("span", { children: "Call Recordings" }), callRecordings.length ? _jsxs("span", { children: ["(", callRecordings.length, ")"] }) : null] })), _jsx(IconButton, { icon: "refresh", title: "Refresh", onClick: onRefresh })] })));
5
- };
6
- //# sourceMappingURL=CallRecordingListHeader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CallRecordingListHeader.js","sourceRoot":"","sources":["../../../../src/components/CallRecordingList/CallRecordingListHeader.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AASvC,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EACtC,cAAc,EACd,SAAS,GACoB,EAAE,EAAE;IACjC,OAAO,CACL,6BAAK,SAAS,EAAC,wCAAwC,iBACrD,6BAAK,SAAS,EAAC,uCAAuC,iBACpD,6CAA4B,EAC3B,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,gCAAQ,cAAc,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC,IAAI,KAClE,EACN,KAAC,UAAU,IAAC,IAAI,EAAC,SAAS,EAAC,KAAK,EAAC,SAAS,EAAC,OAAO,EAAE,SAAS,GAAI,KAC7D,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -1,11 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import clsx from 'clsx';
3
- import { forwardRef } from 'react';
4
- import { CopyToClipboardButtonWithPopup } from '../Button';
5
- export const CallRecordingListItem = ({ recording, }) => {
6
- return (_jsxs("div", Object.assign({ className: "str-video__call-recording-list-item" }, { children: [_jsx("div", Object.assign({ className: "str-video__call-recording-list-item__info" }, { children: _jsx("div", Object.assign({ className: "str-video__call-recording-list-item__created" }, { children: new Date(recording.end_time).toLocaleString() })) })), _jsxs("div", Object.assign({ className: "str-video__call-recording-list-item__actions" }, { children: [_jsx("a", Object.assign({ className: clsx('str-video__call-recording-list-item__action-button', 'str-video__call-recording-list-item__action-button--download'), role: "button", href: recording.url, download: recording.filename, title: "Download the recording" }, { children: _jsx("span", { className: clsx('str-video__call-recording-list-item__action-button-icon', 'str-video__download-button--icon') }) })), _jsx(CopyToClipboardButtonWithPopup, { Button: CopyUrlButton, copyValue: recording.url })] }))] })));
7
- };
8
- const CopyUrlButton = forwardRef((props, ref) => {
9
- return (_jsx("button", Object.assign({}, props, { className: clsx('str-video__call-recording-list-item__action-button', 'str-video__call-recording-list-item__action-button--copy-link'), ref: ref, title: "Copy the recording link" }, { children: _jsx("span", { className: clsx('str-video__call-recording-list-item__action-button-icon', 'str-video__copy-button--icon') }) })));
10
- });
11
- //# sourceMappingURL=CallRecordingListItem.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CallRecordingListItem.js","sourceRoot":"","sources":["../../../../src/components/CallRecordingList/CallRecordingListItem.tsx"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAgC,UAAU,EAAE,MAAM,OAAO,CAAC;AAEjE,OAAO,EAAE,8BAA8B,EAAE,MAAM,WAAW,CAAC;AAM3D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,EACpC,SAAS,GACkB,EAAE,EAAE;IAC/B,OAAO,CACL,6BAAK,SAAS,EAAC,qCAAqC,iBAClD,4BAAK,SAAS,EAAC,2CAA2C,gBACxD,4BAAK,SAAS,EAAC,8CAA8C,gBAC1D,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,cAAc,EAAE,IAC1C,IACF,EACN,6BAAK,SAAS,EAAC,8CAA8C,iBAC3D,0BACE,SAAS,EAAE,IAAI,CACb,oDAAoD,EACpD,8DAA8D,CAC/D,EACD,IAAI,EAAC,QAAQ,EACb,IAAI,EAAE,SAAS,CAAC,GAAG,EACnB,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAC5B,KAAK,EAAC,wBAAwB,gBAE9B,eACE,SAAS,EAAE,IAAI,CACb,yDAAyD,EACzD,kCAAkC,CACnC,GACD,IACA,EACJ,KAAC,8BAA8B,IAC7B,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,SAAS,CAAC,GAAG,GACxB,KACE,KACF,CACP,CAAC;AACJ,CAAC,CAAC;AACF,MAAM,aAAa,GAAG,UAAU,CAC9B,CAAC,KAA+B,EAAE,GAAoC,EAAE,EAAE;IACxE,OAAO,CACL,iCACM,KAAK,IACT,SAAS,EAAE,IAAI,CACb,oDAAoD,EACpD,+DAA+D,CAChE,EACD,GAAG,EAAE,GAAG,EACR,KAAK,EAAC,yBAAyB,gBAE/B,eACE,SAAS,EAAE,IAAI,CACb,yDAAyD,EACzD,8BAA8B,CAC/B,GACD,IACK,CACV,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -1,5 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- export const EmptyCallRecordingListing = () => {
3
- return (_jsxs("div", Object.assign({ className: "str-video__call-recording-list__listing str-video__call-recording-list__listing--empty" }, { children: [_jsx("div", { className: "str-video__call-recording-list__listing--icon-empty" }), _jsx("p", Object.assign({ className: "str-video__call-recording-list__listing--text-empty" }, { children: "No recordings available" }))] })));
4
- };
5
- //# sourceMappingURL=EmptyCallRecordingListing.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmptyCallRecordingListing.js","sourceRoot":"","sources":["../../../../src/components/CallRecordingList/EmptyCallRecordingListing.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,EAAE;IAC5C,OAAO,CACL,6BAAK,SAAS,EAAC,wFAAwF,iBACrG,cAAK,SAAS,EAAC,qDAAqD,GAAG,EACvE,0BAAG,SAAS,EAAC,qDAAqD,6CAG9D,KACA,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -1,7 +0,0 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { CallRecordingListItem } from './CallRecordingListItem';
3
- import { LoadingIndicator } from '../LoadingIndicator';
4
- export const LoadingCallRecordingListing = ({ callRecordings, }) => {
5
- return (_jsxs(_Fragment, { children: [callRecordings.map((recording) => (_jsx(CallRecordingListItem, { recording: recording }, recording.filename))), _jsx(LoadingIndicator, { text: "Recording getting ready" })] }));
6
- };
7
- //# sourceMappingURL=LoadingCallRecordingListing.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LoadingCallRecordingListing.js","sourceRoot":"","sources":["../../../../src/components/CallRecordingList/LoadingCallRecordingListing.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAOvD,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,EAC1C,cAAc,GACgB,EAAE,EAAE;IAClC,OAAO,CACL,8BACG,cAAc,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CACjC,KAAC,qBAAqB,IAAC,SAAS,EAAE,SAAS,IAAO,SAAS,CAAC,QAAQ,CAAI,CACzE,CAAC,EACF,KAAC,gBAAgB,IAAC,IAAI,EAAC,yBAAyB,GAAG,IAClD,CACJ,CAAC;AACJ,CAAC,CAAC"}
@@ -1,6 +0,0 @@
1
- export * from './CallRecordingList';
2
- export * from './CallRecordingListHeader';
3
- export * from './CallRecordingListItem';
4
- export * from './EmptyCallRecordingListing';
5
- export * from './LoadingCallRecordingListing';
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/CallRecordingList/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC"}
@@ -1,70 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useEffect, useRef, useState } from 'react';
3
- import { useCallStateHooks } from '@stream-io/video-react-bindings';
4
- import { CallStatsLatencyChart } from './CallStatsLatencyChart';
5
- export const CallStats = () => {
6
- const [latencyBuffer, setLatencyBuffer] = useState(() => {
7
- const now = Date.now();
8
- return Array.from({ length: 20 }, (_, i) => ({ x: now + i, y: 0 }));
9
- });
10
- const [publishBitrate, setPublishBitrate] = useState('-');
11
- const [subscribeBitrate, setSubscribeBitrate] = useState('-');
12
- const previousStats = useRef();
13
- const { useCallStatsReport } = useCallStateHooks();
14
- const callStatsReport = useCallStatsReport();
15
- useEffect(() => {
16
- if (!callStatsReport)
17
- return;
18
- if (!previousStats.current) {
19
- previousStats.current = callStatsReport;
20
- return;
21
- }
22
- const previousCallStatsReport = previousStats.current;
23
- setPublishBitrate(() => {
24
- return calculatePublishBitrate(previousCallStatsReport, callStatsReport);
25
- });
26
- setSubscribeBitrate(() => {
27
- return calculateSubscribeBitrate(previousCallStatsReport, callStatsReport);
28
- });
29
- setLatencyBuffer((latencyBuf) => {
30
- const newLatencyBuffer = latencyBuf.slice(-19);
31
- newLatencyBuffer.push({
32
- x: callStatsReport.timestamp,
33
- y: callStatsReport.publisherStats.averageRoundTripTimeInMs,
34
- });
35
- return newLatencyBuffer;
36
- });
37
- previousStats.current = callStatsReport;
38
- }, [callStatsReport]);
39
- return (_jsx("div", Object.assign({ className: "str-video__call-stats" }, { children: callStatsReport && (_jsxs(_Fragment, { children: [_jsx("h3", { children: "Call Latency" }), _jsx(CallStatsLatencyChart, { values: latencyBuffer }), _jsx("h3", { children: "Call performance" }), _jsxs("div", Object.assign({ className: "str-video__call-stats__card-container" }, { children: [_jsx(StatCard, { label: "Region", value: callStatsReport.datacenter }), _jsx(StatCard, { label: "Latency", value: `${callStatsReport.publisherStats.averageRoundTripTimeInMs} ms.` }), _jsx(StatCard, { label: "Receive jitter", value: `${callStatsReport.subscriberStats.averageJitterInMs} ms.` }), _jsx(StatCard, { label: "Publish jitter", value: `${callStatsReport.publisherStats.averageJitterInMs} ms.` }), _jsx(StatCard, { label: "Publish resolution", value: toFrameSize(callStatsReport.publisherStats) }), _jsx(StatCard, { label: "Publish quality drop reason", value: callStatsReport.publisherStats.qualityLimitationReasons }), _jsx(StatCard, { label: "Receiving resolution", value: toFrameSize(callStatsReport.subscriberStats) }), _jsx(StatCard, { label: "Receive quality drop reason", value: callStatsReport.subscriberStats.qualityLimitationReasons }), _jsx(StatCard, { label: "Publish bitrate", value: publishBitrate }), _jsx(StatCard, { label: "Receiving bitrate", value: subscribeBitrate })] }))] })) })));
40
- };
41
- export const StatCard = (props) => {
42
- const { label, value } = props;
43
- return (_jsxs("div", Object.assign({ className: "str-video__call-stats__card" }, { children: [_jsx("div", Object.assign({ className: "str-video__call-stats__card_label" }, { children: label })), _jsx("div", Object.assign({ className: "str-video__call-stats__card_value" }, { children: value }))] })));
44
- };
45
- const toFrameSize = (stats) => {
46
- const { highestFrameWidth: w, highestFrameHeight: h, highestFramesPerSecond: fps, } = stats;
47
- let size = `-`;
48
- if (w && h) {
49
- size = `${w}x${h}`;
50
- if (fps) {
51
- size += `@${fps}fps.`;
52
- }
53
- }
54
- return size;
55
- };
56
- const calculatePublishBitrate = (previousCallStatsReport, callStatsReport) => {
57
- const { publisherStats: { totalBytesSent: previousTotalBytesSent, timestamp: previousTimestamp, }, } = previousCallStatsReport;
58
- const { publisherStats: { totalBytesSent, timestamp }, } = callStatsReport;
59
- const bytesSent = totalBytesSent - previousTotalBytesSent;
60
- const timeElapsed = timestamp - previousTimestamp;
61
- return `${((bytesSent * 8) / timeElapsed).toFixed(2)} kbps`;
62
- };
63
- const calculateSubscribeBitrate = (previousCallStatsReport, callStatsReport) => {
64
- const { subscriberStats: { totalBytesReceived: previousTotalBytesReceived, timestamp: previousTimestamp, }, } = previousCallStatsReport;
65
- const { subscriberStats: { totalBytesReceived, timestamp }, } = callStatsReport;
66
- const bytesReceived = totalBytesReceived - previousTotalBytesReceived;
67
- const timeElapsed = timestamp - previousTimestamp;
68
- return `${((bytesReceived * 8) / timeElapsed).toFixed(2)} kbps`;
69
- };
70
- //# sourceMappingURL=CallStats.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CallStats.js","sourceRoot":"","sources":["../../../../src/components/CallStats/CallStats.tsx"],"names":[],"mappings":"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"}