cafe-video-player 2.0.21 → 2.0.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/backwardForward-3HROPSFK.js +2 -0
  2. package/{backwardForward-FW25LAUC.js.map → backwardForward-3HROPSFK.js.map} +1 -1
  3. package/backwardForward-4K2JDYXO.mjs +2 -0
  4. package/{backwardForward-6U6VETTV.mjs.map → backwardForward-4K2JDYXO.mjs.map} +1 -1
  5. package/chunk-2UQZ2IND.js +2 -0
  6. package/{chunk-4AXKM55A.js.map → chunk-2UQZ2IND.js.map} +1 -1
  7. package/chunk-4WSW2YML.js +2 -0
  8. package/{chunk-AJG5T24R.js.map → chunk-4WSW2YML.js.map} +1 -1
  9. package/chunk-5OIS455P.mjs +3 -0
  10. package/chunk-5OIS455P.mjs.map +1 -0
  11. package/{chunk-3ZNIRSH3.mjs → chunk-6ZKKSIBV.mjs} +2 -2
  12. package/{chunk-3ZNIRSH3.mjs.map → chunk-6ZKKSIBV.mjs.map} +1 -1
  13. package/chunk-AOOXGUAJ.js +2 -0
  14. package/{chunk-J7CRSGHN.js.map → chunk-AOOXGUAJ.js.map} +1 -1
  15. package/{chunk-P6UV7U4E.mjs → chunk-AUZAI7ZJ.mjs} +2 -2
  16. package/{chunk-P6UV7U4E.mjs.map → chunk-AUZAI7ZJ.mjs.map} +1 -1
  17. package/{chunk-7CZEUDNW.mjs → chunk-BMC7X7BK.mjs} +3 -3
  18. package/{chunk-7CZEUDNW.mjs.map → chunk-BMC7X7BK.mjs.map} +1 -1
  19. package/chunk-DQ4YH4BY.mjs +9 -0
  20. package/chunk-DQ4YH4BY.mjs.map +1 -0
  21. package/{chunk-LAFBWF7M.js → chunk-G5R3U2OG.js} +2 -2
  22. package/{chunk-LAFBWF7M.js.map → chunk-G5R3U2OG.js.map} +1 -1
  23. package/{chunk-NFS5ZBFX.mjs → chunk-IOYUXRGD.mjs} +2 -2
  24. package/{chunk-NFS5ZBFX.mjs.map → chunk-IOYUXRGD.mjs.map} +1 -1
  25. package/{chunk-R65WA2TV.mjs → chunk-Q52RFNV3.mjs} +2 -2
  26. package/{chunk-R65WA2TV.mjs.map → chunk-Q52RFNV3.mjs.map} +1 -1
  27. package/{chunk-NTINJ2J6.js → chunk-QHLPSV6I.js} +2 -2
  28. package/{chunk-NTINJ2J6.js.map → chunk-QHLPSV6I.js.map} +1 -1
  29. package/{chunk-ELG5PCR2.mjs → chunk-TUYGEJVR.mjs} +2 -2
  30. package/{chunk-ELG5PCR2.mjs.map → chunk-TUYGEJVR.mjs.map} +1 -1
  31. package/chunk-WG7PYZXW.js +3 -0
  32. package/chunk-WG7PYZXW.js.map +1 -0
  33. package/chunk-ZK5BOK4Y.js +3 -0
  34. package/{chunk-S3ULKQPB.js.map → chunk-ZK5BOK4Y.js.map} +1 -1
  35. package/chunk-ZPH2HWHV.js +9 -0
  36. package/chunk-ZPH2HWHV.js.map +1 -0
  37. package/index.js +1 -1
  38. package/index.js.map +1 -1
  39. package/index.mjs +1 -1
  40. package/index.mjs.map +1 -1
  41. package/nonStaticVideoTag-I5AI5KU3.js +2 -0
  42. package/{nonStaticVideoTag-6IOIANAD.js.map → nonStaticVideoTag-I5AI5KU3.js.map} +1 -1
  43. package/{nonStaticVideoTag-JKZGTEQK.mjs → nonStaticVideoTag-URXCYYXT.mjs} +2 -2
  44. package/{nonStaticVideoTag-JKZGTEQK.mjs.map → nonStaticVideoTag-URXCYYXT.mjs.map} +1 -1
  45. package/package.json +1 -1
  46. package/staticPlayer-GU5RRZIR.js +2 -0
  47. package/{staticPlayer-L6ZHTYIE.js.map → staticPlayer-GU5RRZIR.js.map} +1 -1
  48. package/staticPlayer-YU2BZCDF.mjs +2 -0
  49. package/{staticPlayer-4IVOGXWC.mjs.map → staticPlayer-YU2BZCDF.mjs.map} +1 -1
  50. package/staticVideoTag-DYKLVJRS.js +2 -0
  51. package/{staticVideoTag-4I2J2KRA.js.map → staticVideoTag-DYKLVJRS.js.map} +1 -1
  52. package/{staticVideoTag-GJF26BZ3.mjs → staticVideoTag-ZNZBQ7WW.mjs} +2 -2
  53. package/{staticVideoTag-GJF26BZ3.mjs.map → staticVideoTag-ZNZBQ7WW.mjs.map} +1 -1
  54. package/{touchVolumeBrightness-77BH7B3T.js → touchVolumeBrightness-BHL4CXCQ.js} +3 -3
  55. package/{touchVolumeBrightness-77BH7B3T.js.map → touchVolumeBrightness-BHL4CXCQ.js.map} +1 -1
  56. package/{touchVolumeBrightness-VSJS4WWO.mjs → touchVolumeBrightness-THRKUQFI.mjs} +3 -3
  57. package/{touchVolumeBrightness-VSJS4WWO.mjs.map → touchVolumeBrightness-THRKUQFI.mjs.map} +1 -1
  58. package/videoArea-JBENXGDZ.mjs +2 -0
  59. package/{videoArea-E7A4UFKZ.mjs.map → videoArea-JBENXGDZ.mjs.map} +1 -1
  60. package/videoArea-ZU4LKPTL.js +2 -0
  61. package/{videoArea-AXJIXBW5.js.map → videoArea-ZU4LKPTL.js.map} +1 -1
  62. package/videoPlayerStyles.css +6 -3
  63. package/vodPlayer-62FEZN5H.js +2 -0
  64. package/{vodPlayer-YZ7XNHKT.js.map → vodPlayer-62FEZN5H.js.map} +1 -1
  65. package/{vodPlayer-LEY3FMUD.mjs → vodPlayer-SQSP4JD5.mjs} +2 -2
  66. package/{vodPlayer-LEY3FMUD.mjs.map → vodPlayer-SQSP4JD5.mjs.map} +1 -1
  67. package/backwardForward-6U6VETTV.mjs +0 -2
  68. package/backwardForward-FW25LAUC.js +0 -2
  69. package/chunk-4AXKM55A.js +0 -2
  70. package/chunk-AJG5T24R.js +0 -2
  71. package/chunk-J7CRSGHN.js +0 -2
  72. package/chunk-KODWZOFT.js +0 -3
  73. package/chunk-KODWZOFT.js.map +0 -1
  74. package/chunk-LHO7HY26.mjs +0 -3
  75. package/chunk-LHO7HY26.mjs.map +0 -1
  76. package/chunk-S3ULKQPB.js +0 -3
  77. package/chunk-UTQQHPIT.mjs +0 -9
  78. package/chunk-UTQQHPIT.mjs.map +0 -1
  79. package/chunk-Y3GDFXWU.js +0 -9
  80. package/chunk-Y3GDFXWU.js.map +0 -1
  81. package/nonStaticVideoTag-6IOIANAD.js +0 -2
  82. package/staticPlayer-4IVOGXWC.mjs +0 -2
  83. package/staticPlayer-L6ZHTYIE.js +0 -2
  84. package/staticVideoTag-4I2J2KRA.js +0 -2
  85. package/videoArea-AXJIXBW5.js +0 -2
  86. package/videoArea-E7A4UFKZ.mjs +0 -2
  87. package/vodPlayer-YZ7XNHKT.js +0 -2
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/videoPlayerLibrary/helpers/configs/nextConfigs/next.config.js","../src/videoPlayerLibrary/helpers/configs/npmPackage/npmPackage.ts","../src/videoPlayerLibrary/helpers/redux/slices/controllerSlice.ts","../src/videoPlayerLibrary/helpers/redux/slices/videoDataSlice.ts","../src/videoPlayerLibrary/helpers/redux/slices/userSlice.ts","../src/videoPlayerLibrary/helpers/interfaces/enums.ts","../src/videoPlayerLibrary/helpers/redux/store.ts","../src/videoPlayerLibrary/helpers/redux/slices/popoversSlice.ts","../src/videoPlayerLibrary/helpers/redux/slices/miniPlayerSlice.ts","../src/videoPlayerLibrary/helpers/helpers.ts","../src/videoPlayerLibrary/helpers/conditions/conditions.ts","../src/videoPlayerLibrary/helpers/redux/hooks.ts","../src/videoPlayerLibrary/helpers/constants.ts","../src/videoPlayerLibrary/helpers/logs/fluentdLogger.ts","../src/videoPlayerLibrary/helpers/services/apiCaller.ts","../src/videoPlayerLibrary/helpers/errorBoundary/errorBoundaryFunctions.ts","../src/videoPlayerLibrary/helpers/logs/logs.ts","../src/videoPlayerLibrary/helpers/services/services.ts","../src/videoPlayerLibrary/helpers/services/baseUrl.ts"],"names":["require_next_config","__commonJSMin","exports","module","init_esm_shims","npmPackage_exports","__export","isNpmPackage","init_npmPackage","__esmMin","ControllerSliceState","controllerSlice","createSlice","state","action","setPlay","setIsAutoPlay","setDuration","setCurrentTime","setQualityLevels","setAutoQuality","setActiveElements","setIsLoading","setIsFullScreen","setBufferedTimeWidth","setFirstPlay","setActivePointerProgressBar","setDelayTurnOffControlbar","setManualQuality","setCanPlayVideo","setLock","setIsEnded","setTooltipTime","setClearControllerSlice","controllerSlice_default","VideoDataSliceState","videoDataSlice","setInfo","setPlayerParams","setVideoElementSizeInfo","setMarkers","setIsFetchDetails","setIsValidAddress","setVideoTimelines","setIsReady","setSubtitles","setSubtitleText","setSelectedSubtitle","setClearVideoDataSlice","videoDataSlice_default","UserSliceState","userSlice","setUserSettings","setVideoSettings","setClearUserSlice","userSlice_default","PopOversSliceState","popoversSlice","setSettingPopover","setSpeedPopover","setQualityLevelsPopover","setMarkersListPopover","setClearPopoversSlice","popoversSlice_default","MiniPlayerSliceState","setMiniPlayerInfo","setDetailsMiniPlayer","setPlayMiniPlayer","setClearMiniPlayerSlice","miniPlayerSlice_default","store","configureStore","getDefaultMiddleware","store_default","conditions","type","params","details","isValidAddress","isFetchDetails","isReady","subtitles","selectedSubtitle","markers","firstPlay","lock","canPlayVideo","manualQuality","activeElements","isLoading","isEnded","isAutoPlay","play","isFullScreen","settingPopover","speedPopover","qualityLevelsPopover","markersListPopover","settings","miniPlayer","isTouchScreenLandscape","isTouchScreen","staticFormats","isIOS","isTouchScreenPortrait","wait","s","resolve","getUUID","uuid","uuidGenerator","char","val","addZeroBefore","n","secondsToHMS","seconds","h","m","realFormat","addUuidToSrc","src","urlObject","urlSrc","checkParentTarget","event","target","splitQueryParamsFromStreamLink","playerType","streamLink","queryParams","handleRippleCircle","id","element","circle","ripple","responseValidator","status","clearRedux","dispatch","weighted_random","options","i","weights","random","handlePageLoadTime","loadingDurationRef","pageLoadTime","highestResolutionSupported","resolutions","width","height","w","filteredResolutions","resolution","flattenObject","input","keyName","result","key","newKey","sortLanguages","array","priority","a","b","prioA","prioB","getSubtitleLabel","subtitleLanguage","label","spliteStringPerLine","str","inViewPort","positionLeft","positionRight","cleanVTT","vttText","useAppDispatch","useDispatch","useAppSelector","useSelector","mainPlayerVideoTag","miniPlayerVideoTag","progressBar","progressBarWidth","speedChangeLog","selectedSpeed","qualityChangeRequestLog","selectedQuality","qualityLevels","autoQuality","catchUpLoadingLog","duration","backwardForwardLog","fullscreenLog","category","brightnessLog","source","volumeLog","lockLog","ExceptionsLog","message","statusCode","url","videoTimelineLog","start","end","autoQualityChangeLog","sourceQuality","targetQuality","diffQuality","pingpongLog","startTimer","qualityHistory","pausePlayLog","isPlay","initLog","loadingTime","waitingTime","bannerLoadingTime","firstChunkPlayingTime","timerRef","totalTime","memory","timing","loadingLog","waitingDuration","qualityLevel","loadingCounterRef","videoEntranceTime","previousLoaderDiff","subtitleLog","language","eventMarkerClickLog","markerId","markerTime","markerTitle","markerDescription","markerSticker","errorLogProvider","data","sendFluentLog","apiCaller","method","headers","retryCount","maxRetryCount","errorMessage","retryPolicy","errorCallback","timeoutCount","axiosConfig","axios","error","newRetryDelay","newMaxRetryCount","envs","getRestApiLiveUrl","getFluentdUrl","getEmojiUrl","API","videoId","_data"],"mappings":"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","file":"chunk-LHO7HY26.mjs","sourcesContent":["module.exports = {\r\n baseUrl: \"https://hamrahi.cloud\",\r\n fluentdUrl: \"https://hamrahi.cloud\",\r\n};\r\n","export const isNpmPackage = false;\r\n","import { createSlice, PayloadAction } from \"@reduxjs/toolkit\";\r\nimport { IControllerSlice } from \"../../interfaces/interfaces\";\r\n\r\nconst ControllerSliceState: IControllerSlice = {\r\n play: false,\r\n isAutoPlay: true,\r\n duration: 0,\r\n currentTime: 0,\r\n qualityLevels: [],\r\n manualQuality: undefined,\r\n autoQuality: undefined,\r\n activeElements: true,\r\n isLoading: false,\r\n isFullScreen: false,\r\n bufferedTimeWidth: 0,\r\n firstPlay: true,\r\n activePointerProgressBar: false,\r\n delayTurnOffControlbar: false,\r\n canPlayVideo: false,\r\n lock: false,\r\n isEnded: false,\r\n tooltipTime: 0,\r\n};\r\n\r\nexport const controllerSlice = createSlice({\r\n name: \"controller\",\r\n initialState: ControllerSliceState,\r\n reducers: {\r\n setPlay: (state, action: PayloadAction<boolean>) => {\r\n state.play = action.payload;\r\n },\r\n setIsAutoPlay: (state, action: PayloadAction<boolean>) => {\r\n state.isAutoPlay = action.payload;\r\n },\r\n setDuration: (state, action: PayloadAction<number>) => {\r\n state.duration = action.payload;\r\n },\r\n setCurrentTime: (state, action: PayloadAction<number>) => {\r\n state.currentTime = action.payload;\r\n },\r\n setManualQuality: (state, action: PayloadAction<number | undefined>) => {\r\n state.manualQuality = action.payload;\r\n },\r\n setAutoQuality: (state, action: PayloadAction<number | undefined>) => {\r\n state.autoQuality = action.payload;\r\n },\r\n setQualityLevels: (state, action: PayloadAction<any[]>) => {\r\n state.qualityLevels = action.payload;\r\n },\r\n setActiveElements: (state, action: PayloadAction<boolean>) => {\r\n state.activeElements = action.payload;\r\n },\r\n setIsLoading: (state, action: PayloadAction<boolean>) => {\r\n state.isLoading = action.payload;\r\n },\r\n setIsFullScreen: (state, action: PayloadAction<boolean>) => {\r\n state.isFullScreen = action.payload;\r\n },\r\n setBufferedTimeWidth: (state, action: PayloadAction<number>) => {\r\n state.bufferedTimeWidth = action.payload;\r\n },\r\n setFirstPlay: (state, action: PayloadAction<boolean>) => {\r\n state.firstPlay = action.payload;\r\n },\r\n setActivePointerProgressBar: (state, action: PayloadAction<boolean>) => {\r\n state.activePointerProgressBar = action.payload;\r\n },\r\n setDelayTurnOffControlbar: (state, action: PayloadAction<boolean>) => {\r\n state.delayTurnOffControlbar = action.payload;\r\n },\r\n setCanPlayVideo: (state, action: PayloadAction<boolean>) => {\r\n state.canPlayVideo = action.payload;\r\n },\r\n setLock: (state, action: PayloadAction<boolean>) => {\r\n state.lock = action.payload;\r\n },\r\n setIsEnded: (state, action: PayloadAction<boolean>) => {\r\n state.isEnded = action.payload;\r\n },\r\n setTooltipTime: (state, action: PayloadAction<number>) => {\r\n state.tooltipTime = action.payload;\r\n },\r\n setClearControllerSlice: () => {\r\n return ControllerSliceState;\r\n }\r\n }\r\n});\r\n\r\nexport const {\r\n setPlay,\r\n setIsAutoPlay,\r\n setDuration,\r\n setCurrentTime,\r\n setQualityLevels,\r\n setAutoQuality,\r\n setActiveElements,\r\n setIsLoading,\r\n setIsFullScreen,\r\n setBufferedTimeWidth,\r\n setFirstPlay,\r\n setActivePointerProgressBar,\r\n setDelayTurnOffControlbar,\r\n setManualQuality,\r\n setCanPlayVideo,\r\n setLock,\r\n setIsEnded,\r\n setTooltipTime,\r\n setClearControllerSlice,\r\n} = controllerSlice.actions;\r\nexport default controllerSlice.reducer;\r\n","import { createSlice, PayloadAction } from \"@reduxjs/toolkit\";\r\nimport { IVideoElementSizeInfo, IDetails, IVideoDataSlice, IParams, IMarker } from \"../../interfaces/interfaces\";\r\n\r\nexport const VideoDataSliceState: IVideoDataSlice = {\r\n details: {\r\n stream_link: \"\",\r\n type: \"\",\r\n banner: \"\",\r\n id: undefined,\r\n title: undefined,\r\n vtt: undefined,\r\n vtt_mobile: undefined,\r\n user_id: null,\r\n content_id: undefined,\r\n content_type: null,\r\n duration: 0,\r\n subtitles: undefined,\r\n },\r\n params: {\r\n type: \"\",\r\n id: \"\",\r\n bannerAlt: \"\",\r\n fullscreen: \"\",\r\n autoplay: \"\",\r\n banner: \"\",\r\n provider: \"cafevdo\",\r\n onFinished: undefined,\r\n onPlay: undefined,\r\n onPause: undefined,\r\n playStatus: undefined,\r\n currentTime: undefined,\r\n daaniHashCode: undefined\r\n },\r\n markers: [],\r\n videoElementSizeInfo: {\r\n bottom: 0,\r\n top: 0,\r\n right: 0,\r\n left: 0,\r\n width: 0,\r\n height: 0\r\n },\r\n isFetchDetails: false,\r\n isValidAddress: false,\r\n videoTimelines: [],\r\n isReady: false,\r\n subtitles: [],\r\n selectedSubtitle: undefined,\r\n subtitleText: undefined,\r\n};\r\n\r\nexport const videoDataSlice = createSlice({\r\n name: \"videoData\",\r\n initialState: VideoDataSliceState,\r\n reducers: {\r\n setInfo: (state, action: PayloadAction<IDetails>) => {\r\n state.details = action.payload;\r\n },\r\n setPlayerParams: (state, action: PayloadAction<IParams>) => {\r\n state.params = action.payload;\r\n },\r\n setMarkers: (state, action: PayloadAction<IMarker[]>) => {\r\n state.markers = action.payload;\r\n },\r\n setVideoElementSizeInfo: (state, action: PayloadAction<IVideoElementSizeInfo>) => {\r\n state.videoElementSizeInfo = action.payload;\r\n },\r\n setIsFetchDetails: (state, action: PayloadAction<boolean>) => {\r\n state.isFetchDetails = action.payload;\r\n },\r\n setIsValidAddress: (state, action: PayloadAction<boolean>) => {\r\n state.isValidAddress = action.payload;\r\n },\r\n setVideoTimelines: (state, action: PayloadAction<number[]>) => {\r\n state.videoTimelines = action.payload;\r\n },\r\n setIsReady: (state, action: PayloadAction<boolean>) => {\r\n state.isReady = action.payload;\r\n },\r\n setSubtitles: (state, action: PayloadAction<TextTrack[]>) => {\r\n state.subtitles = action.payload;\r\n },\r\n setSelectedSubtitle: (state, action: PayloadAction<any>) => {\r\n state.selectedSubtitle = action.payload;\r\n },\r\n setSubtitleText: (state, action: PayloadAction<string>) => {\r\n state.subtitleText = action.payload;\r\n },\r\n setClearVideoDataSlice: (state) => {\r\n return (state = VideoDataSliceState);\r\n }\r\n }\r\n});\r\n\r\nexport const {\r\n setInfo,\r\n setPlayerParams,\r\n setVideoElementSizeInfo,\r\n setMarkers,\r\n setIsFetchDetails,\r\n setIsValidAddress,\r\n setVideoTimelines,\r\n setIsReady,\r\n setSubtitles,\r\n setSubtitleText,\r\n setSelectedSubtitle,\r\n setClearVideoDataSlice\r\n} = videoDataSlice.actions;\r\nexport default videoDataSlice.reducer;\r\n","import { createSlice, PayloadAction } from \"@reduxjs/toolkit\";\r\nimport { IUserSettings, IUserSlice, IVideoSettings } from \"../../interfaces/interfaces\";\r\n\r\nconst UserSliceState: IUserSlice = {\r\n settings: {\r\n quality: -1,\r\n brightness: 100,\r\n volume: 100,\r\n speed: 1,\r\n },\r\n videoSettings: {\r\n time: 0\r\n },\r\n};\r\n\r\nexport const userSlice = createSlice({\r\n name: \"user\",\r\n initialState: UserSliceState,\r\n reducers: {\r\n setUserSettings: (state, action: PayloadAction<IUserSettings>) => {\r\n state.settings = action.payload;\r\n },\r\n setVideoSettings: (state, action: PayloadAction<IVideoSettings>) => {\r\n state.videoSettings = action.payload;\r\n },\r\n setClearUserSlice: () => {\r\n return UserSliceState;\r\n }\r\n }\r\n});\r\n\r\nexport const {\r\n setUserSettings,\r\n setVideoSettings,\r\n setClearUserSlice\r\n} = userSlice.actions;\r\n\r\nexport default userSlice.reducer;\r\n","export const enum zIndex {\r\n vttDisable = -2,\r\n backwardForwardInActive = 1,\r\n videoPlayer,\r\n mainIcons,\r\n footer,\r\n vtt,\r\n markers,\r\n videoPlayerInFullScreen = 1000000,\r\n popoverBlurBackground,\r\n backwardForwardActive,\r\n miniPlayer,\r\n popoverContent,\r\n maxPopover,\r\n videoPlayerInPictureInPicture,\r\n}\r\n\r\nexport const enum SettingSections {\r\n main = \"main\",\r\n qualityLevels = \"qualityLevels\",\r\n speed = \"speed\",\r\n subtitles = \"subtitles\"\r\n}\r\n\r\nexport const enum PlayerTypes {\r\n static = \"static\",\r\n vod = \"vod\"\r\n}\r\n\r\nexport const enum ConditionName {\r\n showHeader = \"showHeader\",\r\n showMain = \"showMain\",\r\n showFooter = \"showFooter\",\r\n showTouchVolumeBrightness = \"showTouchVolumeBrightness\",\r\n showBackwardForward = \"showBackwardForward\",\r\n showTitle = \"showTitle\",\r\n showSettingPopover = \"showSettingPopover\",\r\n showSpeedPopover = \"showSpeedPopover\",\r\n showQualityLevelsPopover = \"showQualityLevelsPopover\",\r\n showSettingIcon = \"showSettingIcon\",\r\n showBanner = \"showBanner\",\r\n showProgressbar = \"showProgressbar\",\r\n showPictureInPicture = \"showPictureInPicture\",\r\n showSubtitle = \"showSubtitle\",\r\n showMarkerListPopover = \"showMarkerListPopover\",\r\n hidePopovers = \"hidePopovers\",\r\n isLandscape = \"isLandscape\",\r\n isTouchScreen = \"isTouchScreen\",\r\n isTouchScreenPortrait = \"isTouchScreenPortrait\",\r\n isTouchScreenLandscape = \"isTouchScreenLandscape\",\r\n isActiveElements = \"isActiveElements\",\r\n isPlay = \"isPlay\",\r\n isPlayMiniPlayer = \"isPlayMiniPlayer\",\r\n isFirstPlay = \"isFirstPlay\",\r\n isLock = \"isLock\",\r\n isIOS = \"isIOS\",\r\n isLoading = \"isLoading\",\r\n isStaticFormat = \"isStaticFormat\",\r\n isEnded = \"isEnded\",\r\n isAutoPlay = \"isAutoPlay\",\r\n isFullScreen = \"isFullScreen\",\r\n isValidAddress = \"isValidAddress\",\r\n isFetchDetails = \"isFetchDetails\",\r\n isAutoQuality = \"isAutoQuality\",\r\n isPressKeySpace = \"isPressKeySpace\",\r\n isPressKeyI = \"isPressKeyI\",\r\n isPressKeyF = \"isPressKeyF\",\r\n isPressKeyS = \"isPressKeyS\",\r\n isPressKeyArrowRight = \"isPressKeyArrowRight\",\r\n isPressKeyArrowLeft = \"isPressKeyArrowLeft\",\r\n isPressKeyM = \"isPressKeyM\",\r\n isPressKeyC = \"isPressKeyC\",\r\n isSendTimelineLog = \"isSendTimelineLog\",\r\n isReady = \"isReady\",\r\n isSelectedSubtitle = \"isSelectedSubtitle\",\r\n isMiniPlayerAndMainPlayerSame = \"isMiniPlayerAndMainPlayerSame\",\r\n hasTitle = \"hasTitle\",\r\n hasBanner = \"hasBanner\",\r\n hasStreamLink = \"hasStreamLink\",\r\n hasManualQuality = \"hasManualQuality\",\r\n hasSound = \"hasSound\",\r\n hasAutoPlay = \"hasAutoPlay\",\r\n hasFullScreenParams = \"hasFullScreenParams\",\r\n hasOnFinishedParams = \"hasOnFinishedParams\",\r\n hasSubtitles = \"hasSubtitles\",\r\n hasSubtitlesInDetails = \"hasSubtitlesInDetails\",\r\n hasActiveCue = \"hasActiveCue\",\r\n hasOnPlayParams = \"hasOnPlayParams\",\r\n hasOnPauseParams = \"hasOnPauseParams\",\r\n hasPlayStatusParams = \"hasPlayStatusParams\",\r\n hasMiniPlayer = \"hasMiniPlayer\",\r\n hasCurrentTimeParams = \"hasCurrentTimeParams\",\r\n hasMarkers = \"hasMarkers\",\r\n hasSubtitlesInParams = \"hasSubtitlesInParams\",\r\n getDetails = \"getDetails\",\r\n getMarkers = \"getMarkers\",\r\n canPlayVideo = \"canPlayVideo\",\r\n setSubtitleFirstPlay = \"setSubtitleFirstPlay\"\r\n}","import controllerReducer from \"./slices/controllerSlice\";\r\nimport videoDataReducer from \"./slices/videoDataSlice\";\r\nimport popoversReducer from \"./slices/popoversSlice\";\r\nimport userReducer from \"./slices/userSlice\";\r\nimport miniPlayerReducer from \"./slices/miniPlayerSlice\";\r\n\r\nimport { configureStore } from \"@reduxjs/toolkit\";\r\n\r\nconst store = configureStore({\r\n reducer: {\r\n controller: controllerReducer,\r\n videoData: videoDataReducer,\r\n popovers: popoversReducer,\r\n user: userReducer,\r\n miniPlayer: miniPlayerReducer,\r\n },\r\n devTools: true,\r\n middleware: (getDefaultMiddleware) => getDefaultMiddleware({ serializableCheck: false })\r\n});\r\n\r\nexport type RootState = ReturnType<typeof store.getState>;\r\nexport type AppDispatch = typeof store.dispatch;\r\nexport default store;\r\n","import { createSlice, PayloadAction } from \"@reduxjs/toolkit\";\r\nimport { IPopoversSlice } from \"../../interfaces/interfaces\";\r\n\r\nconst PopOversSliceState: IPopoversSlice = {\r\n settingPopover: false,\r\n speedPopover: false,\r\n qualityLevelsPopover: false,\r\n markersListPopover: false\r\n};\r\nexport const popoversSlice = createSlice({\r\n name: \"popover\",\r\n initialState: PopOversSliceState,\r\n reducers: {\r\n setSettingPopover: (state, action: PayloadAction<boolean>) => {\r\n state.settingPopover = action.payload;\r\n },\r\n setSpeedPopover: (state, action: PayloadAction<boolean>) => {\r\n state.speedPopover = action.payload;\r\n },\r\n setQualityLevelsPopover: (state, action: PayloadAction<boolean>) => {\r\n state.qualityLevelsPopover = action.payload;\r\n },\r\n setMarkersListPopover: (state, action: PayloadAction<boolean>) => {\r\n state.markersListPopover = action.payload;\r\n },\r\n setClearPopoversSlice: (state) => {\r\n state.settingPopover = false;\r\n state.speedPopover = false;\r\n state.qualityLevelsPopover = false;\r\n state.markersListPopover = false;\r\n }\r\n }\r\n});\r\n\r\nexport const {\r\n setSettingPopover,\r\n setSpeedPopover,\r\n setQualityLevelsPopover,\r\n setMarkersListPopover,\r\n setClearPopoversSlice\r\n} = popoversSlice.actions;\r\n\r\nexport default popoversSlice.reducer;\r\n","import { createSlice, PayloadAction } from \"@reduxjs/toolkit\";\r\nimport {\r\n IDetails,\r\n IMiniPlayerParams,\r\n IMiniPlayerSlice,\r\n} from \"../../interfaces/interfaces\";\r\nimport { PlayerTypes } from \"../../interfaces/enums\";\r\n\r\nconst MiniPlayerSliceState: IMiniPlayerSlice = {\r\n params: {\r\n id: \"0\",\r\n type: \"\",\r\n currentTime: 0,\r\n autoPlay: false,\r\n onClose: () => {},\r\n },\r\n details: {},\r\n play: false,\r\n};\r\n\r\nexport const userSlice = createSlice({\r\n name: \"user\",\r\n initialState: MiniPlayerSliceState,\r\n reducers: {\r\n setMiniPlayerInfo: (state, action: PayloadAction<IMiniPlayerParams>) => {\r\n state.params = {\r\n ...action.payload,\r\n id:\r\n action.payload.type === PlayerTypes.static\r\n ? window.atob(action.payload.id)\r\n : action.payload.id,\r\n banner: action.payload.banner ? action.payload.banner : undefined,\r\n };\r\n },\r\n setDetailsMiniPlayer: (state, action: PayloadAction<IDetails>) => {\r\n state.details = action.payload;\r\n },\r\n setPlayMiniPlayer: (state, action: PayloadAction<boolean>) => {\r\n state.play = action.payload;\r\n },\r\n setClearMiniPlayerSlice: (state) => {\r\n return (state = MiniPlayerSliceState);\r\n },\r\n },\r\n});\r\n\r\nexport const {\r\n setMiniPlayerInfo,\r\n setDetailsMiniPlayer,\r\n setPlayMiniPlayer,\r\n setClearMiniPlayerSlice,\r\n} = userSlice.actions;\r\n\r\nexport default userSlice.reducer;\r\n","import { conditions } from \"./conditions/conditions\";\r\nimport { ConditionName } from \"./interfaces/enums\";\r\nimport store from \"./redux/store\";\r\nimport { setClearVideoDataSlice } from \"./redux/slices/videoDataSlice\";\r\nimport { setClearControllerSlice } from \"./redux/slices/controllerSlice\";\r\nimport { setClearUserSlice } from \"./redux/slices/userSlice\";\r\nimport { setClearPopoversSlice } from \"./redux/slices/popoversSlice\";\r\n\r\nexport const wait = (s: number) => new Promise((resolve) => setTimeout(resolve, s * 1000));\r\n\r\nexport const getUUID = () => {\r\n let uuid = localStorage.getItem(\"hamrahiUUID\");\r\n if (!uuid) {\r\n uuid = uuidGenerator();\r\n localStorage.setItem(\"hamrahiUUID\", uuid);\r\n }\r\n return uuid.toString();\r\n};\r\n\r\nexport const uuidGenerator = () => {\r\n let uuid = \"xxxxxxxx-xxxx-Mxxx-Nxxx-x\".replace(/[xMN]/g, (char) => {\r\n let val: number;\r\n if (char === \"M\") val = Math.floor(1 + Math.random() * 5);\r\n else if (char === \"N\") val = Math.floor(8 + Math.random() * 4);\r\n else val = Math.floor(Math.random() * 16);\r\n return val.toString(16);\r\n });\r\n uuid += Date.now().toString(16);\r\n return uuid;\r\n};\r\n\r\nexport const isTouchScreen = () =>\r\n \"ontouchstart\" in window || ((window as any)[\"DocumentTouch\"] && document instanceof (window as any)[\"DocumentTouch\"]);\r\nexport const isTouchScreenLandscape = () => {\r\n const { isFullScreen } = store.getState().controller;\r\n return isTouchScreen() && isFullScreen;\r\n};\r\nexport const isTouchScreenPortrait = () => {\r\n const { isFullScreen } = store.getState().controller;\r\n return isTouchScreen() && !isFullScreen;\r\n};\r\n\r\nexport const isIOS = () => {\r\n return (\r\n [\"iPad Simulator\", \"iPhone Simulator\", \"iPod Simulator\", \"iPad\", \"iPhone\", \"iPod\"].includes(navigator.platform) ||\r\n // iPad on iOS 13 detection\r\n (navigator.userAgent.includes(\"Mac\") && \"ontouchend\" in document)\r\n );\r\n};\r\n\r\nexport const addZeroBefore = (n: number) => {\r\n return (n < 10 ? \"0\" : \"\") + n;\r\n};\r\n\r\nexport const secondsToHMS = (seconds: number) => {\r\n const h = Math.floor(seconds / 3600);\r\n const m = Math.floor((seconds % 3600) / 60);\r\n const s = Math.floor((seconds % 3600) % 60);\r\n return h < 1 ? `${addZeroBefore(m)}:${addZeroBefore(s)}` : `${addZeroBefore(h)}:${addZeroBefore(m)}:${addZeroBefore(s)}`;\r\n};\r\n\r\nexport const staticFormats = (realFormat: string) => {\r\n if ([\"mp4\", \"mkv\", \"mov\", \"m4v\"].includes(realFormat)) return \"mp4\";\r\n else if (realFormat === \"webm\" || realFormat === \"flv\") return realFormat;\r\n else if ([\"mp3\", \"ogg\"].includes(realFormat)) return \"mp3\";\r\n else return false;\r\n};\r\n\r\nexport const addUuidToSrc = (src: string) => {\r\n const urlObject = new URL(src);\r\n let urlSrc = src;\r\n if (urlObject.search.length) return (urlSrc += `&uuid=${getUUID()}`);\r\n else return (urlSrc += `?uuid=${getUUID()}`);\r\n};\r\n\r\nexport const checkParentTarget = (event: any, target: string) => {\r\n try {\r\n return [\r\n event.target.id,\r\n event.target.parentNode.id,\r\n event.target.parentNode.parentNode.id,\r\n event.target.parentNode.parentNode.parentNode.id,\r\n event.target.parentNode.parentNode.parentNode.parentNode.id\r\n ].includes(target);\r\n } catch (error) {\r\n return false;\r\n }\r\n};\r\n\r\nexport const splitQueryParamsFromStreamLink = (playerType: \"mainPlayer\" | \"miniPlayer\") => {\r\n let streamLink = \"\";\r\n if(playerType === \"mainPlayer\") streamLink = store.getState().videoData.details.stream_link!;\r\n else streamLink = store.getState().miniPlayer.details.stream_link!;\r\n let queryParams: string = \"\";\r\n if(streamLink) queryParams = streamLink.split(\"m3u8\")[1];\r\n if (queryParams) queryParams = `${queryParams}&uuid=${getUUID()}`;\r\n else queryParams = `?uuid=${getUUID()}`;\r\n return queryParams;\r\n};\r\n\r\nexport const handleRippleCircle = (event: any, id: string) => {\r\n const element: any = document.getElementById(id);\r\n const circle = document.createElement(\"span\");\r\n circle.style.width = circle.style.height = `50px`;\r\n circle.style.left = `${event.touches[0].clientX - element.offsetLeft - 25}px`;\r\n circle.style.top = `${event.touches[0].clientY - element.offsetTop - 25}px`;\r\n circle.classList.add(\"pl-ripple\");\r\n const ripple = element.getElementsByClassName(\"pl-ripple\")[0];\r\n if (ripple) ripple.remove();\r\n element.appendChild(circle);\r\n};\r\n\r\nexport const handleRipple = (event: any, id: string, size: number = 50) => {\r\n const clientX = event.clientX !== undefined ? event.clientX : event.touches[0].clientX;\r\n const clientY = event.clientY !== undefined ? event.clientY : event.touches[0].clientY;\r\n const element: any = document.getElementById(id);\r\n const circle = document.createElement(\"span\");\r\n circle.style.width = circle.style.height = `${size}px`;\r\n circle.style.left = `${clientX - size / 2}px`;\r\n circle.style.top = `${clientY - element.getBoundingClientRect().top - size / 2}px`;\r\n circle.classList.add(\"pl-ripple\");\r\n const ripple = element.getElementsByClassName(\"pl-ripple\")[0];\r\n if (ripple) ripple.remove();\r\n element.appendChild(circle);\r\n};\r\n\r\nexport const responseValidator = (status: number): boolean => status >= 200 && status < 300;\r\n\r\nexport const clearRedux = () => {\r\n const dispatch = store.dispatch;\r\n dispatch(setClearVideoDataSlice());\r\n dispatch(setClearControllerSlice());\r\n dispatch(setClearUserSlice());\r\n dispatch(setClearPopoversSlice());\r\n};\r\n\r\nexport const weighted_random = (options: any) => {\r\n let i;\r\n\r\n let weights: any[] = [];\r\n\r\n for (i = 0; i < options.length; i++) weights[i] = options[i].weight + (weights[i - 1] || 0);\r\n\r\n let random = Math.random() * weights[weights.length - 1];\r\n\r\n for (i = 0; i < weights.length; i++) if (weights[i] > random) break;\r\n\r\n return options[i].domain;\r\n};\r\n\r\n// ***** Player Core *****\r\n\r\nexport const handlePageLoadTime = (loadingDurationRef: any) => {\r\n let pageLoadTime = 0;\r\n if (performance && performance.getEntriesByType(\"navigation\")) pageLoadTime = performance.getEntriesByType(\"navigation\")[0].duration;\r\n loadingDurationRef.current = pageLoadTime;\r\n};\r\n\r\nexport const highestResolutionSupported = (resolutions: string[], width: number, height: number) => {\r\n const w = width * window.devicePixelRatio;\r\n const h = height * window.devicePixelRatio;\r\n let filteredResolutions: string[] = [];\r\n if (conditions(ConditionName.isTouchScreenPortrait))\r\n filteredResolutions = resolutions.filter((resolution: string) => Number(resolution.split(\"x\")[0].trim()) <= w);\r\n else\r\n filteredResolutions = resolutions.filter(\r\n (resolution: string) => Number(resolution.split(\"x\")[0].trim()) <= h || Number(resolution.split(\"x\")[1].trim()) <= w\r\n );\r\n return filteredResolutions.indexOf(filteredResolutions[filteredResolutions.length - 1]);\r\n};\r\n\r\nexport const flattenObject = (input: any, keyName?: string) => {\r\n let result: any = {};\r\n for (const key in input) {\r\n const newKey = keyName ? `${keyName}_${key}` : key;\r\n if (typeof input[key] === \"object\" && !Array.isArray(input[key])) result = { ...result, ...flattenObject(input[key], newKey) };\r\n else result[newKey] = input[key];\r\n }\r\n return result;\r\n};\r\n\r\nexport const sortLanguages = (array: any) => {\r\n const priority: any = { fa: 1, en: 2 };\r\n\r\n return array.slice().sort((a: any, b: any) => {\r\n const prioA = priority[a.lang] || 999;\r\n const prioB = priority[b.lang] || 999;\r\n\r\n return prioA - prioB;\r\n });\r\n};\r\n\r\nexport const getSubtitleLabel = (subtitleLanguage: string) => {\r\n let label;\r\n switch (subtitleLanguage) {\r\n case \"fa\":\r\n label = \"فارسی\";\r\n break;\r\n case \"en\":\r\n label = \"انگلیسی\";\r\n break;\r\n case \"ar\":\r\n label = \"عربی\";\r\n break;\r\n case \"tr\":\r\n label = \"ترکی\";\r\n break;\r\n default:\r\n break;\r\n }\r\n return label;\r\n};\r\n\r\nexport const spliteStringPerLine = (str: string) => str.split(/\\r?\\n|\\r|\\n/g);\r\n\r\nexport const inViewPort = (element: any) => {\r\n if (element) {\r\n const positionLeft = element.offsetLeft - element.offsetWidth / 2;\r\n const positionRight = window.innerWidth - (element.offsetLeft + element.offsetWidth);\r\n if (positionLeft >= 0 && positionRight >= 0) return \"inViewport\";\r\n else if (positionLeft < 0) return \"OutViewPortFromLeft\";\r\n else if (positionRight < 0) return \"OutViewPortFromRight\";\r\n }\r\n};\r\n\r\nexport const compare = (a: any, b: any) => {\r\n if (a.time < b.time) return -1;\r\n if (a.time > b.time) return 1;\r\n return 0;\r\n};\r\n\r\nexport const cleanVTT = (vttText:string) => {\r\n // Remove all timestamps and alignment/position data\r\n vttText = vttText.replace(/\\d{2}:\\d{2}:\\d{2}\\.\\d{3} --> \\d{2}:\\d{2}:\\d{2}\\.\\d{3}.*\\n/g, '');\r\n \r\n // Remove all HTML tags like <c> and </c>\r\n vttText = vttText.replace(/<[^>]+>/g, '');\r\n \r\n // Remove extra blank lines\r\n vttText = vttText.replace(/\\n+/g, '\\n');\r\n \r\n // Trim leading and trailing whitespace\r\n vttText = vttText.trim();\r\n\r\n return vttText;\r\n}","import {\r\n isIOS,\r\n isTouchScreen,\r\n isTouchScreenLandscape,\r\n isTouchScreenPortrait,\r\n staticFormats,\r\n} from \"../helpers\";\r\nimport { ConditionName, PlayerTypes } from \"../interfaces/enums\";\r\nimport store from \"../redux/store\";\r\n\r\nexport const conditions = (type: string) => {\r\n const {\r\n params,\r\n details,\r\n isValidAddress,\r\n isFetchDetails,\r\n isReady,\r\n subtitles,\r\n selectedSubtitle,\r\n markers\r\n } = store.getState().videoData;\r\n const {\r\n firstPlay,\r\n lock,\r\n canPlayVideo,\r\n manualQuality,\r\n activeElements,\r\n isLoading,\r\n isEnded,\r\n isAutoPlay,\r\n play,\r\n isFullScreen,\r\n } = store.getState().controller;\r\n const { settingPopover, speedPopover, qualityLevelsPopover, markersListPopover } =\r\n store.getState().popovers;\r\n const { settings } = store.getState().user;\r\n const miniPlayer = store.getState().miniPlayer;\r\n\r\n switch (type) {\r\n case ConditionName.showHeader:\r\n return !firstPlay && canPlayVideo;\r\n case ConditionName.showMain:\r\n return !lock || firstPlay;\r\n case ConditionName.showFooter:\r\n return !firstPlay && canPlayVideo;\r\n case ConditionName.showTouchVolumeBrightness:\r\n return !firstPlay && isTouchScreenLandscape() && !lock && !isEnded;\r\n case ConditionName.showBackwardForward:\r\n return !firstPlay && isTouchScreen() && !lock;\r\n case ConditionName.showTitle:\r\n return !staticFormats(params.type!) && isFullScreen && !lock;\r\n case ConditionName.showSettingPopover:\r\n return settingPopover;\r\n case ConditionName.showSpeedPopover:\r\n return speedPopover;\r\n case ConditionName.showQualityLevelsPopover:\r\n return qualityLevelsPopover;\r\n case ConditionName.showSettingIcon:\r\n return !staticFormats(params.type!) && !isIOS() && !isFullScreen;\r\n case ConditionName.showBanner:\r\n return firstPlay && (details.banner || params.banner);\r\n case ConditionName.showProgressbar:\r\n return !isIOS();\r\n case ConditionName.showPictureInPicture:\r\n return !isIOS() && !isTouchScreen();\r\n case ConditionName.showSubtitle:\r\n return !!selectedSubtitle;\r\n case ConditionName.showMarkerListPopover:\r\n return markersListPopover;\r\n case ConditionName.hidePopovers:\r\n return !settingPopover;\r\n case ConditionName.isLandscape:\r\n return window.innerHeight <= window.innerWidth;\r\n case ConditionName.isTouchScreen:\r\n return isTouchScreen();\r\n case ConditionName.isTouchScreenPortrait:\r\n return isTouchScreenPortrait();\r\n case ConditionName.isTouchScreenLandscape:\r\n return isTouchScreenLandscape();\r\n case ConditionName.isActiveElements:\r\n return activeElements;\r\n case ConditionName.isPlay:\r\n return play;\r\n case ConditionName.isPlayMiniPlayer:\r\n return miniPlayer.play;\r\n case ConditionName.isFirstPlay:\r\n return firstPlay;\r\n case ConditionName.isLock:\r\n return lock;\r\n case ConditionName.isIOS:\r\n return isIOS();\r\n case ConditionName.isLoading:\r\n return isLoading;\r\n case ConditionName.isStaticFormat:\r\n return params.type === PlayerTypes.static;\r\n case ConditionName.isEnded:\r\n return isEnded;\r\n case ConditionName.isAutoPlay:\r\n return isAutoPlay;\r\n case ConditionName.isFullScreen:\r\n return isFullScreen;\r\n case ConditionName.isValidAddress:\r\n return isValidAddress;\r\n case ConditionName.isFetchDetails:\r\n return isFetchDetails;\r\n case ConditionName.isAutoQuality:\r\n return settings.quality === -1;\r\n case ConditionName.isPressKeySpace:\r\n return !lock;\r\n case ConditionName.isPressKeyI:\r\n return !lock && !firstPlay;\r\n case ConditionName.isPressKeyF:\r\n return !lock && !firstPlay;\r\n case ConditionName.isPressKeyS:\r\n return !lock && !firstPlay;\r\n case ConditionName.isPressKeyArrowRight:\r\n return !firstPlay && !lock;\r\n case ConditionName.isPressKeyArrowLeft:\r\n return !firstPlay && !lock;\r\n case ConditionName.isPressKeyM:\r\n return !firstPlay && !lock;\r\n case ConditionName.isPressKeyC:\r\n return !lock && !firstPlay && !!subtitles && subtitles.length > 0;\r\n case ConditionName.isSendTimelineLog:\r\n return !staticFormats(params.type!);\r\n case ConditionName.isReady:\r\n return isReady;\r\n case ConditionName.isSelectedSubtitle:\r\n return !!subtitles && subtitles.length > 0 && selectedSubtitle;\r\n case ConditionName.isMiniPlayerAndMainPlayerSame:\r\n return params.id === miniPlayer.params.id;\r\n case ConditionName.hasTitle:\r\n return details.title;\r\n case ConditionName.hasBanner:\r\n return details.banner;\r\n case ConditionName.hasStreamLink:\r\n return details.stream_link;\r\n case ConditionName.hasManualQuality:\r\n return manualQuality !== undefined && manualQuality !== null;\r\n case ConditionName.hasSound:\r\n return !!settings.volume;\r\n case ConditionName.hasAutoPlay:\r\n return params.autoplay === \"true\";\r\n case ConditionName.hasFullScreenParams:\r\n return params.fullscreen === \"true\";\r\n case ConditionName.hasOnFinishedParams:\r\n return !!params.onFinished;\r\n case ConditionName.hasSubtitles:\r\n return !!subtitles && subtitles.length > 0;\r\n case ConditionName.hasSubtitlesInDetails:\r\n return details.subtitles && details.subtitles.length > 0;\r\n case ConditionName.hasActiveCue:\r\n return (\r\n selectedSubtitle &&\r\n selectedSubtitle.activeCues &&\r\n selectedSubtitle.activeCues.length > 0\r\n );\r\n case ConditionName.hasOnPlayParams:\r\n return !!params.onPlay;\r\n case ConditionName.hasOnPauseParams:\r\n return !!params.onPause;\r\n case ConditionName.hasPlayStatusParams:\r\n return params.playStatus !== undefined;\r\n case ConditionName.hasMiniPlayer:\r\n return miniPlayer.params.id;\r\n case ConditionName.hasCurrentTimeParams:\r\n return params.currentTime !== undefined;\r\n case ConditionName.hasMarkers:\r\n return markers.length !== 0;\r\n case ConditionName.hasSubtitlesInParams:\r\n return params.subtitles && params.subtitles.length;\r\n case ConditionName.getDetails:\r\n return !!params.type && params.id;\r\n case ConditionName.getMarkers:\r\n return String(params.type) === \"vod\" && params.id && isFetchDetails;\r\n case ConditionName.canPlayVideo:\r\n return canPlayVideo;\r\n case ConditionName.setSubtitleFirstPlay:\r\n return (\r\n details.subtitles &&\r\n details.subtitles.length > 0 &&\r\n !firstPlay &&\r\n !staticFormats(params.type!)\r\n );\r\n default:\r\n break;\r\n }\r\n};\r\n","import { AppDispatch, RootState } from \"./store\";\r\nimport { TypedUseSelectorHook, useDispatch, useSelector } from \"react-redux\";\r\n\r\nexport const useAppDispatch: any = () => useDispatch<AppDispatch>();\r\nexport const useAppSelector: TypedUseSelectorHook<RootState> = useSelector;\r\n","import store from \"./redux/store\";\r\n\r\nexport const mainPlayerVideoTag = () => document.getElementById(\"player-tag\") as HTMLVideoElement;\r\nexport const miniPlayerVideoTag = () => document.getElementById(\"mini-player-video-tag\") as HTMLVideoElement;\r\nexport const progressBar = () => document.getElementById(\"time-progress-bar\") as any;\r\nexport const progressBarWidth = () => store.getState().videoData.videoElementSizeInfo.width - 2;","import store from \"../redux/store\";\r\nimport { apiCaller } from \"../services/apiCaller\";\r\nimport { API } from \"../services/services\";\r\nimport { getUUID } from \"../helpers\";\r\n\r\nexport const sendFluentLog = (data: any) => {\r\n const { details, params } = store.getState().videoData;\r\n let _data = {\r\n ...data,\r\n timestamp: Date.now(),\r\n clientUUID: getUUID(),\r\n uuid: getUUID(),\r\n link: window.location.href,\r\n user_id: details.user_id,\r\n live_id: null,\r\n format: undefined,\r\n content_type: details.content_type,\r\n content_id: details.content_id,\r\n daaniHashCode: params.daaniHashCode\r\n };\r\n apiCaller({ url: API().logs, method: \"post\", data: _data });\r\n};\r\n","import axios from \"axios\";\r\nimport { IApiCaller, IAxiosConfig, IRetryPolicy } from \"../interfaces/interfaces\";\r\nimport store from \"../redux/store\";\r\nimport { wait } from \"../helpers\";\r\nimport { errorLogProvider } from \"../errorBoundary/errorBoundaryFunctions\";\r\n\r\nexport const apiCaller: any = async ({\r\n url,\r\n method = \"GET\",\r\n data,\r\n headers,\r\n retryCount = 1,\r\n maxRetryCount = 0,\r\n errorMessage,\r\n retryPolicy,\r\n errorCallback,\r\n timeoutCount\r\n}: IApiCaller) => {\r\n let axiosConfig: IAxiosConfig = {\r\n url: url,\r\n method: method,\r\n headers: {\r\n ...headers,\r\n \"Content-Type\": \"application/json\"\r\n },\r\n timeout: timeoutCount ? timeoutCount * 1000 : undefined\r\n };\r\n if (data) {\r\n if (method === \"GET\")\r\n axiosConfig = {\r\n ...axiosConfig,\r\n params: {\r\n uuid: store.getState().videoData.params.uuid,\r\n provider: store.getState().videoData.params.provider === \"unknown\" ? undefined : store.getState().videoData.params.provider,\r\n ...data\r\n }\r\n };\r\n else\r\n axiosConfig = {\r\n ...axiosConfig,\r\n data: {\r\n uuid: store.getState().videoData.params.uuid,\r\n provider: store.getState().videoData.params.provider === \"unknown\" ? undefined : store.getState().videoData.params.provider,\r\n ...data\r\n }\r\n };\r\n } else {\r\n if (method === \"GET\")\r\n axiosConfig = {\r\n ...axiosConfig,\r\n params: {\r\n uuid: store.getState().videoData.params.uuid,\r\n provider: store.getState().videoData.params.provider === \"unknown\" ? undefined : store.getState().videoData.params.provider\r\n }\r\n };\r\n else\r\n axiosConfig = {\r\n ...axiosConfig,\r\n data: {\r\n uuid: store.getState().videoData.params.uuid,\r\n provider: store.getState().videoData.params.provider === \"unknown\" ? undefined : store.getState().videoData.params.provider\r\n }\r\n };\r\n }\r\n try {\r\n return await axios(axiosConfig);\r\n } catch (error: any) {\r\n errorLogProvider({ type: \"API-ERROR\", message: error.message ? error.message : \"\", statusCode:error.response && error.response.status ? error.response.status : undefined, url });\r\n if (error && error.response && error.response.status === 401) {\r\n // \r\n } else {\r\n if (errorCallback) errorCallback(error.response.status, error.response.message);\r\n let newRetryDelay = 0,\r\n newMaxRetryCount = 0;\r\n if (retryPolicy !== undefined) {\r\n for (let i = 0; i < retryPolicy.length; i++) {\r\n if (\r\n (((retryPolicy[i].codeAbove && error.response.status >= retryPolicy[i].codeAbove!) ||\r\n (retryPolicy[i].codeBelow && error.response.status <= retryPolicy[i].codeBelow!)) &&\r\n (retryPolicy[i].excludeCodes.length === 0 || !retryPolicy[i].excludeCodes.includes(error.response.status))) ||\r\n retryPolicy[i].includeCodes.length === 0 ||\r\n retryPolicy[i].includeCodes.includes(error.response.status)\r\n ) {\r\n newMaxRetryCount = retryPolicy[i].count;\r\n newRetryDelay = retryPolicy[i].delay;\r\n break;\r\n }\r\n }\r\n } else {\r\n newMaxRetryCount = maxRetryCount;\r\n newRetryDelay = retryCount + 1;\r\n }\r\n if (retryCount < newMaxRetryCount) {\r\n await wait(newRetryDelay);\r\n return apiCaller({\r\n url,\r\n method,\r\n data,\r\n headers,\r\n retryCount: retryCount + 1,\r\n newMaxRetryCount,\r\n errorMessage,\r\n retryPolicy,\r\n errorCallback\r\n });\r\n } else if (error.response)\r\n return {\r\n data: error.response.data ? error.response.data : { detail: \"عملیات با خطا مواجه شده است.\" },\r\n status: error.response.status\r\n };\r\n }\r\n }\r\n};\r\n\r\nexport function getAll(path: string, retryPolicy?: IRetryPolicy[], params?: any, retryCount: number = 1, maxRetryCount: number = 0) {\r\n return new Promise(async (resolve, reject) => {\r\n // Added reject to the Promise executor function.\r\n try {\r\n const url = new URL(path);\r\n const limit = 1000;\r\n if (params) {\r\n Object.keys(params).forEach((key) => {\r\n if (params[key]) {\r\n url.searchParams.set(key, params[key]);\r\n }\r\n });\r\n }\r\n url.searchParams.set(\"limit\", limit.toString());\r\n const response = await fetch(url.href);\r\n if (!response.ok) {\r\n // Check if the response was not ok (status not in the range 200-299).\r\n throw response;\r\n }\r\n const data = await response.json();\r\n const count = data.count;\r\n const requestCount = Math.ceil(count / limit) - 1;\r\n const promises: Array<Promise<any>> = [];\r\n for (let i = 0; i < requestCount; i++) {\r\n const offset = i * limit; // Fixed the offset calculation.\r\n url.searchParams.set(\"offset\", offset.toString());\r\n const promise: Promise<any> = fetch(url.href).then((res) => {\r\n if (res.ok) {\r\n return res.json();\r\n }\r\n return res.json().then((err) => Promise.reject(err));\r\n });\r\n promises.push(promise);\r\n }\r\n Promise.all(promises)\r\n .then((res) => {\r\n const results = res.flatMap((item) => item.results);\r\n resolve([...data.results, ...results]);\r\n })\r\n .catch(reject); // Added catch to handle any errors in the Promise.all.\r\n } catch (error: any) {\r\n let newRetryDelay = 0,\r\n newMaxRetryCount = 0;\r\n if (retryPolicy !== undefined) {\r\n for (let i = 0; i < retryPolicy.length; i++) {\r\n if (\r\n ((retryPolicy[i].codeAbove && error.status >= retryPolicy[i].codeAbove!) ||\r\n (retryPolicy[i].codeBelow && error.status <= retryPolicy[i].codeBelow!)) &&\r\n (retryPolicy[i].excludeCodes.length === 0 || !retryPolicy[i].excludeCodes.includes(error.status)) &&\r\n (retryPolicy[i].includeCodes.length === 0 || retryPolicy[i].includeCodes.includes(error.status))\r\n ) {\r\n newMaxRetryCount = retryPolicy[i].count;\r\n newRetryDelay = retryPolicy[i].delay;\r\n break;\r\n }\r\n }\r\n if (retryCount < newMaxRetryCount) {\r\n await wait(newRetryDelay);\r\n getAll(path, retryPolicy, params, retryCount + 1, newMaxRetryCount);\r\n }\r\n }\r\n }\r\n });\r\n}","import { sendFluentLog } from \"../logs/fluentdLogger\";\r\nimport { ExceptionsLog } from \"../logs/logs\";\r\n\r\nexport const errorLogProvider = (data?: {type:string, message:string, statusCode?:number, url?:string}) => {\r\n if(data) sendFluentLog(ExceptionsLog(data.type, data.message, data.statusCode, data.url));\r\n}\r\n","import { conditions } from \"../conditions/conditions\";\r\nimport { mainPlayerVideoTag } from \"../constants\";\r\nimport { flattenObject, getUUID } from \"../helpers\";\r\nimport { ConditionName } from \"../interfaces/enums\";\r\nimport store from \"../redux/store\";\r\n\r\nexport const speedChangeLog = (selectedSpeed: Number) => {\r\n const { params, details } = store.getState().videoData;\r\n const { settings } = store.getState().user;\r\n return {\r\n category: \"speedChange\",\r\n previousSelectedSpeed: settings.speed,\r\n selectedSpeed: selectedSpeed,\r\n id: Number(params.id),\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id,\r\n provider: params.provider\r\n };\r\n};\r\n\r\nexport const qualityChangeRequestLog = (selectedQuality: String) => {\r\n const { params, details } = store.getState().videoData;\r\n const { qualityLevels, manualQuality, autoQuality } = store.getState().controller;\r\n return {\r\n category: \"qualityChangeRequest\",\r\n currentPlayingQuality: `${qualityLevels[conditions(ConditionName.isAutoQuality) ? autoQuality ?? manualQuality! : manualQuality!]}P`,\r\n previousSelectedQuality: conditions(ConditionName.isAutoQuality) ? \"auto\" : `${qualityLevels[manualQuality!]}P`,\r\n selectedQuality: selectedQuality,\r\n id: Number(params.id),\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id,\r\n provider: params.provider\r\n };\r\n};\r\n\r\nexport const catchUpLoadingLog = (duration: number) => {\r\n const { params, details } = store.getState().videoData;\r\n const { qualityLevels, autoQuality } = store.getState().controller;\r\n const { settings } = store.getState().user;\r\n\r\n return {\r\n category: \"catchUpLoading\",\r\n previousVideoTime: Number(sessionStorage.getItem(\"previousVideoTime\")),\r\n currentVideoTime: mainPlayerVideoTag().currentTime,\r\n duration: duration,\r\n quality: `${conditions(ConditionName.isAutoQuality) ? qualityLevels[autoQuality!] : qualityLevels[settings.quality]}P`,\r\n isAutoQuality: conditions(ConditionName.isAutoQuality),\r\n id: Number(params.id),\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id,\r\n provider: params.provider\r\n };\r\n};\r\n\r\nexport const backwardForwardLog = (type: string) => {\r\n const { params, details } = store.getState().videoData;\r\n return {\r\n category: type === \"backward\" ? \"backward\" : \"forward\",\r\n id: Number(params.id),\r\n type: params.type,\r\n src: details.stream_link ? details.stream_link : params.id,\r\n provider: params.provider\r\n };\r\n};\r\n\r\nexport const fullscreenLog = (category: string) => {\r\n const { params, details } = store.getState().videoData;\r\n return {\r\n category: category,\r\n id: Number(params.id),\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id\r\n };\r\n};\r\n\r\nexport const brightnessLog = (source: number, target: number) => {\r\n const { params, details } = store.getState().videoData;\r\n return {\r\n category: \"brightnessChange\",\r\n source: source,\r\n target: target,\r\n id: Number(params.id),\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id\r\n };\r\n};\r\n\r\nexport const volumeLog = (source: number, target: number) => {\r\n const { params, details } = store.getState().videoData;\r\n return {\r\n category: \"volumeChange\",\r\n source: source,\r\n target: target,\r\n id: Number(params.id),\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id\r\n };\r\n};\r\n\r\nexport const lockLog = (category: string) => {\r\n const { params, details } = store.getState().videoData;\r\n return {\r\n category: category,\r\n id: Number(params.id),\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id\r\n };\r\n};\r\n\r\nexport const ExceptionsLog = (type: string, message: string, statusCode?:number, url?:string) => {\r\n return {\r\n category: \"player-error\",\r\n type,\r\n message,\r\n statusCode,\r\n url\r\n };\r\n};\r\n\r\nexport const videoTimelineLog = (start: number, end: number) => {\r\n const { params, details } = store.getState().videoData;\r\n const { duration } = store.getState().controller;\r\n return {\r\n category: \"video-timeline\",\r\n video_id: +params.id!,\r\n video_type: params.type,\r\n start: start,\r\n end: end,\r\n watchedDuration: end - start,\r\n video_duration: Math.floor(duration),\r\n clientUUID: getUUID(),\r\n user_id: details.user_id,\r\n content_type: details.content_type,\r\n content_id: details.content_id\r\n };\r\n};\r\n\r\nexport const autoQualityChangeLog = (sourceQuality: String, targetQuality: String, diffQuality: number) => {\r\n const { params, details } = store.getState().videoData;\r\n return {\r\n category: \"autoQualityChange\",\r\n sourceQuality: sourceQuality,\r\n targetQuality: targetQuality,\r\n diffQuality: diffQuality,\r\n id: Number(params.id),\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id,\r\n provider: params.provider\r\n };\r\n};\r\n\r\nexport const pingpongLog = (startTimer: number, qualityHistory: number[]) => {\r\n const { params, details } = store.getState().videoData;\r\n return {\r\n category: \"pingpong\",\r\n id: Number(params.id),\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id,\r\n PingPongDuration: Number((new Date().getTime() - startTimer).toFixed(2)),\r\n PingPongSourceQuality: `${qualityHistory[0]}P`, // A A->B && B->A\r\n PingPongTargetQuality: `${qualityHistory[1]}P`, // B,\r\n provider: params.provider\r\n };\r\n};\r\n\r\nexport const pausePlayLog = (isPlay: boolean) => {\r\n const { params, details } = store.getState().videoData;\r\n return {\r\n category: isPlay ? \"playVideo\" : \"pauseVideo\",\r\n id: Number(params.id),\r\n type: params.type,\r\n src: details.stream_link ? details.stream_link : params.id,\r\n provider: params.provider\r\n };\r\n};\r\n\r\nexport const initLog = (loadingTime: number, waitingTime: number, bannerLoadingTime: number, firstChunkPlayingTime: number, timerRef: any) => {\r\n const { params, details } = store.getState().videoData;\r\n const totalTime = Date.now() - timerRef.current + loadingTime + waitingTime;\r\n const memory = (window.performance as any).memory;\r\n const timing = JSON.parse(JSON.stringify((window.performance as any).timing));\r\n return {\r\n category: \"initLog\",\r\n id: Number(params.id),\r\n type: params.type,\r\n origin: new URL(conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id!).origin,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id,\r\n loading: loadingTime,\r\n bannerLoading: !conditions(ConditionName.hasBanner) || bannerLoadingTime < 0 ? 0 : bannerLoadingTime,\r\n waiting: waitingTime,\r\n firstChunkPlaying: firstChunkPlayingTime < 0 ? 0 : firstChunkPlayingTime,\r\n totalTime: totalTime,\r\n provider: params.provider,\r\n performance: flattenObject({ memory, timing }, \"performance\"),\r\n userAgent: window.navigator.userAgent\r\n };\r\n};\r\n\r\nexport const loadingLog = (waitingDuration: number, qualityLevel: number, timerRef: any, loadingCounterRef: any, videoEntranceTime: number) => {\r\n const { params, details } = store.getState().videoData;\r\n const { settings } = store.getState().user;\r\n const previousLoaderDiff = Date.now() - timerRef.current;\r\n return {\r\n category: \"loading\",\r\n id: Number(params.id),\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id,\r\n duration: waitingDuration,\r\n quality: `${qualityLevel}P`,\r\n isAutoQuality: conditions(ConditionName.isAutoQuality),\r\n previousLoaderDiff: previousLoaderDiff,\r\n counter: loadingCounterRef.current,\r\n loadingPercentile: Number((waitingDuration / previousLoaderDiff).toFixed(2)),\r\n videoTime: mainPlayerVideoTag().currentTime,\r\n videoEntranceTime: videoEntranceTime,\r\n speed: settings.speed,\r\n provider: params.provider\r\n };\r\n};\r\n\r\nexport const subtitleLog = (language: string) => {\r\n const { params, details } = store.getState().videoData;\r\n return {\r\n category: \"subtitle\",\r\n language: language,\r\n id: Number(params.id),\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id\r\n };\r\n};\r\n\r\nexport const eventMarkerClickLog = (markerId: Number, markerTime: Number, markerTitle: String, markerDescription: String, markerSticker: String) => {\r\n const { params, details } = store.getState().videoData;\r\n return {\r\n category: \"eventMarkerClick\",\r\n video_id: Number(params.id),\r\n markerId: markerId,\r\n markerTime: markerTime,\r\n markerTitle: markerTitle,\r\n markerDescription: markerDescription,\r\n markerSticker: markerSticker,\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id,\r\n provider: params.provider\r\n };\r\n};","import {\r\n getFluentdUrl,\r\n getRestApiLiveUrl,\r\n} from \"./baseUrl\";\r\n\r\nexport const API = () => {\r\n return {\r\n vod: {\r\n getVodUrl: `${getRestApiLiveUrl()}/v1/live/details/vod/`,\r\n getMarkerUrl: (videoId:number) => `${getRestApiLiveUrl()}/v1/live/list-event/vod/${videoId}/`\r\n },\r\n videoTimelineLog: `${getFluentdUrl()}/video-timeline.log`,\r\n logs: `${getFluentdUrl()}/drive-endpoint.log`,\r\n };\r\n};","const envs = require(\"../configs/nextConfigs/next.config.js\");\r\nconst isNpmPackage = require(\"../configs/npmPackage/npmPackage\");\r\n\r\nexport const getRestApiLiveUrl = () => (isNpmPackage ? envs.baseUrl : (process.env.baseUrl as string)) + \"/live/api\";\r\nexport const getFluentdUrl = () => (isNpmPackage ? envs.fluentdUrl : (process.env.fluentdUrl as string));\r\nexport const getEmojiUrl = () => (isNpmPackage ? envs.baseUrl : (process.env.baseUrl as string)) + \"/emoji\";\r\n\r\n"]}
package/chunk-S3ULKQPB.js DELETED
@@ -1,3 +0,0 @@
1
- 'use strict';var chunkKODWZOFT_js=require('./chunk-KODWZOFT.js'),chunkWO4IQUGO_js=require('./chunk-WO4IQUGO.js'),I=require('axios');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var I__default=/*#__PURE__*/_interopDefault(I);chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();var k=t=>{let{params:o}=chunkKODWZOFT_js.M.getState().videoData;return chunkKODWZOFT_js.ka().vod.getVodUrl+(t||o.id)},a={url:"",maxRetryCount:0,headers:{},retryPolicy:[],errorCallback:void 0},A=t=>(a.url=k(t),a.maxRetryCount=3,a.retryPolicy=[{codeAbove:500,codeBelow:null,excludeCodes:[],includeCodes:[409],delay:1,count:3},{codeAbove:null,codeBelow:404,excludeCodes:[403,402,401,400],includeCodes:[],delay:10,count:6}],a),D=t=>(A(t),a);var K=async t=>{let o=chunkKODWZOFT_js.M.dispatch;try{let e=await chunkKODWZOFT_js.Da({...D(t)});if(chunkKODWZOFT_js.U(e.status)){if(await I__default.default.head("https://"+chunkKODWZOFT_js.W(e.data.hls_links)+e.data.path),t)return o(chunkKODWZOFT_js.J(e.data));v(e.data);}else throw new Error(JSON.stringify({status:e.status,message:e.data}))}catch{o(chunkKODWZOFT_js.u(!0)),o(chunkKODWZOFT_js.v(!1));}},v=t=>{let o=chunkKODWZOFT_js.M.dispatch,{params:e}=chunkKODWZOFT_js.M.getState().videoData;o(chunkKODWZOFT_js.r({...t,subtitles:chunkKODWZOFT_js.ca("hasSubtitlesInParams")?e.subtitles:t.subtitles,stream_link:!!t.stream_link&&chunkKODWZOFT_js.Q("https://"+chunkKODWZOFT_js.W(t.hls_links)+t.path)})),o(chunkKODWZOFT_js.u(!0)),o(chunkKODWZOFT_js.v(!0));},Q=()=>{let t=chunkKODWZOFT_js.M.dispatch,{subtitles:o,selectedSubtitle:e}=chunkKODWZOFT_js.M.getState().videoData,i=o.find(m=>m.language==="fa");e?(Object.values(chunkKODWZOFT_js.fa().textTracks).find(m=>m.mode==="showing").mode="disabled",t(chunkKODWZOFT_js.A(void 0)),chunkKODWZOFT_js.la(chunkKODWZOFT_js.Aa("empty"))):i?(i.mode="showing",t(chunkKODWZOFT_js.A(i)),chunkKODWZOFT_js.la(chunkKODWZOFT_js.Aa(i.language))):(chunkKODWZOFT_js.fa().textTracks[0].mode="showing",t(chunkKODWZOFT_js.A(chunkKODWZOFT_js.fa().textTracks[0])),chunkKODWZOFT_js.la(chunkKODWZOFT_js.Aa(chunkKODWZOFT_js.fa().textTracks[0].language)));};
2
- exports.a=K;exports.b=Q;//# sourceMappingURL=chunk-S3ULKQPB.js.map
3
- //# sourceMappingURL=chunk-S3ULKQPB.js.map
@@ -1,9 +0,0 @@
1
- import {b}from'./chunk-7CZEUDNW.mjs';import {a as a$3}from'./chunk-NFS5ZBFX.mjs';import {b as b$1,a as a$4}from'./chunk-6R7UYUPZ.mjs';import {i,a as a$1,k,f as f$1,g,d,h,j}from'./chunk-P6UV7U4E.mjs';import {ea,ca,da,aa,la,na,f,B,D,G,A,fa,z as z$1,Aa,M,r,ia,ha,Ba,ja,a as a$2,C,ma,P,E,q,sa,h as h$1,qa,O,R,$,ba,k as k$1,l,oa}from'./chunk-LHO7HY26.mjs';import {a}from'./chunk-6567FIPA.mjs';import {e}from'./chunk-DBPGS72Q.mjs';import {memo,forwardRef,useState,useRef,useEffect}from'react';import {shallowEqual}from'react-redux';import {jsxs,Fragment,jsx}from'react/jsx-runtime';import Se from'next/legacy/image';import {createPortal}from'react-dom';import Xo from'next/dynamic';e();e();e();var ol=()=>{let{details:e,params:o}=ea(({videoData:{details:l,params:i}})=>({details:l,params:i}),shallowEqual);return jsx("div",{className:`pl-w-full pl-max-w-[80%] pl-truncate pl-text-left pl-ml-4 pl-text-[16px] pl-font-normal pl-text-white pl-break-words pl-self-start animate__animated animate__faster ${ca("isActiveElements")?"animate__fadeIn pl-opacity-100":"pl-opacity-0 animate__fadeOut"}`,children:ca("hasTitle")?e.title:o.id})},Et=ol;e();var rl=()=>jsxs("div",{className:`pl-relative animate__animated animate__faster ${ca("isActiveElements")?"animate__fadeIn pl-pointer-events-auto":"animate__fadeOut pl-pointer-events-none"}`,children:[jsx(Se,{src:a.lock,alt:"lock-icon",width:20,height:20,onClick:()=>h("unlock")}),!localStorage.getItem("unlock-click")&&jsx("p",{className:"pl-text-[10px] pl-text-black/[0.87] pl-bg-[#F7F7F7] pl-absolute pl-left-0 pl-px-4 pl-py-3 pl-rounded-[8px] pl-w-max",children:"\u0628\u0631\u0627\u06CC \u0628\u0627\u0632 \u06A9\u0631\u062F\u0646 \u0642\u0641\u0644\u060C \u06A9\u0644\u06CC\u06A9 \u06A9\u0646\u06CC\u062F"})]}),Lt=rl;var pl=()=>(ea(({controller:{lock:e,activeElements:o}})=>({lock:e,activeElements:o}),shallowEqual),jsxs("div",{className:`pl-flex pl-items-start pl-justify-end pl-mx-4 pl-mt-5 ${ca("isTouchScreenPortrait")?"pl-h-[16px]":"pl-h-[60px]"}`,children:[ca("showTitle")&&jsx(Et,{}),ca("isLock")&&jsx(Lt,{})]})),At=pl;e();e();var cl=()=>(ea(({controller:{play:e}})=>({play:e}),shallowEqual),ea(({videoData:{videoElementSizeInfo:e,params:o}})=>({videoElementSizeInfo:e,params:o}),shallowEqual),jsx("div",{className:`${!ca("isTouchScreen")&&"hover:pl-scale-125"} pl-transition-transform pl-ease-in-out pl-cursor-pointer`,onContextMenu:e=>e.preventDefault(),children:jsx(Se,{alt:"",src:ca("isPlay")?a.bigPause:a.bigPlay,width:40,height:40,onClick:e=>a$1(e),onDoubleClick:e=>e.stopPropagation(),className:`${ca("isPlay")?"pl-big-play-icon":"pl-big-pause-icon"}`})})),$t=cl;e();var dl=()=>jsxs("div",{className:"loader-spinner pl-absolute pl-top-[50%] pl-left-[50%] pl-mt-[-50px] pl-ml-[-42px] pl-w-screen pl-h-full pl-overflow-hidden",children:[jsx("div",{className:"pl-bg-white"}),jsx("div",{className:"pl-bg-white"}),jsx("div",{className:"pl-bg-white"}),jsx("div",{className:"pl-bg-white"}),jsx("div",{className:"pl-bg-white"}),jsx("div",{className:"pl-bg-white"}),jsx("div",{className:"pl-bg-white"}),jsx("div",{className:"pl-bg-white"}),jsx("div",{className:"pl-bg-white"}),jsx("div",{className:"pl-bg-white"}),jsx("div",{className:"pl-bg-white"}),jsx("div",{className:"pl-bg-white"})]}),_t=dl;var fl=()=>{let[e,o]=useState(!1),[l,i]=useState(!1);ea(({controller:{lock:c,firstPlay:a}})=>({lock:c,firstPlay:a}),shallowEqual);let{activeElements:r,isLoading:p}=ea(({controller:{activeElements:c,isLoading:a}})=>({activeElements:c,isLoading:a}),shallowEqual);return useEffect(()=>{let c=null;return ca("isFirstPlay")||ca("isActiveElements")?c=setTimeout(()=>i(!0),100):i(!1),()=>clearTimeout(c)},[r]),useEffect(()=>{let c;return ca("isLoading")?c=setTimeout(()=>o(!0),ca("isFirstPlay")?0:b$1):o(!1),()=>{clearTimeout(c),o(!1);}},[p]),jsx("main",{className:"pl-flex-1 pl-mt-1",children:e?jsx(_t,{}):jsx(Fragment,{children:l&&!ca("isLock")&&jsx("div",{id:"main-content",className:`pl-h-full pl-flex pl-justify-center pl-items-center pl-text-center pl-relative ${ca("isActiveElements")?"pl-pointer-events-auto":"pl-pointer-events-none"}`,children:jsxs("div",{className:"pl-flex pl-justify-center pl-gap-8 pl-items-center pl-w-max",style:{zIndex:3},children:[!ca("isFirstPlay")&&jsx(a$3,{type:"forward"}),jsx($t,{}),!ca("isFirstPlay")&&jsx(a$3,{type:"backward"})]})})})})},qt=fl;e();e();e();e();var Qe=e=>{let{videoElementSizeInfo:o}=M.getState().videoData,{duration:l}=M.getState().controller,i=e.clientX!==void 0?e.clientX:e.touches[0].clientX;if(i<=o.right&&i>0)return (i-o.left)/o.width*l},J=e=>{let{videoElementSizeInfo:o}=M.getState().videoData,l=e.clientX!==void 0?e.clientX:e.touches[0].clientX;if(l<=o.right&&l>0)return l-o.left},Rt=e=>{let{duration:o}=M.getState().controller;return e*ia()/o},ve=e=>{e&&(e.style.opacity="0.0",e.style.pointerEvents="none",e.style.zIndex=-2);},gl=e=>{e.style.display="block",e.style.zIndex=5,e.style.opacity=M.getState().videoData.details.vtt?"1.0":"0.6",e.style.pointerEvents="auto",e.style.transition="opacity 1s ease-out";},xl=(e,o)=>{let{videoElementSizeInfo:l}=M.getState().videoData,i=document.getElementsByClassName("pl-progressTooltip")[0],r=document.getElementById("parent-player");i&&r&&(J(e)>i.getBoundingClientRect().width/2&&J(e)<l.right-l.left-i.getBoundingClientRect().width/2?o.style.left=`${J(e)-i.offsetWidth/2}px`:J(e)<(r.offsetLeft===0?i.offsetWidth:r.offsetLeft)?o.style.left="0px":fa().offsetLeft+fa().offsetWidth<J(e)+i.offsetWidth&&(o.style.left=`${fa().offsetWidth-i.offsetWidth}px`));},bl=(e,o,l)=>{o&&gl(o),M.getState().videoData.details.vtt?xl(e,o):o.style.left=`${J(e)-30}px`,M.dispatch(q(Number(Qe(e)))),l.textContent=`${P(Qe(e))}`;},ge=(e,o=!1)=>{let{videoElementSizeInfo:l}=M.getState().videoData,i=document.querySelector(".pl-progressTooltip"),r=document.querySelector(".pl-progressTimeTooltip"),p=e.clientX!==void 0?e.clientX:e.touches[0].clientX;i&&r&&p<=l.right&&p>l.left?(bl(e,i,r),o&&setTimeout(()=>ve(i),2e3)):ve(i);},Xt=e=>{let o=e.clientX!==void 0?e.clientX:e.touches[0].clientX;ha()&&(o<=e.view.innerWidth&&o>0?ha().style.width=`${J(e)}px`:o<=e.view.innerWidth?ha().style.width=0:o>0&&(ha().style.width="100%"));},Ht=(e,o,l$1)=>{e.preventDefault(),e.stopPropagation(),l$1(!0);let i=M.dispatch,r=e.clientX!==void 0?e.clientX:e.touches[0].clientX;r<=e.view.innerWidth&&r>0&&(i(k$1(!0)),i(l(!0)),sessionStorage.setItem("previousVideoTime",String(fa().currentTime)),e.target.setPointerCapture(e.pointerId),o.length>0&&o.map(p=>clearTimeout(p)));},Ze=e=>{e.preventDefault(),e.stopPropagation();let o=M.dispatch,{activePointerProgressBar:l$1}=M.getState().controller,{left:i}=M.getState().videoData.videoElementSizeInfo,r=e.clientX!==void 0?e.clientX:e.touches[0].clientX,p=document.querySelector(".pl-progressTooltip");r>i?(p&&(p.style.display="block !important",p.style.pointerEvents="auto"),l$1&&(o(l(!0)),ge(e),Xt(e),fa().pause())):p&&(p.style.display="none !important",p.style.pointerEvents="none");},Ut=(e,o,l$1,i$1)=>{i$1(!1),e.preventDefault(),e.stopPropagation();let r=M.dispatch,{duration:p}=M.getState().controller,{left:c,right:a}=M.getState().videoData.videoElementSizeInfo;e.target.removeEventListener("pointermove",Ze);let f=e.clientX!==void 0?e.clientX:e.touches[0].clientX,d=0;f>c&&f<a?d=Qe(e):f<c?d=0:f>0&&(d=p),ca("isStaticFormat")||i(fa().currentTime,d),fa().currentTime=d,M.getState().controller.activePointerProgressBar&&(r(k$1(!1)),r(l(!1)),fa().play(),ge(e,!0),sessionStorage.setItem("current-time",String(d)),Xt(e),Sl(e,r,o,l$1));},Sl=(e,o,l,i)=>{let r=i,p=setTimeout(()=>{let{settingPopover:c}=M.getState().popovers,{delayTurnOffControlbar:a}=M.getState().controller;e.pointerType==="touch"&&!c&&a&&o(f(!1));},a$4);r.push(p),l(r);},Wt=()=>{let e=Date.now();fa().play().then(()=>la(oa(Date.now()-e)));},Gt=e=>ge(e),Qt=()=>{let e=document.querySelector(".pl-progressTooltip");ve(e);},yl=e=>{let o=e.split("."),i=o[0].split(":");return {milliseconds:parseInt(o[1],10)||0,seconds:parseInt(i.pop(),10)||0,minutes:parseInt(i.pop(),10)||0,hours:parseInt(i.pop(),10)||0}},zt=e=>{let o=yl(e);return parseInt(o.hours*(60*60)+o.minutes*60+o.seconds+o.milliseconds/1e3,10)},wl=e=>{let o=e.split(/#xywh=/i),l=o[0],r=o[1].match(/[0-9]+/gi);return {x:r[0],y:r[1],w:r[2],h:r[3],image:l}},Tl=(e,o)=>e.indexOf("//")>=0?e:o.indexOf("//")===0?[o.replace(/\/$/gi,""),e.trim()].join("/"):o.indexOf("//")>0?[o.trim(),e.trim()].join("/"):e,Pl=(e,o)=>{let l={},i=o.split(/\/\w+\.vtt\s?/)[0];if(e=Tl(e,i),!e.match(/#xywh=/i))return l.background='url("'+e+o.split(/\/\w+\.vtt\s?/)[1]+'")',l;let r=wl(e);return l.background='url("'+r.image+o.split(/\/\w+\.vtt\s?/)[1]+'") no-repeat -'+r.x+"px -"+r.y+"px",l.width=r.w+"px",l.height=r.h+"px",l.url=r.image,l},Zt=(e,o)=>{fetch(e).then(l=>{if(!l.ok)throw M.dispatch(r({...M.getState().videoData.details,vtt:void 0,vtt_mobile:void 0})),new Error("Network response was not ok");return l.text()}).then(l=>{let i=[];l.split(/[\r\n][\r\n]/i).forEach(p=>{if(p.match(/([0-9]{2}:)?([0-9]{2}:)?[0-9]{2}(.[0-9]{3})?( ?--> ?)([0-9]{2}:)?([0-9]{2}:)?[0-9]{2}(.[0-9]{3}).*/gi)){let c=p.split(/[\r\n]/i),f=c[0].split(/ ?--> ?/i),d=f[0],P=f[1],u=c[1],b=Pl(u,e);i.push({start:zt(d),end:zt(P),css:b});}}),o(i);}).catch(l=>{console.error("Error fetching file:",l);});},Yt=(e,o,l)=>{for(let i=0;i<o.length;++i){let r=o[i];if(e>=r.start&&e<r.end){if(r.css.url&&!l[r.css.url]){let p={background:r.css.background,width:r.css.width,height:r.css.height};return l[r.css.url]=p,p}else if(r.css.url)return l[r.css.url]}}};var Nl=()=>{let{details:e}=ea(({videoData:{details:a}})=>({details:a}),shallowEqual),{tooltipTime:o}=ea(({controller:{tooltipTime:a,activeElements:f,isFullScreen:d}})=>({tooltipTime:a,activeElements:f,isFullScreen:d}),shallowEqual),l={},[i,r]=useState(void 0),[p,c]=useState(ca("isTouchScreen")?e.vtt_mobile:e.vtt);return useEffect(()=>{c(e.vtt_mobile);},[e.vtt_mobile]),useEffect(()=>{p&&Zt(e.vtt_mobile,r);},[p]),ca("isActiveElements")?jsxs("div",{className:`pl-flex pl-flex-col pl-progressTooltip pl-absolute pl-bottom-[calc(100%+10px)] pl-px-[10px] pl-pt-[5px] pl-mr-[-25px] pl-text-white pl-text-[14px] ${p&&i?"":"pl-bg-z-gray-700"} pl-rounded-[6px] pl-opacity-0`,children:[p&&!!i&&jsx("div",{className:"pl-flex-1 pl-border pl-border-white pl-rounded-[8px] pl-mb-2",children:jsx("div",{className:"pl-rounded-[8px]",style:Yt(o,i,l)})}),jsx("div",{className:"pl-flex pl-items-center pl-justify-center pl-progressTimeTooltip pl-text-white !pl-opacity-100"})]}):jsx(Fragment,{})},eo=memo(Nl);e();e();var Ll=(e,o)=>{useEffect(()=>{let l=i=>{!e.current||e.current.contains(i.target)||o(i);};return document.addEventListener("mousedown",l),document.addEventListener("touchstart",l),()=>{document.removeEventListener("mousedown",l),document.removeEventListener("touchstart",l);}},[e,o]);},z=Ll;e();var Ml=({name:e,className:o,dataMarker:l})=>jsx("img",{"data-marker":l,src:`${ja()}/${e}.png`,alt:e,className:o}),xe=Ml;var $l=()=>{da();let {duration:o,activeElements:l}=ea(({controller:{duration:m,activeElements:w,isFullScreen:U}})=>({duration:m,activeElements:w,isFullScreen:U}),shallowEqual),{markers:i$1}=ea(({videoData:{markers:m,videoElementSizeInfo:w}})=>({markers:m,videoElementSizeInfo:w}),shallowEqual),[r,p]=useState(void 0),[c,a]=useState([]),[f,d]=useState({}),[P,u]=useState(!1),b=m=>o?ia()*m/o:0,F=(m,w,U,j,ee,te,ce,qe)=>{m.stopPropagation();let oe=24*w/(ia()+5),le=[],Re=0;qe.map(W=>{W.time>w-oe&&W.time<w+oe&&(le.push(W),Re+=W.time);}),le.length>1?a(le):(le=[],a([]),h(m,w,U,j,ee,te,ce));},h=(m,w,U,j,ee,te,ce)=>{m.stopPropagation(),ge(m,ce),i(fa().currentTime,w),fa().currentTime=w,ha()&&(ha().style.width=b(w)),la(Ba(U,w,j,ee,te));};useEffect(()=>{ca("isActiveElements")||a([]);},[l]);let C=useRef(null);z(C,()=>a([])),useEffect(()=>{if(c.length>0){let m=aa(document.getElementsByClassName("pl-overlapMarkers")[0]);if(m==="inViewport")return u(!0),d({left:b(c[0].time)});if(m==="OutViewPortFromLeft")return u(!1),d({left:0});if(m==="OutViewPortFromRight")return u(!1),d({right:0})}},[c,document.getElementsByClassName("pl-overlapMarkers")[0]]);let M=m=>{m.preventDefault(),ca("isTouchScreen")&&p(Number(m.target.getAttribute("data-marker")));};return jsxs(Fragment,{children:[i$1.map(m=>jsx("div",{onContextMenu:M,"data-marker":m.time,onClick:w=>F(w,m.time,m.id,m.title,m.description,m.sticker,!0,i$1),onDoubleClick:w=>w.stopPropagation(),children:jsxs("div",{className:`pl-emoji-image pl-absolute pl-bottom-[200%] pl-bg-z-gray-700/[0.4] pl-rounded-[6px] pl-p-1 ${ca("isTouchScreenPortrait"),"pl-mb-5"} pl-ml-[-12px] pl-cursor-pointer`,style:{left:b(m.time),zIndex:6},"data-marker":m.time,children:[m.isPersonal!==null&&m.isPersonal!==void 0&&jsx("div",{className:"pl-absolute pl-rounded-full pl-top-[-2px] pl-right-[-1px] pl-bg-main pl-w-2 pl-h-2"}),jsx(xe,{dataMarker:m.time,name:m.sticker,className:"pl-w-[16px] pl-h-[16px] !pl-max-w-max"})]})},m.id)),c.length>0&&jsx("div",{className:`pl-overlapMarkers ${P?"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`,ref:C,style:f,children:c.map(m=>jsx("div",{className:"pl-emoji-image pl-rounded-[6px] pl-cursor-pointer","data-marker":m.time,onClick:w=>h(w,m.time,m.id,m.title,m.description,m.sticker,!0),onDoubleClick:w=>w.stopPropagation(),children:jsx(xe,{dataMarker:m.time,name:m.sticker,className:"pl-w-[24px] pl-h-[24px] !pl-max-w-max"})},m.id))})]})},io=memo($l);var Bl=()=>{let[e,o]=useState(!1);useEffect(()=>{ve(document.querySelector(".progressTooltip"));},[]);let{duration:l,currentTime:i,bufferedTimeWidth:r}=ea(({controller:{duration:a,currentTime:f,bufferedTimeWidth:d}})=>({duration:a,currentTime:f,bufferedTimeWidth:d}),shallowEqual);ea(({videoData:{params:a,videoElementSizeInfo:f}})=>({params:a,videoElementSizeInfo:f}),shallowEqual);let[p,c]=useState([]);return jsxs("div",{className:`${ca("isTouchScreenPortrait")?"pl-order-1":"pl-order-none"} pl-relative`,children:[jsxs("div",{className:"pl-relative",children:[jsx(eo,{}),jsx(io,{})]}),jsx("div",{className:"pl-w-full pl-flex pl-items-end",onPointerDown:a=>Ht(a,p,o),onPointerMove:Ze,onPointerUp:a=>Ut(a,c,p,o),onMouseMove:Gt,onMouseOut:Qt,onClick:Wt,onDoubleClick:a=>a.stopPropagation(),children:jsxs("div",{id:"progress-area",className:"pl-w-full pl-absolute",children:[jsx("div",{className:"pl-w-full pl-h-[40px]"}),jsxs("div",{id:"time-progress-area",className:"!pl-w-full !pl-h-[5px] pl-transition-transform pl-duration-300 pl-m-auto pl-cursor-pointer !pl-bg-gray-highLight pl-rounded",style:{transform:e?"scaleY(1.8)":"unset"},children:[jsx("div",{id:"time-progress-buffer",className:"pl-absolute pl-h-[5px] pl-bg-z-gray-400/[0.7] pl-rounded",style:{width:`${r}%`}}),jsx("div",{id:"time-progress-bar",className:`pl-h-[5px] pl-rounded pl-relative pl-cursor-pointer pl-bg-primary before:pl-bg-primary before:pl-inline-block before:pl-w-4 before:pl-h-4 ${e&&"before:pl-w-7 before:pl-h-3"}`,style:{width:`${i/l*ia()}px`}})]})]})})]})},no=Bl;e();e();e();var Vl=({title:e,className:o})=>jsx("span",{className:`pl-absolute pl-w-max pl-bg-paper pl-text-white/[0.9] ${ca("isFullScreen")?"pl-bottom-[300%]":"pl-bottom-[270%]"} pl-rounded-[8px] pl-text-[10px] pl-px-4 pl-py-[13px] pl-font-normal ${o}`,children:e}),L=Vl;var Ul=()=>{let{isFullScreen:e}=ea(({controller:{firstPlay:r,isFullScreen:p}})=>({firstPlay:r,isFullScreen:p}),shallowEqual),[o,l]=useState(!1),i=da();return useEffect(()=>{ca("isFirstPlay")||i(f(!1));},[e]),jsxs("div",{className:"pl-relative pl-flex pl-items-center",children:[jsx(Se,{src:ca("isFullScreen")?a.nonFullScreen:a.fullScreen,alt:"fullScreen-icon",className:"pl-cursor-pointer",width:20,height:20,onMouseOver:()=>!ca("isTouchScreen")&&l(!0),onMouseLeave:()=>!ca("isTouchScreen")&&l(!1),onClick:()=>{f$1(),g();}}),o&&jsx(L,{title:`${ca("isFullScreen")?"\u062E\u0631\u0648\u062C \u0627\u0632":""} \u062A\u0645\u0627\u0645 \u0635\u0641\u062D\u0647`})]})},ao=Ul;e();var Yl=()=>{let[e,o]=useState(!1),l=da(),{params:i,details:r}=ea(({videoData:{params:p,details:c}})=>({params:p,details:c}),shallowEqual);return jsxs("div",{className:"pl-relative pl-flex pl-items-center",children:[jsx(Se,{alt:"",onMouseOver:()=>!ca("isTouchScreen")&&o(!0),onMouseLeave:()=>!ca("isTouchScreen")&&o(!1),src:a.pictureInPicture,width:20,height:20,className:"pl-flex pl-cursor-pointer",onClick:()=>{i.onClickMiniPlayerIcon&&(localStorage.removeItem("close-miniPlayer"),fa().pause(),l(a$2(!1)),i.onClickMiniPlayerIcon({video:r||void 0,id:i.type==="vod"?i.id:window.btoa(i.id),type:i.type,currentTime:fa().currentTime}));}}),e&&jsx(L,{title:"\u062A\u0635\u0648\u06CC\u0631 \u062F\u0631 \u062A\u0635\u0648\u06CC\u0631"})]})},co=Yl;e();var oi=()=>{let[e,o]=useState(!1),l=da(),{settings:i}=ea(({user:{settings:a}})=>({settings:a}),shallowEqual),r=useRef(i.volume),p=()=>{if(r.current!==i.volume){let{settings:a}=M.getState().user;la(sa(r.current,a.volume)),r.current=a.volume,l(G({...a,volume:a.volume}));}},c=a=>{let{settings:f}=M.getState().user;a==="mute"?(d(0),la(sa(f.volume,0))):(la(sa(f.volume,100)),d(100));};return jsxs("div",{className:"pl-relative pl-inline-flex pl-items-center pl-gap-2 pl-sound-icon",children:[!ca("isTouchScreen")&&jsx("input",{onMouseUp:p,type:"range",min:"0",max:"100",value:i.volume,onChange:a=>d(+a.target.value),className:"pl-soundVolume pl-cursor-pointer rounded-full",style:{background:`linear-gradient(to right, white ${i.volume}%, rgba(255,255,255,0.3) 0)`}}),jsxs("div",{className:"pl-relative pl-flex pl-items-center",children:[jsx(Se,{src:ca("hasSound")?a.unMute:a.mute,alt:ca("hasSound")?"unmute-icon":"mute-icon",className:"pl-flex pl-items-center pl-cursor-pointer",width:20,height:20,onClick:()=>ca("hasSound")?c("mute"):c("unmute"),onDoubleClick:a=>a.stopPropagation(),onMouseOver:()=>!ca("isTouchScreen")&&o(!0),onMouseLeave:()=>!ca("isTouchScreen")&&o(!1)}),e&&jsx(L,{className:"pl-left-0",title:"\u0635\u062F\u0627"})]})]})},fo=oi;e();e();e();var li=({className:e,onClick:o})=>jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:e,onClick:o,children:[jsx("path",{d:"M6 6L18.7742 18.7742",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),jsx("path",{d:"M6 18.7744L18.7742 6.00022",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}),vo=li;var go=forwardRef(({children:e,status:o,onClose:l,type:i,classNames:r,parentClassNames:p,styles:c,isBlurBackground:a,isFullHeight:f=!1,isHeader:d,isHasCatchUpLineOnTop:P=!1,animation:u,scrollbar:b=!1,isFocusOnInput:F=!1,headerTitle:h="",customHeader:C,headerClassName:M,showCloseIcon:m=!0},w)=>{let[U,j]=useState(o),[ee,te]=useState(0),[ce,qe]=useState(0),{videoElementSizeInfo:ze}=ea(({videoData:{videoElementSizeInfo:q}})=>({videoElementSizeInfo:q}),shallowEqual),oe=useRef(0);useEffect(()=>{let q;return o?j(!0):q=setTimeout(()=>{l(!1),te(0),j(!1);},500),()=>clearTimeout(q)},[o]);let le=q=>{let el=document.getElementById("popover-content");oe.current||(oe.current=window.innerHeight-ze.top-el?.getBoundingClientRect().top),q.stopPropagation(),window.innerHeight-ze.top-q.touches[0].clientY<oe.current&&te(window.innerHeight-q.touches[0].clientY),qe(1000005);},Re=()=>{l();},W=jsxs(Fragment,{children:[a&&jsx("div",{className:`pl-bg-black/[0.5] pl-w-screen pl-h-screen pl-fixed pl-top-0 pl-right-0 animate__animated animate__faster ${o?"animate__fadeIn":"animate__fadeOut"}`,style:{zIndex:1000001}}),jsx("div",{className:`${i==="modal"&&"pl-fixed pl-top-0 pl-left-0 pl-flex pl-w-full pl-h-full pl-justify-center pl-items-end sm:pl-items-center"} ${p}`,style:{zIndex:f&&!F?ce:1000004},children:jsx("div",{className:`pl-flex pl-flex-col pl-rounded-[8px] animate__animated animate__faster pl-bg-white/[0.9]
2
- ${f&&"pl-h-full"}
3
- ${u||(window.innerWidth>768&&i==="modal"?o?"animate__fadeIn":"animate__fadeOut":o?"animate__fadeInUp":"animate__fadeOutDown")}
4
- ${ca("isTouchScreenPortrait")?"!pl-fixed !pl-right-0 !pl-left-0 !pl-bottom-0 !pl-w-full !pl-mb-0 pl-rounded-[12px] !pl-rounded-b-none !pl-bg-white":"before:pl-hidden"}
5
- ${i!=="modal"&&"pl-absolute pl-bottom-[130%] pl-overflow-auto no-scrollbar"}
6
- ${r}
7
- `,style:{height:ee||"max-content",maxHeight:"80vh",zIndex:1000004,...c},ref:w,id:"popover-content",children:jsxs(Fragment,{children:[d&&jsxs("div",{onTouchMove:P?le:()=>{},onTouchEndCapture:P?Re:()=>{},className:"pl-py-4",children:[P&&jsx("div",{className:"pl-absolute pl-top-[10px] pl-right-[50%] pl-mr-[-25px] pl-text-center pl-w-8 pl-h-1 pl-rounded-[20px] pl-bg-gray-highLight"}),jsx("div",{className:`pl-mb-4 pl-border-b pl-border-secondary-300 dark:pl-border-secondary-400 pl-mx-4 ${M}`,children:C||jsxs("div",{className:"pl-flex pl-items-center pl-justify-between pl-py-[19px]",children:[jsx("p",{className:"pl-text-[18px] pl-text-black dark:pl-text-white pl-font-bold",children:h}),m&&jsx(vo,{className:"pl-cursor-pointer pl-stroke-secondary-400 dark:pl-stroke-dark-5",onClick:l})]})})]}),jsx("div",{className:`pl-overflow-y-auto pl-h-full pl-w-full ${!b&&"no-scrollbar"}`,onTouchMove:q=>q.stopPropagation(),children:e})]})})})]});return jsx(Fragment,{children:U&&jsx(Fragment,{children:i==="modal"?createPortal(jsx(Fragment,{children:W}),document.getElementById("dialog-react-root-videoPlayer")):jsx("div",{children:W})})})});go.displayName="popover";var H=go;e();var ui=({setSection:e,showQualityLevelsIcon:o})=>{let l=da(),{qualityLevels:i}=ea(({controller:{qualityLevels:u,manualQuality:b,autoQuality:F}})=>({qualityLevels:u,manualQuality:b,autoQuality:F}),shallowEqual),{settings:r}=ea(({user:{settings:u}})=>({settings:u}),shallowEqual),{qualityLevelsPopover:p}=ea(({popovers:{qualityLevelsPopover:u}})=>({qualityLevelsPopover:u}),shallowEqual);ea(({videoData:{params:u,videoElementSizeInfo:b}})=>({params:u,videoElementSizeInfo:b}),shallowEqual);let[c,a$1]=useState(!1);i=[-1,...i];let f$1=(u,b)=>ca("isAutoQuality")&&b===-1?!0:!ca("isAutoQuality")&&r.quality===u,d=useRef(null);z(d,()=>l(D(!1)));let P=jsx("div",{id:"qualityLevels",className:"animate__animated animate__fadeIn pl-py-2",children:jsx("ul",{className:"pl-flex pl-flex-col pl-gap-2",children:i.map((u,b)=>jsxs("li",{className:`pl-flex pl-items-center pl-ps-[24.2px] pl-text-[14px] pl-font-medium pl-rounded-[4px] pl-relative pl-cursor-pointer ${f$1(b-1,u)&&"pl-bg-primary/[0.12] !pl-cursor-default"} ${ca("isTouchScreen")?"pl-py-[13.5px]":"pl-py-[9.5px]"}`,onClick:f$1(b-1,u)?()=>{}:()=>{la(na(u===-1?"auto":`${u}P`)),l(f(!1)),l(B(!1)),l(D(!1)),l(G({...r,quality:u===-1?-1:b-1})),e&&e("main");},children:[!ca("isTouchScreen")&&f$1(b-1,u)&&jsx("div",{className:"pl-absolute pl-right-[11.8px]",children:jsx(Se,{src:a.tick,alt:"",width:12,height:9})}),ca("isTouchScreen")&&jsx("div",{className:`pl-w-5 pl-h-5 pl-rounded-full pl-border pl-border-black/[0.5] pl-p-0.5 ${f$1(b-1,u)&&"pl-border-primary"}`,children:f$1(b-1,u)&&jsx("div",{className:"pl-w-full pl-h-full pl-rounded-full pl-bg-primary"})}),jsx("span",{className:`pl-w-full pl-text-[14px] pl-text-black/[0.87] ${ca("isTouchScreen")?"pl-pr-[21px]":"pl-pr-[10px]"}`,children:u===-1?jsxs("span",{children:[jsx("span",{children:"\u062E\u0648\u062F\u06A9\u0627\u0631 "}),jsx("span",{className:"pl-text-[10px] pl-font-normal pl-text-black/[0.5]",children:"(\u0628\u0631 \u0627\u0633\u0627\u0633 \u0633\u0631\u0639\u062A \u0627\u06CC\u0646\u062A\u0631\u0646\u062A \u0634\u0645\u0627)"})]}):`${u}p`})]},b))})});return jsx(Fragment,{children:o?jsxs("div",{className:"pl-relative pl-flex pl-items-center",ref:d,children:[jsx(Se,{src:a.qualitySetting1,alt:"speed-icon",width:20,height:20,onClick:()=>l(D(!p)),onMouseOver:()=>!ca("isTouchScreen")&&!ca("showQualityLevelsPopover")&&a$1(!0),onMouseLeave:()=>!ca("isTouchScreen")&&a$1(!1),className:"pl-cursor-pointer"}),c&&jsx(L,{title:"\u06A9\u06CC\u0641\u06CC\u062A"}),jsx(H,{classNames:`!pl-p-0 pl-overflow-hidden !pl-bg-white ${ca("isTouchScreen")?"!pl-fixed !pl-bottom-0 !pl-rounded-t-[20px] pl-rounded-b-none":"pl-right-0 pl-mb-[33px] !pl-rounded-[12px] pl-w-[230px]"} ${ca("isTouchScreenPortrait")&&"!pl-w-screen tablet:pl-max-w-[440px]"} ${ca("isTouchScreenLandscape")&&"pl-w-full pl-max-w-[440px]"}`,status:p,onClose:()=>l(D(!1)),type:ca("isTouchScreen")?"modal":"popover",isBlurBackground:ca("isTouchScreenPortrait"),ref:ca("isTouchScreenPortrait")?d:void 0,isHeader:ca("isTouchScreen"),customHeader:jsx(Fragment,{}),isHasCatchUpLineOnTop:ca("isTouchScreen"),children:P})]}):jsx(Fragment,{children:P})})},De=memo(ui);e();e();var fi=({className:e,onClick:o,onMouseOver:l,onMouseLeave:i})=>jsxs("svg",{width:"18",height:"15",viewBox:"0 0 18 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:e,onClick:o,onMouseOver:l,onMouseLeave:i,children:[jsx("path",{d:"M10.5488 1.53559C8.20532 1.02852 5.66339 1.68608 3.84359 3.50588C1.15649 6.19298 1.00481 10.4572 3.39041 13.3215C3.55135 13.5148 3.8176 13.6347 4.13036 13.6347H13.8687C14.1816 13.6347 14.4476 13.5149 14.6085 13.3217C16.0815 11.5533 16.5884 9.25027 16.1258 7.11249C16.0528 6.77512 16.2671 6.44245 16.6045 6.36945C16.9418 6.29645 17.2745 6.51077 17.3475 6.84814C17.8886 9.34866 17.2968 12.0474 15.569 14.1217C15.1326 14.6455 14.489 14.8847 13.8687 14.8847H4.13036C3.50995 14.8847 2.86616 14.6453 2.42991 14.1215C-0.36559 10.765 -0.188583 5.77029 2.95971 2.622C5.09241 0.489299 8.07189 -0.279272 10.8132 0.31386C11.1505 0.386857 11.3648 0.719527 11.2918 1.0569C11.2188 1.39427 10.8862 1.60859 10.5488 1.53559Z"}),jsx("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M14.9976 2.66523C15.2417 2.9093 15.2417 3.30503 14.9976 3.54911L10.7129 7.83399C10.8469 8.09798 10.9225 8.39667 10.9225 8.713C10.9225 9.78688 10.0519 10.6574 8.97805 10.6574C7.90417 10.6574 7.03362 9.78688 7.03362 8.713C7.03362 7.63912 7.90417 6.76856 8.97805 6.76856C9.27953 6.76856 9.56498 6.83718 9.81965 6.95963C9.82222 6.95697 9.82483 6.95432 9.82746 6.95168L14.1137 2.66525C14.3578 2.42116 14.7535 2.42115 14.9976 2.66523ZM9.67249 8.713C9.67249 9.09652 9.36158 9.40743 8.97805 9.40743C8.59453 9.40743 8.28362 9.09652 8.28362 8.713C8.28362 8.32947 8.59453 8.01856 8.97805 8.01856C9.36158 8.01856 9.67249 8.32947 9.67249 8.713Z"})]}),$e=fi;var Si=[.5,.75,1,1.25,1.5,1.75,2],yi=({setSection:e,showSpeedIcon:o})=>{let l=da();ea(({videoData:{videoElementSizeInfo:d,params:P}})=>({videoElementSizeInfo:d,params:P}),shallowEqual);let{speedPopover:i}=ea(({popovers:{speedPopover:d}})=>({speedPopover:d}),shallowEqual),{settings:r}=ea(({user:{settings:d}})=>({settings:d}),shallowEqual),p=useRef(null),[c,a$1]=useState(!1);z(p,()=>l(C(!1))),useEffect(()=>{fa()&&(fa().playbackRate=r.speed);},[]);let f$1=jsx("div",{id:"speed",className:"animate__animated animate__fadeIn pl-py-2",children:jsx("ul",{className:"pl-flex pl-flex-col pl-gap-2",children:Si.map((d,P)=>jsxs("li",{className:`pl-flex pl-items-center pl-ps-[24.2px] pl-text-[14px] pl-font-medium pl-rounded-[4px] pl-relative pl-cursor-pointer ${r.speed===d&&"pl-bg-primary/[0.12] !pl-cursor-default"} ${ca("isTouchScreen")?"pl-py-[13.5px]":"pl-py-[9.5px]"}`,onClick:r.speed===d?()=>{}:()=>{ca("isStaticFormat")||la(ma(d)),l(f(!1)),l(B(!1)),l(C(!1)),l(G({...r,speed:d})),fa().playbackRate=d,e&&e("main");},children:[!ca("isTouchScreen")&&r.speed===d&&jsx("div",{className:"pl-absolute pl-right-[11.8px]",children:jsx(Se,{src:a.tick,alt:"",width:12,height:9})}),ca("isTouchScreen")&&jsx("div",{className:`pl-w-5 pl-h-5 pl-rounded-full pl-border pl-border-black/[0.5] pl-p-0.5 ${r.speed===d&&"pl-border-primary"}`,children:r.speed===d&&jsx("div",{className:"pl-w-full pl-h-full pl-rounded-full pl-bg-primary"})}),jsx("p",{className:`pl-w-full pl-flex pl-items-center pl-gap-2 pl-text-black/[0.87] ${ca("isTouchScreen")?"pl-pr-[21px]":"pl-pr-[10px]"}`,children:d})]},P))})});return jsx(Fragment,{children:o?jsxs("div",{className:"pl-relative pl-flex pl-items-center",ref:p,children:[jsx($e,{className:"pl-size-5 pl-cursor-pointer size-5 pl-fill-white",onClick:()=>l(C(!i)),onMouseOver:()=>!ca("isTouchScreen")&&!ca("showSpeedPopover")&&a$1(!0),onMouseLeave:()=>!ca("isTouchScreen")&&a$1(!1)}),c&&jsx(L,{title:"\u0633\u0631\u0639\u062A"}),jsx(H,{classNames:`!pl-p-0 pl-overflow-hidden !pl-bg-white ${ca("isTouchScreen")?"!pl-fixed !pl-bottom-0 !pl-rounded-t-[20px] pl-rounded-b-none":"!pl-w-[230px] pl-right-0 pl-mb-[33px] !pl-rounded-[12px]"} ${ca("isTouchScreenPortrait")&&"!pl-w-screen tablet:!pl-max-w-[440px] tablet:!pl-mx-auto"} ${ca("isTouchScreenLandscape")&&"pl-w-full pl-max-w-[440px]"}`,status:i,onClose:()=>l(C(!1)),type:ca("isTouchScreen")?"modal":"popover",isBlurBackground:ca("isTouchScreenPortrait"),ref:ca("isTouchScreenPortrait")?p:void 0,isHeader:ca("isTouchScreen"),customHeader:jsx(Fragment,{}),isHasCatchUpLineOnTop:ca("isTouchScreen"),children:f$1})]}):jsx(Fragment,{children:f$1})})},_e=yi;e();var wi=({enabled:e,setEnabled:o})=>jsx("div",{className:`pl-relative pl-h-[22px] pl-w-[37px] pl-cursor-pointer pl-rounded-[15px] pl-transition-colors pl-duration-150 pl-ease-linear ${e?"pl-bg-primary pl-border pl-border-transparent":"pl-bg-secondary-200 pl-border pl-border-gray-highLight"}`,onClick:o,children:jsx("div",{className:`pl-absolute pl-left-1 pl-top-[2px] pl-w-[16px] pl-h-[16px] pl-rounded-full pl-transition-transform pl-duration-150 pl-ease-linear ${e?"pl-bg-white pl-translate-x-[13px]":"pl-bg-black/[0.16] -pl-translate-x-0.5"}`})}),wo=wi;e();var ki=({setSection:e})=>{let o=da(),{subtitles:l,selectedSubtitle:i}=ea(({videoData:{subtitles:r,selectedSubtitle:p}})=>({subtitles:r,selectedSubtitle:p}),shallowEqual);return jsx("div",{id:"subtitles",className:"animate__animated animate__fadeIn pl-p-[14px]",children:jsxs("ul",{className:"pl-flex pl-flex-col pl-p-0 pl-m-0",children:[jsx("li",{className:`pl-flex pl-items-center pl-text-[14px] pl-rounded-[4px] pl-relative pl-cursor-pointer pl-leading-6 hover:pl-bg-main/[0.1] hover:dark:pl-bg-white/[0.25] pl-p-1 pl-pr-2 ${!i&&"pl-bg-main-light hover:!pl-bg-main-light pl-text-dark-5"}`,onClick:()=>{o(f(!1)),o(B(!1)),o(A(void 0)),e("main");let r=Object.values(fa().textTracks).find(p=>p.mode==="showing");r&&(r.mode="disabled"),o(z$1("")),la(Aa("empty"));},children:"\u0628\u062F\u0648\u0646 \u0632\u06CC\u0631\u0646\u0648\u06CC\u0633"}),l.map((r,p)=>jsx("li",{className:`pl-flex pl-items-center pl-text-[14px] pl-rounded-[4px] pl-relative pl-cursor-pointer pl-leading-6 hover:pl-bg-main/[0.1] hover:dark:pl-bg-white/[0.25] pl-p-1 pl-pr-2 ${i&&i.language===r.language&&"pl-bg-main-light hover:!pl-bg-main-light pl-text-dark-5"}`,onClick:()=>{o(f(!1)),o(B(!1)),o(A(r)),fa().textTracks[p].mode="showing",e("main"),la(Aa(r.language));},children:jsx("span",{children:r.label})},p))]})})},To=memo(ki);var Ii=()=>{let e=da(),{selectedSubtitle:o}=ea(({videoData:{params:f,subtitles:d,selectedSubtitle:P}})=>({params:f,subtitles:d,selectedSubtitle:P}),shallowEqual),{settingPopover:l}=ea(({popovers:{settingPopover:f}})=>({settingPopover:f}),shallowEqual),[i,r]=useState("main"),[p,c]=useState(!1),a$1=useRef(null);return z(a$1,()=>{e(B(!1)),setTimeout(()=>r("main"),500);}),jsxs("div",{className:`pl-inline-flex ${ca("isLandscape")&&"pl-relative"}`,ref:a$1,children:[jsxs("div",{className:"pl-flex pl-items-center pl-relative pl-cursor-pointer",onClick:()=>e(B(!l)),onMouseOver:()=>!ca("isTouchScreen")&&!ca("showSettingPopover")&&c(!0),onMouseLeave:()=>!ca("isTouchScreen")&&c(!1),children:[jsx(Se,{src:a.settings,alt:"",width:20,height:20}),p&&jsx(L,{title:"\u062A\u0646\u0638\u06CC\u0645\u0627\u062A"})]}),jsx(H,{classNames:`!pl-p-0 pl-overflow-hidden !pl-bg-white ${ca("isTouchScreen")?"!pl-fixed !pl-bottom-0 !pl-rounded-t-[20px] pl-rounded-b-none":"!pl-w-[230px] pl-right-0 pl-mb-[33px] !pl-rounded-[12px]"} ${ca("isTouchScreenPortrait")&&"!pl-w-screen tablet:!pl-max-w-[285px] tablet:!pl-mx-auto"} ${ca("isTouchScreenLandscape")&&"pl-w-full pl-max-w-[285px]"}`,status:l,onClose:()=>{e(B(!1)),setTimeout(()=>r("main"),500);},type:ca("isTouchScreen")?"modal":"popover",isBlurBackground:ca("isTouchScreenPortrait"),ref:ca("isTouchScreenPortrait")?a$1:void 0,isHeader:ca("isTouchScreen"),customHeader:jsx(Fragment,{}),isHasCatchUpLineOnTop:ca("isTouchScreen"),children:jsxs(Fragment,{children:[i==="main"&&jsxs("div",{id:"main",className:"pl-p-4 pl-rounded-[10px] pl-flex pl-flex-col pl-gap-5 animate__animated animate__fadeIn",children:[!ca("isStaticFormat")&&jsx(Fragment,{children:jsxs("div",{className:"pl-flex pl-items-center pl-gap-[10px] pl-cursor-pointer",onClick:()=>r("qualityLevels"),children:[jsx(Se,{src:a.qualitySetting,alt:"",width:16,height:16}),jsx("p",{className:"pl-ml-auto pl-text-[12px] pl-font-medium pl-text-black/[0.87]",children:"\u06A9\u06CC\u0641\u06CC\u062A \u067E\u062E\u0634"}),jsx(Se,{src:a.chevronLeft,alt:"",width:16,height:16})]})}),jsxs("div",{className:"pl-flex pl-items-center pl-gap-[10px] pl-cursor-pointer",onClick:()=>r("speed"),children:[jsx($e,{className:"size-5 pl-fill-black/[0.5]"}),jsx("p",{className:"pl-ml-auto pl-text-[12px] pl-font-medium pl-text-black/[0.87]",children:"\u0633\u0631\u0639\u062A"}),jsx(Se,{src:a.chevronLeft,alt:"",width:16,height:16})]}),ca("hasSubtitles")&&ca("isTouchScreenPortrait")&&jsxs("div",{className:"pl-flex pl-items-center pl-gap-[10px] pl-cursor-pointer",children:[jsx(Se,{src:a.subtitleOutlineGray,alt:"subtitle-icon",width:20,height:20}),jsx("p",{className:"pl-ml-auto pl-text-[12px] pl-font-medium pl-text-black/[0.87]",children:"\u0632\u06CC\u0631\u0646\u0648\u06CC\u0633"}),jsx(wo,{enabled:!!o,setEnabled:b})]})]}),i==="qualityLevels"&&jsx(De,{setSection:r}),i==="speed"&&jsx(_e,{setSection:r}),i==="subtitles"&&jsx(To,{setSection:r})]})})]})},No=memo(Ii);e();var Li=()=>{let{duration:e,currentTime:o}=ea(({controller:{duration:l,currentTime:i}})=>({duration:l,currentTime:i}),shallowEqual);return ea(({videoData:{videoElementSizeInfo:l,params:i}})=>({videoElementSizeInfo:l,params:i}),shallowEqual),jsx(Fragment,{children:jsxs("div",{className:`pl-mr-auto !pl-text-white pl-w-full pl-max-w-max pl-text-[12px] pl-font-bold ${ca("isFullScreen")?"pl-ml-8":"pl-ml-4"} ${ca("isTouchScreenPortrait")?"!pl-ml-0":"pl-absolute pl-left-0 pl-bottom-full pl-mb-[33px]"}`,children:[jsx("span",{children:P(e)}),jsx("span",{children:" / "}),jsx("span",{children:P(o)})]})})},Ve=Li;e();var Di=()=>jsx(Se,{src:a.unlock,alt:"unlock-icon",width:20,height:20,onClick:()=>h("lock")}),Eo=Di;e();var Vi=()=>{let[e,o]=useState(!1);return ea(({videoData:{selectedSubtitle:l,videoElementSizeInfo:i,params:r}})=>({selectedSubtitle:l,videoElementSizeInfo:i,params:r}),shallowEqual),jsxs("div",{className:"pl-relative pl-flex pl-items-center",children:[jsx(Se,{alt:"subtitle-icon",src:ca("isSelectedSubtitle")?a.subtitleFill:a.subtitleOutline,className:"pl-cursor-pointer",width:20,height:20,onClick:b,onDoubleClick:l=>l.stopPropagation(),onMouseOver:()=>!ca("isTouchScreen")&&o(!0),onMouseLeave:()=>!ca("isTouchScreen")&&o(!1)}),e&&jsx(L,{title:"\u0632\u06CC\u0631\u0646\u0648\u06CC\u0633"})]})},Lo=Vi;e();e();var Ri=e=>(ea(({videoData:{videoElementSizeInfo:o,params:l}})=>({videoElementSizeInfo:o,params:l}),shallowEqual),jsxs("svg",{width:20,height:20,viewBox:"0 0 22 22",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[jsx("rect",{x:"3",y:"3",width:"4",height:"4",rx:"1.5"}),jsx("rect",{x:"3",y:"9",width:"4",height:"4",rx:"1.5"}),jsx("rect",{x:"3",y:"15",width:"4",height:"4",rx:"1.5"}),jsx("rect",{x:"8",y:"16",width:"11",height:"2",rx:"1"}),jsx("rect",{x:"8",y:"10",width:"11",height:"2",rx:"1"}),jsx("rect",{x:"8",y:"4",width:"11",height:"2",rx:"1"})]})),Mo=Ri;var Wi=()=>{useState(0);useState(void 0);let [r,p]=useState(!1),{markers:c,params:a}=ea(({videoData:{markers:h,params:C,videoElementSizeInfo:M}})=>({markers:h,params:C,videoElementSizeInfo:M}),shallowEqual),{markersListPopover:f}=ea(({popovers:{markersListPopover:h}})=>({markersListPopover:h}),shallowEqual),d=useRef(null),P$1=da();z(d,()=>P$1(E(!1)));let b=(h,C,M,m,w)=>{ha()&&(ha().style.width=`${Rt(h)}px`),i(fa().currentTime,h),fa().currentTime=h,P$1(E(!1)),la(Ba(C,h,M,m,w));},F=()=>{P$1(E(!f));};return jsxs("div",{className:`pl-flex pl-items-center pl-p-1 pl-relative ${ca("showMarkerListPopover")&&"pl-bg-secondary-50/[0.4] pl-rounded-[4px]"}`,ref:d,children:[jsx(Mo,{className:"pl-cursor-pointer pl-fill-dark-5",onClick:F,onMouseOver:()=>!ca("isTouchScreen")&&p(!0),onMouseLeave:()=>!ca("isTouchScreen")&&p(!1)}),r&&jsx(L,{title:"\u0644\u06CC\u0633\u062A \u0646\u0634\u0627\u0646\u06AF\u0631\u0647\u0627 (e)",className:"!pl-bottom-[180%] !pl-right-[-48px]"}),jsx(H,{classNames:"!pl-p-0 pl-left-0 !pl-bg-white dark:!pl-bg-dark-13 !pl-rounded-[4px] pl-mb-[33px]",status:ca("showMarkerListPopover"),onClose:()=>{P$1(E(!1));},headerTitle:"\u0646\u0634\u0627\u0646\u06AF\u0631\u0647\u0627",isHeader:!0,type:"popover",children:jsx("div",{className:"pl-flex pl-flex-col pl-gap-6 pl-mx-2 pl-mt-2",children:jsx("div",{className:"pl-flex pl-flex-col pl-gap-2 pl-pb-2",children:c.map(h=>jsx("div",{onClick:()=>b(h.time,h.id,h.title,h.description,h.sticker),className:"odd:dark:pl-bg-dark-1 odd:pl-bg-main/[0.1] hover:pl-bg-main/[0.1] hover:dark:bg-white/[0.25] pl-rounded-[8px]",children:jsxs("div",{className:"pl-flex pl-item-center pl-gap-2 pl-cursor-pointer pl-rounded-[4px] pl-relative pl-p-2 pl-mx-2",children:[h.banner||!h.sticker?jsx(Se,{src:h.banner?h.banner:"IMAGES.defaultMarkersListItemIcon",width:40,height:40,alt:h.title}):jsx("div",{className:"pl-w-[40px] pl-h-[40px] pl-bg-secondary dark:pl-bg-secondary-50 pl-rounded-[6px] pl-flex pl-items-center",children:jsx(xe,{name:h.sticker,className:"pl-w-[20px] pl-h-[20px] pl-mx-auto"})}),jsxs("div",{className:"pl-text-gray-800 dark:pl-text-white",children:[jsx("p",{className:"pl-flex pl-items-center pl-mb-1 pl-text-[14px] pl-font-bold pl-w-[130px] pl-whitespace-nowrap pl-overflow-hidden pl-text-ellipsis",children:jsx("div",{children:h.title})}),jsx("p",{className:"pl-text-[13px] pl-font-normal pl-w-[200px] pl-whitespace-nowrap pl-overflow-hidden pl-text-ellipsis",children:h.description})]}),jsx("span",{className:"pl-absolute pl-left-9 pl-top-2 pl-text-[12px] pl-font-bold pl-bg-secondary/[0.3] dark:pl-bg-secondary/[0.6] pl-text-gray-800 dark:pl-text-white pl-rounded-[4px] pl-p-[3px]",children:P(h.time)})]})},h.id))})})})]})},Fo=Wi;var Qi=()=>{ea(({controller:{isFullScreen:o}})=>({isFullScreen:o}),shallowEqual),ea(({videoData:{videoElementSizeInfo:o,params:l}})=>({videoElementSizeInfo:o,params:l}),shallowEqual);let e="";return ca("isTouchScreen")?ca("isFullScreen")?e="pl-mx-6":e="pl-mx-4":ca("isFullScreen")?e="pl-mx-8":e="pl-mx-4",jsxs("div",{id:"player-controllbar",className:`pl-flex pl-justify-between pl-items-center ${e}`,children:[jsxs("div",{className:"pl-flex pl-items-center pl-gap-5",children:[jsx(ao,{}),ca("isTouchScreenLandscape")&&jsx(Eo,{}),ca("showPictureInPicture")&&jsx(co,{}),ca("showSettingIcon")&&jsx(No,{}),ca("isFullScreen")&&!ca("isStaticFormat")&&jsx(De,{showQualityLevelsIcon:!0}),(ca("isFullScreen")||ca("isStaticFormat"))&&jsx(_e,{showSpeedIcon:!0}),ca("hasSubtitles")&&!ca("isTouchScreenPortrait")&&jsx(Lo,{})]}),jsxs("div",{className:"pl-flex pl-items-center pl-gap-5",children:[ca("isTouchScreenPortrait")&&jsx(Ve,{}),!ca("isIOS")&&jsx(fo,{}),ca("hasMarkers")&&jsx(Fo,{})]})]})},$o=memo(Qi);e();var Zi=()=>{let{subtitleText:e}=ea(({videoData:{subtitleText:l,selectedSubtitle:i}})=>({subtitleText:l,selectedSubtitle:i}),shallowEqual);ea(({controller:{isFullScreen:l}})=>({isFullScreen:l}),shallowEqual);let o=()=>{let l="";return ca("isLock")?l="pl-bottom-3":ca("isActiveElements")?ca("isTouchScreenPortrait")?l="pl-bottom-[45px]":ca("isFullScreen")?l="pl-bottom-[120px]":l="pl-bottom-[85px]":ca("isActiveElements")||(l="pl-bottom-3"),l};return jsx("div",{id:"subtitle-id",style:{direction:"ltr"},className:`pl-absolute pl-w-full pl-px-6 pl-text-center pl-text-[14px] ${ca("isFullScreen")&&"pl-text-[16px]"} pl-text-white pl-font-normal ${o()}`,children:$(e).map((l,i)=>jsx("p",{className:"pl-mx-auto",style:{textShadow:"0 0 4px #000000"},children:ba(l)},i))})},Bo=Zi;var Yi=()=>{ea(({controller:{lock:o,isFullScreen:l,isLoading:i,activeElements:r}})=>({lock:o,isFullScreen:l,isLoading:i,activeElements:r}),shallowEqual),ea(({videoData:{subtitles:o,selectedSubtitle:l}})=>({subtitles:o,selectedSubtitle:l}),shallowEqual);let e="";return ca("isTouchScreen")?ca("isFullScreen")?e="pl-gap-6 pl-mb-6":e="pl-gap-6 pl-mb-0":ca("isFullScreen")?e="pl-gap-6 pl-mb-8":e="pl-gap-4 pl-mb-3",jsx("div",{id:"footer",className:"pl-relative",style:{zIndex:4},children:jsxs(Fragment,{children:[ca("showSubtitle")&&jsx(Bo,{}),!ca("isLock")&&jsx(Fragment,{children:jsxs("div",{className:`pl-flex pl-flex-col pl-w-full pl-mx-auto animate__animated animate__faster ${e} ${ca("isActiveElements")&&!ca("isLoading")?"animate__fadeIn pl-pointer-events-auto":"animate__fadeOut pl-pointer-events-none"}`,children:[!ca("isTouchScreenPortrait")&&jsx(Ve,{}),ca("showProgressbar")&&jsx(no,{}),jsx($o,{})]})})]})})},Ro=Yi;e();var Ji=Xo(()=>import('./staticVideoTag-GJF26BZ3.mjs')),Ki=Xo(()=>import('./nonStaticVideoTag-JKZGTEQK.mjs')),ji=()=>jsx(Fragment,{children:ca("isStaticFormat")?jsx(Ji,{}):jsx(Ki,{})}),Ho=ji;e();var lr=()=>{let e=da();ea(({videoData:{params:o}})=>({params:o}),shallowEqual),useEffect(()=>{let o=()=>{document.fullscreenElement?e(h$1(!0)):(e(h$1(!1)),j(),la(qa("exitFullScreen")));};document.addEventListener&&(document.addEventListener("webkitfullscreenchange",o,!1),document.addEventListener("mozfullscreenchange",o,!1),document.addEventListener("fullscreenchange",o,!1),document.addEventListener("MSFullscreenChange",o,!1));},[]);},Uo=lr;e();var rr=(e,o)=>{let l=da(),{activeElements:i}=ea(({controller:{activeElements:a}})=>({activeElements:a}),shallowEqual),r=useRef(null),p=useRef(e),c=useRef(o);useEffect(()=>{p.current=e;},[e]),useEffect(()=>{c.current=o;},[o]),useEffect(()=>{let a=!1,f$1=u=>{let{activeElements:b,isEnded:F}=M.getState().controller;F?l(f(!0)):u.pointerType==="mouse"&&(clearTimeout(r.current),b?["player-tag","main-content","player-controllbar","video-opacity","playerElements","touchBackward","touchForward"].includes(u.target.id)&&(a=!0):l(f(!0)),r.current=setTimeout(()=>{let{settingPopover:h,speedPopover:C,qualityLevelsPopover:M$1}=M.getState().popovers,{play:m}=M.getState().controller;!h&&!C&&!M$1&&m&&a&&l(f(!1));},a$4));},d=u=>{setTimeout(()=>{let{activeElements:b,isEnded:F,firstPlay:h}=M.getState().controller;if(clearTimeout(r.current),F)return l(f(!0));O()&&!h&&!p.current&&!c.current&&(["player-tag","main-content","video-opacity","touchBackward","touchForward"].includes(u.target.id)||R(u,"playerElements")?(l(f(!b)),r.current=setTimeout(()=>{let{settingPopover:C,speedPopover:M$1,qualityLevelsPopover:m}=M.getState().popovers;!C&&!M$1&&!m&&l(f(!1));},a$4)):r.current=setTimeout(()=>{let{settingPopover:C,speedPopover:M$1,qualityLevelsPopover:m}=M.getState().popovers;!C&&!M$1&&!m&&l(f(!1));},a$4));},200);},P=()=>{clearTimeout(r.current),r.current=setTimeout(()=>{let{activeElements:u,isEnded:b}=M.getState().controller,{settingPopover:F,speedPopover:h,qualityLevelsPopover:C}=M.getState().popovers;b?l(f(!0)):!F&&!h&&!C&&u&&!b&&l(f(!u));},a$4);};return document.getElementById("video-area").addEventListener("touchstart",d),document.getElementById("video-area").addEventListener("touchmove",P),document.getElementById("video-area").addEventListener("pointermove",f$1),()=>{let u=document.getElementById("video-area");u&&(u.removeEventListener("touchstart",d),u.removeEventListener("touchmove",P),u.removeEventListener("pointermove",f$1));}},[i,e,o]);},Wo=rr;e();var pr=()=>{let{firstPlay:e,isFullScreen:o}=ea(({controller:{firstPlay:l,isFullScreen:i}})=>({firstPlay:l,isFullScreen:i}),shallowEqual);useEffect(()=>{if(fa()){let l,i=()=>{l=setTimeout(()=>{j();},O()?0:300);};return i(),window.addEventListener("resize",i),()=>{window.removeEventListener("resize",i),clearTimeout(l);}}},[e,o,fa()]);},Go=pr;e();var mr=()=>{let{firstPlay:e}=ea(({controller:{firstPlay:o}})=>({firstPlay:o}),shallowEqual);ea(({videoData:{details:o}})=>({details:o}),shallowEqual),useEffect(()=>{ca("setSubtitleFirstPlay")&&b();},[e]);},Zo=mr;var cr=Xo(()=>import('./touchVolumeBrightness-VSJS4WWO.mjs')),Ko=Xo(()=>import('./backwardForward-6U6VETTV.mjs')),dr=()=>{let[e,o]=useState(!1),[l,i]=useState(!1);return ea(({videoData:{details:r,params:p,videoElementSizeInfo:c}})=>({details:r,params:p,videoElementSizeInfo:c}),shallowEqual),ea(({controller:{firstPlay:r,isFullScreen:p,isLoading:c,canPlayVideo:a}})=>({firstPlay:r,isFullScreen:p,isLoading:c,canPlayVideo:a}),shallowEqual),Uo(),Go(),Wo(e,l),Zo(),jsx(Fragment,{children:jsxs("div",{id:"video-area",style:{zIndex:ca("isFullScreen")?1e6:"unset"},onClick:r=>ca("isFirstPlay")&&a$1(r),onDoubleClick:r=>k(r),className:`!pl-bg-contain !pl-bg-center !pl-bg-no-repeat pl-h-full pl-bg-black pl-max-h-screen pl-aspect-video pl-flex pl-items-center ${!ca("isTouchScreen")&&!ca("isFullScreen")&&"!pl-rounded-[12px]"} ${ca("isFullScreen")&&"!pl-fixed !pl-w-screen dvh"} pl-w-full pl-relative ${!ca("isActiveElements")&&"pl-cursor-none"}`,children:[jsx("div",{id:"video-opacity",className:`pl-absolute pl-w-full pl-aspect-video pl-transition-all pl-duration-500 pl-bg-black ${!ca("isTouchScreen")&&!ca("isFullScreen")&&"!pl-rounded-[12px]"} ${ca("isActiveElements")?"pl-bg-opacity-50":"pl-bg-opacity-0"}`}),ca("showTouchVolumeBrightness")&&jsx(cr,{}),ca("showBackwardForward")&&jsxs("div",{className:"pl-absolute pl-top-0 pl-right-0 pl-w-full pl-h-full pl-overflow-hidden pl-flex pl-items-center",style:{zIndex:l||e?1000002:1},children:[jsx(Ko,{type:"touchForward",isRightDoubleTouched:e,setIsRightDoubleTouched:o}),jsx(Ko,{type:"touchBackward",isLeftDoubleTouched:l,setIsLeftDoubleTouched:i})]}),jsx(Ho,{}),jsx("div",{id:"playerElements",className:"pl-absolute pl-top-0 pl-right-0 pl-w-full pl-h-full",children:jsxs("div",{className:"pl-flex pl-flex-col pl-justify-between pl-w-full pl-h-full",children:[ca("showHeader")&&jsx(At,{}),ca("showMain")&&jsx(qt,{}),ca("showFooter")&&jsx(Ro,{})]})})]})})},Id=dr;
8
- export{Id as a};//# sourceMappingURL=chunk-UTQQHPIT.mjs.map
9
- //# sourceMappingURL=chunk-UTQQHPIT.mjs.map