@100mslive/roomkit-react 0.2.8-alpha.5 → 0.2.8-alpha.7
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/dist/{HLSView-CVNJNDUQ.js → HLSView-MYKM5AXS.js} +239 -144
- package/dist/HLSView-MYKM5AXS.js.map +7 -0
- package/dist/Prebuilt/components/Chat/MwebChatOption.d.ts +1 -1
- package/dist/Prebuilt/components/HMSVideo/PlayPauseButton.d.ts +6 -0
- package/dist/Prebuilt/components/HMSVideo/SeekControls.d.ts +7 -0
- package/dist/Prebuilt/components/HMSVideo/VideoProgress.d.ts +3 -1
- package/dist/Prebuilt/components/HMSVideo/index.d.ts +10 -2
- package/dist/Prebuilt/layouts/SidePane.d.ts +1 -1
- package/dist/{chunk-25HZFDG5.js → chunk-DRBTAFKN.js} +356 -222
- package/dist/chunk-DRBTAFKN.js.map +7 -0
- package/dist/index.cjs.js +949 -712
- package/dist/index.cjs.js.map +4 -4
- package/dist/index.js +1 -1
- package/dist/meta.cjs.json +217 -78
- package/dist/meta.esbuild.json +227 -87
- package/package.json +7 -6
- package/src/Prebuilt/components/AppData/useSidepane.js +34 -7
- package/src/Prebuilt/components/AuthToken.jsx +1 -1
- package/src/Prebuilt/components/Chat/ChatFooter.tsx +1 -1
- package/src/Prebuilt/components/Chat/MwebChatOption.tsx +1 -1
- package/src/Prebuilt/components/ConferenceScreen.tsx +11 -14
- package/src/Prebuilt/components/Footer/RoleOptions.tsx +32 -15
- package/src/Prebuilt/components/HMSVideo/HLSAutoplayBlockedPrompt.tsx +31 -1
- package/src/Prebuilt/components/HMSVideo/HMSVideo.jsx +7 -1
- package/src/Prebuilt/components/HMSVideo/PlayPauseButton.tsx +27 -0
- package/src/Prebuilt/components/HMSVideo/SeekControls.tsx +22 -0
- package/src/Prebuilt/components/HMSVideo/VideoProgress.tsx +4 -3
- package/src/Prebuilt/components/HMSVideo/VolumeControl.tsx +1 -1
- package/src/Prebuilt/components/HMSVideo/index.ts +4 -2
- package/src/Prebuilt/components/Header/StreamActions.tsx +1 -1
- package/src/Prebuilt/components/MoreSettings/SplitComponents/DesktopOptions.tsx +37 -31
- package/src/Prebuilt/components/MoreSettings/SplitComponents/MwebOptions.tsx +6 -5
- package/src/Prebuilt/components/Notifications/HandRaisedNotifications.tsx +2 -2
- package/src/Prebuilt/components/Notifications/PeerNotifications.tsx +1 -1
- package/src/Prebuilt/components/Polls/Voting/QuestionCard.jsx +19 -8
- package/src/Prebuilt/components/SidePaneTabs.tsx +27 -35
- package/src/Prebuilt/components/StatsForNerds.jsx +14 -6
- package/src/Prebuilt/components/Streaming/Common.jsx +1 -1
- package/src/Prebuilt/components/TileMenu/TileMenuContent.tsx +2 -2
- package/src/Prebuilt/components/Toast/ToastBatcher.js +8 -1
- package/src/Prebuilt/components/Toast/ToastConfig.jsx +17 -0
- package/src/Prebuilt/layouts/HLSView.jsx +109 -69
- package/src/Prebuilt/layouts/SidePane.tsx +125 -67
- package/src/Prebuilt/layouts/VideoStreamingSection.tsx +2 -1
- package/src/Prebuilt/provider/roomLayoutProvider/index.tsx +1 -1
- package/src/Sheet/Sheet.tsx +4 -0
- package/dist/HLSView-CVNJNDUQ.js.map +0 -7
- package/dist/chunk-25HZFDG5.js.map +0 -7
- package/src/Prebuilt/components/HMSVideo/PlayButton.jsx +0 -13
| @@ -11,6 +11,7 @@ import { | |
| 11 11 | 
             
              Flex,
         | 
| 12 12 | 
             
              IconButton,
         | 
| 13 13 | 
             
              IconButton_default,
         | 
| 14 | 
            +
              LeaveRoom,
         | 
| 14 15 | 
             
              Loading,
         | 
| 15 16 | 
             
              Logo,
         | 
| 16 17 | 
             
              SIDE_PANE_OPTIONS,
         | 
| @@ -32,12 +33,12 @@ import { | |
| 32 33 | 
             
              useRoomLayoutConferencingScreen,
         | 
| 33 34 | 
             
              useSidepaneToggle,
         | 
| 34 35 | 
             
              useTheme
         | 
| 35 | 
            -
            } from "./chunk- | 
| 36 | 
            +
            } from "./chunk-DRBTAFKN.js";
         | 
| 36 37 |  | 
| 37 38 | 
             
            // src/Prebuilt/layouts/HLSView.jsx
         | 
| 38 39 | 
             
            init_define_process_env();
         | 
| 39 | 
            -
            import  | 
