@stream-io/video-react-sdk 0.3.34 → 0.3.35

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,13 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ### [0.3.35](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-sdk-0.3.34...@stream-io/video-react-sdk-0.3.35) (2023-10-02)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * requestPermission should be no-op when permission is already granted ([#1122](https://github.com/GetStream/stream-video-js/issues/1122)) ([f3d9e34](https://github.com/GetStream/stream-video-js/commit/f3d9e349825a6052850f7a78c3d6af9f517d136e))
11
+
5
12
  ### [0.3.34](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-sdk-0.3.33...@stream-io/video-react-sdk-0.3.34) (2023-10-02)
6
13
 
7
14
  ### Dependency Updates
@@ -12,7 +12,6 @@ import { useCall, useHasPermissions } from '@stream-io/video-react-bindings';
12
12
  export const useRequestPermission = (permission) => {
13
13
  const call = useCall();
14
14
  const hasPermission = useHasPermissions(permission);
15
- const canRequestPermission = !!(call === null || call === void 0 ? void 0 : call.permissionsContext.canRequest(permission));
16
15
  const [isAwaitingPermission, setIsAwaitingPermission] = useState(false); // TODO: load with possibly pending state
17
16
  useEffect(() => {
18
17
  const reset = () => setIsAwaitingPermission(false);
@@ -20,10 +19,11 @@ export const useRequestPermission = (permission) => {
20
19
  reset();
21
20
  }, [hasPermission]);
22
21
  const requestPermission = useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
23
- if (isAwaitingPermission || !canRequestPermission)
24
- return false;
25
22
  if (hasPermission)
26
23
  return true;
24
+ const canRequestPermission = !!(call === null || call === void 0 ? void 0 : call.permissionsContext.canRequest(permission));
25
+ if (isAwaitingPermission || !canRequestPermission)
26
+ return false;
27
27
  setIsAwaitingPermission(true);
28
28
  try {
29
29
  yield (call === null || call === void 0 ? void 0 : call.requestPermissions({
@@ -35,17 +35,11 @@ export const useRequestPermission = (permission) => {
35
35
  throw new Error(`requestPermission failed: ${error}`);
36
36
  }
37
37
  return false;
38
- }), [
39
- call,
40
- canRequestPermission,
41
- hasPermission,
42
- isAwaitingPermission,
43
- permission,
44
- ]);
38
+ }), [call, hasPermission, isAwaitingPermission, permission]);
45
39
  return {
46
40
  requestPermission,
47
41
  hasPermission,
48
- canRequestPermission,
42
+ canRequestPermission: !!(call === null || call === void 0 ? void 0 : call.permissionsContext.canRequest(permission)),
49
43
  isAwaitingPermission,
50
44
  };
51
45
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useRequestPermission.js","sourceRoot":"","sources":["../../../src/hooks/useRequestPermission.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEzD,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAE7E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,UAAyB,EAAE,EAAE;IAChE,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,aAAa,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACpD,MAAM,oBAAoB,GACxB,CAAC,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA,CAAC;IACpD,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,yCAAyC;IAElH,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAEnD,IAAI,aAAa;YAAE,KAAK,EAAE,CAAC;IAC7B,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,MAAM,iBAAiB,GAAG,WAAW,CAAC,GAAS,EAAE;QAC/C,IAAI,oBAAoB,IAAI,CAAC,oBAAoB;YAAE,OAAO,KAAK,CAAC;QAChE,IAAI,aAAa;YAAE,OAAO,IAAI,CAAC;QAE/B,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAE9B,IAAI;YACF,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,CAAC;gBAC7B,WAAW,EAAE,CAAC,UAAU,CAAC;aAC1B,CAAC,CAAA,CAAC;SACJ;QAAC,OAAO,KAAK,EAAE;YACd,uBAAuB,CAAC,KAAK,CAAC,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;SACvD;QAED,OAAO,KAAK,CAAC;IACf,CAAC,CAAA,EAAE;QACD,IAAI;QACJ,oBAAoB;QACpB,aAAa;QACb,oBAAoB;QACpB,UAAU;KACX,CAAC,CAAC;IAEH,OAAO;QACL,iBAAiB;QACjB,aAAa;QACb,oBAAoB;QACpB,oBAAoB;KACrB,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"useRequestPermission.js","sourceRoot":"","sources":["../../../src/hooks/useRequestPermission.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEzD,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAE7E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,UAAyB,EAAE,EAAE;IAChE,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,aAAa,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACpD,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,yCAAyC;IAElH,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAEnD,IAAI,aAAa;YAAE,KAAK,EAAE,CAAC;IAC7B,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,MAAM,iBAAiB,GAAG,WAAW,CAAC,GAAS,EAAE;QAC/C,IAAI,aAAa;YAAE,OAAO,IAAI,CAAC;QAE/B,MAAM,oBAAoB,GACxB,CAAC,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA,CAAC;QACpD,IAAI,oBAAoB,IAAI,CAAC,oBAAoB;YAAE,OAAO,KAAK,CAAC;QAEhE,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAE9B,IAAI;YACF,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,CAAC;gBAC7B,WAAW,EAAE,CAAC,UAAU,CAAC;aAC1B,CAAC,CAAA,CAAC;SACJ;QAAC,OAAO,KAAK,EAAE;YACd,uBAAuB,CAAC,KAAK,CAAC,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;SACvD;QAED,OAAO,KAAK,CAAC;IACf,CAAC,CAAA,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,oBAAoB,EAAE,UAAU,CAAC,CAAC,CAAC;IAE5D,OAAO;QACL,iBAAiB;QACjB,aAAa;QACb,oBAAoB,EAAE,CAAC,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;QACvE,oBAAoB;KACrB,CAAC;AACJ,CAAC,CAAC"}
@@ -27,7 +27,7 @@ export const useToggleAudioMuteState = () => {
27
27
  return publishAudioStream();
28
28
  }
