{"version":3,"sources":["../ui/src/components/mainComponent/footer/footer.tsx","../ui/src/components/mainComponent/footer/progressbar/progressbar.tsx","../ui/src/components/player-components/tooltip/tooltip.tsx","../ui/src/components/mainComponent/footer/progressbar/markers/markers.tsx","../ui/src/components/mainComponent/footer/controllbar/controllbar.tsx"],"sourcesContent":["import { conditions, footerPadding } from \"helpers\";\r\nimport { ConditionName, zIndex } from \"interfaces\";\r\nimport { useAppSelector } from \"redux-share/hooks\";\r\nimport { shallowEqual } from 'react-redux'\r\nimport dynamic from \"next/dynamic\";\r\nimport ProgressBar from \"./progressbar/progressbar\";\r\nimport Controllbar from \"./controllbar/controllbar\";\r\n\r\nconst AutoPlayListIcon = dynamic(() => import(\"../../player-components/autoPlay/autoPlayListIcon\"));\r\nconst InstagramEmoji = dynamic(() => import(\"../../player-components/InstagramEmoji/InstagramEmoji\"));\r\n\r\nconst Footer = () => {\r\n\r\n    useAppSelector(({ controller: { lock, isFullScreen } }) => ({ lock, isFullScreen }), shallowEqual);\r\n    const {settings} = useAppSelector(({ user: { settings } }) => ({ settings }), shallowEqual);\r\n    const { subtitleText } = useAppSelector(({ videoData: { subtitleText, selectedSubtitle } }) => ({ subtitleText, selectedSubtitle }), shallowEqual);\r\n\r\n    const subtitlePosition = () => {\r\n        let styles = \"\";\r\n        if(conditions(ConditionName.isLock)) styles = \"pl-bottom-3\"\r\n        else if (conditions(ConditionName.isActiveElements)) {\r\n            styles = \"pl-subtitle-text pl-bottom-[100px]\"\r\n            if (conditions(ConditionName.isComplexPortrait)) styles = `pl-subtitle-text !pl-bottom-[55px]`\r\n        } else if (!conditions(ConditionName.isActiveElements)) styles = \"pl-bottom-3\"\r\n\r\n        return styles;\r\n    }\r\n\r\n    return (\r\n        <div id=\"footer\" className=\"pl-relative\" style={{zIndex: zIndex.footer}}>\r\n            {conditions(ConditionName.showAutoPlayListTouchIcon) && <AutoPlayListIcon />}\r\n            {conditions(ConditionName.isSelectedSubtitle) && <pre id={\"subtitle-id\"} style={{ direction: \"ltr\", fontFamily: \"IranYekanFaMobile\", opacity: (settings.brightness / 100) }} className={`pl-absolute pl-text-white pl-w-full pl-mx-auto pl-text-center pl-text-[36px] ${conditions(ConditionName.isComplexPortrait) && \"!pl-text-[13px]\"} ${conditions(ConditionName.isTouchScreenLandscape) && \"!pl-text-[24px]\"} pl-font-normal ${subtitlePosition()}`}>{subtitleText}</pre>}\r\n            {!conditions(ConditionName.isLock) && (\r\n                <>\r\n                    {!conditions(ConditionName.isComplexPortrait) && <div className={`pl-w-full pl-h-full pl-absolute animate__animated animate__faster ${conditions(ConditionName.isActiveElements) ? \"animate__fadeIn\" : \"animate__fadeOut\"}`} style={{ background: \"linear-gradient(180deg, rgba(0, 0, 0, 0) 2.54%, rgba(0, 0, 0, 0.8) 87.05%, rgba(0, 0, 0, 0.8) 87.05%)\" }} />}\r\n                    <div\r\n                        className={`pl-w-full pl-mx-auto animate__animated animate__faster ${conditions(ConditionName.isActiveElements) ? \"animate__fadeIn pl-pointer-events-auto\" : \"animate__fadeOut pl-pointer-events-none\"}`}\r\n                        style={{ paddingLeft: footerPadding(), paddingRight: footerPadding() }}\r\n                    >\r\n                        {conditions(ConditionName.showProgressbar) && <ProgressBar />}\r\n                        {!conditions(ConditionName.isComplexPortrait) && <Controllbar />}\r\n                    </div>\r\n                    {conditions(ConditionName.showInstagramEmoji) && <InstagramEmoji />}\r\n                </>\r\n            )}\r\n        </div>\r\n\r\n    )\r\n}\r\n\r\nexport default Footer;","import { conditions, progressBarWidth } from \"helpers\";\r\nimport { ConditionName, zIndex } from \"interfaces\";\r\nimport { handleCatchUpLoadingLog, handleMouseMove, handleMouseOut, handlePointerDown, handlePointerMove, handlePointerUp, hideProgressTooltip } from \"redux-share/actions/progressbar.actions\";\r\nimport { useAppSelector } from \"redux-share/hooks\";\r\nimport Tooltip from \"../../../player-components/tooltip/tooltip\";\r\nimport Markers from \"./markers/markers\";\r\nimport {useEffect, useState} from \"react\";\r\nimport { shallowEqual } from 'react-redux';\r\nimport dynamic from \"next/dynamic\";\r\n\r\nconst ViewersChart = dynamic(() => import(\"../../../player-components/viewersChart/viewersChart\"));\r\n\r\nconst ProgressBar = () => {\r\n\r\n    const [isPointerDown, setIsPointerDown] = useState<boolean>(false);\r\n\r\n    useEffect(() => {\r\n        hideProgressTooltip(document.querySelector(\".progressTooltip\"));\r\n    },[]);\r\n\r\n    const { duration, currentTime, bufferedTimeWidth, hlsLiveSyncPosition } = useAppSelector(({ controller: { duration, currentTime, bufferedTimeWidth, hlsLiveSyncPosition, showMiniPlayer } }) => ({ duration, currentTime, bufferedTimeWidth, hlsLiveSyncPosition, showMiniPlayer }), shallowEqual);\r\n    const { markers } = useAppSelector(({ videoData: { params, videoElementSizeInfo, markers, isComplexPortrait } }) => ({ params, videoElementSizeInfo, markers, isComplexPortrait }), shallowEqual);\r\n    const [timeoutIds, setTimeoutIds] = useState<any[]>([]);\r\n\r\n    const durationTime = conditions(ConditionName.isLiveParam) ? hlsLiveSyncPosition : duration;\r\n    const calculateMarkerPosition = (time: number) => durationTime ? ((progressBarWidth() * time) / durationTime) : 0;\r\n\r\n    return (\r\n        <div className=\"pl-relative\">\r\n            <div className=\"pl-relative\">\r\n                <Tooltip />\r\n                {conditions(ConditionName.hasChart) && !conditions(ConditionName.isMiniPlayer) && <ViewersChart />}\r\n                <Markers />\r\n            </div>\r\n            <div className={`pl-w-full pl-absolute ${conditions(ConditionName.isTouchScreenPortrait) ? \"pl-bottom-0\" : \"pl-bottom-2\"}`}>\r\n                <div\r\n                    id=\"time-progress-area\"\r\n                    className={`!pl-w-full pl-h-[5px] pl-transition-transform pl-duration-300 pl-m-auto pl-cursor-pointer !pl-bg-z-secondary-100/[0.4] pl-rounded ${conditions(ConditionName.isComplexPortrait) && \"pl-rounded-none\"}`}\r\n                    style={{ transform: isPointerDown ? \"scaleY(1.8)\" : \"unset\"}}\r\n                    onPointerDown={(event: any) => handlePointerDown(event, timeoutIds, setIsPointerDown)}\r\n                    onPointerMove={handlePointerMove}\r\n                    onPointerUp={(event: any) => handlePointerUp(event, setTimeoutIds, timeoutIds, setIsPointerDown)}\r\n                    onMouseMove={handleMouseMove}\r\n                    onMouseOut={handleMouseOut}\r\n                    onClick={handleCatchUpLoadingLog}\r\n                    onDoubleClick={(event: any) => event.stopPropagation()}\r\n                >\r\n                    {markers.map((marker: any) => (\r\n                        <div\r\n                            key={marker.id}\r\n                            data-marker={marker.time}\r\n                        >\r\n                            <div\r\n                                className=\"pl-emoji-dot pl-absolute pl-flex pl-flex-col pl-w-[3px] pl-h-full pl-bg-white pl-cursor-pointer\"\r\n                                data-marker={marker.time}\r\n                                style={{ left: calculateMarkerPosition(marker.time), zIndex: zIndex.emoji }}\r\n                            />\r\n                        </div>\r\n                    ))}\r\n                    <div\r\n                        id=\"time-progress-buffer\"\r\n                        className={`pl-absolute pl-h-full pl-bg-z-gray-400/[0.7] pl-rounded`}\r\n                        style={{ width: `${bufferedTimeWidth}%` }}\r\n                    />\r\n                    <div\r\n                        id=\"time-progress-bar\"\r\n                        className={`pl-h-full pl-rounded pl-bg-red-zProgress pl-relative pl-cursor-pointer before:pl-bg-red-zProgress before:pl-inline-block before:pl-w-4 before:pl-h-4 ${isPointerDown && \"before:pl-w-7 before:pl-h-3\"}`}\r\n                        style={{ width: conditions(ConditionName.isLive) ? \"100%\" : `${(currentTime / duration) * progressBarWidth()}px` }}\r\n                    />\r\n                </div>\r\n            </div>\r\n        </div>\r\n\r\n    )\r\n}\r\n\r\nexport default ProgressBar;","import {useEffect, useState} from \"react\";\r\nimport { useAppSelector } from \"redux-share/hooks\";\r\nimport { conditions } from \"helpers\";\r\nimport { ConditionName } from \"interfaces\";\r\nimport { fetchFile, getStyleForTime } from \"redux-share/actions/progressbar.actions\";\r\nimport { shallowEqual } from 'react-redux'\r\nimport { memo } from \"react\";\r\n\r\nconst Tooltip = () => {\r\n\r\n    const { details } = useAppSelector(({ videoData: { details } }) => ({ details }), shallowEqual);\r\n    const { tooltipTime } = useAppSelector(({ controller: { tooltipTime } }) => ({ tooltipTime }), shallowEqual);\r\n\r\n    const cache: any = {};\r\n    const [vttPool, setVttPool] = useState<any>(undefined);\r\n    const [vttUrl, setVttUrl] = useState<string | undefined>(conditions(ConditionName.isTouchScreen) ? details.vtt_mobile : details.vtt);\r\n\r\n    useEffect(() => {\r\n        setVttUrl(conditions(ConditionName.isVttFitHeight) ? details.vtt_mobile : details.vtt);\r\n    }, [details.vtt, details.vtt_mobile, conditions(ConditionName.isVttFitHeight)])\r\n\r\n    useEffect(() => {\r\n        if (!!vttUrl) fetchFile(conditions(ConditionName.isVttFitHeight) ? details.vtt_mobile! : details.vtt!, setVttPool);\r\n    }, [vttUrl])\r\n\r\n\r\n    return (\r\n        conditions(ConditionName.isActiveElements) ?\r\n            (\r\n                <div\r\n                    className={`pl-flex pl-flex-col pl-progressTooltip pl-absolute pl-bottom-[200%] pl-px-[10px] pl-py-[5px] pl-mr-[-25px] pl-mb-[25px] pl-text-white pl-text-[14px] ${vttUrl && !!vttPool ? \"\" : \"pl-bg-z-gray-700\"} pl-rounded-[6px] pl-opacity-0`}>\r\n                    {\r\n                        vttUrl && !!vttPool && (\r\n                            <div className=\"pl-flex-1 pl-border pl-border-white pl-rounded-[8px]\">\r\n                                <div className=\"pl-rounded-[8px]\" style={getStyleForTime(tooltipTime, vttPool, cache)}/>\r\n                            </div>\r\n                        )\r\n                    }\r\n                    <div className=\"pl-flex pl-items-center pl-justify-center pl-progressTimeTooltip pl-text-white !pl-opacity-100\"/>\r\n                </div>\r\n            ) :\r\n            <></>\r\n    )\r\n}\r\n\r\nexport default memo(Tooltip);","import { useEffect, useRef, useState, memo } from \"react\";\r\nimport Emoji from \"../../../../player-components/emoji/emoji\";\r\nimport { useAppSelector } from \"redux-share/hooks\";\r\nimport { ConditionName, IMarker } from \"interfaces\";\r\nimport { conditions, inViewPort, progressBar, progressBarWidth, videoTag } from \"helpers\";\r\nimport { handleVideoTimeline } from \"redux-share/actions/controller.actions\";\r\nimport { eventMarkerClickLog, sendFluentLog } from \"../../../../../../../logs\";\r\nimport useOnClickOutside from \"helpers/hooks/useOnClickOutside\";\r\nimport { handleTimeTooltip } from \"redux-share/actions/progressbar.actions\";\r\nimport { shallowEqual } from 'react-redux'\r\nimport dynamic from \"next/dynamic\";\r\n\r\nconst ShareDialog = dynamic(() => import(\"../../../../player-components/share/shareDialog\"));\r\n\r\nconst Markers = () => {\r\n\r\n    const { hlsLiveSyncPosition, duration, activeElements } = useAppSelector(({ controller: { hlsLiveSyncPosition, duration, activeElements, isFullScreen } }) => ({ hlsLiveSyncPosition, duration, activeElements, isFullScreen }), shallowEqual);\r\n    const { markers } = useAppSelector(({ videoData: { markers, isComplexPortrait, videoElementSizeInfo } }) => ({ markers, isComplexPortrait, videoElementSizeInfo }), shallowEqual);\r\n\r\n    const [markerTime, setMarkerTime] = useState<number | undefined>(undefined);\r\n    const [openDialog, setOpenDialog] = useState<boolean>(false);\r\n    const [overlapMarkers, setOverlapMarkers] = useState<any[]>([]);\r\n    const [overlapMarkersPosition, setOverlapMarkersPosition] = useState<any>({});\r\n    const [isOverlapMarkersInViewport, setIsOverlapMarkersInViewport] = useState<boolean>(false);\r\n\r\n    const durationTime = conditions(ConditionName.isLiveParam) ? hlsLiveSyncPosition : duration;\r\n\r\n    const calculateMarkerPosition = (time: number) => durationTime ? ((progressBarWidth() * time) / durationTime) : 0;\r\n\r\n    const handleClick = (event: any, markerTime: number, markerId: number, markerTitle: String, markerDescription: String, markerSticker: String, isTimer: boolean, markers:any) => {\r\n        event.stopPropagation();\r\n        const eventMarkerWidth = 24\r\n        const result = (eventMarkerWidth * markerTime) / (progressBarWidth() + 5);\r\n\r\n        let overlapMarkers:any[] = []\r\n        let sumOverlapMarkersTime: number = 0;\r\n\r\n        markers.map((marker:any) => {\r\n            if ((marker.time > markerTime - result) && (marker.time < markerTime + result)) {\r\n                overlapMarkers.push(marker);\r\n                sumOverlapMarkersTime += marker.time\r\n            }\r\n        })\r\n        if (overlapMarkers.length > 1) setOverlapMarkers(overlapMarkers);\r\n        else {\r\n            overlapMarkers=[];\r\n            setOverlapMarkers([]);\r\n            handleJumpToMarker(event, markerTime, markerId, markerTitle, markerDescription, markerSticker,isTimer);\r\n        }\r\n    }\r\n\r\n    const handleJumpToMarker = (event: any, markerTime: number, markerId: number, markerTitle: String, markerDescription: String, markerSticker: String ,isTimer:boolean) => {\r\n        event.stopPropagation();\r\n        handleTimeTooltip(event, isTimer);\r\n        handleVideoTimeline(videoTag().currentTime, markerTime);\r\n        videoTag().currentTime = markerTime;\r\n        if (progressBar()) progressBar().style.width = calculateMarkerPosition(markerTime);\r\n        sendFluentLog(eventMarkerClickLog(markerId, markerTime, markerTitle, markerDescription, markerSticker));\r\n    }\r\n\r\n    useEffect(() => {\r\n        if (!openDialog) setMarkerTime(undefined);\r\n    }, [openDialog]);\r\n\r\n    useEffect(() => {\r\n        if (!!markerTime) setOpenDialog(true);\r\n    }, [markerTime]);\r\n\r\n    useEffect(() => {\r\n        if(!conditions(ConditionName.isActiveElements)) setOverlapMarkers([])\r\n    },[activeElements])\r\n\r\n    const markerRef = useRef<any>(null)\r\n\r\n    useOnClickOutside(markerRef, () => setOverlapMarkers([]));\r\n\r\n    useEffect(() => {\r\n        if(overlapMarkers.length > 0) {\r\n            const isInViewPort = inViewPort(document.getElementsByClassName(\"pl-overlapMarkers\")[0]);\r\n            if (isInViewPort === \"inViewport\") {\r\n                setIsOverlapMarkersInViewport(true);\r\n                return setOverlapMarkersPosition({ left: calculateMarkerPosition(overlapMarkers[0].time) })\r\n            } else if (isInViewPort === \"OutViewPortFromLeft\") {\r\n                setIsOverlapMarkersInViewport(false);\r\n                return setOverlapMarkersPosition({ left: 0 });\r\n            } else if(isInViewPort === \"OutViewPortFromRight\") {\r\n                setIsOverlapMarkersInViewport(false);\r\n                return setOverlapMarkersPosition({ right: 0 });\r\n            }\r\n        }\r\n    }, [overlapMarkers, document.getElementsByClassName(\"pl-overlapMarkers\")[0]])\r\n\r\n    const handleContextMenu = (event:any) => {\r\n        event.preventDefault();\r\n        if (conditions(ConditionName.isTouchScreen)) setMarkerTime(Number((event.target as any).getAttribute(\"data-marker\")));\r\n    }\r\n\r\n    return (\r\n        <>\r\n            {markers.map((marker: any) => (\r\n                <div\r\n                    onContextMenu={handleContextMenu}\r\n                    key={marker.id}\r\n                    data-marker={marker.time}\r\n                    onClick={(event) => handleClick(event, marker.time, marker.id, marker.title, marker.description, marker.sticker, true, markers)}\r\n                    onDoubleClick={(event: any) => event.stopPropagation()}\r\n                >\r\n                    <div\r\n                        className={`pl-emoji-image pl-absolute pl-bottom-[200%] pl-bg-z-gray-700/[0.4] pl-rounded-[6px] pl-p-1 ${conditions(ConditionName.isTouchScreenPortrait) ? \"pl-mb-3\" : \"pl-mb-5\"} pl-ml-[-12px] pl-cursor-pointer`}\r\n                        style={{ left: calculateMarkerPosition(marker.time) }} data-marker={marker.time}>\r\n                        {(marker.isPersonal !== null && marker.isPersonal !== undefined) && <div className=\"pl-absolute pl-rounded-full pl-top-[-2px] pl-right-[-1px] pl-bg-main pl-w-2 pl-h-2\"/>}\r\n                        <Emoji dataMarker={marker.time} name={marker.sticker} className=\"pl-w-[16px] pl-h-[16px] !pl-max-w-max\" />\r\n                    </div>\r\n                </div>\r\n            ))}\r\n            {overlapMarkers.length > 0 && (\r\n                <div\r\n                    className={`pl-overlapMarkers ${isOverlapMarkersInViewport ? \"pl-overlayMarkersInViewport\" : \"pl-overlayMarkersOutViewport\"} pl-absolute pl-bottom-[45px] pl-px-1 pl-py-2 pl-flex pl-gap-3 pl-flex-row-reverse pl-justify-end pl-bg-z-gray-700/[0.4] pl-rounded-[6px] pl-ml-[-10px] animate__animated animate__fadeInUp pl-opacity-100`}\r\n                    ref={markerRef}\r\n                    style={overlapMarkersPosition}\r\n                >\r\n                    {overlapMarkers.map((overlapMarker: any) => (\r\n                        <div\r\n                            key={overlapMarker.id}\r\n                            className=\"pl-emoji-image pl-rounded-[6px] pl-cursor-pointer\"\r\n                            data-marker={overlapMarker.time}\r\n                            onClick={(event: any) => handleJumpToMarker(event, overlapMarker.time, overlapMarker.id, overlapMarker.title, overlapMarker.description, overlapMarker.sticker, true)}\r\n                            onDoubleClick={(event: any) => event.stopPropagation()}\r\n                        >\r\n                            <Emoji dataMarker={overlapMarker.time} name={overlapMarker.sticker} className=\"pl-w-[24px] pl-h-[24px] !pl-max-w-max\" />\r\n                        </div>\r\n                    ))}\r\n                </div>\r\n            )}\r\n            {!!openDialog && <ShareDialog currentTime={markerTime ? markerTime : undefined} status={openDialog} onClose={setOpenDialog} markerId={((markers.filter((item: IMarker) => item.time === markerTime))[0]).id} />}\r\n        </>\r\n    )\r\n}\r\n\r\nexport default memo(Markers);","import { memo } from \"react\";\r\nimport { conditions } from \"helpers\";\r\nimport { ConditionName } from \"interfaces\";\r\nimport { useAppSelector } from \"redux-share\";\r\nimport { shallowEqual } from \"react-redux\";\r\nimport dynamic from \"next/dynamic\";\r\nimport MarkersList from \"../../../player-components/markersList/markersList\";\r\nimport Settings from \"../../../player-components/settings/settings\";\r\nimport Speed from \"../../../player-components/speed/speed\";\r\nimport Subtitles from \"../../../player-components/subtitles/subtitles\";\r\n\r\nconst FullScreen = dynamic(() => import(\"../../../player-components/fullScreen/fullScreen\"));\r\nconst PlayList = dynamic(() => import(\"../../../player-components/playList/playList\"));\r\nconst AutoPlayToggle = dynamic(() => import(\"../../../player-components/toggle/autoPlayToggle\"));\r\nconst PictureInPicture = dynamic(() => import(\"../../../player-components/pictureInPicture/pictureInPicture\"));\r\nconst Unlock = dynamic(() => import(\"../../../player-components/lockUnlock/unlock\"));\r\nconst MultiLive = dynamic(() => import(\"../../../player-components/multiLive/multiLive\"));\r\nconst ElapsedTime = dynamic(() => import(\"../../../player-components/elapsedTime/elapsedTime\"));\r\nconst LikeDisLike = dynamic(() => import(\"../../../player-components/likeDisLike/likeDisLike\"));\r\nconst SoundVolume = dynamic(() => import(\"../../../player-components/soundVolume/soundVolume\"));\r\nconst PlayNextVideo = dynamic(() => import(\"../../../player-components/playNext/playNextVideo\"));\r\nconst PlayPauseControllbar = dynamic(() => import(\"../../../player-components/playPauseControllbar/playPauseControllbar\"));\r\n\r\nconst Controlbar = () => {\r\n\r\n    useAppSelector(({ controller: { isFullScreen, showMiniPlayer } }) => ({ isFullScreen, showMiniPlayer }), shallowEqual);\r\n    useAppSelector(({ videoData: { videoElementSizeInfo, params, isComplexPortrait } }) => ({ videoElementSizeInfo, params, isComplexPortrait }), shallowEqual);\r\n  \r\n    return (\r\n        <div id=\"player-controllbar\" className={`pl-flex pl-justify-between pl-items-center pl-m-3`}>\r\n            <div className={`pl-flex pl-items-center ${(conditions(ConditionName.isTouchScreenPortrait) || conditions(ConditionName.isMiniPlayer)) ? \"pl-gap-2\" : \"pl-gap-6\"}`}>\r\n                {!conditions(ConditionName.showMiniPlayer) && <FullScreen />}\r\n                {conditions(ConditionName.showSettingIcon) && <Settings />}\r\n                {conditions(ConditionName.showSpeedIcon) && <Speed />}\r\n                {conditions(ConditionName.showPlayListIcon) && <PlayList />}\r\n                {conditions(ConditionName.showAutoPlayToggleIcon) && <AutoPlayToggle />}\r\n                {conditions(ConditionName.showPictureInPicture) && <PictureInPicture />}\r\n                {(!conditions(ConditionName.isStaticFormat) && !conditions(ConditionName.isGeneral)) && <Unlock inControllbar={true}/>}\r\n                {conditions(ConditionName.showMultiLive) && <MultiLive />}\r\n                {conditions(ConditionName.hasSubtitle) && <Subtitles />}\r\n            </div>\r\n            <div className={`pl-flex pl-items-center ${(conditions(ConditionName.isTouchScreenPortrait) || conditions(ConditionName.isMiniPlayer)) ? \"pl-gap-2\" : \"pl-gap-6\"}`}>\r\n                {(conditions(ConditionName.showElapsedTime) && !conditions(ConditionName.isMiniPlayer)) && <ElapsedTime />}\r\n                {conditions(ConditionName.showLikeDislike) && <LikeDisLike />}\r\n                {!conditions(ConditionName.isIOS) && <SoundVolume />}\r\n                {conditions(ConditionName.hasMarkers) && <MarkersList />}\r\n                {conditions(ConditionName.showPlayNextIcon) && <PlayNextVideo />}\r\n                {conditions(ConditionName.showReplayIcon) && <PlayPauseControllbar />}\r\n            </div>\r\n        </div>\r\n    )\r\n}\r\n\r\nexport default memo(Controlbar);"],"mappings":"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","names":["init_esm_shims","shallowEqual","dynamic","init_esm_shims","init_esm_shims","useEffect","useState","shallowEqual","memo","Fragment","jsx","jsxs","Tooltip","details","useAppSelector","tooltipTime","cache","vttPool","setVttPool","useState","vttUrl","setVttUrl","conditions","useEffect","fetchFile","getStyleForTime","tooltip_default","init_esm_shims","useEffect","useRef","useState","memo","shallowEqual","dynamic","Fragment","jsx","jsxs","ShareDialog","Markers","hlsLiveSyncPosition","duration","activeElements","useAppSelector","isFullScreen","markers","isComplexPortrait","videoElementSizeInfo","markerTime","setMarkerTime","useState","openDialog","setOpenDialog","overlapMarkers","setOverlapMarkers","overlapMarkersPosition","setOverlapMarkersPosition","isOverlapMarkersInViewport","setIsOverlapMarkersInViewport","durationTime","conditions","calculateMarkerPosition","time","progressBarWidth","handleClick","event","markerId","markerTitle","markerDescription","markerSticker","isTimer","result","sumOverlapMarkersTime","marker","handleJumpToMarker","handleTimeTooltip","handleVideoTimeline","videoTag","progressBar","sendFluentLog","eventMarkerClickLog","useEffect","markerRef","useRef","useOnClickOutside_default","isInViewPort","inViewPort","handleContextMenu","emoji_default","overlapMarker","item","markers_default","memo","useEffect","useState","shallowEqual","dynamic","jsx","jsxs","ViewersChart","ProgressBar","isPointerDown","setIsPointerDown","hideProgressTooltip","duration","currentTime","bufferedTimeWidth","hlsLiveSyncPosition","useAppSelector","showMiniPlayer","markers","params","videoElementSizeInfo","isComplexPortrait","timeoutIds","setTimeoutIds","durationTime","conditions","calculateMarkerPosition","time","progressBarWidth","tooltip_default","markers_default","event","handlePointerDown","handlePointerMove","handlePointerUp","handleMouseMove","handleMouseOut","handleCatchUpLoadingLog","marker","progressbar_default","init_esm_shims","memo","shallowEqual","dynamic","jsx","jsxs","FullScreen","dynamic","PlayList","AutoPlayToggle","PictureInPicture","Unlock","MultiLive","ElapsedTime","LikeDisLike","SoundVolume","PlayNextVideo","PlayPauseControllbar","Controlbar","useAppSelector","isFullScreen","showMiniPlayer","shallowEqual","videoElementSizeInfo","params","isComplexPortrait","conditions","settings_default","speed_default","subtitles_default","markersList_default","controllbar_default","memo","Fragment","jsx","jsxs","AutoPlayListIcon","dynamic","InstagramEmoji","Footer","useAppSelector","lock","isFullScreen","shallowEqual","settings","subtitleText","selectedSubtitle","subtitlePosition","styles","conditions","footerPadding","progressbar_default","controllbar_default","footer_default"]}