| 40 | 
            -
            import { useFullscreen, useMedia as  | 
| 40 | 
            +
            import React14, { useCallback as useCallback2, useEffect as useEffect4, useRef as useRef2, useState as useState5 } from "react";
         | 
| 41 | 
            +
            import { useFullscreen, useMedia as useMedia4, usePrevious, useToggle } from "react-use";
         | 
| 41 42 | 
             
            import { HLSPlaybackState, HMSHLSPlayer, HMSHLSPlayerEvents as HMSHLSPlayerEvents2 } from "@100mslive/hls-player";
         | 
| 42 43 | 
             
            import screenfull from "screenfull";
         | 
| 43 44 | 
             
            import {
         | 
| @@ -52,7 +53,7 @@ import { | |
| 52 53 | 
             
              useHMSStore as useHMSStore2,
         | 
| 53 54 | 
             
              useHMSVanillaStore
         | 
| 54 55 | 
             
            } from "@100mslive/react-sdk";
         | 
| 55 | 
            -
            import {  | 
| 56 | 
            +
            import { BackwardArrowIcon, ColoredHandIcon, ForwardArrowIcon, GoLiveIcon } from "@100mslive/react-icons";
         | 
| 56 57 |  | 
| 57 58 | 
             
            // src/Prebuilt/components/HlsStatsOverlay.jsx
         | 
| 58 59 | 
             
            init_define_process_env();
         | 
| @@ -163,8 +164,11 @@ var RightControls = styled(Flex, { | |
| 163 164 | 
             
            // src/Prebuilt/components/HMSVideo/HMSVideo.jsx
         | 
| 164 165 | 
             
            init_define_process_env();
         | 
| 165 166 | 
             
            import React2, { forwardRef } from "react";
         | 
| 167 | 
            +
            import { useMedia } from "react-use";
         | 
| 166 168 | 
             
            var HMSVideo = forwardRef((_a, videoRef) => {
         | 
| 167 169 | 
             
              var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
         | 
| 170 | 
            +
              const isLandscape = useIsLandscape();
         | 
| 171 | 
            +
              const isMobile = useMedia(config.media.md);
         | 
| 168 172 | 
             
              return /* @__PURE__ */ React2.createElement(
         | 
| 169 173 | 
             
                Flex,
         | 
| 170 174 | 
             
                __spreadValues({
         | 
| @@ -200,7 +204,9 @@ var HMSVideo = forwardRef((_a, videoRef) => { | |
| 200 204 | 
             
                      margin: "0 auto",
         | 
| 201 205 | 
             
                      minHeight: "0",
         | 
| 202 206 | 
             
                      objectFit: "contain",
         | 
| 203 | 
            -
                      width: "inherit"
         | 
| 207 | 
            +
                      width: "inherit",
         | 
| 208 | 
            +
                      height: isLandscape || isMobile ? "100%" : "",
         | 
| 209 | 
            +
                      position: isLandscape || isMobile ? "absolute" : ""
         | 
| 204 210 | 
             
                    },
         | 
| 205 211 | 
             
                    ref: videoRef,
         | 
| 206 212 | 
             
                    playsInline: true
         | 
| @@ -210,7 +216,7 @@ var HMSVideo = forwardRef((_a, videoRef) => { | |
| 210 216 | 
             
              );
         | 
| 211 217 | 
             
            });
         | 
| 212 218 |  | 
| 213 | 
            -
            // src/Prebuilt/components/HMSVideo/ | 
| 219 | 
            +
            // src/Prebuilt/components/HMSVideo/PlayPauseButton.tsx
         | 
| 214 220 | 
             
            init_define_process_env();
         | 
| 215 221 | 
             
            import React4 from "react";
         | 
| 216 222 | 
             
            import { PauseIcon, PlayIcon } from "@100mslive/react-icons";
         | 
| @@ -226,8 +232,8 @@ var useHMSPlayerContext = () => { | |
| 226 232 | 
             
              return context;
         | 
| 227 233 | 
             
            };
         | 
| 228 234 |  | 
| 229 | 
            -
            // src/Prebuilt/components/HMSVideo/ | 
| 230 | 
            -
            var  | 
| 235 | 
            +
            // src/Prebuilt/components/HMSVideo/PlayPauseButton.tsx
         | 
| 236 | 
            +
            var PlayPauseButton = ({
         | 
| 231 237 | 
             
              isPaused,
         | 
| 232 238 | 
             
              width = 20,
         | 
| 233 239 | 
             
              height = 20
         | 
| @@ -240,9 +246,21 @@ var PlayButton = ({ | |
| 240 246 | 
             
              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 })));
         | 
| 241 247 | 
             
            };
         | 
| 242 248 |  | 
| 249 | 
            +
            // src/Prebuilt/components/HMSVideo/SeekControls.tsx
         | 
| 250 | 
            +
            init_define_process_env();
         | 
| 251 | 
            +
            import React5 from "react";
         | 
| 252 | 
            +
            var SeekControls = ({
         | 
| 253 | 
            +
              title,
         | 
| 254 | 
            +
              onClick,
         | 
| 255 | 
            +
              children,
         | 
| 256 | 
            +
              css
         | 
| 257 | 
            +
            }) => {
         | 
| 258 | 
            +
              return /* @__PURE__ */ React5.createElement(Tooltip, { title, side: "top" }, /* @__PURE__ */ React5.createElement(IconButton, { onClick, "data-testid": "backward_forward_arrow_btn", css }, children));
         | 
| 259 | 
            +
            };
         | 
| 260 | 
            +
             | 
| 243 261 | 
             
            // src/Prebuilt/components/HMSVideo/VideoProgress.tsx
         | 
| 244 262 | 
             
            init_define_process_env();
         | 
| 245 | 
            -
            import  | 
| 263 | 
            +
            import React6, { useEffect, useState } from "react";
         | 
| 246 264 |  | 
| 247 265 | 
             
            // src/Prebuilt/components/HMSVideo/utils.ts
         | 
| 248 266 | 
             
            init_define_process_env();
         | 
| @@ -273,7 +291,7 @@ function getTime(timeInMilles) { | |
| 273 291 | 
             
            }
         | 
| 274 292 |  | 
| 275 293 | 
             
            // src/Prebuilt/components/HMSVideo/VideoProgress.tsx
         | 
| 276 | 
            -
            var VideoProgress = () => {
         | 
| 294 | 
            +
            var VideoProgress = ({ isDvr = true }) => {
         | 
| 277 295 | 
             
              const { hlsPlayer: hlsPlayer2 } = useHMSPlayerContext();
         | 
| 278 296 | 
             
              const [videoProgress, setVideoProgress] = useState(0);
         | 
| 279 297 | 
             
              const [bufferProgress, setBufferProgress] = useState(0);
         | 
| @@ -314,7 +332,7 @@ var VideoProgress = () => { | |
| 314 332 | 
             
              if (!videoEl) {
         | 
| 315 333 | 
             
                return null;
         | 
| 316 334 | 
             
              }
         | 
| 317 | 
            -
              return /* @__PURE__ */  | 
| 335 | 
            +
              return /* @__PURE__ */ React6.createElement(Flex, { align: "center", css: { cursor: "pointer", h: "$2", alignSelf: "stretch", pointerEvents: isDvr ? "" : "none" } }, /* @__PURE__ */ React6.createElement(
         | 
| 318 336 | 
             
                Slider,
         | 
| 319 337 | 
             
                {
         | 
| 320 338 | 
             
                  id: "video-actual-rest",
         | 
| @@ -322,7 +340,8 @@ var VideoProgress = () => { | |
| 322 340 | 
             
                    cursor: "pointer",
         | 
| 323 341 | 
             
                    h: "$2",
         | 
| 324 342 | 
             
                    zIndex: 1,
         | 
| 325 | 
            -
                    transition: `all .2s ease .5s | 
| 343 | 
            +
                    transition: `all .2s ease .5s`,
         | 
| 344 | 
            +
                    pointerEvents: isDvr ? "" : "none"
         | 
| 326 345 | 
             
                  },
         | 
| 327 346 | 
             
                  min: 0,
         | 
| 328 347 | 
             
                  max: 100,
         | 
| @@ -330,9 +349,9 @@ var VideoProgress = () => { | |
| 330 349 | 
             
                  value: [videoProgress],
         | 
| 331 350 | 
             
                  showTooltip: false,
         | 
| 332 351 | 
             
                  onValueChange: onProgress,
         | 
| 333 | 
            -
                  thumbStyles: { w: "$6", h: "$6" }
         | 
| 352 | 
            +
                  thumbStyles: { w: "$6", h: "$6", display: isDvr ? "" : "none" }
         | 
| 334 353 | 
             
                }
         | 
| 335 | 
            -
              ), /* @__PURE__ */  | 
| 354 | 
            +
              ), /* @__PURE__ */ React6.createElement(
         | 
| 336 355 | 
             
                Box,
         | 
| 337 356 | 
             
                {
         | 
| 338 357 | 
             
                  id: "video-buffer",
         | 
| @@ -350,7 +369,7 @@ var VideoProgress = () => { | |
| 350 369 |  | 
| 351 370 | 
             
            // src/Prebuilt/components/HMSVideo/VideoTime.tsx
         | 
| 352 371 | 
             
            init_define_process_env();
         | 
| 353 | 
            -
            import  | 
| 372 | 
            +
            import React7, { useEffect as useEffect2, useState as useState2 } from "react";
         | 
| 354 373 | 
             
            import { HMSHLSPlayerEvents } from "@100mslive/hls-player";
         | 
| 355 374 | 
             
            var VideoTime = () => {
         | 
| 356 375 | 
             
              const { hlsPlayer: hlsPlayer2 } = useHMSPlayerContext();
         | 
| @@ -371,7 +390,7 @@ var VideoTime = () => { | |
| 371 390 | 
             
                  hlsPlayer2 == null ? void 0 : hlsPlayer2.off(HMSHLSPlayerEvents.CURRENT_TIME, timeupdateHandler);
         | 
| 372 391 | 
             
                };
         | 
| 373 392 | 
             
              }, [hlsPlayer2]);
         | 
| 374 | 
            -
              return hlsPlayer2 ? /* @__PURE__ */  | 
| 393 | 
            +
              return hlsPlayer2 ? /* @__PURE__ */ React7.createElement(
         | 
| 375 394 | 
             
                Text,
         | 
| 376 395 | 
             
                {
         | 
| 377 396 | 
             
                  variant: "body1",
         | 
| @@ -390,13 +409,14 @@ var VideoTime = () => { | |
| 390 409 |  | 
| 391 410 | 
             
            // src/Prebuilt/components/HMSVideo/VolumeControl.tsx
         | 
| 392 411 | 
             
            init_define_process_env();
         | 
| 393 | 
            -
            import  | 
| 412 | 
            +
            import React8, { useState as useState3 } from "react";
         | 
| 394 413 | 
             
            import { VolumeOneIcon, VolumeTwoIcon, VolumeZeroIcon } from "@100mslive/react-icons";
         | 
| 395 414 | 
             
            var VolumeControl = () => {
         | 
| 415 | 
            +
              var _a;
         | 
| 396 416 | 
             
              const { hlsPlayer: hlsPlayer2 } = useHMSPlayerContext();
         | 
| 397 | 
            -
              const [volume, setVolume] = useState3((hlsPlayer2 == null ? void 0 : hlsPlayer2.volume)  | 
| 417 | 
            +
              const [volume, setVolume] = useState3((_a = hlsPlayer2 == null ? void 0 : hlsPlayer2.volume) != null ? _a : 100);
         | 
| 398 418 | 
             
              const [showSlider, setShowSlider] = useState3(false);
         | 
| 399 | 
            -
              return /* @__PURE__ */  | 
| 419 | 
            +
              return /* @__PURE__ */ React8.createElement(
         | 
| 400 420 | 
             
                Flex,
         | 
| 401 421 | 
             
                {
         | 
| 402 422 | 
             
                  align: "center",
         | 
| @@ -410,7 +430,7 @@ var VolumeControl = () => { | |
| 410 430 | 
             
                    setShowSlider(false);
         | 
| 411 431 | 
             
                  }
         | 
| 412 432 | 
             
                },
         | 
| 413 | 
            -
                /* @__PURE__ */  | 
| 433 | 
            +
                /* @__PURE__ */ React8.createElement(
         | 
| 414 434 | 
             
                  VolumeIcon,
         | 
| 415 435 | 
             
                  {
         | 
| 416 436 | 
             
                    volume,
         | 
| @@ -425,7 +445,7 @@ var VolumeControl = () => { | |
| 425 445 | 
             
                    }
         | 
| 426 446 | 
             
                  }
         | 
| 427 447 | 
             
                ),
         | 
| 428 | 
            -
                /* @__PURE__ */  | 
| 448 | 
            +
                /* @__PURE__ */ React8.createElement(
         | 
| 429 449 | 
             
                  Slider,
         | 
| 430 450 | 
             
                  {
         | 
| 431 451 | 
             
                    css: {
         | 
| @@ -453,15 +473,15 @@ var VolumeControl = () => { | |
| 453 473 | 
             
            };
         | 
| 454 474 | 
             
            var VolumeIcon = ({ volume, onClick }) => {
         | 
| 455 475 | 
             
              if (volume === 0) {
         | 
| 456 | 
            -
                return /* @__PURE__ */  | 
| 476 | 
            +
                return /* @__PURE__ */ React8.createElement(VolumeZeroIcon, { style: { cursor: "pointer", transition: "color 0.3s" }, onClick });
         | 
| 457 477 | 
             
              }
         | 
| 458 | 
            -
              return volume < 50 ? /* @__PURE__ */  | 
| 478 | 
            +
              return volume < 50 ? /* @__PURE__ */ React8.createElement(VolumeOneIcon, { style: { cursor: "pointer", transition: "color 0.3s" }, onClick }) : /* @__PURE__ */ React8.createElement(VolumeTwoIcon, { style: { cursor: "pointer", transition: "color 0.3s" }, onClick });
         | 
| 459 479 | 
             
            };
         | 
| 460 480 |  | 
| 461 481 | 
             
            // src/Prebuilt/components/HMSVideo/index.ts
         | 
| 462 482 | 
             
            var HMSVideoPlayer = {
         | 
| 463 483 | 
             
              Root: HMSVideo,
         | 
| 464 | 
            -
               | 
| 484 | 
            +
              PlayPauseButton,
         | 
| 465 485 | 
             
              Progress: VideoProgress,
         | 
| 466 486 | 
             
              Duration: VideoTime,
         | 
| 467 487 | 
             
              Volume: VolumeControl,
         | 
| @@ -469,25 +489,59 @@ var HMSVideoPlayer = { | |
| 469 489 | 
             
                Root: VideoControls,
         | 
| 470 490 | 
             
                Left: LeftControls,
         | 
| 471 491 | 
             
                Right: RightControls
         | 
| 472 | 
            -
              }
         | 
| 492 | 
            +
              },
         | 
| 493 | 
            +
              Seeker: SeekControls
         | 
| 473 494 | 
             
            };
         | 
| 474 495 |  | 
| 475 496 | 
             
            // src/Prebuilt/components/HMSVideo/FullscreenButton.tsx
         | 
| 476 497 | 
             
            init_define_process_env();
         | 
| 477 | 
            -
            import  | 
| 498 | 
            +
            import React9 from "react";
         | 
| 478 499 | 
             
            import { ExpandIcon, ShrinkIcon } from "@100mslive/react-icons";
         | 
| 479 500 | 
             
            var FullScreenButton = ({ isFullScreen, onToggle }) => {
         | 
| 480 | 
            -
              return /* @__PURE__ */  | 
| 501 | 
            +
              return /* @__PURE__ */ React9.createElement(Tooltip, { title: `${isFullScreen ? "Exit" : "Go"} fullscreen`, side: "top" }, /* @__PURE__ */ React9.createElement(IconButton, { css: { margin: "0px" }, onClick: onToggle, key: "fullscreen_btn", "data-testid": "fullscreen_btn" }, /* @__PURE__ */ React9.createElement(Flex, null, isFullScreen ? /* @__PURE__ */ React9.createElement(ShrinkIcon, null) : /* @__PURE__ */ React9.createElement(ExpandIcon, null))));
         | 
| 481 502 | 
             
            };
         | 
| 482 503 |  | 
| 483 504 | 
             
            // src/Prebuilt/components/HMSVideo/HLSAutoplayBlockedPrompt.tsx
         | 
| 484 505 | 
             
            init_define_process_env();
         | 
| 485 | 
            -
            import  | 
| 506 | 
            +
            import React10 from "react";
         | 
| 507 | 
            +
            import { useMedia as useMedia2 } from "react-use";
         | 
| 508 | 
            +
            import { VolumeTwoIcon as VolumeTwoIcon2 } from "@100mslive/react-icons";
         | 
| 486 509 | 
             
            function HLSAutoplayBlockedPrompt({
         | 
| 487 510 | 
             
              open,
         | 
| 488 511 | 
             
              unblockAutoPlay
         | 
| 489 512 | 
             
            }) {
         | 
| 490 | 
            -
               | 
| 513 | 
            +
              const isLandscape = useIsLandscape();
         | 
| 514 | 
            +
              const isMobile = useMedia2(config.media.md);
         | 
| 515 | 
            +
              if ((isMobile || isLandscape) && open) {
         | 
| 516 | 
            +
                return /* @__PURE__ */ React10.createElement(
         | 
| 517 | 
            +
                  IconButton,
         | 
| 518 | 
            +
                  {
         | 
| 519 | 
            +
                    css: {
         | 
| 520 | 
            +
                      border: "1px solid white",
         | 
| 521 | 
            +
                      bg: "white",
         | 
| 522 | 
            +
                      color: "#000",
         | 
| 523 | 
            +
                      r: "$2"
         | 
| 524 | 
            +
                    },
         | 
| 525 | 
            +
                    onClick: () => __async(this, null, function* () {
         | 
| 526 | 
            +
                      return yield unblockAutoPlay();
         | 
| 527 | 
            +
                    })
         | 
| 528 | 
            +
                  },
         | 
| 529 | 
            +
                  /* @__PURE__ */ React10.createElement(VolumeTwoIcon2, { width: "32", height: "32" }),
         | 
| 530 | 
            +
                  /* @__PURE__ */ React10.createElement(
         | 
| 531 | 
            +
                    Text,
         | 
| 532 | 
            +
                    {
         | 
| 533 | 
            +
                      variant: "body1",
         | 
| 534 | 
            +
                      css: {
         | 
| 535 | 
            +
                        fontWeight: "$semiBold",
         | 
| 536 | 
            +
                        px: "$2",
         | 
| 537 | 
            +
                        color: "#000"
         | 
| 538 | 
            +
                      }
         | 
| 539 | 
            +
                    },
         | 
| 540 | 
            +
                    "Tap To Unmute"
         | 
| 541 | 
            +
                  )
         | 
| 542 | 
            +
                );
         | 
| 543 | 
            +
              }
         | 
| 544 | 
            +
              return /* @__PURE__ */ React10.createElement(
         | 
| 491 545 | 
             
                Dialog.Root,
         | 
| 492 546 | 
             
                {
         | 
| 493 547 | 
             
                  open,
         | 
| @@ -497,7 +551,7 @@ function HLSAutoplayBlockedPrompt({ | |
| 497 551 | 
             
                    }
         | 
| 498 552 | 
             
                  })
         | 
| 499 553 | 
             
                },
         | 
| 500 | 
            -
                /* @__PURE__ */  | 
| 554 | 
            +
                /* @__PURE__ */ React10.createElement(DialogContent, { title: "Attention", closeable: false }, /* @__PURE__ */ React10.createElement(DialogRow, null, /* @__PURE__ */ React10.createElement(Text, { variant: "md" }, 'The browser wants us to get a confirmation for playing the HLS Stream. Please click "play stream" to proceed.')), /* @__PURE__ */ React10.createElement(DialogRow, { justify: "end" }, /* @__PURE__ */ React10.createElement(
         | 
| 501 555 | 
             
                  Button,
         | 
| 502 556 | 
             
                  {
         | 
| 503 557 | 
             
                    variant: "primary",
         | 
| @@ -512,17 +566,17 @@ function HLSAutoplayBlockedPrompt({ | |
| 512 566 |  | 
| 513 567 | 
             
            // src/Prebuilt/components/HMSVideo/HLSCaptionSelector.tsx
         | 
| 514 568 | 
             
            init_define_process_env();
         | 
| 515 | 
            -
            import  | 
| 569 | 
            +
            import React11 from "react";
         | 
| 516 570 | 
             
            import { ClosedCaptionIcon, OpenCaptionIcon } from "@100mslive/react-icons";
         | 
| 517 571 | 
             
            function HLSCaptionSelector({ isEnabled }) {
         | 
| 518 572 | 
             
              const { hlsPlayer: hlsPlayer2 } = useHMSPlayerContext();
         | 
| 519 | 
            -
              return /* @__PURE__ */  | 
| 573 | 
            +
              return /* @__PURE__ */ React11.createElement(Tooltip, { title: "Subtitles/closed captions", side: "top" }, /* @__PURE__ */ React11.createElement(IconButton, { css: { p: "$2" }, onClick: () => hlsPlayer2 == null ? void 0 : hlsPlayer2.toggleCaption() }, isEnabled ? /* @__PURE__ */ React11.createElement(ClosedCaptionIcon, { width: "20", height: "20px" }) : /* @__PURE__ */ React11.createElement(OpenCaptionIcon, { width: "20", height: "20px" })));
         | 
| 520 574 | 
             
            }
         | 
| 521 575 |  | 
| 522 576 | 
             
            // src/Prebuilt/components/HMSVideo/HLSQualitySelector.tsx
         | 
| 523 577 | 
             
            init_define_process_env();
         | 
| 524 | 
            -
            import  | 
| 525 | 
            -
            import { useMedia } from "react-use";
         | 
| 578 | 
            +
            import React12 from "react";
         | 
| 579 | 
            +
            import { useMedia as useMedia3 } from "react-use";
         | 
| 526 580 | 
             
            import { CheckIcon, CrossIcon as CrossIcon2, SettingsIcon } from "@100mslive/react-icons";
         | 
| 527 581 | 
             
            function HLSQualitySelector({
         | 
| 528 582 | 
             
              open,
         | 
| @@ -532,10 +586,10 @@ function HLSQualitySelector({ | |
| 532 586 | 
             
              selection,
         | 
| 533 587 | 
             
              isAuto
         | 
| 534 588 | 
             
            }) {
         | 
| 535 | 
            -
              const isMobile =  | 
| 589 | 
            +
              const isMobile = useMedia3(config.media.md);
         | 
| 536 590 | 
             
              const isLandscape = useIsLandscape();
         | 
| 537 591 | 
             
              if (isMobile || isLandscape) {
         | 
| 538 | 
            -
                return /* @__PURE__ */  | 
| 592 | 
            +
                return /* @__PURE__ */ React12.createElement(Sheet.Root, { open, onOpenChange }, /* @__PURE__ */ React12.createElement(Sheet.Trigger, { asChild: true, "data-testid": "quality_selector" }, /* @__PURE__ */ React12.createElement(
         | 
| 539 593 | 
             
                  Flex,
         | 
| 540 594 | 
             
                  {
         | 
| 541 595 | 
             
                    css: {
         | 
| @@ -545,8 +599,8 @@ function HLSQualitySelector({ | |
| 545 599 | 
             
                      p: "$2"
         | 
| 546 600 | 
             
                    }
         | 
| 547 601 | 
             
                  },
         | 
| 548 | 
            -
                  /* @__PURE__ */  | 
| 549 | 
            -
                )), layers.length > 0 && /* @__PURE__ */  | 
| 602 | 
            +
                  /* @__PURE__ */ React12.createElement(SettingsIcon, null)
         | 
| 603 | 
            +
                )), layers.length > 0 && /* @__PURE__ */ React12.createElement(Sheet.Content, { css: { bg: "$surface_default", pb: "$1" }, onClick: () => onOpenChange(false) }, /* @__PURE__ */ React12.createElement(
         | 
| 550 604 | 
             
                  Sheet.Title,
         | 
| 551 605 | 
             
                  {
         | 
| 552 606 | 
             
                    css: {
         | 
| @@ -563,9 +617,9 @@ function HLSQualitySelector({ | |
| 563 617 | 
             
                    }
         | 
| 564 618 | 
             
                  },
         | 
| 565 619 | 
             
                  "Quality",
         | 
| 566 | 
            -
                  /* @__PURE__ */  | 
| 620 | 
            +
                  /* @__PURE__ */ React12.createElement(Sheet.Close, { css: { color: "$on_surface_high" }, onClick: () => onOpenChange(false) }, /* @__PURE__ */ React12.createElement(CrossIcon2, null))
         | 
| 567 621 | 
             
                ), layers.map((layer) => {
         | 
| 568 | 
            -
                  return /* @__PURE__ */  | 
| 622 | 
            +
                  return /* @__PURE__ */ React12.createElement(
         | 
| 569 623 | 
             
                    Flex,
         | 
| 570 624 | 
             
                    {
         | 
| 571 625 | 
             
                      align: "center",
         | 
| @@ -583,11 +637,11 @@ function HLSQualitySelector({ | |
| 583 637 | 
             
                      key: layer.width,
         | 
| 584 638 | 
             
                      onClick: () => onQualityChange(layer)
         | 
| 585 639 | 
             
                    },
         | 
| 586 | 
            -
                    /* @__PURE__ */  | 
| 587 | 
            -
                    /* @__PURE__ */  | 
| 588 | 
            -
                    !isAuto && layer.width === (selection == null ? void 0 : selection.width) && layer.height === (selection == null ? void 0 : selection.height) && /* @__PURE__ */  | 
| 640 | 
            +
                    /* @__PURE__ */ React12.createElement(Text, { variant: "caption", css: { fontWeight: "$semiBold" } }, getQualityText(layer)),
         | 
| 641 | 
            +
                    /* @__PURE__ */ React12.createElement(Text, { variant: "caption", css: { flex: "1 1 0", c: "$on_surface_low", pl: "$2" } }, getBitrateText(layer)),
         | 
| 642 | 
            +
                    !isAuto && layer.width === (selection == null ? void 0 : selection.width) && layer.height === (selection == null ? void 0 : selection.height) && /* @__PURE__ */ React12.createElement(CheckIcon, { width: "16px", height: "16px" })
         | 
| 589 643 | 
             
                  );
         | 
| 590 | 
            -
                }), /* @__PURE__ */  | 
| 644 | 
            +
                }), /* @__PURE__ */ React12.createElement(
         | 
| 591 645 | 
             
                  Flex,
         | 
| 592 646 | 
             
                  {
         | 
| 593 647 | 
             
                    align: "center",
         | 
| @@ -605,11 +659,11 @@ function HLSQualitySelector({ | |
| 605 659 | 
             
                    key: "auto",
         | 
| 606 660 | 
             
                    onClick: () => onQualityChange({ height: "auto" })
         | 
| 607 661 | 
             
                  },
         | 
| 608 | 
            -
                  /* @__PURE__ */  | 
| 609 | 
            -
                  isAuto && /* @__PURE__ */  | 
| 662 | 
            +
                  /* @__PURE__ */ React12.createElement(Text, { variant: "caption", css: { fontWeight: "$semiBold", flex: "1 1 0" } }, "Auto"),
         | 
| 663 | 
            +
                  isAuto && /* @__PURE__ */ React12.createElement(CheckIcon, { width: "16px", height: "16px" })
         | 
| 610 664 | 
             
                )));
         | 
| 611 665 | 
             
              }
         | 
| 612 | 
            -
              return /* @__PURE__ */  | 
| 666 | 
            +
              return /* @__PURE__ */ React12.createElement(Dropdown.Root, { open, onOpenChange: (value) => onOpenChange(value) }, /* @__PURE__ */ React12.createElement(Dropdown.Trigger, { asChild: true, "data-testid": "quality_selector" }, /* @__PURE__ */ React12.createElement(
         | 
| 613 667 | 
             
                Flex,
         | 
| 614 668 | 
             
                {
         | 
| 615 669 | 
             
                  css: {
         | 
| @@ -619,7 +673,7 @@ function HLSQualitySelector({ | |
| 619 673 | 
             
                    p: "$2"
         | 
| 620 674 | 
             
                  }
         | 
| 621 675 | 
             
                },
         | 
| 622 | 
            -
                /* @__PURE__ */  | 
| 676 | 
            +
                /* @__PURE__ */ React12.createElement(Tooltip, { title: "Select Quality", side: "top" }, /* @__PURE__ */ React12.createElement(Flex, { align: "center" }, /* @__PURE__ */ React12.createElement(
         | 
| 623 677 | 
             
                  Box,
         | 
| 624 678 | 
             
                  {
         | 
| 625 679 | 
             
                    css: {
         | 
| @@ -630,8 +684,8 @@ function HLSQualitySelector({ | |
| 630 684 | 
             
                      c: "$on_surface_high"
         | 
| 631 685 | 
             
                    }
         | 
| 632 686 | 
             
                  },
         | 
| 633 | 
            -
                  /* @__PURE__ */  | 
| 634 | 
            -
                ), /* @__PURE__ */  | 
| 687 | 
            +
                  /* @__PURE__ */ React12.createElement(SettingsIcon, null)
         | 
| 688 | 
            +
                ), /* @__PURE__ */ React12.createElement(
         | 
| 635 689 | 
             
                  Text,
         | 
| 636 690 | 
             
                  {
         | 
| 637 691 | 
             
                    variant: {
         | 
| @@ -641,7 +695,7 @@ function HLSQualitySelector({ | |
| 641 695 | 
             
                    },
         | 
| 642 696 | 
             
                    css: { display: "flex", alignItems: "center", ml: "$2", c: "$on_surface_medium" }
         | 
| 643 697 | 
             
                  },
         | 
| 644 | 
            -
                  isAuto && /* @__PURE__ */  | 
| 698 | 
            +
                  isAuto && /* @__PURE__ */ React12.createElement(React12.Fragment, null, "Auto", /* @__PURE__ */ React12.createElement(
         | 
| 645 699 | 
             
                    Box,
         | 
| 646 700 | 
             
                    {
         | 
| 647 701 | 
             
                      css: {
         | 
| @@ -656,7 +710,7 @@ function HLSQualitySelector({ | |
| 656 710 | 
             
                  selection && Math.min(selection.width || 0, selection.height || 0),
         | 
| 657 711 | 
             
                  "p"
         | 
| 658 712 | 
             
                )))
         | 
| 659 | 
            -
              )), layers.length > 0 && /* @__PURE__ */  | 
| 713 | 
            +
              )), layers.length > 0 && /* @__PURE__ */ React12.createElement(
         | 
| 660 714 | 
             
                Dropdown.Content,
         | 
| 661 715 | 
             
                {
         | 
| 662 716 | 
             
                  sideOffset: 5,
         | 
| @@ -672,7 +726,7 @@ function HLSQualitySelector({ | |
| 672 726 | 
             
                  }
         | 
| 673 727 | 
             
                },
         | 
| 674 728 | 
             
                layers.map((layer) => {
         | 
| 675 | 
            -
                  return /* @__PURE__ */  | 
| 729 | 
            +
                  return /* @__PURE__ */ React12.createElement(
         | 
| 676 730 | 
             
                    Dropdown.Item,
         | 
| 677 731 | 
             
                    {
         | 
| 678 732 | 
             
                      onClick: () => onQualityChange(layer),
         | 
| @@ -687,12 +741,12 @@ function HLSQualitySelector({ | |
| 687 741 | 
             
                        gap: "$2"
         | 
| 688 742 | 
             
                      }
         | 
| 689 743 | 
             
                    },
         | 
| 690 | 
            -
                    /* @__PURE__ */  | 
| 691 | 
            -
                    /* @__PURE__ */  | 
| 692 | 
            -
                    !isAuto && layer.width === (selection == null ? void 0 : selection.width) && layer.height === (selection == null ? void 0 : selection.height) && /* @__PURE__ */  | 
| 744 | 
            +
                    /* @__PURE__ */ React12.createElement(Text, { variant: "caption", css: { fontWeight: "$semiBold" } }, getQualityText(layer)),
         | 
| 745 | 
            +
                    /* @__PURE__ */ React12.createElement(Text, { variant: "caption", css: { flex: "1 1 0", c: "$on_surface_low", pl: "$2" } }, getBitrateText(layer)),
         | 
| 746 | 
            +
                    !isAuto && layer.width === (selection == null ? void 0 : selection.width) && layer.height === (selection == null ? void 0 : selection.height) && /* @__PURE__ */ React12.createElement(CheckIcon, { width: "16px", height: "16px" })
         | 
| 693 747 | 
             
                  );
         | 
| 694 748 | 
             
                }),
         | 
| 695 | 
            -
                /* @__PURE__ */  | 
| 749 | 
            +
                /* @__PURE__ */ React12.createElement(
         | 
| 696 750 | 
             
                  Dropdown.Item,
         | 
| 697 751 | 
             
                  {
         | 
| 698 752 | 
             
                    onClick: () => onQualityChange({ height: "auto" }),
         | 
| @@ -707,8 +761,8 @@ function HLSQualitySelector({ | |
| 707 761 | 
             
                      gap: "$2"
         | 
| 708 762 | 
             
                    }
         | 
| 709 763 | 
             
                  },
         | 
| 710 | 
            -
                  /* @__PURE__ */  | 
| 711 | 
            -
                  isAuto && /* @__PURE__ */  | 
| 764 | 
            +
                  /* @__PURE__ */ React12.createElement(Text, { variant: "caption", css: { fontWeight: "$semiBold", flex: "1 1 0" } }, "Auto"),
         | 
| 765 | 
            +
                  isAuto && /* @__PURE__ */ React12.createElement(CheckIcon, { width: "16px", height: "16px" })
         | 
| 712 766 | 
             
                )
         | 
| 713 767 | 
             
              ));
         | 
| 714 768 | 
             
            }
         | 
| @@ -717,7 +771,7 @@ var getBitrateText = (layer) => `(${(Number(layer.bitrate / 1e3) / 1e3).toFixed( | |
| 717 771 |  | 
| 718 772 | 
             
            // src/Prebuilt/components/HMSVideo/MwebHLSViewTitle.tsx
         | 
| 719 773 | 
             
            init_define_process_env();
         | 
| 720 | 
            -
            import  | 
| 774 | 
            +
            import React13, { useCallback, useEffect as useEffect3, useRef, useState as useState4 } from "react";
         | 
| 721 775 | 
             
            import { selectHLSState, selectPeerCount, useHMSStore } from "@100mslive/react-sdk";
         | 
| 722 776 | 
             
            var HLSViewTitle = () => {
         | 
| 723 777 | 
             
              const peerCount = useHMSStore(selectPeerCount);
         | 
| @@ -752,7 +806,7 @@ var HLSViewTitle = () => { | |
| 752 806 | 
             
                  }
         | 
| 753 807 | 
             
                };
         | 
| 754 808 | 
             
              }, [hlsState == null ? void 0 : hlsState.running, hlsState == null ? void 0 : hlsState.variants, screenType, startTimer]);
         | 
| 755 | 
            -
              return /* @__PURE__ */  | 
| 809 | 
            +
              return /* @__PURE__ */ React13.createElement(
         | 
| 756 810 | 
             
                Flex,
         | 
| 757 811 | 
             
                {
         | 
| 758 812 | 
             
                  gap: "4",
         | 
| @@ -766,8 +820,8 @@ var HLSViewTitle = () => { | |
| 766 820 | 
             
                    backgroundColor: "$surface_dim"
         | 
| 767 821 | 
             
                  }
         | 
| 768 822 | 
             
                },
         | 
| 769 | 
            -
                /* @__PURE__ */  | 
| 770 | 
            -
                /* @__PURE__ */  | 
| 823 | 
            +
                /* @__PURE__ */ React13.createElement(Logo, null),
         | 
| 824 | 
            +
                /* @__PURE__ */ React13.createElement(Flex, { direction: "column" }, /* @__PURE__ */ React13.createElement(Text, { variant: "sub2", css: { fontWeight: "$semiBold" } }, "Tech Talk"), /* @__PURE__ */ React13.createElement(Flex, { gap: "1" }, /* @__PURE__ */ React13.createElement(Text, { variant: "caption", css: { color: "$on_surface_medium" } }, getFormattedCount(peerCount) + " watching"), /* @__PURE__ */ React13.createElement(
         | 
| 771 825 | 
             
                  Flex,
         | 
| 772 826 | 
             
                  {
         | 
| 773 827 | 
             
                    direction: "column",
         | 
| @@ -779,7 +833,7 @@ var HLSViewTitle = () => { | |
| 779 833 | 
             
                      alignSelf: "center"
         | 
| 780 834 | 
             
                    }
         | 
| 781 835 | 
             
                  }
         | 
| 782 | 
            -
                ), /* @__PURE__ */  | 
| 836 | 
            +
                ), /* @__PURE__ */ React13.createElement(Text, { variant: "caption", css: { color: "$on_surface_medium" } }, "Started " + getTime(liveTime) + " ago")))
         | 
| 783 837 | 
             
              );
         | 
| 784 838 | 
             
            };
         | 
| 785 839 |  | 
| @@ -787,7 +841,7 @@ var HLSViewTitle = () => { | |
| 787 841 | 
             
            var hlsPlayer;
         | 
| 788 842 | 
             
            var toastMap = {};
         | 
| 789 843 | 
             
            var HLSView = () => {
         | 
| 790 | 
            -
              var _a, _b | 
| 844 | 
            +
              var _a, _b;
         | 
| 791 845 | 
             
              const videoRef = useRef2(null);
         | 
| 792 846 | 
             
              const hlsViewRef = useRef2(null);
         | 
| 793 847 | 
             
              const hlsState = useHMSStore2(selectHLSState2);
         | 
| @@ -805,6 +859,7 @@ var HLSView = () => { | |
| 805 859 | 
             
              const [hasCaptions, setHasCaptions] = useState5(false);
         | 
| 806 860 | 
             
              const [currentSelectedQuality, setCurrentSelectedQuality] = useState5(null);
         | 
| 807 861 | 
             
              const [isHlsAutoplayBlocked, setIsHlsAutoplayBlocked] = useState5(false);
         | 
| 862 | 
            +
              const [isSeekEnabled, setIsSeekEnabled] = useState5(false);
         | 
| 808 863 | 
             
              const [isPaused, setIsPaused] = useState5(false);
         | 
| 809 864 | 
             
              const [show, toggle] = useToggle(false);
         | 
| 810 865 | 
             
              const lastHlsUrl = usePrevious(hlsUrl);
         | 
| @@ -819,7 +874,7 @@ var HLSView = () => { | |
| 819 874 | 
             
              const toggleChat = useSidepaneToggle(SIDE_PANE_OPTIONS.CHAT);
         | 
| 820 875 | 
             
              const showChat = !!(elements == null ? void 0 : elements.chat);
         | 
| 821 876 | 
             
              const isFullScreenSupported = screenfull.isEnabled;
         | 
| 822 | 
            -
              const isMobile =  | 
| 877 | 
            +
              const isMobile = useMedia4(config.media.md);
         | 
| 823 878 | 
             
              const isLandscape = useIsLandscape();
         | 
| 824 879 | 
             
              const isFullScreen = useFullscreen(hlsViewRef, show, {
         | 
| 825 880 | 
             
                onClose: () => toggle(false)
         | 
| @@ -905,7 +960,7 @@ var HLSView = () => { | |
| 905 960 | 
             
                    const pollStartedBy = vanillaStore.getState(selectPeerNameByID(poll.startedBy)) || "Participant";
         | 
| 906 961 | 
             
                    const toastID = ToastManager.addToast({
         | 
| 907 962 | 
             
                      title: `${pollStartedBy} started a ${poll.type}: ${poll.title}`,
         | 
| 908 | 
            -
                      action: /* @__PURE__ */  | 
| 963 | 
            +
                      action: /* @__PURE__ */ React14.createElement(
         | 
| 909 964 | 
             
                        Button,
         | 
| 910 965 | 
             
                        {
         | 
| 911 966 | 
             
                          onClick: () => togglePollView(pollId),
         | 
| @@ -1000,41 +1055,56 @@ var HLSView = () => { | |
| 1000 1055 | 
             
                  if (controlsTimerRef.current) {
         | 
| 1001 1056 | 
             
                    clearTimeout(controlsTimerRef.current);
         | 
| 1002 1057 | 
             
                  }
         | 
| 1003 | 
            -
                  controlsTimerRef.current = setTimeout(() => {
         | 
| 1004 | 
            -
                    setControlsVisible(false);
         | 
| 1005 | 
            -
                  }, 5e3);
         | 
| 1006 1058 | 
             
                }
         | 
| 1007 1059 | 
             
                if (!isFullScreen && controlsTimerRef.current) {
         | 
| 1008 1060 | 
             
                  clearTimeout(controlsTimerRef.current);
         | 
| 1009 1061 | 
             
                }
         | 
| 1062 | 
            +
                controlsTimerRef.current = setTimeout(() => {
         | 
| 1063 | 
            +
                  setControlsVisible(false);
         | 
| 1064 | 
            +
                }, 5e3);
         | 
| 1010 1065 | 
             
                return () => {
         | 
| 1011 1066 | 
             
                  if (controlsTimerRef.current) {
         | 
| 1012 1067 | 
             
                    clearTimeout(controlsTimerRef.current);
         | 
| 1013 1068 | 
             
                  }
         | 
| 1014 1069 | 
             
                };
         | 
| 1015 1070 | 
             
              }, [controlsVisible, isFullScreen, qualityDropDownOpen]);
         | 
| 1016 | 
            -
              const  | 
| 1071 | 
            +
              const onSeekTo = useCallback2((seek) => {
         | 
| 1072 | 
            +
                var _a2;
         | 
| 1073 | 
            +
                hlsPlayer == null ? void 0 : hlsPlayer.seekTo(((_a2 = videoRef.current) == null ? void 0 : _a2.currentTime) + seek);
         | 
| 1074 | 
            +
              }, []);
         | 
| 1075 | 
            +
              const onDoubleClickHandler = useCallback2(
         | 
| 1017 1076 | 
             
                (event) => {
         | 
| 1018 | 
            -
                   | 
| 1019 | 
            -
                  if (event.type === "ontouchstart" && controlsVisible) {
         | 
| 1020 | 
            -
                    setControlsVisible(false);
         | 
| 1021 | 
            -
                    return;
         | 
| 1022 | 
            -
                  }
         | 
| 1023 | 
            -
                  if (event.type === "ontouchstart" || qualityDropDownOpen) {
         | 
| 1024 | 
            -
                    setControlsVisible(true);
         | 
| 1077 | 
            +
                  if (!(isMobile || isLandscape)) {
         | 
| 1025 1078 | 
             
                    return;
         | 
| 1026 1079 | 
             
                  }
         | 
| 1027 | 
            -
                   | 
| 1028 | 
            -
             | 
| 1029 | 
            -
             | 
| 1030 | 
            -
             | 
| 1031 | 
            -
             | 
| 1080 | 
            +
                  const sidePercentage = event.screenX * 100 / event.target.clientWidth;
         | 
| 1081 | 
            +
                  setIsSeekEnabled(true);
         | 
| 1082 | 
            +
                  if (sidePercentage < 45) {
         | 
| 1083 | 
            +
                    onSeekTo(-10);
         | 
| 1084 | 
            +
                  } else {
         | 
| 1085 | 
            +
                    onSeekTo(10);
         | 
| 1032 1086 | 
             
                  }
         | 
| 1087 | 
            +
                  setTimeout(() => {
         | 
| 1088 | 
            +
                    setIsSeekEnabled(false);
         | 
| 1089 | 
            +
                  }, 200);
         | 
| 1033 1090 | 
             
                },
         | 
| 1034 | 
            -
                [ | 
| 1091 | 
            +
                [isLandscape, isMobile, onSeekTo]
         | 
| 1035 1092 | 
             
              );
         | 
| 1093 | 
            +
              const onClickHandler = useCallback2(() => {
         | 
| 1094 | 
            +
                if (!(isMobile || isLandscape)) {
         | 
| 1095 | 
            +
                  return;
         | 
| 1096 | 
            +
                }
         | 
| 1097 | 
            +
                setControlsVisible((value) => !value);
         | 
| 1098 | 
            +
                if (controlsTimerRef.current) {
         | 
| 1099 | 
            +
                  clearTimeout(controlsTimerRef.current);
         | 
| 1100 | 
            +
                }
         | 
| 1101 | 
            +
              }, [isLandscape, isMobile]);
         | 
| 1036 1102 | 
             
              const onHoverHandler = useCallback2(
         | 
| 1037 1103 | 
             
                (event) => {
         | 
| 1104 | 
            +
                  event.preventDefault();
         | 
| 1105 | 
            +
                  if (isMobile || isLandscape) {
         | 
| 1106 | 
            +
                    return;
         | 
| 1107 | 
            +
                  }
         | 
| 1038 1108 | 
             
                  if (event.type === "mouseenter" || qualityDropDownOpen) {
         | 
| 1039 1109 | 
             
                    setControlsVisible(true);
         | 
| 1040 1110 | 
             
                    return;
         | 
| @@ -1048,9 +1118,9 @@ var HLSView = () => { | |
| 1048 1118 | 
             
                    }
         | 
| 1049 1119 | 
             
                  }
         | 
| 1050 1120 | 
             
                },
         | 
| 1051 | 
            -
                [controlsVisible, isFullScreen, qualityDropDownOpen]
         | 
| 1121 | 
            +
                [controlsVisible, isFullScreen, isLandscape, isMobile, qualityDropDownOpen]
         | 
| 1052 1122 | 
             
              );
         | 
| 1053 | 
            -
              return /* @__PURE__ */  | 
| 1123 | 
            +
              return /* @__PURE__ */ React14.createElement(
         | 
| 1054 1124 | 
             
                Flex,
         | 
| 1055 1125 | 
             
                {
         | 
| 1056 1126 | 
             
                  key: "hls-viewer",
         | 
| @@ -1058,11 +1128,12 @@ var HLSView = () => { | |
| 1058 1128 | 
             
                  ref: hlsViewRef,
         | 
| 1059 1129 | 
             
                  direction: isMobile || isLandscape ? "column" : "row",
         | 
| 1060 1130 | 
             
                  css: {
         | 
| 1061 | 
            -
                    w: sidepane !== "" && isLandscape ? " | 
| 1062 | 
            -
                    h: sidepane !== "" && isMobile ? "36%" : "100%"
         | 
| 1131 | 
            +
                    w: sidepane !== "" && isLandscape ? "" : "100%",
         | 
| 1132 | 
            +
                    h: sidepane !== "" && isMobile ? "36%" : "100%",
         | 
| 1133 | 
            +
                    flex: "1 1 0"
         | 
| 1063 1134 | 
             
                  }
         | 
| 1064 1135 | 
             
                },
         | 
| 1065 | 
            -
                hlsUrl && !streamEnded ? /* @__PURE__ */  | 
| 1136 | 
            +
                hlsUrl && !streamEnded ? /* @__PURE__ */ React14.createElement(React14.Fragment, null, /* @__PURE__ */ React14.createElement(HMSPlayerContext.Provider, { value: { hlsPlayer } }, (hlsStatsState == null ? void 0 : hlsStatsState.url) && enablHlsStats && !(isMobile || isLandscape) ? /* @__PURE__ */ React14.createElement(HlsStatsOverlay, { hlsStatsState, onClose: sfnOverlayClose }) : null, /* @__PURE__ */ React14.createElement(
         | 
| 1066 1137 | 
             
                  Flex,
         | 
| 1067 1138 | 
             
                  {
         | 
| 1068 1139 | 
             
                    id: "hls-player-container",
         | 
| @@ -1073,8 +1144,8 @@ var HLSView = () => { | |
| 1073 1144 | 
             
                      margin: "0 auto"
         | 
| 1074 1145 | 
             
                    }
         | 
| 1075 1146 | 
             
                  },
         | 
| 1076 | 
            -
                  /* @__PURE__ */  | 
| 1077 | 
            -
                  showLoader && /* @__PURE__ */  | 
| 1147 | 
            +
                  !(isMobile || isLandscape) && /* @__PURE__ */ React14.createElement(HLSAutoplayBlockedPrompt, { open: isHlsAutoplayBlocked, unblockAutoPlay }),
         | 
| 1148 | 
            +
                  showLoader && /* @__PURE__ */ React14.createElement(
         | 
| 1078 1149 | 
             
                    Flex,
         | 
| 1079 1150 | 
             
                    {
         | 
| 1080 1151 | 
             
                      align: "center",
         | 
| @@ -1083,56 +1154,68 @@ var HLSView = () => { | |
| 1083 1154 | 
             
                        position: "absolute"
         | 
| 1084 1155 | 
             
                      }
         | 
| 1085 1156 | 
             
                    },
         | 
| 1086 | 
            -
                    /* @__PURE__ */  | 
| 1157 | 
            +
                    /* @__PURE__ */ React14.createElement(Loading, { width: 72, height: 72 })
         | 
| 1087 1158 | 
             
                  ),
         | 
| 1088 | 
            -
                  /* @__PURE__ */  | 
| 1159 | 
            +
                  /* @__PURE__ */ React14.createElement(
         | 
| 1089 1160 | 
             
                    HMSVideoPlayer.Root,
         | 
| 1090 1161 | 
             
                    {
         | 
| 1091 1162 | 
             
                      ref: videoRef,
         | 
| 1092 1163 | 
             
                      onMouseEnter: onHoverHandler,
         | 
| 1093 1164 | 
             
                      onMouseMove: onHoverHandler,
         | 
| 1094 1165 | 
             
                      onMouseLeave: onHoverHandler,
         | 
| 1095 | 
            -
                       | 
| 1096 | 
            -
                       | 
| 1166 | 
            +
                      onClick: onClickHandler,
         | 
| 1167 | 
            +
                      onDoubleClick: (e) => {
         | 
| 1168 | 
            +
                        onDoubleClickHandler(e);
         | 
| 1169 | 
            +
                      }
         | 
| 1097 1170 | 
             
                    },
         | 
| 1098 | 
            -
                    /* @__PURE__ */  | 
| 1099 | 
            -
                       | 
| 1171 | 
            +
                    /* @__PURE__ */ React14.createElement(React14.Fragment, null, isMobile || isLandscape ? /* @__PURE__ */ React14.createElement(React14.Fragment, null, !showLoader && /* @__PURE__ */ React14.createElement(
         | 
| 1172 | 
            +
                      Flex,
         | 
| 1100 1173 | 
             
                      {
         | 
| 1174 | 
            +
                        align: "center",
         | 
| 1175 | 
            +
                        justify: "center",
         | 
| 1101 1176 | 
             
                        css: {
         | 
| 1102 | 
            -
                           | 
| 1103 | 
            -
                          top: "40%",
         | 
| 1104 | 
            -
                          left: "50%",
         | 
| 1105 | 
            -
                          transform: "translateY(-40%) translateX(-50%)",
         | 
| 1106 | 
            -
                          padding: "$4",
         | 
| 1177 | 
            +
                          bg: "#00000066",
         | 
| 1107 1178 | 
             
                          display: "inline-flex",
         | 
| 1108 | 
            -
                           | 
| 1109 | 
            -
                          gap: "$1",
         | 
| 1110 | 
            -
                          bg: "rgba(0, 0, 0, 0.6)",
         | 
| 1179 | 
            +
                          gap: "$2",
         | 
| 1111 1180 | 
             
                          zIndex: 1,
         | 
| 1181 | 
            +
                          size: "100%",
         | 
| 1112 1182 | 
             
                          visibility: controlsVisible ? `` : `hidden`,
         | 
| 1113 1183 | 
             
                          opacity: controlsVisible ? `1` : "0"
         | 
| 1114 1184 | 
             
                        }
         | 
| 1115 1185 | 
             
                      },
         | 
| 1116 | 
            -
                       | 
| 1117 | 
            -
                         | 
| 1186 | 
            +
                      /* @__PURE__ */ React14.createElement(
         | 
| 1187 | 
            +
                        HMSVideoPlayer.Seeker,
         | 
| 1118 1188 | 
             
                        {
         | 
| 1119 | 
            -
                           | 
| 1120 | 
            -
             | 
| 1121 | 
            -
             | 
| 1122 | 
            -
             | 
| 1189 | 
            +
                          title: "backward",
         | 
| 1190 | 
            +
                          css: {
         | 
| 1191 | 
            +
                            visibility: isSeekEnabled ? `` : `hidden`,
         | 
| 1192 | 
            +
                            opacity: isSeekEnabled ? `1` : "0"
         | 
| 1193 | 
            +
                          }
         | 
| 1123 1194 | 
             
                        },
         | 
| 1124 | 
            -
                        /* @__PURE__ */  | 
| 1125 | 
            -
                      ) | 
| 1126 | 
            -
             | 
| 1195 | 
            +
                        /* @__PURE__ */ React14.createElement(BackwardArrowIcon, { width: 32, height: 32 })
         | 
| 1196 | 
            +
                      ),
         | 
| 1197 | 
            +
                      /* @__PURE__ */ React14.createElement(
         | 
| 1198 | 
            +
                        Box,
         | 
| 1127 1199 | 
             
                        {
         | 
| 1128 | 
            -
                           | 
| 1129 | 
            -
                             | 
| 1130 | 
            -
             | 
| 1131 | 
            -
                           | 
| 1200 | 
            +
                          css: {
         | 
| 1201 | 
            +
                            bg: "rgba(0, 0, 0, 0.6)",
         | 
| 1202 | 
            +
                            r: "$round"
         | 
| 1203 | 
            +
                          }
         | 
| 1204 | 
            +
                        },
         | 
| 1205 | 
            +
                        /* @__PURE__ */ React14.createElement(HMSVideoPlayer.PlayPauseButton, { isPaused, width: 48, height: 48 })
         | 
| 1206 | 
            +
                      ),
         | 
| 1207 | 
            +
                      /* @__PURE__ */ React14.createElement(
         | 
| 1208 | 
            +
                        HMSVideoPlayer.Seeker,
         | 
| 1209 | 
            +
                        {
         | 
| 1210 | 
            +
                          title: "forward",
         | 
| 1211 | 
            +
                          css: {
         | 
| 1212 | 
            +
                            visibility: isSeekEnabled ? `` : `hidden`,
         | 
| 1213 | 
            +
                            opacity: isSeekEnabled ? `1` : "0"
         | 
| 1214 | 
            +
                          }
         | 
| 1132 1215 | 
             
                        },
         | 
| 1133 | 
            -
                        /* @__PURE__ */  | 
| 1216 | 
            +
                        /* @__PURE__ */ React14.createElement(ForwardArrowIcon, { width: 32, height: 32 })
         | 
| 1134 1217 | 
             
                      )
         | 
| 1135 | 
            -
                    ), /* @__PURE__ */  | 
| 1218 | 
            +
                    ), /* @__PURE__ */ React14.createElement(
         | 
| 1136 1219 | 
             
                      Flex,
         | 
| 1137 1220 | 
             
                      {
         | 
| 1138 1221 | 
             
                        ref: controlsRef,
         | 
| @@ -1145,18 +1228,20 @@ var HLSView = () => { | |
| 1145 1228 | 
             
                          left: "0",
         | 
| 1146 1229 | 
             
                          width: "100%",
         | 
| 1147 1230 | 
             
                          flexShrink: 0,
         | 
| 1231 | 
            +
                          zIndex: 1,
         | 
| 1148 1232 | 
             
                          visibility: controlsVisible ? `` : `hidden`,
         | 
| 1149 1233 | 
             
                          opacity: controlsVisible ? `1` : "0"
         | 
| 1150 1234 | 
             
                        }
         | 
| 1151 1235 | 
             
                      },
         | 
| 1152 | 
            -
                      /* @__PURE__ */  | 
| 1236 | 
            +
                      /* @__PURE__ */ React14.createElement(
         | 
| 1153 1237 | 
             
                        HMSVideoPlayer.Controls.Root,
         | 
| 1154 1238 | 
             
                        {
         | 
| 1155 1239 | 
             
                          css: {
         | 
| 1156 1240 | 
             
                            p: "$4 $8"
         | 
| 1157 1241 | 
             
                          }
         | 
| 1158 1242 | 
             
                        },
         | 
| 1159 | 
            -
                        /* @__PURE__ */  | 
| 1243 | 
            +
                        /* @__PURE__ */ React14.createElement(HMSVideoPlayer.Controls.Left, null, /* @__PURE__ */ React14.createElement(LeaveRoom, { screenType })),
         | 
| 1244 | 
            +
                        /* @__PURE__ */ React14.createElement(HMSVideoPlayer.Controls.Right, null, isLandscape && /* @__PURE__ */ React14.createElement(ChatToggle, null), hasCaptions && !isHlsAutoplayBlocked && /* @__PURE__ */ React14.createElement(HLSCaptionSelector, { isEnabled: isCaptionEnabled }), availableLayers.length > 0 && !isHlsAutoplayBlocked ? /* @__PURE__ */ React14.createElement(
         | 
| 1160 1245 | 
             
                          HLSQualitySelector,
         | 
| 1161 1246 | 
             
                          {
         | 
| 1162 1247 | 
             
                            layers: availableLayers,
         | 
| @@ -1166,19 +1251,20 @@ var HLSView = () => { | |
| 1166 1251 | 
             
                            onQualityChange: handleQuality,
         | 
| 1167 1252 | 
             
                            isAuto: isUserSelectedAuto
         | 
| 1168 1253 | 
             
                          }
         | 
| 1169 | 
            -
                        ) : null)
         | 
| 1254 | 
            +
                        ) : null, /* @__PURE__ */ React14.createElement(HLSAutoplayBlockedPrompt, { open: isHlsAutoplayBlocked, unblockAutoPlay }))
         | 
| 1170 1255 | 
             
                      )
         | 
| 1171 | 
            -
                    )) : null, /* @__PURE__ */  | 
| 1256 | 
            +
                    )) : null, /* @__PURE__ */ React14.createElement(
         | 
| 1172 1257 | 
             
                      Flex,
         | 
| 1173 1258 | 
             
                      {
         | 
| 1174 1259 | 
             
                        ref: controlsRef,
         | 
| 1175 | 
            -
                        direction: "column",
         | 
| 1260 | 
            +
                        direction: isMobile ? "columnReverse" : "column",
         | 
| 1176 1261 | 
             
                        justify: "end",
         | 
| 1177 1262 | 
             
                        align: "start",
         | 
| 1178 1263 | 
             
                        css: {
         | 
| 1179 1264 | 
             
                          position: "absolute",
         | 
| 1180 1265 | 
             
                          bottom: "0",
         | 
| 1181 1266 | 
             
                          left: "0",
         | 
| 1267 | 
            +
                          zIndex: 1,
         | 
| 1182 1268 | 
             
                          background: isMobile || isLandscape ? "" : `linear-gradient(180deg, ${theme.colors.background_dim.value}00 29.46%, ${theme.colors.background_dim.value}A3 100%);`,
         | 
| 1183 1269 | 
             
                          width: "100%",
         | 
| 1184 1270 | 
             
                          pt: "$8",
         | 
| @@ -1188,23 +1274,33 @@ var HLSView = () => { | |
| 1188 1274 | 
             
                          opacity: controlsVisible ? `1` : "0"
         | 
| 1189 1275 | 
             
                        }
         | 
| 1190 1276 | 
             
                      },
         | 
| 1191 | 
            -
                       | 
| 1192 | 
            -
                      /* @__PURE__ */  | 
| 1277 | 
            +
                      /* @__PURE__ */ React14.createElement(HMSVideoPlayer.Progress, { isDvr: ((_b = hlsState == null ? void 0 : hlsState.variants[0]) == null ? void 0 : _b.playlist_type) === HLSPlaylistType.DVR }),
         | 
| 1278 | 
            +
                      /* @__PURE__ */ React14.createElement(
         | 
| 1193 1279 | 
             
                        HMSVideoPlayer.Controls.Root,
         | 
| 1194 1280 | 
             
                        {
         | 
| 1195 1281 | 
             
                          css: {
         | 
| 1196 1282 | 
             
                            p: "$4 $8"
         | 
| 1197 1283 | 
             
                          }
         | 
| 1198 1284 | 
             
                        },
         | 
| 1199 | 
            -
                        /* @__PURE__ */  | 
| 1200 | 
            -
                          HMSVideoPlayer. | 
| 1285 | 
            +
                        /* @__PURE__ */ React14.createElement(HMSVideoPlayer.Controls.Left, null, !(isMobile || isLandscape) && /* @__PURE__ */ React14.createElement(React14.Fragment, null, /* @__PURE__ */ React14.createElement(
         | 
| 1286 | 
            +
                          HMSVideoPlayer.Seeker,
         | 
| 1201 1287 | 
             
                          {
         | 
| 1202 | 
            -
                            onClick: () =>  | 
| 1203 | 
            -
                               | 
| 1204 | 
            -
                            } | 
| 1205 | 
            -
                             | 
| 1206 | 
            -
                          }
         | 
| 1207 | 
            -
             | 
| 1288 | 
            +
                            onClick: () => {
         | 
| 1289 | 
            +
                              onSeekTo(-10);
         | 
| 1290 | 
            +
                            },
         | 
| 1291 | 
            +
                            title: "backward"
         | 
| 1292 | 
            +
                          },
         | 
| 1293 | 
            +
                          /* @__PURE__ */ React14.createElement(BackwardArrowIcon, { width: 20, height: 20 })
         | 
| 1294 | 
            +
                        ), /* @__PURE__ */ React14.createElement(HMSVideoPlayer.PlayPauseButton, { isPaused }), /* @__PURE__ */ React14.createElement(
         | 
| 1295 | 
            +
                          HMSVideoPlayer.Seeker,
         | 
| 1296 | 
            +
                          {
         | 
| 1297 | 
            +
                            onClick: () => {
         | 
| 1298 | 
            +
                              onSeekTo(10);
         | 
| 1299 | 
            +
                            },
         | 
| 1300 | 
            +
                            title: "forward"
         | 
| 1301 | 
            +
                          },
         | 
| 1302 | 
            +
                          /* @__PURE__ */ React14.createElement(ForwardArrowIcon, { width: 20, height: 20 })
         | 
| 1303 | 
            +
                        ), !isVideoLive ? /* @__PURE__ */ React14.createElement(HMSVideoPlayer.Duration, null) : null, /* @__PURE__ */ React14.createElement(HMSVideoPlayer.Volume, null)), /* @__PURE__ */ React14.createElement(
         | 
| 1208 1304 | 
             
                          IconButton,
         | 
| 1209 1305 | 
             
                          {
         | 
| 1210 1306 | 
             
                            css: { px: "$2" },
         | 
| @@ -1215,7 +1311,7 @@ var HLSView = () => { | |
| 1215 1311 | 
             
                            key: "jump-to-live_btn",
         | 
| 1216 1312 | 
             
                            "data-testid": "jump-to-live_btn"
         | 
| 1217 1313 | 
             
                          },
         | 
| 1218 | 
            -
                          /* @__PURE__ */  | 
| 1314 | 
            +
                          /* @__PURE__ */ React14.createElement(Tooltip, { title: isVideoLive ? "Live" : "Go to Live", side: "top" }, /* @__PURE__ */ React14.createElement(Flex, { justify: "center", gap: 2, align: "center" }, /* @__PURE__ */ React14.createElement(
         | 
| 1219 1315 | 
             
                            Box,
         | 
| 1220 1316 | 
             
                            {
         | 
| 1221 1317 | 
             
                              css: {
         | 
| @@ -1225,7 +1321,7 @@ var HLSView = () => { | |
| 1225 1321 | 
             
                                r: "$1"
         | 
| 1226 1322 | 
             
                              }
         | 
| 1227 1323 | 
             
                            }
         | 
| 1228 | 
            -
                          ), /* @__PURE__ */  | 
| 1324 | 
            +
                          ), /* @__PURE__ */ React14.createElement(
         | 
| 1229 1325 | 
             
                            Text,
         | 
| 1230 1326 | 
             
                            {
         | 
| 1231 1327 | 
             
                              variant: "$body1",
         | 
| @@ -1236,8 +1332,8 @@ var HLSView = () => { | |
| 1236 1332 | 
             
                            },
         | 
| 1237 1333 | 
             
                            isVideoLive ? "LIVE" : "GO LIVE"
         | 
| 1238 1334 | 
             
                          )))
         | 
| 1239 | 
            -
                        ), (isMobile || isLandscape) && !isVideoLive ? /* @__PURE__ */  | 
| 1240 | 
            -
                        /* @__PURE__ */  | 
| 1335 | 
            +
                        ), (isMobile || isLandscape) && !isVideoLive ? /* @__PURE__ */ React14.createElement(HMSVideoPlayer.Duration, null) : null),
         | 
| 1336 | 
            +
                        /* @__PURE__ */ React14.createElement(HMSVideoPlayer.Controls.Right, null, hasCaptions && !(isMobile || isLandscape) && /* @__PURE__ */ React14.createElement(HLSCaptionSelector, { isEnabled: isCaptionEnabled }), availableLayers.length > 0 && !(isMobile || isLandscape) ? /* @__PURE__ */ React14.createElement(
         | 
| 1241 1337 | 
             
                          HLSQualitySelector,
         | 
| 1242 1338 | 
             
                          {
         | 
| 1243 1339 | 
             
                            layers: availableLayers,
         | 
| @@ -1247,16 +1343,15 @@ var HLSView = () => { | |
| 1247 1343 | 
             
                            onQualityChange: handleQuality,
         | 
| 1248 1344 | 
             
                            isAuto: isUserSelectedAuto
         | 
| 1249 1345 | 
             
                          }
         | 
| 1250 | 
            -
                        ) : null, isFullScreenSupported ? /* @__PURE__ */  | 
| 1251 | 
            -
                      ) | 
| 1252 | 
            -
                      (isMobile || isLandscape) && ((_c = hlsState == null ? void 0 : hlsState.variants[0]) == null ? void 0 : _c.playlist_type) === HLSPlaylistType.DVR ? /* @__PURE__ */ React13.createElement(HMSVideoPlayer.Progress, null) : null
         | 
| 1346 | 
            +
                        ) : null, isFullScreenSupported ? /* @__PURE__ */ React14.createElement(FullScreenButton, { isFullScreen, onToggle: toggle }) : null)
         | 
| 1347 | 
            +
                      )
         | 
| 1253 1348 | 
             
                    ))
         | 
| 1254 1349 | 
             
                  )
         | 
| 1255 | 
            -
                )), isMobile && !isFullScreen && /* @__PURE__ */  | 
| 1350 | 
            +
                )), isMobile && !isFullScreen && /* @__PURE__ */ React14.createElement(HLSViewTitle, null)) : /* @__PURE__ */ React14.createElement(Flex, { align: "center", justify: "center", direction: "column", css: { size: "100%", px: "$10" } }, /* @__PURE__ */ React14.createElement(Flex, { align: "center", gap: "2", css: { position: "absolute", left: "$4", top: "$4", zIndex: 1 } }, /* @__PURE__ */ React14.createElement(LeaveRoom, { screenType })), /* @__PURE__ */ React14.createElement(Flex, { css: { c: "$on_surface_high", r: "$round", bg: "$surface_default", p: "$2" } }, streamEnded ? /* @__PURE__ */ React14.createElement(ColoredHandIcon, { height: 56, width: 56 }) : /* @__PURE__ */ React14.createElement(GoLiveIcon, { height: 56, width: 56 })), /* @__PURE__ */ React14.createElement(Text, { variant: "h5", css: { c: "$on_surface_high", mt: "$10", mb: 0, textAlign: "center" } }, streamEnded ? "Stream has ended" : "Stream yet to start"), /* @__PURE__ */ React14.createElement(Text, { variant: "md", css: { textAlign: "center", mt: "$4", c: "$on_surface_medium" } }, streamEnded ? "Have a nice day!" : "Sit back and relax"))
         | 
| 1256 1351 | 
             
              );
         | 
| 1257 1352 | 
             
            };
         | 
| 1258 1353 | 
             
            var HLSView_default = HLSView;
         | 
| 1259 1354 | 
             
            export {
         | 
| 1260 1355 | 
             
              HLSView_default as default
         | 
| 1261 1356 | 
             
            };
         | 
| 1262 | 
            -
            //# sourceMappingURL=HLSView- | 
| 1357 | 
            +
            //# sourceMappingURL=HLSView-MYKM5AXS.js.map
         |