29
29
  if (!isAudioMutedReference.current)
30
- stopPublishingAudio();
30
+ yield stopPublishingAudio();
31
31
  }), [publishAudioStream, requestPermission, stopPublishingAudio]);
32
32
  return { toggleAudioMuteState, isAwaitingPermission };
33
33
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useToggleAudioMuteState.js","sourceRoot":"","sources":["../../../src/hooks/useToggleAudioMuteState.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,EAAE;IAC1C,MAAM,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,eAAe,EAAE,CAAC;IACtE,MAAM,EAAE,mBAAmB,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACpD,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAE/C,MAAM,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,GAAG,oBAAoB,CACtE,aAAa,CAAC,UAAU,CACzB,CAAC;IAEF,oDAAoD;IACpD,MAAM,qBAAqB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5C,qBAAqB,CAAC,OAAO,GAAG,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,eAAe,CAAC,QAAQ,CACzE,SAAS,CAAC,SAAS,CAAC,KAAK,CAC1B,CAAA,CAAC;IAEF,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAS,EAAE;QAClD,IAAI,qBAAqB,CAAC,OAAO,EAAE;YACjC,MAAM,UAAU,GAAG,MAAM,iBAAiB,EAAE,CAAC;YAC7C,IAAI,UAAU;gBAAE,OAAO,kBAAkB,EAAE,CAAC;SAC7C;QAED,IAAI,CAAC,qBAAqB,CAAC,OAAO;YAAE,mBAAmB,EAAE,CAAC;IAC5D,CAAC,CAAA,EAAE,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAEjE,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,CAAC;AACxD,CAAC,CAAC"}
1
+ {"version":3,"file":"useToggleAudioMuteState.js","sourceRoot":"","sources":["../../../src/hooks/useToggleAudioMuteState.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,EAAE;IAC1C,MAAM,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,eAAe,EAAE,CAAC;IACtE,MAAM,EAAE,mBAAmB,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACpD,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAE/C,MAAM,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,GAAG,oBAAoB,CACtE,aAAa,CAAC,UAAU,CACzB,CAAC;IAEF,oDAAoD;IACpD,MAAM,qBAAqB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5C,qBAAqB,CAAC,OAAO,GAAG,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,eAAe,CAAC,QAAQ,CACzE,SAAS,CAAC,SAAS,CAAC,KAAK,CAC1B,CAAA,CAAC;IAEF,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAS,EAAE;QAClD,IAAI,qBAAqB,CAAC,OAAO,EAAE;YACjC,MAAM,UAAU,GAAG,MAAM,iBAAiB,EAAE,CAAC;YAC7C,IAAI,UAAU;gBAAE,OAAO,kBAAkB,EAAE,CAAC;SAC7C;QAED,IAAI,CAAC,qBAAqB,CAAC,OAAO;YAAE,MAAM,mBAAmB,EAAE,CAAC;IAClE,CAAC,CAAA,EAAE,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAEjE,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,CAAC;AACxD,CAAC,CAAC"}
@@ -31,7 +31,7 @@ export const useToggleScreenShare = () => {
31
31
  return call === null || call === void 0 ? void 0 : call.publishScreenShareStream(stream);
32
32
  }
33
33
  }
34
- call === null || call === void 0 ? void 0 : call.stopPublish(SfuModels.TrackType.SCREEN_SHARE);
34
+ yield (call === null || call === void 0 ? void 0 : call.stopPublish(SfuModels.TrackType.SCREEN_SHARE));
35
35
  }), [call, requestPermission]);
