@100mslive/roomkit-react 0.3.11-alpha.6 → 0.3.11-alpha.8

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.
@@ -24,6 +24,10 @@ import {
24
24
  ToastManager,
25
25
  Tooltip,
26
26
  WaitingView,
27
+ __async,
28
+ __objRest,
29
+ __spreadProps,
30
+ __spreadValues,
27
31
  config,
28
32
  init_define_process_env,
29
33
  styled,
@@ -35,7 +39,7 @@ import {
35
39
  useRoomLayoutHeader,
36
40
  useSidepaneToggle,
37
41
  useTheme
38
- } from "./chunk-6RJ75CE5.js";
42
+ } from "./chunk-DVZ464HO.js";
39
43
 
40
44
  // src/Prebuilt/layouts/HLSView.jsx
41
45
  init_define_process_env();
@@ -63,6 +67,7 @@ init_define_process_env();
63
67
  import React, { memo } from "react";
64
68
  import { CrossIcon } from "@100mslive/react-icons";
65
69
  function HlsStatsOverlay({ hlsStatsState, onClose }) {
70
+ var _a, _b, _c;
66
71
  return /* @__PURE__ */ React.createElement(
67
72
  Flex,
68
73
  {
@@ -82,18 +87,18 @@ function HlsStatsOverlay({ hlsStatsState, onClose }) {
82
87
  "a",
83
88
  {
84
89
  style: { cursor: "pointer", textDecoration: "underline" },
85
- href: hlsStatsState?.url,
90
+ href: hlsStatsState == null ? void 0 : hlsStatsState.url,
86
91
  target: "_blank",
87
92
  rel: "noreferrer"
88
93
  },
89
94
  "Stream url"
90
95
  ))),
91
- /* @__PURE__ */ React.createElement(HlsStatsRow, { label: "Video size" }, ` ${hlsStatsState?.videoSize?.width}x${hlsStatsState?.videoSize?.height}`),
92
- /* @__PURE__ */ React.createElement(HlsStatsRow, { label: "Buffer duration" }, hlsStatsState?.bufferedDuration?.toFixed(2), " "),
93
- /* @__PURE__ */ React.createElement(HlsStatsRow, { label: "Connection speed" }, `${(hlsStatsState?.bandwidthEstimate / (1e3 * 1e3)).toFixed(2)} Mbps`),
94
- /* @__PURE__ */ React.createElement(HlsStatsRow, { label: "Bitrate" }, `${(hlsStatsState?.bitrate / (1e3 * 1e3)).toFixed(2)} Mbps`),
96
+ /* @__PURE__ */ React.createElement(HlsStatsRow, { label: "Video size" }, ` ${(_a = hlsStatsState == null ? void 0 : hlsStatsState.videoSize) == null ? void 0 : _a.width}x${(_b = hlsStatsState == null ? void 0 : hlsStatsState.videoSize) == null ? void 0 : _b.height}`),
97
+ /* @__PURE__ */ React.createElement(HlsStatsRow, { label: "Buffer duration" }, (_c = hlsStatsState == null ? void 0 : hlsStatsState.bufferedDuration) == null ? void 0 : _c.toFixed(2), " "),
98
+ /* @__PURE__ */ React.createElement(HlsStatsRow, { label: "Connection speed" }, `${((hlsStatsState == null ? void 0 : hlsStatsState.bandwidthEstimate) / (1e3 * 1e3)).toFixed(2)} Mbps`),
99
+ /* @__PURE__ */ React.createElement(HlsStatsRow, { label: "Bitrate" }, `${((hlsStatsState == null ? void 0 : hlsStatsState.bitrate) / (1e3 * 1e3)).toFixed(2)} Mbps`),
95
100
  /* @__PURE__ */ React.createElement(HlsStatsRow, { label: "distance from live" }, getDurationFromSeconds(hlsStatsState.distanceFromLive / 1e3)),
96
- /* @__PURE__ */ React.createElement(HlsStatsRow, { label: "Dropped frames" }, hlsStatsState?.droppedFrames)
101
+ /* @__PURE__ */ React.createElement(HlsStatsRow, { label: "Dropped frames" }, hlsStatsState == null ? void 0 : hlsStatsState.droppedFrames)
97
102
  );
98
103
  }