36
36
  return { toggleScreenShare, isAwaitingPermission, isScreenSharing };
37
37
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useToggleScreenShare.js","sourceRoot":"","sources":["../../../src/hooks/useToggleScreenShare.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,SAAS,GACV,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACvC,MAAM,EAAE,mBAAmB,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACpD,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,wBAAwB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,GAAG,oBAAoB,CACtE,aAAa,CAAC,WAAW,CAC1B,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,eAAe,CAAC,QAAQ,CAClE,SAAS,CAAC,SAAS,CAAC,YAAY,CACjC,CAAA,CAAC;IAEF,wBAAwB,CAAC,OAAO,GAAG,eAAe,CAAC;IAEnD,MAAM,iBAAiB,GAAG,WAAW,CAAC,GAAS,EAAE;QAC/C,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE;YACrC,MAAM,UAAU,GAAG,MAAM,iBAAiB,EAAE,CAAC;YAC7C,IAAI,CAAC,UAAU;gBAAE,OAAO;YAExB,MAAM,MAAM,GAAG,MAAM,oBAAoB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;gBACtD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC;YAEH,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,wBAAwB,CAAC,MAAM,CAAC,CAAC;aAC/C;SACF;QAED,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IACtD,CAAC,CAAA,EAAE,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAE9B,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,eAAe,EAAE,CAAC;AACtE,CAAC,CAAC"}
1
+ {"version":3,"file":"useToggleScreenShare.js","sourceRoot":"","sources":["../../../src/hooks/useToggleScreenShare.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,SAAS,GACV,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACvC,MAAM,EAAE,mBAAmB,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACpD,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,wBAAwB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,GAAG,oBAAoB,CACtE,aAAa,CAAC,WAAW,CAC1B,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,eAAe,CAAC,QAAQ,CAClE,SAAS,CAAC,SAAS,CAAC,YAAY,CACjC,CAAA,CAAC;IAEF,wBAAwB,CAAC,OAAO,GAAG,eAAe,CAAC;IAEnD,MAAM,iBAAiB,GAAG,WAAW,CAAC,GAAS,EAAE;QAC/C,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE;YACrC,MAAM,UAAU,GAAG,MAAM,iBAAiB,EAAE,CAAC;YAC7C,IAAI,CAAC,UAAU;gBAAE,OAAO;YAExB,MAAM,MAAM,GAAG,MAAM,oBAAoB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;gBACtD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC;YAEH,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,wBAAwB,CAAC,MAAM,CAAC,CAAC;aAC/C;SACF;QAED,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA,CAAC;IAC5D,CAAC,CAAA,EAAE,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAE9B,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,eAAe,EAAE,CAAC;AACtE,CAAC,CAAC"}
@@ -27,7 +27,7 @@ export const useToggleVideoMuteState = () => {
27
27
  return publishVideoStream();
28
28
  }
29
29
  if (!isVideoMutedReference.current)
30
- stopPublishingVideo();
30
+ yield stopPublishingVideo();
31
31
  }), [publishVideoStream, requestPermission, stopPublishingVideo]);
32
32
  return { toggleVideoMuteState, isAwaitingPermission };
33
33
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useToggleVideoMuteState.js","sourceRoot":"","sources":["../../../src/hooks/useToggleVideoMuteState.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,EAAE;IAC1C,MAAM,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,eAAe,EAAE,CAAC;IACtE,MAAM,EAAE,mBAAmB,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACpD,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAE/C,MAAM,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,GAAG,oBAAoB,CACtE,aAAa,CAAC,UAAU,CACzB,CAAC;IAEF,oDAAoD;IACpD,MAAM,qBAAqB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5C,qBAAqB,CAAC,OAAO,GAAG,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,eAAe,CAAC,QAAQ,CACzE,SAAS,CAAC,SAAS,CAAC,KAAK,CAC1B,CAAA,CAAC;IAEF,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAS,EAAE;QAClD,IAAI,qBAAqB,CAAC,OAAO,EAAE;YACjC,MAAM,UAAU,GAAG,MAAM,iBAAiB,EAAE,CAAC;YAC7C,IAAI,UAAU;gBAAE,OAAO,kBAAkB,EAAE,CAAC;SAC7C;QAED,IAAI,CAAC,qBAAqB,CAAC,OAAO;YAAE,mBAAmB,EAAE,CAAC;IAC5D,CAAC,CAAA,EAAE,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAEjE,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,CAAC;AACxD,CAAC,CAAC"}
1
+ {"version":3,"file":"useToggleVideoMuteState.js","sourceRoot":"","sources":["../../../src/hooks/useToggleVideoMuteState.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,EAAE;IAC1C,MAAM,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,eAAe,EAAE,CAAC;IACtE,MAAM,EAAE,mBAAmB,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACpD,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAE/C,MAAM,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,GAAG,oBAAoB,CACtE,aAAa,CAAC,UAAU,CACzB,CAAC;IAEF,oDAAoD;IACpD,MAAM,qBAAqB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5C,qBAAqB,CAAC,OAAO,GAAG,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,eAAe,CAAC,QAAQ,CACzE,SAAS,CAAC,SAAS,CAAC,KAAK,CAC1B,CAAA,CAAC;IAEF,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAS,EAAE;QAClD,IAAI,qBAAqB,CAAC,OAAO,EAAE;YACjC,MAAM,UAAU,GAAG,MAAM,iBAAiB,EAAE,CAAC;YAC7C,IAAI,UAAU;gBAAE,OAAO,kBAAkB,EAAE,CAAC;SAC7C;QAED,IAAI,CAAC,qBAAqB,CAAC,OAAO;YAAE,MAAM,mBAAmB,EAAE,CAAC;IAClE,CAAC,CAAA,EAAE,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAEjE,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,CAAC;AACxD,CAAC,CAAC"}
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "0.3.34";
1
+ export declare const version = "0.3.35";
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const version = '0.3.34';
1
+ export const version = '0.3.35';
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stream-io/video-react-sdk",
3
- "version": "0.3.34",
3
+ "version": "0.3.35",
4
4
  "packageManager": "yarn@3.2.4",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -5,8 +5,6 @@ import { useCall, useHasPermissions } from '@stream-io/video-react-bindings';
5
5
  export const useRequestPermission = (permission: OwnCapability) => {
6
6
  const call = useCall();
7
7
  const hasPermission = useHasPermissions(permission);
8
- const canRequestPermission =
9
- !!call?.permissionsContext.canRequest(permission);
10
8
  const [isAwaitingPermission, setIsAwaitingPermission] = useState(false); // TODO: load with possibly pending state
11
9
 
12
10
  useEffect(() => {
@@ -16,9 +14,12 @@ export const useRequestPermission = (permission: OwnCapability) => {
16
14
  }, [hasPermission]);
17
15
 
18
16
  const requestPermission = useCallback(async () => {
19
- if (isAwaitingPermission || !canRequestPermission) return false;
20
17
  if (hasPermission) return true;
21
18
 
19
+ const canRequestPermission =
20
+ !!call?.permissionsContext.canRequest(permission);
21
+ if (isAwaitingPermission || !canRequestPermission) return false;
22
+
22
23
  setIsAwaitingPermission(true);
23
24
 
24
25
  try {
@@ -31,18 +32,12 @@ export const useRequestPermission = (permission: OwnCapability) => {
31
32
  }
32
33
 
33
34
  return false;
34
- }, [
35
- call,
36
- canRequestPermission,
37
- hasPermission,
38
- isAwaitingPermission,
39
- permission,
40
- ]);
35
+ }, [call, hasPermission, isAwaitingPermission, permission]);
41
36
 
42
37
  return {
43
38
  requestPermission,
44
39
  hasPermission,
45
- canRequestPermission,
40
+ canRequestPermission: !!call?.permissionsContext.canRequest(permission),
46
41
  isAwaitingPermission,
47
42
  };
48
43
  };
@@ -27,7 +27,7 @@ export const useToggleAudioMuteState = () => {
27
27
  if (canPublish) return publishAudioStream();
28
28
  }
29
29
 
30
- if (!isAudioMutedReference.current) stopPublishingAudio();
30
+ if (!isAudioMutedReference.current) await stopPublishingAudio();
31
31
  }, [publishAudioStream, requestPermission, stopPublishingAudio]);
32
32
 
33
33
  return { toggleAudioMuteState, isAwaitingPermission };
@@ -36,7 +36,7 @@ export const useToggleScreenShare = () => {
36
36
  }
37
37
  }
38
38
 
39
- call?.stopPublish(SfuModels.TrackType.SCREEN_SHARE);
39
+ await call?.stopPublish(SfuModels.TrackType.SCREEN_SHARE);
40
40
  }, [call, requestPermission]);
41
41
 
42
42
  return { toggleScreenShare, isAwaitingPermission, isScreenSharing };
@@ -27,7 +27,7 @@ export const useToggleVideoMuteState = () => {
27
27
  if (canPublish) return publishVideoStream();
28
28
  }
29
29
 
30
- if (!isVideoMutedReference.current) stopPublishingVideo();
30
+ if (!isVideoMutedReference.current) await stopPublishingVideo();
31
31
  }, [publishVideoStream, requestPermission, stopPublishingVideo]);
32
32
 
33
33
  return { toggleVideoMuteState, isAwaitingPermission };