99
104
  function getDurationFromSeconds(timeInSeconds) {
@@ -166,10 +171,11 @@ var RightControls = styled(Flex, {
166
171
  // src/Prebuilt/components/HMSVideo/HMSVideo.jsx
167
172
  init_define_process_env();
168
173
  import React2, { forwardRef } from "react";
169
- var HMSVideo = forwardRef(({ children, ...props }, videoRef) => {
174
+ var HMSVideo = forwardRef((_a, videoRef) => {
175
+ var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
170
176
  return /* @__PURE__ */ React2.createElement(
171
177
  Flex,
172
- {
178
+ __spreadValues({
173
179
  "data-testid": "hms-video",
174
180
  css: {
175
181
  size: "100%",
@@ -200,9 +206,8 @@ var HMSVideo = forwardRef(({ children, ...props }, videoRef) => {
200
206
  fontSize: "$space$10 !important"
201
207
  }
202
208
  },
203
- direction: "column",
204
- ...props
205
- },
209
+ direction: "column"
210
+ }, props),
206
211
  /* @__PURE__ */ React2.createElement(
207
212
  "video",
208
213
  {
@@ -251,10 +256,10 @@ var PlayPauseButton = ({
251
256
  height = 20
252
257
  }) => {
253
258
  const { hlsPlayer: hlsPlayer2 } = useHMSPlayerContext();
254
- const onClick = async (event) => {
255
- event?.stopPropagation();
256
- isPaused ? await hlsPlayer2?.play() : hlsPlayer2?.pause();
257
- };
259
+ const onClick = (event) => __async(void 0, null, function* () {
260
+ event == null ? void 0 : event.stopPropagation();
261
+ isPaused ? yield hlsPlayer2 == null ? void 0 : hlsPlayer2.play() : hlsPlayer2 == null ? void 0 : hlsPlayer2.pause();
262
+ });
258
263
  return /* @__PURE__ */ React4.createElement(Tooltip, { title: isPaused ? "Play" : "Pause", side: "top" }, /* @__PURE__ */ React4.createElement(IconButton, { onClick, "data-testid": "play_pause_btn" }, isPaused ? /* @__PURE__ */ React4.createElement(PlayIcon, { width, height }) : /* @__PURE__ */ React4.createElement(PauseIcon, { width, height })));
259
264
  };
260
265
 
@@ -441,8 +446,9 @@ var VideoProgress = ({
441
446
  const { hlsPlayer: hlsPlayer2 } = useHMSPlayerContext();
442
447
  const [videoProgress, setVideoProgress] = useState(0);
443
448
  const [bufferProgress, setBufferProgress] = useState(0);
444
- const videoEl = hlsPlayer2?.getVideoElement();
449
+ const videoEl = hlsPlayer2 == null ? void 0 : hlsPlayer2.getVideoElement();
445
450
  const setProgress = useCallback(() => {
451
+ var _a;
446
452
  if (!videoEl) {
447
453
  return;
448
454
  }
@@ -450,7 +456,7 @@ var VideoProgress = ({
450
456
  const videoProgress2 = Math.floor(getPercentage(videoEl.currentTime, duration));
451
457
  let bufferProgress2 = 0;
452
458
  if (videoEl.buffered.length > 0) {
453
- bufferProgress2 = Math.floor(getPercentage(videoEl.buffered?.end(0), duration));
459
+ bufferProgress2 = Math.floor(getPercentage((_a = videoEl.buffered) == null ? void 0 : _a.end(0), duration));
454
460
  }
455
461
  if (!isNaN(videoProgress2)) {
456
462
  setVideoProgress(videoProgress2);
@@ -472,18 +478,19 @@ var VideoProgress = ({
472
478
  setProgress();
473
479
  videoEl.addEventListener("timeupdate", timeupdateHandler);
474
480
  return function cleanup() {
475
- videoEl?.removeEventListener("timeupdate", timeupdateHandler);
481
+ videoEl == null ? void 0 : videoEl.removeEventListener("timeupdate", timeupdateHandler);
476
482
  };
477
483
  }, [setProgress, timeupdateHandler, videoEl]);
478
484
  const onProgress = (progress) => {
485
+ var _a;
479
486
  const progress1 = Math.floor(getPercentage(progress[0], 100));
480
- const videoEl2 = hlsPlayer2?.getVideoElement();
487
+ const videoEl2 = hlsPlayer2 == null ? void 0 : hlsPlayer2.getVideoElement();
481
488
  if (!videoEl2) {
482
489
  return;
483
490
  }
484
- const duration = isFinite(videoEl2.duration) ? videoEl2.duration : videoEl2.seekable?.end(0) || 0;
491
+ const duration = isFinite(videoEl2.duration) ? videoEl2.duration : ((_a = videoEl2.seekable) == null ? void 0 : _a.end(0)) || 0;
485
492
  const currentTime = progress1 * duration / 100;
486
- hlsPlayer2?.seekTo(currentTime);
493
+ hlsPlayer2 == null ? void 0 : hlsPlayer2.seekTo(currentTime);
487
494
  setProgress();
488
495
  };
489
496
  if (!videoEl) {
@@ -534,7 +541,7 @@ var VideoTime = () => {
534
541
  const [videoTime, setVideoTime] = useState2(getDurationFromSeconds2(0));
535
542
  const updateTime = useCallback2(
536
543
  (currentTime) => {
537
- const videoEl = hlsPlayer2?.getVideoElement();
544
+ const videoEl = hlsPlayer2 == null ? void 0 : hlsPlayer2.getVideoElement();
538
545
  if (videoEl) {
539
546
  const duration = getDuration(videoEl);
540
547
  setVideoTime(getDurationFromSeconds2(duration - currentTime));
@@ -550,11 +557,11 @@ var VideoTime = () => {
550
557
  };
551
558
  if (hlsPlayer2) {
552
559
  hlsPlayer2.on(HMSHLSPlayerEvents.CURRENT_TIME, timeupdateHandler);
553
- const videoEl = hlsPlayer2?.getVideoElement();
560
+ const videoEl = hlsPlayer2 == null ? void 0 : hlsPlayer2.getVideoElement();
554
561
  updateTime(videoEl.currentTime);
555
562
  }
556
563
  return function cleanup() {
557
- hlsPlayer2?.off(HMSHLSPlayerEvents.CURRENT_TIME, timeupdateHandler);
564
+ hlsPlayer2 == null ? void 0 : hlsPlayer2.off(HMSHLSPlayerEvents.CURRENT_TIME, timeupdateHandler);
558
565
  };
559
566
  }, [hlsPlayer2, updateTime]);
560
567
  return hlsPlayer2 ? /* @__PURE__ */ React8.createElement(
@@ -579,8 +586,9 @@ init_define_process_env();
579
586
  import React9, { useState as useState3 } from "react";
580
587
  import { VolumeOneIcon, VolumeTwoIcon, VolumeZeroIcon } from "@100mslive/react-icons";
581
588
  var VolumeControl = () => {
589
+ var _a;
582
590
  const { hlsPlayer: hlsPlayer2 } = useHMSPlayerContext();
583
- const [volume, setVolume] = useState3(hlsPlayer2?.volume ?? 100);
591
+ const [volume, setVolume] = useState3((_a = hlsPlayer2 == null ? void 0 : hlsPlayer2.volume) != null ? _a : 100);
584
592
  const [showSlider, setShowSlider] = useState3(false);
585
593
  return /* @__PURE__ */ React9.createElement(
586
594
  Flex,
@@ -603,10 +611,10 @@ var VolumeControl = () => {
603
611
  onClick: () => {
604
612
  if (volume > 0) {
605
613
  setVolume(0);
606
- hlsPlayer2?.setVolume(0);
614
+ hlsPlayer2 == null ? void 0 : hlsPlayer2.setVolume(0);
607
615
  } else {
608
616
  setVolume(100);
609
- hlsPlayer2?.setVolume(100);
617
+ hlsPlayer2 == null ? void 0 : hlsPlayer2.setVolume(100);
610
618
  }
611
619
  }
612
620
  }
@@ -629,7 +637,7 @@ var VolumeControl = () => {
629
637
  step: 1,
630
638
  value: [volume],
631
639
  onValueChange: (volume2) => {
632
- hlsPlayer2?.setVolume(volume2[0]);
640
+ hlsPlayer2 == null ? void 0 : hlsPlayer2.setVolume(volume2[0]);
633
641
  setVolume(volume2[0]);
634
642
  },
635
643
  thumbStyles: { w: "$6", h: "$6" }
@@ -690,7 +698,9 @@ function HLSAutoplayBlockedPrompt({
690
698
  color: "#000",
691
699
  r: "$2"
692
700
  },
693
- onClick: async () => await unblockAutoPlay()
701
+ onClick: () => __async(this, null, function* () {
702
+ return yield unblockAutoPlay();
703
+ })
694
704
  },
695
705
  /* @__PURE__ */ React11.createElement(VolumeTwoIcon2, { width: "32", height: "32" }),
696
706
  /* @__PURE__ */ React11.createElement(
@@ -711,19 +721,19 @@ function HLSAutoplayBlockedPrompt({
711
721
  Dialog.Root,
712
722
  {
713
723
  open,
714
- onOpenChange: async (value) => {
724
+ onOpenChange: (value) => __async(this, null, function* () {
715
725
  if (!value) {
716
- await unblockAutoPlay();
726
+ yield unblockAutoPlay();
717
727
  }
718
- }
728
+ })
719
729
  },
720
730
  /* @__PURE__ */ React11.createElement(DialogContent, { title: "Attention", closeable: false }, /* @__PURE__ */ React11.createElement(DialogRow, null, /* @__PURE__ */ React11.createElement(Text, { variant: "md" }, 'The browser wants us to get a confirmation for playing the HLS Stream. Please click "play stream" to proceed.')), /* @__PURE__ */ React11.createElement(DialogRow, { justify: "end" }, /* @__PURE__ */ React11.createElement(
721
731
  Button,
722
732
  {
723
733
  variant: "primary",
724
- onClick: async () => {
725
- await unblockAutoPlay();
726
- }
734
+ onClick: () => __async(this, null, function* () {
735
+ yield unblockAutoPlay();
736
+ })
727
737
  },
728
738
  "Play stream"
729
739
  )))
@@ -736,7 +746,7 @@ import React12 from "react";
736
746
  import { ClosedCaptionIcon, OpenCaptionIcon } from "@100mslive/react-icons";
737
747
  function HLSCaptionSelector({ isEnabled }) {
738
748
  const { hlsPlayer: hlsPlayer2 } = useHMSPlayerContext();
739
- return /* @__PURE__ */ React12.createElement(Tooltip, { title: "Subtitles/closed captions", side: "top" }, /* @__PURE__ */ React12.createElement(IconButton, { css: { p: "$2" }, onClick: () => hlsPlayer2?.toggleCaption() }, isEnabled ? /* @__PURE__ */ React12.createElement(ClosedCaptionIcon, { width: "20", height: "20px" }) : /* @__PURE__ */ React12.createElement(OpenCaptionIcon, { width: "20", height: "20px" })));
749
+ return /* @__PURE__ */ React12.createElement(Tooltip, { title: "Subtitles/closed captions", side: "top" }, /* @__PURE__ */ React12.createElement(IconButton, { css: { p: "$2" }, onClick: () => hlsPlayer2 == null ? void 0 : hlsPlayer2.toggleCaption() }, isEnabled ? /* @__PURE__ */ React12.createElement(ClosedCaptionIcon, { width: "20", height: "20px" }) : /* @__PURE__ */ React12.createElement(OpenCaptionIcon, { width: "20", height: "20px" })));
740
750
  }
741
751
 
742
752
  // src/Prebuilt/components/HMSVideo/HLSQualitySelector.tsx
@@ -817,7 +827,7 @@ function HLSQualitySelector({
817
827
  },
818
828
  /* @__PURE__ */ React13.createElement(Text, { variant: "caption", css: { fontWeight: "$semiBold" } }, getQualityText(layer)),
819
829
  /* @__PURE__ */ React13.createElement(Text, { variant: "caption", css: { flex: "1 1 0", c: "$on_surface_low", pl: "$2" } }, getBitrateText(layer)),
820
- !isAuto && layer.width === selection?.width && layer.height === selection?.height && /* @__PURE__ */ React13.createElement(CheckIcon, { width: "16px", height: "16px" })
830
+ !isAuto && layer.width === (selection == null ? void 0 : selection.width) && layer.height === (selection == null ? void 0 : selection.height) && /* @__PURE__ */ React13.createElement(CheckIcon, { width: "16px", height: "16px" })
821
831
  );
822
832
  }),
823
833
  /* @__PURE__ */ React13.createElement(
@@ -912,7 +922,7 @@ function HLSQualitySelector({
912
922
  onClick: () => onQualityChange(layer),
913
923
  key: layer.width,
914
924
  css: {
915
- bg: !isAuto && layer.width === selection?.width && layer.height === selection?.height ? "$surface_default" : "$surface_bright",
925
+ bg: !isAuto && layer.width === (selection == null ? void 0 : selection.width) && layer.height === (selection == null ? void 0 : selection.height) ? "$surface_default" : "$surface_bright",
916
926
  "&:hover": {
917
927
  bg: "$surface_brighter"
918
928
  },
@@ -923,7 +933,7 @@ function HLSQualitySelector({
923
933
  },
924
934
  /* @__PURE__ */ React13.createElement(Text, { variant: "caption", css: { fontWeight: "$semiBold" } }, getQualityText(layer)),
925
935
  /* @__PURE__ */ React13.createElement(Text, { variant: "caption", css: { flex: "1 1 0", c: "$on_surface_low", pl: "$2" } }, getBitrateText(layer)),
926
- !isAuto && layer.width === selection?.width && layer.height === selection?.height && /* @__PURE__ */ React13.createElement(CheckIcon, { width: "16px", height: "16px" })
936
+ !isAuto && layer.width === (selection == null ? void 0 : selection.width) && layer.height === (selection == null ? void 0 : selection.height) && /* @__PURE__ */ React13.createElement(CheckIcon, { width: "16px", height: "16px" })
927
937
  );
928
938
  }),
929
939
  /* @__PURE__ */ React13.createElement(
@@ -1014,7 +1024,7 @@ var ToggleChat = ({ isFullScreen = false }) => {
1014
1024
  const { elements } = useRoomLayoutConferencingScreen();
1015
1025
  const sidepane = useHMSStore(selectAppData(APP_DATA.sidePane));
1016
1026
  const toggleChat = useSidepaneToggle(SIDE_PANE_OPTIONS.CHAT);
1017
- const showChat = !!elements?.chat;
1027
+ const showChat = !!(elements == null ? void 0 : elements.chat);
1018
1028
  const isMobile = useMedia4(config.media.md);
1019
1029
  const hmsActions = useHMSActions();
1020
1030
  useEffect3(() => {
@@ -1030,6 +1040,7 @@ var ToggleChat = ({ isFullScreen = false }) => {
1030
1040
  return null;
1031
1041
  };
1032
1042
  var HLSView = () => {
1043
+ var _a, _b, _c, _d, _e, _f, _g;
1033
1044
  const videoRef = useRef(null);
1034
1045
  const hlsViewRef = useRef();
1035
1046
  const { elements } = useRoomLayoutConferencingScreen();
@@ -1040,7 +1051,7 @@ var HLSView = () => {
1040
1051
  const { themeType } = useTheme();
1041
1052
  const [streamEnded, setStreamEnded] = useState4(false);
1042
1053
  let [hlsStatsState, setHlsStatsState] = useState4(null);
1043
- const hlsUrl = hlsState.variants[0]?.url;
1054
+ const hlsUrl = (_a = hlsState.variants[0]) == null ? void 0 : _a.url;
1044
1055
  const [availableLayers, setAvailableLayers] = useState4([]);
1045
1056
  const [isVideoLive, setIsVideoLive] = useState4(true);
1046
1057
  const [isCaptionEnabled, setIsCaptionEnabled] = useState4(true);
@@ -1064,7 +1075,7 @@ var HLSView = () => {
1064
1075
  const [seekProgress, setSeekProgress] = useState4(false);
1065
1076
  const isFullScreenSupported = screenfull.isEnabled;
1066
1077
  const toggleChat = useSidepaneToggle(SIDE_PANE_OPTIONS.CHAT);
1067
- const showChat = !!elements?.chat;
1078
+ const showChat = !!(elements == null ? void 0 : elements.chat);
1068
1079
  const isMobile = useMedia4(config.media.md);
1069
1080
  const isLandscape = useIsLandscape();
1070
1081
  const isFullScreen = useFullscreen(hlsViewRef, show, {
@@ -1075,11 +1086,11 @@ var HLSView = () => {
1075
1086
  const videoEl = videoRef.current;
1076
1087
  const showLoader2 = () => setShowLoader(true);
1077
1088
  const hideLoader = () => setShowLoader(false);
1078
- videoEl?.addEventListener("playing", hideLoader);
1079
- videoEl?.addEventListener("waiting", showLoader2);
1089
+ videoEl == null ? void 0 : videoEl.addEventListener("playing", hideLoader);
1090
+ videoEl == null ? void 0 : videoEl.addEventListener("waiting", showLoader2);
1080
1091
  return () => {
1081
- videoEl?.removeEventListener("playing", hideLoader);
1082
- videoEl?.removeEventListener("waiting", showLoader2);
1092
+ videoEl == null ? void 0 : videoEl.removeEventListener("playing", hideLoader);
1093
+ videoEl == null ? void 0 : videoEl.removeEventListener("waiting", showLoader2);
1083
1094
  };
1084
1095
  }, []);
1085
1096
  useEffect3(() => {
@@ -1090,7 +1101,7 @@ var HLSView = () => {
1090
1101
  useEffect3(() => {
1091
1102
  if (!notification)
1092
1103
  return;
1093
- const toastID = toastMap?.[notification.data.id];
1104
+ const toastID = toastMap == null ? void 0 : toastMap[notification.data.id];
1094
1105
  if (toastID) {
1095
1106
  ToastManager.removeToast(toastMap[notification.data.id]);
1096
1107
  delete toastMap[notification.data.id];
@@ -1100,18 +1111,19 @@ var HLSView = () => {
1100
1111
  const videoElem = videoRef.current;
1101
1112
  const setStreamEndedCallback = () => {
1102
1113
  setStreamEnded(true);
1103
- videoElem?.removeEventListener("ended", setStreamEndedCallback);
1114
+ videoElem == null ? void 0 : videoElem.removeEventListener("ended", setStreamEndedCallback);
1104
1115
  };
1105
- videoElem?.addEventListener("ended", setStreamEndedCallback);
1116
+ videoElem == null ? void 0 : videoElem.addEventListener("ended", setStreamEndedCallback);
1106
1117
  return () => {
1107
- videoElem?.removeEventListener("ended", setStreamEndedCallback);
1118
+ videoElem == null ? void 0 : videoElem.removeEventListener("ended", setStreamEndedCallback);
1108
1119
  };
1109
1120
  }, [hlsUrl]);
1110
1121
  const handleQuality = useCallback3(
1111
1122
  (quality) => {
1123
+ var _a2;
1112
1124
  if (hlsPlayer) {
1113
- setIsUserSelectedAuto(quality.height?.toString().toLowerCase() === "auto");
1114
- hlsPlayer?.setLayer(quality);
1125
+ setIsUserSelectedAuto(((_a2 = quality.height) == null ? void 0 : _a2.toString().toLowerCase()) === "auto");
1126
+ hlsPlayer == null ? void 0 : hlsPlayer.setLayer(quality);
1115
1127
  }
1116
1128
  },
1117
1129
  [availableLayers]
@@ -1121,12 +1133,14 @@ var HLSView = () => {
1121
1133
  let videoEl = videoRef.current;
1122
1134
  const manifestLoadedHandler = ({ layers }) => {
1123
1135
  setAvailableLayers(layers);
1124
- setHasCaptions(hlsPlayer?.hasCaptions());
1136
+ setHasCaptions(hlsPlayer == null ? void 0 : hlsPlayer.hasCaptions());
1125
1137
  };
1126
1138
  const layerUpdatedHandler = ({ layer }) => {
1127
1139
  setCurrentSelectedQuality(layer);
1128
1140
  };
1129
- const metadataLoadedHandler = ({ payload, ...rest }) => {
1141
+ const metadataLoadedHandler = (_a2) => {
1142
+ var _b2 = _a2, { payload } = _b2, rest = __objRest(_b2, ["payload"]);
1143
+ var _a3;
1130
1144
  const parsePayload = (str) => {
1131
1145
  try {
1132
1146
  return JSON.parse(str);
@@ -1171,7 +1185,7 @@ var HLSView = () => {
1171
1185
  }
1172
1186
  switch (parsedPayload.type) {
1173
1187
  case EMOJI_REACTION_TYPE:
1174
- window.showFlyingEmoji?.({ emojiId: parsedPayload?.emojiId, senderId: parsedPayload?.senderId });
1188
+ (_a3 = window.showFlyingEmoji) == null ? void 0 : _a3.call(window, { emojiId: parsedPayload == null ? void 0 : parsedPayload.emojiId, senderId: parsedPayload == null ? void 0 : parsedPayload.senderId });
1175
1189
  break;
1176
1190
  default: {
1177
1191
  const toast = {
@@ -1192,15 +1206,13 @@ var HLSView = () => {
1192
1206
  };
1193
1207
  const playbackEventHandler = (data) => {
1194
1208
  setIsPaused(data.state === HLSPlaybackState.paused);
1195
- setHoverControlsVisible({
1196
- ...hoverControlsVisible,
1209
+ setHoverControlsVisible(__spreadProps(__spreadValues({}, hoverControlsVisible), {
1197
1210
  pausePlay: true
1198
- });
1211
+ }));
1199
1212
  setTimeout(() => {
1200
- setHoverControlsVisible({
1201
- ...hoverControlsVisible,
1213
+ setHoverControlsVisible(__spreadProps(__spreadValues({}, hoverControlsVisible), {
1202
1214
  pausePlay: false
1203
- });
1215
+ }));
1204
1216
  }, 2e3);
1205
1217
  };
1206
1218
  const captionEnabledEventHandler = (isCaptionEnabled2) => {
@@ -1233,22 +1245,22 @@ var HLSView = () => {
1233
1245
  useEffect3(() => {
1234
1246
  const onHLSStats = (state) => setHlsStatsState(state);
1235
1247
  if (enablHlsStats) {
1236
- hlsPlayer?.on(HMSHLSPlayerEvents2.STATS, onHLSStats);
1248
+ hlsPlayer == null ? void 0 : hlsPlayer.on(HMSHLSPlayerEvents2.STATS, onHLSStats);
1237
1249
  } else {
1238
- hlsPlayer?.off(HMSHLSPlayerEvents2.STATS, onHLSStats);
1250
+ hlsPlayer == null ? void 0 : hlsPlayer.off(HMSHLSPlayerEvents2.STATS, onHLSStats);
1239
1251
  }
1240
1252
  return () => {
1241
- hlsPlayer?.off(HMSHLSPlayerEvents2.STATS, onHLSStats);
1253
+ hlsPlayer == null ? void 0 : hlsPlayer.off(HMSHLSPlayerEvents2.STATS, onHLSStats);
1242
1254
  };
1243
1255
  }, [enablHlsStats]);
1244
- const unblockAutoPlay = async () => {
1256
+ const unblockAutoPlay = () => __async(void 0, null, function* () {
1245
1257
  try {
1246
- await hlsPlayer.play();
1258
+ yield hlsPlayer.play();
1247
1259
  setIsHlsAutoplayBlocked(false);
1248
1260
  } catch (error) {
1249
1261
  console.error("Tried to unblock Autoplay failed with", error.message);
1250
1262
  }
1251
- };
1263
+ });
1252
1264
  const sfnOverlayClose = () => {
1253
1265
  hmsActions.setAppData(APP_DATA.hlsStats, !enablHlsStats);
1254
1266
  };
@@ -1274,64 +1286,62 @@ var HLSView = () => {
1274
1286
  }, [controlsVisible, isFullScreen, seekProgress, qualityDropDownOpen]);
1275
1287
  const onSeekTo = useCallback3(
1276
1288
  (seek) => {
1289
+ var _a2;
1277
1290
  match({ isLandscape, isMobile, seek }).with({ seek: -10, isMobile: false, isLandscape: false }, () => {
1278
- setHoverControlsVisible({ ...hoverControlsVisible, seekBackward: true });
1291
+ setHoverControlsVisible(__spreadProps(__spreadValues({}, hoverControlsVisible), { seekBackward: true }));
1279
1292
  setTimeout(() => {
1280
- setHoverControlsVisible({
1281
- ...hoverControlsVisible,
1293
+ setHoverControlsVisible(__spreadProps(__spreadValues({}, hoverControlsVisible), {
1282
1294
  seekBackward: false
1283
- });
1295
+ }));
1284
1296
  }, 1e3);
1285
1297
  }).with({ seek: 10, isMobile: false, isLandscape: false }, () => {
1286
- setHoverControlsVisible({ ...hoverControlsVisible, seekForward: true });
1298
+ setHoverControlsVisible(__spreadProps(__spreadValues({}, hoverControlsVisible), { seekForward: true }));
1287
1299
  setTimeout(() => {
1288
- setHoverControlsVisible({
1289
- ...hoverControlsVisible,
1300
+ setHoverControlsVisible(__spreadProps(__spreadValues({}, hoverControlsVisible), {
1290
1301
  seekForward: false
1291
- });
1302
+ }));
1292
1303
  }, 1e3);
1293
1304
  }).otherwise(() => null);
1294
- hlsPlayer?.seekTo(videoRef.current?.currentTime + seek);
1305
+ hlsPlayer == null ? void 0 : hlsPlayer.seekTo(((_a2 = videoRef.current) == null ? void 0 : _a2.currentTime) + seek);
1295
1306
  },
1296
1307
  [hoverControlsVisible, isLandscape, isMobile]
1297
1308
  );
1298
1309
  const onDoubleClickHandler = useCallback3(
1299
1310
  (event) => {
1300
- if (!(isMobile || isLandscape) || hlsState?.variants[0]?.playlist_type !== HLSPlaylistType.DVR) {
1311
+ var _a2;
1312
+ if (!(isMobile || isLandscape) || ((_a2 = hlsState == null ? void 0 : hlsState.variants[0]) == null ? void 0 : _a2.playlist_type) !== HLSPlaylistType.DVR) {
1301
1313
  return;
1302
1314
  }
1303
1315
  const sidePercentage = event.screenX * 100 / event.target.clientWidth;
1304
1316
  if (sidePercentage < 45) {
1305
- setHoverControlsVisible({
1306
- ...hoverControlsVisible,
1317
+ setHoverControlsVisible(__spreadProps(__spreadValues({}, hoverControlsVisible), {
1307
1318
  seekBackward: true
1308
- });
1319
+ }));
1309
1320
  onSeekTo(-10);
1310
1321
  } else {
1311
- setHoverControlsVisible({
1312
- ...hoverControlsVisible,
1322
+ setHoverControlsVisible(__spreadProps(__spreadValues({}, hoverControlsVisible), {
1313
1323
  seekForward: true
1314
- });
1324
+ }));
1315
1325
  onSeekTo(10);
1316
1326
  }
1317
1327
  setTimeout(() => {
1318
- setHoverControlsVisible({
1319
- ...hoverControlsVisible,
1328
+ setHoverControlsVisible(__spreadProps(__spreadValues({}, hoverControlsVisible), {
1320
1329
  seekForward: false,
1321
1330
  seekBackward: false
1322
- });
1331
+ }));
1323
1332
  }, 1e3);
1324
1333
  },
1325
- [hlsState?.variants, hoverControlsVisible, isLandscape, isMobile, onSeekTo]
1334
+ [hlsState == null ? void 0 : hlsState.variants, hoverControlsVisible, isLandscape, isMobile, onSeekTo]
1326
1335
  );
1327
- const onClickHandler = useCallback3(async () => {
1328
- match({ isMobile, isLandscape, playlist_type: hlsState?.variants[0]?.playlist_type }).with({ playlist_type: HLSPlaylistType.DVR, isMobile: false, isLandscape: false }, async () => {
1336
+ const onClickHandler = useCallback3(() => __async(void 0, null, function* () {
1337
+ var _a2;
1338
+ match({ isMobile, isLandscape, playlist_type: (_a2 = hlsState == null ? void 0 : hlsState.variants[0]) == null ? void 0 : _a2.playlist_type }).with({ playlist_type: HLSPlaylistType.DVR, isMobile: false, isLandscape: false }, () => __async(void 0, null, function* () {
1329
1339
  if (isPaused) {
1330
- await hlsPlayer?.play();
1340
+ yield hlsPlayer == null ? void 0 : hlsPlayer.play();
1331
1341
  } else {
1332
- hlsPlayer?.pause();
1342
+ hlsPlayer == null ? void 0 : hlsPlayer.pause();
1333
1343
  }
1334
- }).when(
1344
+ })).when(
1335
1345
  ({ isMobile: isMobile2, isLandscape: isLandscape2 }) => isMobile2 || isLandscape2,
1336
1346
  () => {
1337
1347
  setControlsVisible((value) => !value);
@@ -1340,7 +1350,7 @@ var HLSView = () => {
1340
1350
  }
1341
1351
  }
1342
1352
  ).otherwise(() => null);
1343
- }, [hlsState?.variants, isLandscape, isMobile, isPaused]);
1353
+ }), [hlsState == null ? void 0 : hlsState.variants, isLandscape, isMobile, isPaused]);
1344
1354
  const onHoverHandler = useCallback3(
1345
1355
  (event) => {
1346
1356
  event.preventDefault();
@@ -1412,7 +1422,7 @@ var HLSView = () => {
1412
1422
  }
1413
1423
  },
1414
1424
  hlsViewRef.current && (isMobile || isLandscape) && /* @__PURE__ */ React15.createElement(Box, { css: { position: "fixed", left: "$4", top: "$4", zIndex: 11 } }, /* @__PURE__ */ React15.createElement(LeaveRoom, { screenType: "hls_live_streaming", container: hlsViewRef.current })),
1415
- /* @__PURE__ */ React15.createElement(HMSPlayerContext.Provider, { value: { hlsPlayer } }, hlsStatsState?.url && enablHlsStats && !(isMobile || isLandscape) ? /* @__PURE__ */ React15.createElement(HlsStatsOverlay, { hlsStatsState, onClose: sfnOverlayClose }) : null, /* @__PURE__ */ React15.createElement(
1425
+ /* @__PURE__ */ React15.createElement(HMSPlayerContext.Provider, { value: { hlsPlayer } }, (hlsStatsState == null ? void 0 : hlsStatsState.url) && enablHlsStats && !(isMobile || isLandscape) ? /* @__PURE__ */ React15.createElement(HlsStatsOverlay, { hlsStatsState, onClose: sfnOverlayClose }) : null, /* @__PURE__ */ React15.createElement(
1416
1426
  Flex,
1417
1427
  {
1418
1428
  id: "hls-player-container",
@@ -1426,11 +1436,12 @@ var HLSView = () => {
1426
1436
  },
1427
1437
  outline: "none"
1428
1438
  },
1429
- onKeyDown: async (event) => {
1430
- if (hlsState?.variants[0]?.playlist_type === HLSPlaylistType.DVR) {
1431
- await keyHandler(event);
1439
+ onKeyDown: (event) => __async(void 0, null, function* () {
1440
+ var _a2;
1441
+ if (((_a2 = hlsState == null ? void 0 : hlsState.variants[0]) == null ? void 0 : _a2.playlist_type) === HLSPlaylistType.DVR) {
1442
+ yield keyHandler(event);
1432
1443
  }
1433
- },
1444
+ }),
1434
1445
  tabIndex: "0"
1435
1446
  },
1436
1447
  !(isMobile || isLandscape) && /* @__PURE__ */ React15.createElement(HLSAutoplayBlockedPrompt, { open: isHlsAutoplayBlocked, unblockAutoPlay }),
@@ -1471,7 +1482,7 @@ var HLSView = () => {
1471
1482
  size: "100%"
1472
1483
  }
1473
1484
  },
1474
- !showLoader && hlsState?.variants[0]?.playlist_type === HLSPlaylistType.DVR && /* @__PURE__ */ React15.createElement(
1485
+ !showLoader && ((_b = hlsState == null ? void 0 : hlsState.variants[0]) == null ? void 0 : _b.playlist_type) === HLSPlaylistType.DVR && /* @__PURE__ */ React15.createElement(
1475
1486
  HMSVideoPlayer.PlayPauseSeekControls.Overlay,
1476
1487
  {
1477
1488
  isPaused,
@@ -1479,7 +1490,7 @@ var HLSView = () => {
1479
1490
  hoverControlsVisible
1480
1491
  }
1481
1492
  )
1482
- ), isMobile || isLandscape ? /* @__PURE__ */ React15.createElement(React15.Fragment, null, !showLoader && hlsState?.variants[0]?.playlist_type === HLSPlaylistType.DVR && /* @__PURE__ */ React15.createElement(
1493
+ ), isMobile || isLandscape ? /* @__PURE__ */ React15.createElement(React15.Fragment, null, !showLoader && ((_c = hlsState == null ? void 0 : hlsState.variants[0]) == null ? void 0 : _c.playlist_type) === HLSPlaylistType.DVR && /* @__PURE__ */ React15.createElement(
1483
1494
  HMSVideoPlayer.PlayPauseSeekControls.Overlay,
1484
1495
  {
1485
1496
  isPaused,
@@ -1546,7 +1557,7 @@ var HLSView = () => {
1546
1557
  align: "start",
1547
1558
  css: {
1548
1559
  position: "absolute",
1549
- bottom: isFullScreen && hlsState?.variants[0]?.playlist_type === HLSPlaylistType.DVR ? "$8" : "0",
1560
+ bottom: isFullScreen && ((_d = hlsState == null ? void 0 : hlsState.variants[0]) == null ? void 0 : _d.playlist_type) === HLSPlaylistType.DVR ? "$8" : "0",
1550
1561
  left: "0",
1551
1562
  zIndex: 1,
1552
1563
  background: isMobile || isLandscape ? "" : `linear-gradient(180deg, ${theme.colors.background_dim.value}00 29.46%, ${theme.colors.background_dim.value}A3 100%);`,
@@ -1556,7 +1567,7 @@ var HLSView = () => {
1556
1567
  transition: "visibility 0s 0.5s, opacity 0.5s linear"
1557
1568
  }
1558
1569
  },
1559
- hlsState?.variants[0]?.playlist_type === HLSPlaylistType.DVR ? /* @__PURE__ */ React15.createElement(HMSVideoPlayer.Progress, { seekProgress, setSeekProgress }) : null,
1570
+ ((_e = hlsState == null ? void 0 : hlsState.variants[0]) == null ? void 0 : _e.playlist_type) === HLSPlaylistType.DVR ? /* @__PURE__ */ React15.createElement(HMSVideoPlayer.Progress, { seekProgress, setSeekProgress }) : null,
1560
1571
  /* @__PURE__ */ React15.createElement(
1561
1572
  HMSVideoPlayer.Controls.Root,
1562
1573
  {
@@ -1565,15 +1576,15 @@ var HLSView = () => {
1565
1576
  },
1566
1577
  onClick: (e) => e.stopPropagation()
1567
1578
  },
1568
- /* @__PURE__ */ React15.createElement(HMSVideoPlayer.Controls.Left, null, !(isMobile || isLandscape) && /* @__PURE__ */ React15.createElement(React15.Fragment, null, hlsState?.variants[0]?.playlist_type === HLSPlaylistType.DVR ? /* @__PURE__ */ React15.createElement(React15.Fragment, null, /* @__PURE__ */ React15.createElement(HMSVideoPlayer.PlayPauseSeekControls.Button, { isPaused, onSeekTo }), !isVideoLive ? /* @__PURE__ */ React15.createElement(HMSVideoPlayer.Duration, null) : null) : null, /* @__PURE__ */ React15.createElement(HMSVideoPlayer.Volume, null)), /* @__PURE__ */ React15.createElement(
1579
+ /* @__PURE__ */ React15.createElement(HMSVideoPlayer.Controls.Left, null, !(isMobile || isLandscape) && /* @__PURE__ */ React15.createElement(React15.Fragment, null, ((_f = hlsState == null ? void 0 : hlsState.variants[0]) == null ? void 0 : _f.playlist_type) === HLSPlaylistType.DVR ? /* @__PURE__ */ React15.createElement(React15.Fragment, null, /* @__PURE__ */ React15.createElement(HMSVideoPlayer.PlayPauseSeekControls.Button, { isPaused, onSeekTo }), !isVideoLive ? /* @__PURE__ */ React15.createElement(HMSVideoPlayer.Duration, null) : null) : null, /* @__PURE__ */ React15.createElement(HMSVideoPlayer.Volume, null)), /* @__PURE__ */ React15.createElement(
1569
1580
  IconButton,
1570
1581
  {
1571
1582
  css: { px: "$2" },
1572
- onClick: async (e) => {
1583
+ onClick: (e) => __async(void 0, null, function* () {
1573
1584
  e.stopPropagation();
1574
- await hlsPlayer?.seekToLivePosition();
1585
+ yield hlsPlayer == null ? void 0 : hlsPlayer.seekToLivePosition();
1575
1586
  setIsVideoLive(true);
1576
- },
1587
+ }),
1577
1588
  key: "jump-to-live_btn",
1578
1589
  "data-testid": "jump-to-live_btn"
1579
1590
  },
@@ -1598,7 +1609,7 @@ var HLSView = () => {
1598
1609
  },
1599
1610
  isVideoLive ? "LIVE" : "GO LIVE"
1600
1611
  )))
1601
- ), (isMobile || isLandscape) && !isVideoLive && hlsState?.variants[0]?.playlist_type === HLSPlaylistType.DVR ? /* @__PURE__ */ React15.createElement(HMSVideoPlayer.Duration, null) : null),
1612
+ ), (isMobile || isLandscape) && !isVideoLive && ((_g = hlsState == null ? void 0 : hlsState.variants[0]) == null ? void 0 : _g.playlist_type) === HLSPlaylistType.DVR ? /* @__PURE__ */ React15.createElement(HMSVideoPlayer.Duration, null) : null),
1602
1613
  /* @__PURE__ */ React15.createElement(HMSVideoPlayer.Controls.Right, null, hasCaptions && !(isMobile || isLandscape) && /* @__PURE__ */ React15.createElement(HLSCaptionSelector, { isEnabled: isCaptionEnabled }), availableLayers.length > 0 && !(isMobile || isLandscape) ? /* @__PURE__ */ React15.createElement(
1603
1614
  HLSQualitySelector,
1604
1615
  {
@@ -1622,4 +1633,4 @@ var HLSView_default = HLSView;
1622
1633
  export {
1623
1634
  HLSView_default as default
1624
1635
  };
1625
- //# sourceMappingURL=HLSView-EDTAEGGA.js.map
1636
+ //# sourceMappingURL=HLSView-VRWXYNFD.js.map