cafe-video-player 2.0.9 → 2.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/backwardForward-TH2P5ZVK.js +2 -0
- package/{backwardForward-LEF6QEHC.js.map → backwardForward-TH2P5ZVK.js.map} +1 -1
- package/backwardForward-W2AN76M3.mjs +2 -0
- package/{backwardForward-DXHXPSN5.mjs.map → backwardForward-W2AN76M3.mjs.map} +1 -1
- package/{chunk-2IZ5IXAI.mjs → chunk-2X7E6M4D.mjs} +3 -3
- package/{chunk-2IZ5IXAI.mjs.map → chunk-2X7E6M4D.mjs.map} +1 -1
- package/{chunk-RANPZP7R.js → chunk-4NMQ3GHC.js} +2 -2
- package/chunk-4NMQ3GHC.js.map +1 -0
- package/{chunk-BTYRED56.mjs → chunk-7LENFFBJ.mjs} +2 -2
- package/{chunk-BTYRED56.mjs.map → chunk-7LENFFBJ.mjs.map} +1 -1
- package/chunk-DIXECPWU.js +3 -0
- package/{chunk-J3DDD2J2.js.map → chunk-DIXECPWU.js.map} +1 -1
- package/chunk-K2JCFZE7.js +2 -0
- package/chunk-K2JCFZE7.js.map +1 -0
- package/{chunk-LKQ3AVLL.mjs → chunk-L7QCDFGW.mjs} +2 -2
- package/chunk-L7QCDFGW.mjs.map +1 -0
- package/{chunk-D3UEAG5E.mjs → chunk-LVVTFJXA.mjs} +2 -2
- package/chunk-LVVTFJXA.mjs.map +1 -0
- package/{chunk-LJV2LALZ.js → chunk-N3ABHHEP.js} +2 -2
- package/{chunk-LJV2LALZ.js.map → chunk-N3ABHHEP.js.map} +1 -1
- package/{chunk-KQGFZYNY.js → chunk-NSHXDDDL.js} +5 -5
- package/{chunk-KQGFZYNY.js.map → chunk-NSHXDDDL.js.map} +1 -1
- package/chunk-OA665SBW.js +2 -0
- package/{chunk-C3IPUDJP.js.map → chunk-OA665SBW.js.map} +1 -1
- package/chunk-QQPMZJTF.js +2 -0
- package/{chunk-UA23HLNN.js.map → chunk-QQPMZJTF.js.map} +1 -1
- package/{chunk-BGJKOHS4.mjs → chunk-QUTYBQVW.mjs} +4 -4
- package/{chunk-BGJKOHS4.mjs.map → chunk-QUTYBQVW.mjs.map} +1 -1
- package/{chunk-OW7OJBWV.mjs → chunk-SNC6YDWT.mjs} +2 -2
- package/{chunk-OW7OJBWV.mjs.map → chunk-SNC6YDWT.mjs.map} +1 -1
- package/{chunk-4SV5JGMW.mjs → chunk-T5J2LBNT.mjs} +2 -2
- package/{chunk-4SV5JGMW.mjs.map → chunk-T5J2LBNT.mjs.map} +1 -1
- package/chunk-VENTNRWB.js +2 -0
- package/{chunk-XS36NQI2.js.map → chunk-VENTNRWB.js.map} +1 -1
- package/{chunk-K6YQLSZM.mjs → chunk-ZJWNIOUT.mjs} +2 -2
- package/{chunk-K6YQLSZM.mjs.map → chunk-ZJWNIOUT.mjs.map} +1 -1
- package/index.js +1 -1
- package/index.mjs +1 -1
- package/{nonStaticVideoTag-NNE7DCJ3.mjs → nonStaticVideoTag-3A7UMOI6.mjs} +2 -2
- package/{nonStaticVideoTag-NNE7DCJ3.mjs.map → nonStaticVideoTag-3A7UMOI6.mjs.map} +1 -1
- package/nonStaticVideoTag-NI32RG7R.js +2 -0
- package/{nonStaticVideoTag-HIJEJVNB.js.map → nonStaticVideoTag-NI32RG7R.js.map} +1 -1
- package/package.json +1 -1
- package/staticPlayer-2MFBIGCW.js +2 -0
- package/{staticPlayer-QYBODSEE.js.map → staticPlayer-2MFBIGCW.js.map} +1 -1
- package/staticPlayer-YY6J5HCD.mjs +2 -0
- package/{staticPlayer-WHXICWZ3.mjs.map → staticPlayer-YY6J5HCD.mjs.map} +1 -1
- package/{staticVideoTag-6ADPZABQ.mjs → staticVideoTag-FRLUDI2M.mjs} +2 -2
- package/{staticVideoTag-6ADPZABQ.mjs.map → staticVideoTag-FRLUDI2M.mjs.map} +1 -1
- package/staticVideoTag-JO4LJAQ2.js +2 -0
- package/{staticVideoTag-3BQCD6HS.js.map → staticVideoTag-JO4LJAQ2.js.map} +1 -1
- package/{touchVolumeBrightness-WIKG7XEM.mjs → touchVolumeBrightness-IL3YCCXB.mjs} +3 -3
- package/{touchVolumeBrightness-WIKG7XEM.mjs.map → touchVolumeBrightness-IL3YCCXB.mjs.map} +1 -1
- package/{touchVolumeBrightness-KXK67TL7.js → touchVolumeBrightness-O2A6EVGQ.js} +3 -3
- package/{touchVolumeBrightness-KXK67TL7.js.map → touchVolumeBrightness-O2A6EVGQ.js.map} +1 -1
- package/videoArea-NS5ITB7D.mjs +2 -0
- package/{videoArea-YC7QEUFW.mjs.map → videoArea-NS5ITB7D.mjs.map} +1 -1
- package/videoArea-O7Y3UVNZ.js +2 -0
- package/{videoArea-DTCR5BB6.js.map → videoArea-O7Y3UVNZ.js.map} +1 -1
- package/vodPlayer-7OCVMSGV.js +2 -0
- package/{vodPlayer-VIAGXGQL.js.map → vodPlayer-7OCVMSGV.js.map} +1 -1
- package/{vodPlayer-YLIJOHFU.mjs → vodPlayer-JA4KG6WJ.mjs} +2 -2
- package/{vodPlayer-YLIJOHFU.mjs.map → vodPlayer-JA4KG6WJ.mjs.map} +1 -1
- package/backwardForward-DXHXPSN5.mjs +0 -2
- package/backwardForward-LEF6QEHC.js +0 -2
- package/chunk-C3IPUDJP.js +0 -2
- package/chunk-D3UEAG5E.mjs.map +0 -1
- package/chunk-ET3KQTR2.js +0 -2
- package/chunk-ET3KQTR2.js.map +0 -1
- package/chunk-J3DDD2J2.js +0 -3
- package/chunk-LKQ3AVLL.mjs.map +0 -1
- package/chunk-RANPZP7R.js.map +0 -1
- package/chunk-UA23HLNN.js +0 -2
- package/chunk-XS36NQI2.js +0 -2
- package/nonStaticVideoTag-HIJEJVNB.js +0 -2
- package/staticPlayer-QYBODSEE.js +0 -2
- package/staticPlayer-WHXICWZ3.mjs +0 -2
- package/staticVideoTag-3BQCD6HS.js +0 -2
- package/videoArea-DTCR5BB6.js +0 -2
- package/videoArea-YC7QEUFW.mjs +0 -2
- package/vodPlayer-VIAGXGQL.js +0 -2
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
'use strict';var chunkN3ABHHEP_js=require('./chunk-N3ABHHEP.js');require('./chunk-QQPMZJTF.js'),require('./chunk-4NMQ3GHC.js'),require('./chunk-DQNYU4AM.js'),require('./chunk-WO4IQUGO.js');module.exports=chunkN3ABHHEP_js.a;//# sourceMappingURL=backwardForward-TH2P5ZVK.js.map
|
|
2
|
+
//# sourceMappingURL=backwardForward-TH2P5ZVK.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"backwardForward-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"backwardForward-TH2P5ZVK.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"backwardForward-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"backwardForward-W2AN76M3.mjs"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {L,ga,T as T$1,V,I as I$1,u,v as v$1,r as r$1,P as P$1,ca,A as A$1,xa,wa,ha,M}from'./chunk-
|
|
2
|
-
export{G as a,H as b};//# sourceMappingURL=chunk-
|
|
3
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import {L,ga,T as T$1,V,I as I$1,u,v as v$1,r as r$1,P as P$1,ca,A as A$1,xa,wa,ha,M}from'./chunk-L7QCDFGW.mjs';import {e}from'./chunk-DBPGS72Q.mjs';import P from'axios';e();e();var v=t=>{let{params:o}=L.getState().videoData;return ha().vod.getVodUrl+(t||o.id)},r={url:"",maxRetryCount:0,headers:{},retryPolicy:[],errorCallback:void 0},I=t=>(r.url=v(t),r.maxRetryCount=3,r.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}],r),D=t=>(I(t),r);var A=t=>ga({url:ha().viewCount(t),data:{uuid:M()}}),G=async t=>{let o=L.dispatch;try{let e=await ga({...D(t)});if(T$1(e.status)){if(await P.head("https://"+V(e.data.hls_links)+e.data.path),t)return o(I$1(e.data));A(e.data.content_id),T(e.data);}else throw new Error(JSON.stringify({status:e.status,message:e.data}))}catch{o(u(!0)),o(v$1(!1));}},T=t=>{let o=L.dispatch,e=L.getState().videoData.params.subtitleUrl;o(r$1({...t,subtitles:e?[{id:1,lang:"fa",url:e}]:t.subtitles,stream_link:!!t.stream_link&&P$1("https://"+V(t.hls_links)+t.path)})),o(u(!0)),o(v$1(!0));},H=()=>{let t=L.dispatch,{subtitles:o,selectedSubtitle:e}=L.getState().videoData,i=o.find(m=>m.language==="fa");e?(Object.values(ca().textTracks).find(m=>m.mode==="showing").mode="disabled",t(A$1(void 0)),xa(wa("empty"))):i?(i.mode="showing",t(A$1(i)),xa(wa(i.language))):(ca().textTracks[0].mode="showing",t(A$1(ca().textTracks[0])),xa(wa(ca().textTracks[0].language)));};
|
|
2
|
+
export{G as a,H as b};//# sourceMappingURL=chunk-2X7E6M4D.mjs.map
|
|
3
|
+
//# sourceMappingURL=chunk-2X7E6M4D.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/videoData.actions.ts","../src/videoPlayerLibrary/helpers/getDetailsConfigs.ts"],"names":["init_esm_shims","detailAPI","id","params","store_default","API","detailsConfig","vodDetailsConfig","videoId","handleDetailsConfig","videoViewCount","contentId","apiCaller","getUUID","getVodDetails","dispatch","d","responseValidator","axios","weighted_random","setDetailsMiniPlayer","detailSetter","setIsFetchDetails","setIsValidAddress","data","paramsSubtitle","setInfo","addUuidToSrc","handleSubtitle","subtitles","selectedSubtitle","faSubtitle","subtitle","mainPlayerVideoTag","textTrack","setSelectedSubtitle","sendFluentLog","subtitleLog"],"mappings":"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","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/videoData.actions.ts","../src/videoPlayerLibrary/helpers/getDetailsConfigs.ts"],"names":["init_esm_shims","detailAPI","id","params","store_default","API","detailsConfig","vodDetailsConfig","videoId","handleDetailsConfig","videoViewCount","contentId","apiCaller","getUUID","getVodDetails","dispatch","d","responseValidator","axios","weighted_random","setDetailsMiniPlayer","detailSetter","setIsFetchDetails","setIsValidAddress","data","paramsSubtitle","setInfo","addUuidToSrc","handleSubtitle","subtitles","selectedSubtitle","faSubtitle","subtitle","mainPlayerVideoTag","textTrack","setSelectedSubtitle","sendFluentLog","subtitleLog"],"mappings":"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","file":"chunk-2X7E6M4D.mjs","sourcesContent":["import { apiCaller } from \"../../services/apiCaller\";\r\nimport { API } from \"../../services/services\";\r\nimport {\r\n setInfo,\r\n setIsFetchDetails,\r\n setIsValidAddress,\r\n setSelectedSubtitle,\r\n} from \"../slices/videoDataSlice\";\r\nimport store from \"../store\";\r\nimport {\r\n addUuidToSrc,\r\n getUUID,\r\n responseValidator,\r\n weighted_random,\r\n} from \"../../helpers\";\r\nimport axios from \"axios\";\r\nimport { handleDetailsConfig } from \"../../getDetailsConfigs\";\r\nimport { subtitleLog } from \"../../logs/logs\";\r\nimport { sendFluentLog } from \"../../logs/fluentdLogger\";\r\nimport { mainPlayerVideoTag } from \"../../constants\";\r\nimport { setDetailsMiniPlayer } from \"../slices/miniPlayerSlice\";\r\n\r\nconst videoViewCount = (contentId: number) =>\r\n apiCaller({ url: API().viewCount(contentId), data: { uuid: getUUID() } });\r\n\r\nexport const getVodDetails = async (videoId?: string) => {\r\n const dispatch = store.dispatch;\r\n try {\r\n const d = await apiCaller({ ...handleDetailsConfig(videoId) });\r\n if (responseValidator(d.status)) {\r\n await axios.head(\r\n \"https://\" + weighted_random(d.data.hls_links) + d.data.path\r\n );\r\n if (videoId) return dispatch(setDetailsMiniPlayer(d.data));\r\n videoViewCount(d.data.content_id!);\r\n detailSetter(d.data);\r\n } else\r\n throw new Error(JSON.stringify({ status: d.status, message: d.data }));\r\n } catch (error: any) {\r\n dispatch(setIsFetchDetails(true));\r\n dispatch(setIsValidAddress(false));\r\n }\r\n};\r\n\r\nexport const detailSetter = (data: any) => {\r\n const dispatch = store.dispatch;\r\n const paramsSubtitle = store.getState().videoData.params.subtitleUrl;\r\n dispatch(\r\n setInfo({\r\n ...data,\r\n subtitles: paramsSubtitle\r\n ? [{ id: 1, lang: \"fa\", url: paramsSubtitle }]\r\n : data.subtitles,\r\n stream_link:\r\n !!data.stream_link &&\r\n addUuidToSrc(\"https://\" + weighted_random(data.hls_links) + data.path),\r\n })\r\n );\r\n dispatch(setIsFetchDetails(true));\r\n dispatch(setIsValidAddress(true));\r\n};\r\n\r\nexport const handleSubtitle = () => {\r\n const dispatch = store.dispatch;\r\n const { subtitles, selectedSubtitle } = store.getState().videoData;\r\n\r\n const faSubtitle: any = subtitles.find(\r\n (subtitle: any) => subtitle.language === \"fa\"\r\n );\r\n if (selectedSubtitle) {\r\n Object.values(mainPlayerVideoTag().textTracks).find(\r\n (textTrack: any) => textTrack.mode === \"showing\"\r\n )!.mode = \"disabled\";\r\n dispatch(setSelectedSubtitle(undefined));\r\n sendFluentLog(subtitleLog(\"empty\"));\r\n } else {\r\n if (faSubtitle) {\r\n faSubtitle.mode = \"showing\";\r\n dispatch(setSelectedSubtitle(faSubtitle));\r\n sendFluentLog(subtitleLog(faSubtitle.language));\r\n } else {\r\n mainPlayerVideoTag().textTracks[0].mode = \"showing\";\r\n dispatch(setSelectedSubtitle(mainPlayerVideoTag().textTracks[0]));\r\n sendFluentLog(subtitleLog(mainPlayerVideoTag().textTracks[0].language));\r\n }\r\n }\r\n};\r\n","import { IDetailsConfig } from \"./interfaces/interfaces\";\r\nimport store from \"./redux/store\";\r\nimport { API } from \"./services/services\";\r\n\r\nexport const detailAPI = (id?: string) => {\r\n const { params } = store.getState().videoData;\r\n return API().vod.getVodUrl + (id ? id : params.id);\r\n};\r\n\r\nconst detailsConfig: IDetailsConfig = {\r\n url: \"\",\r\n maxRetryCount: 0,\r\n headers: {},\r\n retryPolicy: [],\r\n errorCallback: undefined\r\n};\r\n\r\nconst vodDetailsConfig = (videoId?:string) => {\r\n detailsConfig.url = detailAPI(videoId);\r\n detailsConfig.maxRetryCount = 3;\r\n detailsConfig.retryPolicy = [\r\n {\r\n codeAbove: 500,\r\n codeBelow: null,\r\n excludeCodes: [],\r\n includeCodes: [409],\r\n delay: 1,\r\n count: 3\r\n },\r\n {\r\n codeAbove: null,\r\n codeBelow: 404,\r\n excludeCodes: [403, 402, 401, 400],\r\n includeCodes: [],\r\n delay: 10,\r\n count: 6\r\n }\r\n ];\r\n return detailsConfig;\r\n};\r\n\r\n\r\nexport const handleDetailsConfig = (videoId?: string) => {\r\n vodDetailsConfig(videoId);\r\n return detailsConfig;\r\n};\r\n"]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
'use strict';var chunkWO4IQUGO_js=require('./chunk-WO4IQUGO.js'),toolkit=require('@reduxjs/toolkit'),reactRedux=require('react-redux'),ke=require('axios');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var ke__default=/*#__PURE__*/_interopDefault(ke);var te=chunkWO4IQUGO_js.b((ra,ee)=>{chunkWO4IQUGO_js.e();ee.exports={baseUrl:"https://hamrahi.cloud",fluentdUrl:"https://hamrahi.cloud"};});var re={};chunkWO4IQUGO_js.c(re,{isNpmPackage:()=>Ie});var Ie,ae=chunkWO4IQUGO_js.a(()=>{chunkWO4IQUGO_js.e();Ie=!1;});chunkWO4IQUGO_js.e();var Q={play:!1,isAutoPlay:!0,duration:0,currentTime:0,qualityLevels:[],manualQuality:void 0,autoQuality:void 0,activeElements:!0,isLoading:!1,isFullScreen:!1,bufferedTimeWidth:0,firstPlay:!0,activePointerProgressBar:!1,delayTurnOffControlbar:!1,canPlayVideo:!1,lock:!1,isEnded:!1,tooltipTime:0},U=toolkit.createSlice({name:"controller",initialState:Q,reducers:{setPlay:(t,e)=>{t.play=e.payload;},setIsAutoPlay:(t,e)=>{t.isAutoPlay=e.payload;},setDuration:(t,e)=>{t.duration=e.payload;},setCurrentTime:(t,e)=>{t.currentTime=e.payload;},setManualQuality:(t,e)=>{t.manualQuality=e.payload;},setAutoQuality:(t,e)=>{t.autoQuality=e.payload;},setQualityLevels:(t,e)=>{t.qualityLevels=e.payload;},setActiveElements:(t,e)=>{t.activeElements=e.payload;},setIsLoading:(t,e)=>{t.isLoading=e.payload;},setIsFullScreen:(t,e)=>{t.isFullScreen=e.payload;},setBufferedTimeWidth:(t,e)=>{t.bufferedTimeWidth=e.payload;},setFirstPlay:(t,e)=>{t.firstPlay=e.payload;},setActivePointerProgressBar:(t,e)=>{t.activePointerProgressBar=e.payload;},setDelayTurnOffControlbar:(t,e)=>{t.delayTurnOffControlbar=e.payload;},setCanPlayVideo:(t,e)=>{t.canPlayVideo=e.payload;},setLock:(t,e)=>{t.lock=e.payload;},setIsEnded:(t,e)=>{t.isEnded=e.payload;},setTooltipTime:(t,e)=>{t.tooltipTime=e.payload;},setClearControllerSlice:()=>Q}}),{setPlay:Ve,setIsAutoPlay:_e,setDuration:Qe,setCurrentTime:Ue,setQualityLevels:Ee,setAutoQuality:Be,setActiveElements:Re,setIsLoading:$e,setIsFullScreen:Ke,setBufferedTimeWidth:Oe,setFirstPlay:qe,setActivePointerProgressBar:He,setDelayTurnOffControlbar:We,setManualQuality:je,setCanPlayVideo:Ce,setLock:Xe,setIsEnded:Ye,setTooltipTime:Ge,setClearControllerSlice:E}=U.actions,B=U.reducer;chunkWO4IQUGO_js.e();var Se={details:{stream_link:"",type:"",banner:"",id:void 0,title:void 0,vtt:void 0,vtt_mobile:void 0,user_id:null,content_id:void 0,content_type:null,duration:0,subtitles:void 0},params:{type:"",id:"",bannerAlt:"",fullscreen:"",autoplay:"",banner:"",provider:"cafevdo",onFinished:void 0,onPlay:void 0,onPause:void 0,playStatus:void 0,currentTime:void 0},videoElementSizeInfo:{bottom:0,top:0,right:0,left:0,width:0,height:0},isFetchDetails:!1,isValidAddress:!1,videoTimelines:[],isReady:!1,subtitles:[],selectedSubtitle:void 0,subtitleText:void 0},R=toolkit.createSlice({name:"videoData",initialState:Se,reducers:{setInfo:(t,e)=>{t.details=e.payload;},setPlayerParams:(t,e)=>{t.params=e.payload;},setVideoElementSizeInfo:(t,e)=>{t.videoElementSizeInfo=e.payload;},setIsFetchDetails:(t,e)=>{t.isFetchDetails=e.payload;},setIsValidAddress:(t,e)=>{t.isValidAddress=e.payload;},setVideoTimelines:(t,e)=>{t.videoTimelines=e.payload;},setIsReady:(t,e)=>{t.isReady=e.payload;},setSubtitles:(t,e)=>{t.subtitles=e.payload;},setSelectedSubtitle:(t,e)=>{t.selectedSubtitle=e.payload;},setSubtitleText:(t,e)=>{t.subtitleText=e.payload;},setClearVideoDataSlice:t=>{t.subtitles=[],t.selectedSubtitle=void 0,t.subtitleText=void 0;}}}),{setInfo:et,setPlayerParams:tt,setVideoElementSizeInfo:rt,setIsFetchDetails:at,setIsValidAddress:st,setVideoTimelines:it,setIsReady:ot,setSubtitles:nt,setSubtitleText:lt,setSelectedSubtitle:ct,setClearVideoDataSlice:$}=R.actions,K=R.reducer;chunkWO4IQUGO_js.e();var O={settings:{quality:-1,brightness:100,volume:100,speed:1},videoSettings:{time:0}},q=toolkit.createSlice({name:"user",initialState:O,reducers:{setUserSettings:(t,e)=>{t.settings=e.payload;},setVideoSettings:(t,e)=>{t.videoSettings=e.payload;},setClearUserSlice:()=>O}}),{setUserSettings:mt,setVideoSettings:gt,setClearUserSlice:H}=q.actions,W=q.reducer;chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();var ve={settingPopover:!1,speedPopover:!1,qualityLevelsPopover:!1},j=toolkit.createSlice({name:"popover",initialState:ve,reducers:{setSettingPopover:(t,e)=>{t.settingPopover=e.payload;},setSpeedPopover:(t,e)=>{t.speedPopover=e.payload;},setQualityLevelsPopover:(t,e)=>{t.qualityLevelsPopover=e.payload;},setClearPopoversSlice:t=>{t.settingPopover=!1,t.speedPopover=!1,t.qualityLevelsPopover=!1;}}}),{setSettingPopover:wt,setSpeedPopover:At,setQualityLevelsPopover:xt,setClearPopoversSlice:C}=j.actions,X=j.reducer;chunkWO4IQUGO_js.e();var Y={params:{id:"0",type:"",currentTime:0,autoPlay:!1,onClose:()=>{}},details:{},play:!1},G=toolkit.createSlice({name:"user",initialState:Y,reducers:{setMiniPlayerInfo:(t,e)=>{t.params={...e.payload,id:e.payload.type==="static"?window.atob(e.payload.id):e.payload.id,banner:e.payload.banner?e.payload.banner:void 0};},setDetailsMiniPlayer:(t,e)=>{t.details=e.payload;},setPlayMiniPlayer:(t,e)=>{t.play=e.payload;},setClearMiniPlayerSlice:t=>Y}}),{setMiniPlayerInfo:Mt,setDetailsMiniPlayer:Ft,setPlayMiniPlayer:Vt,setClearMiniPlayerSlice:_t}=G.actions,J=G.reducer;var xe=toolkit.configureStore({reducer:{controller:B,videoData:K,popovers:X,user:W,miniPlayer:J},devTools:!0,middleware:t=>t({serializableCheck:!1})}),s=xe;chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();var u=t=>{let{params:e,details:r,isValidAddress:a,isFetchDetails:o,isReady:n,subtitles:d,selectedSubtitle:c}=s.getState().videoData,{firstPlay:l,lock:p,canPlayVideo:P,manualQuality:m,activeElements:v,isLoading:h,isEnded:g,isAutoPlay:ne,play:le,isFullScreen:x}=s.getState().controller,{settingPopover:V,speedPopover:ce,qualityLevelsPopover:ue}=s.getState().popovers,{settings:_}=s.getState().user,L=s.getState().miniPlayer;switch(t){case"showHeader":return !l&&P;case"showMain":return !p||l;case"showFooter":return !l&&P;case"showTouchVolumeBrightness":return !l&&T()&&!p&&!g;case"showBackwardForward":return !l&&f()&&!p;case"showTitle":return !w(e.type)&&x&&!p;case"showSettingPopover":return V;case"showSpeedPopover":return ce;case"showQualityLevelsPopover":return ue;case"showSettingIcon":return !w(e.type)&&!b()&&!x;case"showBanner":return l&&(r.banner||e.banner);case"showProgressbar":return !b();case"showPictureInPicture":return !b()&&!f();case"showSubtitle":return !!c;case"hidePopovers":return !V;case"isLandscape":return window.innerHeight<=window.innerWidth;case"isTouchScreen":return f();case"isTouchScreenPortrait":return z();case"isTouchScreenLandscape":return T();case"isActiveElements":return v;case"isPlay":return le;case"isPlayMiniPlayer":return L.play;case"isFirstPlay":return l;case"isLock":return p;case"isIOS":return b();case"isLoading":return h;case"isStaticFormat":return e.type==="static";case"isEnded":return g;case"isAutoPlay":return ne;case"isFullScreen":return x;case"isValidAddress":return a;case"isFetchDetails":return o;case"isAutoQuality":return _.quality===-1;case"isPressKeySpace":return !p;case"isPressKeyI":return !p&&!l;case"isPressKeyF":return !p&&!l;case"isPressKeyS":return !p&&!l;case"isPressKeyArrowRight":return !l&&!p;case"isPressKeyArrowLeft":return !l&&!p;case"isPressKeyM":return !l&&!p;case"isPressKeyC":return !p&&!l&&!!d&&d.length>0;case"isSendTimelineLog":return !w(e.type);case"isReady":return n;case"isSelectedSubtitle":return !!d&&d.length>0&&c;case"isMiniPlayerAndMainPlayerSame":return e.id===L.params.id;case"hasTitle":return r.title;case"hasBanner":return r.banner;case"hasStreamLink":return r.stream_link;case"hasManualQuality":return m!=null;case"hasSound":return !!_.volume;case"hasAutoPlay":return e.autoplay==="true";case"hasFullScreenParams":return e.fullscreen==="true";case"hasOnFinishedParams":return !!e.onFinished;case"hasSubtitles":return !!d&&d.length>0;case"hasSubtitlesInDetails":return r.subtitles&&r.subtitles.length>0;case"hasActiveCue":return c&&c.activeCues&&c.activeCues.length>0;case"hasOnPlayParams":return !!e.onPlay;case"hasOnPauseParams":return !!e.onPause;case"hasPlayStatusParams":return e.playStatus!==void 0;case"hasMiniPlayer":return L.params.id;case"hasCurrentTimeParams":return e.currentTime!==void 0;case"getDetails":return !!e.type&&e.id;case"canPlayVideo":return P;case"setSubtitleFirstPlay":return r.subtitles&&r.subtitles.length>0&&!l&&!w(e.type);}};var N=t=>new Promise(e=>setTimeout(e,t*1e3)),S=()=>{let t=localStorage.getItem("hamrahiUUID");return t||(t=Le(),localStorage.setItem("hamrahiUUID",t)),t.toString()},Le=()=>{let t="xxxxxxxx-xxxx-Mxxx-Nxxx-x".replace(/[xMN]/g,e=>{let r;return e==="M"?r=Math.floor(1+Math.random()*5):e==="N"?r=Math.floor(8+Math.random()*4):r=Math.floor(Math.random()*16),r.toString(16)});return t+=Date.now().toString(16),t},f=()=>"ontouchstart"in window||window.DocumentTouch&&document instanceof window.DocumentTouch,T=()=>{let{isFullScreen:t}=s.getState().controller;return f()&&t},z=()=>{let{isFullScreen:t}=s.getState().controller;return f()&&!t},b=()=>["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document,A=t=>(t<10?"0":"")+t,rr=t=>{let e=Math.floor(t/3600),r=Math.floor(t%3600/60),a=Math.floor(t%3600%60);return e<1?`${A(r)}:${A(a)}`:`${A(e)}:${A(r)}:${A(a)}`},w=t=>["mp4","mkv","mov","m4v"].includes(t)?"mp4":t==="webm"||t==="flv"?t:["mp3","ogg"].includes(t)?"mp3":!1,ar=t=>{let e=new URL(t),r=t;return e.search.length?r+=`&uuid=${S()}`:r+=`?uuid=${S()}`},sr=(t,e)=>{try{return [t.target.id,t.target.parentNode.id,t.target.parentNode.parentNode.id,t.target.parentNode.parentNode.parentNode.id,t.target.parentNode.parentNode.parentNode.parentNode.id].includes(e)}catch{return !1}},ir=t=>{let e="";t==="mainPlayer"?e=s.getState().videoData.details.stream_link:e=s.getState().miniPlayer.details.stream_link;let r="";return e&&(r=e.split("m3u8")[1]),r?r=`${r}&uuid=${S()}`:r=`?uuid=${S()}`,r},or=(t,e)=>{let r=document.getElementById(e),a=document.createElement("span");a.style.width=a.style.height="50px",a.style.left=`${t.touches[0].clientX-r.offsetLeft-25}px`,a.style.top=`${t.touches[0].clientY-r.offsetTop-25}px`,a.classList.add("pl-ripple");let o=r.getElementsByClassName("pl-ripple")[0];o&&o.remove(),r.appendChild(a);};var nr=t=>t>=200&&t<300,lr=()=>{let t=s.dispatch;t($()),t(E()),t(H()),t(C());},cr=t=>{let e,r=[];for(e=0;e<t.length;e++)r[e]=t[e].weight+(r[e-1]||0);let a=Math.random()*r[r.length-1];for(e=0;e<r.length&&!(r[e]>a);e++);return t[e].domain},ur=t=>{let e=0;performance&&performance.getEntriesByType("navigation")&&(e=performance.getEntriesByType("navigation")[0].duration),t.current=e;},dr=(t,e,r)=>{let a=e*window.devicePixelRatio,o=r*window.devicePixelRatio,n=[];return u("isTouchScreenPortrait")?n=t.filter(d=>Number(d.split("x")[0].trim())<=a):n=t.filter(d=>Number(d.split("x")[0].trim())<=o||Number(d.split("x")[1].trim())<=a),n.indexOf(n[n.length-1])},D=(t,e)=>{let r={};for(let a in t){let o=e?`${e}_${a}`:a;typeof t[a]=="object"&&!Array.isArray(t[a])?r={...r,...D(t[a],o)}:r[o]=t[a];}return r},pr=t=>{let e={fa:1,en:2};return t.slice().sort((r,a)=>{let o=e[r.lang]||999,n=e[a.lang]||999;return o-n})},yr=t=>{let e;switch(t){case"fa":e="\u0641\u0627\u0631\u0633\u06CC";break;case"en":e="\u0627\u0646\u06AF\u0644\u06CC\u0633\u06CC";break;case"ar":e="\u0639\u0631\u0628\u06CC";break;case"tr":e="\u062A\u0631\u06A9\u06CC";break;}return e},mr=t=>t.split(/\r?\n|\r|\n/g);chunkWO4IQUGO_js.e();var fr=()=>reactRedux.useDispatch(),vr=reactRedux.useSelector;chunkWO4IQUGO_js.e();var k=()=>document.getElementById("player-tag"),xr=()=>document.getElementById("mini-player-video-tag"),Lr=()=>document.getElementById("time-progress-bar"),Tr=()=>s.getState().videoData.videoElementSizeInfo.width-2;chunkWO4IQUGO_js.e();var Qr=t=>{let{params:e,details:r}=s.getState().videoData,{settings:a}=s.getState().user;return {category:"speedChange",previousSelectedSpeed:a.speed,selectedSpeed:t,id:Number(e.id),type:e.type,src:u("hasStreamLink")?r.stream_link:e.id,provider:e.provider}},Ur=t=>{let{params:e,details:r}=s.getState().videoData,{qualityLevels:a,manualQuality:o,autoQuality:n}=s.getState().controller;return {category:"qualityChangeRequest",currentPlayingQuality:`${a[u("isAutoQuality")?n??o:o]}P`,previousSelectedQuality:u("isAutoQuality")?"auto":`${a[o]}P`,selectedQuality:t,id:Number(e.id),type:e.type,src:u("hasStreamLink")?r.stream_link:e.id,provider:e.provider}},Er=t=>{let{params:e,details:r}=s.getState().videoData,{qualityLevels:a,autoQuality:o}=s.getState().controller,{settings:n}=s.getState().user;return {category:"catchUpLoading",previousVideoTime:Number(sessionStorage.getItem("previousVideoTime")),currentVideoTime:k().currentTime,duration:t,quality:`${u("isAutoQuality")?a[o]:a[n.quality]}P`,isAutoQuality:u("isAutoQuality"),id:Number(e.id),type:e.type,src:u("hasStreamLink")?r.stream_link:e.id,provider:e.provider}},Br=t=>{let{params:e,details:r}=s.getState().videoData;return {category:t==="backward"?"backward":"forward",id:Number(e.id),type:e.type,src:r.stream_link?r.stream_link:e.id,provider:e.provider}},Rr=t=>{let{params:e,details:r}=s.getState().videoData;return {category:t,id:Number(e.id),type:e.type,src:u("hasStreamLink")?r.stream_link:e.id}},$r=(t,e)=>{let{params:r,details:a}=s.getState().videoData;return {category:"brightnessChange",source:t,target:e,id:Number(r.id),type:r.type,src:u("hasStreamLink")?a.stream_link:r.id}},Kr=(t,e)=>{let{params:r,details:a}=s.getState().videoData;return {category:"volumeChange",source:t,target:e,id:Number(r.id),type:r.type,src:u("hasStreamLink")?a.stream_link:r.id}},Or=t=>{let{params:e,details:r}=s.getState().videoData;return {category:t,id:Number(e.id),type:e.type,src:u("hasStreamLink")?r.stream_link:e.id}};var qr=(t,e)=>{let{params:r,details:a}=s.getState().videoData,{duration:o}=s.getState().controller;return {category:"video-timeline",video_id:+r.id,video_type:r.type,start:t,end:e,watchedDuration:e-t,video_duration:Math.floor(o),clientUUID:S(),user_id:a.user_id,content_type:a.content_type,content_id:a.content_id}},Hr=(t,e,r)=>{let{params:a,details:o}=s.getState().videoData;return {category:"autoQualityChange",sourceQuality:t,targetQuality:e,diffQuality:r,id:Number(a.id),type:a.type,src:u("hasStreamLink")?o.stream_link:a.id,provider:a.provider}},Wr=(t,e)=>{let{params:r,details:a}=s.getState().videoData;return {category:"pingpong",id:Number(r.id),type:r.type,src:u("hasStreamLink")?a.stream_link:r.id,PingPongDuration:Number((new Date().getTime()-t).toFixed(2)),PingPongSourceQuality:`${e[0]}P`,PingPongTargetQuality:`${e[1]}P`,provider:r.provider}},jr=t=>{let{params:e,details:r}=s.getState().videoData;return {category:t?"playVideo":"pauseVideo",id:Number(e.id),type:e.type,src:r.stream_link?r.stream_link:e.id,provider:e.provider}},Cr=(t,e,r,a,o)=>{let{params:n,details:d}=s.getState().videoData,c=Date.now()-o.current+t+e,l=window.performance.memory,p=JSON.parse(JSON.stringify(window.performance.timing));return {category:"initLog",id:Number(n.id),type:n.type,origin:new URL(u("hasStreamLink")?d.stream_link:n.id).origin,src:u("hasStreamLink")?d.stream_link:n.id,loading:t,bannerLoading:!u("hasBanner")||r<0?0:r,waiting:e,firstChunkPlaying:a<0?0:a,totalTime:c,provider:n.provider,performance:D({memory:l,timing:p},"performance"),userAgent:window.navigator.userAgent}},Xr=(t,e,r,a,o)=>{let{params:n,details:d}=s.getState().videoData,{settings:c}=s.getState().user,l=Date.now()-r.current;return {category:"loading",id:Number(n.id),type:n.type,src:u("hasStreamLink")?d.stream_link:n.id,duration:t,quality:`${e}P`,isAutoQuality:u("isAutoQuality"),previousLoaderDiff:l,counter:a.current,loadingPercentile:Number((t/l).toFixed(2)),videoTime:k().currentTime,videoEntranceTime:o,speed:c.speed,provider:n.provider}},Yr=t=>{let{params:e,details:r}=s.getState().videoData;return {category:"subtitle",language:t,id:Number(e.id),type:e.type,src:u("hasStreamLink")?r.stream_link:e.id}};chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();var I=async({url:t,method:e="GET",data:r,headers:a,retryCount:o=1,maxRetryCount:n=0,errorMessage:d,retryPolicy:c,errorCallback:l,timeoutCount:p})=>{let P={url:t,method:e,headers:{...a,"Content-Type":"application/json"},timeout:p?p*1e3:void 0};r?e==="GET"?P={...P,params:{uuid:s.getState().videoData.params.uuid,provider:s.getState().videoData.params.provider==="unknown"?void 0:s.getState().videoData.params.provider,...r}}:P={...P,data:{uuid:s.getState().videoData.params.uuid,provider:s.getState().videoData.params.provider==="unknown"?void 0:s.getState().videoData.params.provider,...r}}:e==="GET"?P={...P,params:{uuid:s.getState().videoData.params.uuid,provider:s.getState().videoData.params.provider==="unknown"?void 0:s.getState().videoData.params.provider}}:P={...P,data:{uuid:s.getState().videoData.params.uuid,provider:s.getState().videoData.params.provider==="unknown"?void 0:s.getState().videoData.params.provider}};try{return await ke__default.default(P)}catch(m){if(!(m&&m.response&&m.response.status===401)){l&&l(m.response.status,m.response.message);let v=0,h=0;if(c!==void 0){for(let g=0;g<c.length;g++)if((c[g].codeAbove&&m.response.status>=c[g].codeAbove||c[g].codeBelow&&m.response.status<=c[g].codeBelow)&&(c[g].excludeCodes.length===0||!c[g].excludeCodes.includes(m.response.status))||c[g].includeCodes.length===0||c[g].includeCodes.includes(m.response.status)){h=c[g].count,v=c[g].delay;break}}else h=n,v=o+1;if(o<h)return await N(v),I({url:t,method:e,data:r,headers:a,retryCount:o+1,newMaxRetryCount:h,errorMessage:d,retryPolicy:c,errorCallback:l});if(m.response)return {data:m.response.data?m.response.data:{detail:"\u0639\u0645\u0644\u06CC\u0627\u062A \u0628\u0627 \u062E\u0637\u0627 \u0645\u0648\u0627\u062C\u0647 \u0634\u062F\u0647 \u0627\u0633\u062A."},status:m.response.status}}}};chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();var se=te(),ie=(ae(),chunkWO4IQUGO_js.d(re)),M=()=>(ie?se.baseUrl:process.env.baseUrl)+"/live/api",F=()=>ie?se.fluentdUrl:process.env.fluentdUrl;var oe=()=>({vod:{getVodUrl:`${M()}/v1/live/details/vod/`},viewCount:t=>`${M()}/v1/viewed/content/${t}`,videoTimelineLog:`${F()}/video-timeline.log`,logs:`${F()}/drive-endpoint.log`});var ma=t=>{let{details:e}=s.getState().videoData,r={...t,timestamp:Date.now(),clientUUID:S(),uuid:S(),link:window.location.href,user_id:e.user_id,live_id:null,format:void 0,content_type:e.content_type,content_id:e.content_id};I({url:oe().logs,method:"post",data:r});};
|
|
2
|
-
exports.$=u;exports.A=ct;exports.B=wt;exports.C=At;exports.D=xt;exports.E=C;exports.F=mt;exports.G=gt;exports.H=Mt;exports.I=Ft;exports.J=Vt;exports.K=_t;exports.L=s;exports.M=S;exports.N=f;exports.O=rr;exports.P=ar;exports.Q=sr;exports.R=ir;exports.S=or;exports.T=nr;exports.U=lr;exports.V=cr;exports.W=ur;exports.X=dr;exports.Y=pr;exports.Z=yr;exports._=mr;exports.a=Ve;exports.aa=fr;exports.b=Qe;exports.ba=vr;exports.c=Ue;exports.ca=k;exports.d=Ee;exports.da=xr;exports.e=Be;exports.ea=Lr;exports.f=Re;exports.fa=Tr;exports.g=$e;exports.ga=I;exports.h=Ke;exports.ha=oe;exports.i=Oe;exports.ia=Qr;exports.j=qe;exports.ja=Ur;exports.k=He;exports.ka=Er;exports.l=We;exports.la=Br;exports.m=je;exports.ma=Rr;exports.n=Ce;exports.na=$r;exports.o=Xe;exports.oa=Kr;exports.p=Ye;exports.pa=Or;exports.q=Ge;exports.qa=qr;exports.r=et;exports.ra=Hr;exports.s=tt;exports.sa=Wr;exports.t=rt;exports.ta=jr;exports.u=at;exports.ua=Cr;exports.v=st;exports.va=Xr;exports.w=it;exports.wa=Yr;exports.x=ot;exports.xa=ma;exports.y=nt;exports.z=lt;//# sourceMappingURL=chunk-
|
|
3
|
-
//# sourceMappingURL=chunk-
|
|
2
|
+
exports.$=u;exports.A=ct;exports.B=wt;exports.C=At;exports.D=xt;exports.E=C;exports.F=mt;exports.G=gt;exports.H=Mt;exports.I=Ft;exports.J=Vt;exports.K=_t;exports.L=s;exports.M=S;exports.N=f;exports.O=rr;exports.P=ar;exports.Q=sr;exports.R=ir;exports.S=or;exports.T=nr;exports.U=lr;exports.V=cr;exports.W=ur;exports.X=dr;exports.Y=pr;exports.Z=yr;exports._=mr;exports.a=Ve;exports.aa=fr;exports.b=Qe;exports.ba=vr;exports.c=Ue;exports.ca=k;exports.d=Ee;exports.da=xr;exports.e=Be;exports.ea=Lr;exports.f=Re;exports.fa=Tr;exports.g=$e;exports.ga=I;exports.h=Ke;exports.ha=oe;exports.i=Oe;exports.ia=Qr;exports.j=qe;exports.ja=Ur;exports.k=He;exports.ka=Er;exports.l=We;exports.la=Br;exports.m=je;exports.ma=Rr;exports.n=Ce;exports.na=$r;exports.o=Xe;exports.oa=Kr;exports.p=Ye;exports.pa=Or;exports.q=Ge;exports.qa=qr;exports.r=et;exports.ra=Hr;exports.s=tt;exports.sa=Wr;exports.t=rt;exports.ta=jr;exports.u=at;exports.ua=Cr;exports.v=st;exports.va=Xr;exports.w=it;exports.wa=Yr;exports.x=ot;exports.xa=ma;exports.y=nt;exports.z=lt;//# sourceMappingURL=chunk-4NMQ3GHC.js.map
|
|
3
|
+
//# sourceMappingURL=chunk-4NMQ3GHC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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/logs.ts","../src/videoPlayerLibrary/helpers/logs/fluentdLogger.ts","../src/videoPlayerLibrary/helpers/services/apiCaller.ts","../src/videoPlayerLibrary/helpers/services/services.ts","../src/videoPlayerLibrary/helpers/services/baseUrl.ts"],"names":["require_next_config","__commonJSMin","exports","module","init_cjs_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","setIsFetchDetails","setIsValidAddress","setVideoTimelines","setIsReady","setSubtitles","setSubtitleText","setSelectedSubtitle","setClearVideoDataSlice","videoDataSlice_default","UserSliceState","userSlice","setUserSettings","setVideoSettings","setClearUserSlice","userSlice_default","PopOversSliceState","popoversSlice","setSettingPopover","setSpeedPopover","setQualityLevelsPopover","setClearPopoversSlice","popoversSlice_default","MiniPlayerSliceState","setMiniPlayerInfo","setDetailsMiniPlayer","setPlayMiniPlayer","setClearMiniPlayerSlice","miniPlayerSlice_default","store","configureStore","getDefaultMiddleware","store_default","conditions","type","params","details","isValidAddress","isFetchDetails","isReady","subtitles","selectedSubtitle","firstPlay","lock","canPlayVideo","manualQuality","activeElements","isLoading","isEnded","isAutoPlay","play","isFullScreen","settingPopover","speedPopover","qualityLevelsPopover","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","useAppDispatch","useDispatch","useAppSelector","useSelector","mainPlayerVideoTag","miniPlayerVideoTag","progressBar","progressBarWidth","speedChangeLog","selectedSpeed","qualityChangeRequestLog","selectedQuality","qualityLevels","autoQuality","catchUpLoadingLog","duration","backwardForwardLog","fullscreenLog","category","brightnessLog","source","volumeLog","lockLog","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","apiCaller","url","method","data","headers","retryCount","maxRetryCount","errorMessage","retryPolicy","errorCallback","timeoutCount","axiosConfig","axios","error","newRetryDelay","newMaxRetryCount","envs","getRestApiLiveUrl","getFluentdUrl","API","content_id","sendFluentLog","_data"],"mappings":"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","file":"chunk-4NMQ3GHC.js","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 } 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 },\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 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 state.subtitles = [];\r\n state.selectedSubtitle = undefined;\r\n state.subtitleText = undefined;\r\n }\r\n }\r\n});\r\n\r\nexport const {\r\n setInfo,\r\n setPlayerParams,\r\n setVideoElementSizeInfo,\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 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}\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 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 getDetails = \"getDetails\",\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};\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 setClearPopoversSlice: (state) => {\r\n state.settingPopover = false;\r\n state.speedPopover = false;\r\n state.qualityLevelsPopover = false;\r\n }\r\n }\r\n});\r\n\r\nexport const {\r\n setSettingPopover,\r\n setSpeedPopover,\r\n setQualityLevelsPopover,\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);","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 } = 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 } =\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.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.getDetails:\r\n return !!params.type && params.id;\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 { 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) => {\r\n return {\r\n category: \"error\",\r\n type: type,\r\n message: message\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};","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 } = 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 };\r\n apiCaller({ url: API().logs, method: \"post\", data: _data });\r\n};\r\n","import axios from \"axios\";\r\nimport { IApiCaller, IAxiosConfig } from \"../interfaces/interfaces\";\r\nimport store from \"../redux/store\";\r\nimport { wait } from \"../helpers\";\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 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","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 },\r\n viewCount: (content_id: number) => `${getRestApiLiveUrl()}/v1/viewed/content/${content_id}`,\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\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {L,ca,G}from'./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import {L,ca,G}from'./chunk-L7QCDFGW.mjs';import {e}from'./chunk-DBPGS72Q.mjs';e();var f=()=>{let{params:r}=L.getState().videoData,t=ca().currentTime;if(t!==0){let d=ca().duration,i={video_id:+r.id,video_type:2,time:t===d?0:Math.floor(ca().currentTime)},o=localStorage.getItem("viewedVideos");if(o){let e=JSON.parse(o);e=e.filter(n=>n.video_id!==i.video_id||n.video_type!==i.video_type),e.length<10||e.shift(),e.push(i),localStorage.setItem("viewedVideos",JSON.stringify(e));}else localStorage.setItem("viewedVideos",JSON.stringify([i]));}},g=()=>{let r=L.dispatch,{params:t}=L.getState().videoData,d=localStorage.getItem("viewedVideos");if(d){let o=JSON.parse(d).find(e=>e.video_id===Number(t.id)&&e.video_type===2);o&&r(G({time:o.time}));}};export{f as a,g as b};//# sourceMappingURL=chunk-7LENFFBJ.mjs.map
|
|
2
|
+
//# sourceMappingURL=chunk-7LENFFBJ.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/user.actions.ts"],"names":["init_esm_shims","handleContinuousPlayback","params","store_default","currentTime","mainPlayerVideoTag","duration","viewedVideo","viewedVideosInLocalStorage","viewedVideos","video","handleApplyContinuousPlayback","dispatch","setVideoSettings"],"mappings":"+EAAAA,CAAAA,EAAAA,CAKaC,IAAAA,CAAAA,CAA2B,IAAM,CAC1C,GAAM,CAAE,MAAA,CAAAC,CAAO,CAAA,CAAIC,EAAM,QAAS,EAAA,CAAE,SAC9BC,CAAAA,CAAAA,CAAcC,IAAqB,CAAA,WAAA,CACzC,GAAID,CAAAA,GAAgB,EAAG,CACnB,IAAME,CAAWD,CAAAA,EAAAA,GAAqB,QAChCE,CAAAA,CAAAA,CAA4B,CAC9B,QAAA,CAAU,CAACL,CAAO,CAAA,EAAA,CAClB,UAAY,CAAA,CAAA,CACZ,KAAME,CAAgBE,GAAAA,CAAAA,CAAW,CAAI,CAAA,IAAA,CAAK,MAAMD,EAAmB,EAAA,CAAE,WAAW,CACpF,EACIG,CAA6B,CAAA,YAAA,CAAa,OAAQ,CAAA,cAAc,EACpE,GAAIA,CAAAA,CAA4B,CAC5B,IAAIC,EAA+B,IAAK,CAAA,KAAA,CAAMD,CAA0B,CAAA,CACxEC,EAAeA,CAAa,CAAA,MAAA,CACvBC,CAAwBA,EAAAA,CAAAA,CAAM,WAAaH,CAAY,CAAA,QAAA,EAAYG,CAAM,CAAA,UAAA,GAAeH,EAAY,UACzG,CAAA,CACIE,CAAa,CAAA,MAAA,CAAS,IAEtBA,CAAa,CAAA,KAAA,EACbA,CAAAA,CAAAA,CAAa,IAAKF,CAAAA,CAAW,CAEjC,CAAA,YAAA,CAAa,QAAQ,cAAgB,CAAA,IAAA,CAAK,SAAUE,CAAAA,CAAY,CAAC,EACrE,CAAA,KAAO,YAAa,CAAA,OAAA,CAAQ,eAAgB,IAAK,CAAA,SAAA,CAAU,CAACF,CAAW,CAAC,CAAC,EAC7E,CACJ,CAAA,CAEaI,EAAgC,IAAM,CAC/C,IAAMC,CAAAA,CAAWT,EAAM,QACjB,CAAA,CAAE,MAAAD,CAAAA,CAAO,EAAIC,CAAM,CAAA,QAAA,EAAW,CAAA,SAAA,CAChCK,EAA6B,YAAa,CAAA,OAAA,CAAQ,cAAc,CAAA,CACpE,GAAIA,CAA4B,CAAA,CAE5B,IAAMD,CAAAA,CAD+B,KAAK,KAAMC,CAAAA,CAA0B,CACzC,CAAA,IAAA,CAC5BE,GAAwBA,CAAM,CAAA,QAAA,GAAa,MAAOR,CAAAA,CAAAA,CAAO,EAAE,CAAKQ,EAAAA,CAAAA,CAAM,UAAe,GAAA,CAC1F,EAEIH,CAAaK,EAAAA,CAAAA,CAASC,CAAiB,CAAA,CAAE,KAAMN,CAAY,CAAA,IAAK,CAAC,CAAC,EAC1E,CACJ","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/user.actions.ts"],"names":["init_esm_shims","handleContinuousPlayback","params","store_default","currentTime","mainPlayerVideoTag","duration","viewedVideo","viewedVideosInLocalStorage","viewedVideos","video","handleApplyContinuousPlayback","dispatch","setVideoSettings"],"mappings":"+EAAAA,CAAAA,EAAAA,CAKaC,IAAAA,CAAAA,CAA2B,IAAM,CAC1C,GAAM,CAAE,MAAA,CAAAC,CAAO,CAAA,CAAIC,EAAM,QAAS,EAAA,CAAE,SAC9BC,CAAAA,CAAAA,CAAcC,IAAqB,CAAA,WAAA,CACzC,GAAID,CAAAA,GAAgB,EAAG,CACnB,IAAME,CAAWD,CAAAA,EAAAA,GAAqB,QAChCE,CAAAA,CAAAA,CAA4B,CAC9B,QAAA,CAAU,CAACL,CAAO,CAAA,EAAA,CAClB,UAAY,CAAA,CAAA,CACZ,KAAME,CAAgBE,GAAAA,CAAAA,CAAW,CAAI,CAAA,IAAA,CAAK,MAAMD,EAAmB,EAAA,CAAE,WAAW,CACpF,EACIG,CAA6B,CAAA,YAAA,CAAa,OAAQ,CAAA,cAAc,EACpE,GAAIA,CAAAA,CAA4B,CAC5B,IAAIC,EAA+B,IAAK,CAAA,KAAA,CAAMD,CAA0B,CAAA,CACxEC,EAAeA,CAAa,CAAA,MAAA,CACvBC,CAAwBA,EAAAA,CAAAA,CAAM,WAAaH,CAAY,CAAA,QAAA,EAAYG,CAAM,CAAA,UAAA,GAAeH,EAAY,UACzG,CAAA,CACIE,CAAa,CAAA,MAAA,CAAS,IAEtBA,CAAa,CAAA,KAAA,EACbA,CAAAA,CAAAA,CAAa,IAAKF,CAAAA,CAAW,CAEjC,CAAA,YAAA,CAAa,QAAQ,cAAgB,CAAA,IAAA,CAAK,SAAUE,CAAAA,CAAY,CAAC,EACrE,CAAA,KAAO,YAAa,CAAA,OAAA,CAAQ,eAAgB,IAAK,CAAA,SAAA,CAAU,CAACF,CAAW,CAAC,CAAC,EAC7E,CACJ,CAAA,CAEaI,EAAgC,IAAM,CAC/C,IAAMC,CAAAA,CAAWT,EAAM,QACjB,CAAA,CAAE,MAAAD,CAAAA,CAAO,EAAIC,CAAM,CAAA,QAAA,EAAW,CAAA,SAAA,CAChCK,EAA6B,YAAa,CAAA,OAAA,CAAQ,cAAc,CAAA,CACpE,GAAIA,CAA4B,CAAA,CAE5B,IAAMD,CAAAA,CAD+B,KAAK,KAAMC,CAAAA,CAA0B,CACzC,CAAA,IAAA,CAC5BE,GAAwBA,CAAM,CAAA,QAAA,GAAa,MAAOR,CAAAA,CAAAA,CAAO,EAAE,CAAKQ,EAAAA,CAAAA,CAAM,UAAe,GAAA,CAC1F,EAEIH,CAAaK,EAAAA,CAAAA,CAASC,CAAiB,CAAA,CAAE,KAAMN,CAAY,CAAA,IAAK,CAAC,CAAC,EAC1E,CACJ","file":"chunk-7LENFFBJ.mjs","sourcesContent":["import { IViewedVideo } from \"../../interfaces/interfaces\";\r\nimport store from \"../store\";\r\nimport { setVideoSettings } from \"../slices/userSlice\";\r\nimport { mainPlayerVideoTag } from \"../../constants\";\r\n\r\nexport const handleContinuousPlayback = () => {\r\n const { params } = store.getState().videoData;\r\n const currentTime = mainPlayerVideoTag().currentTime;\r\n if (currentTime !== 0) {\r\n const duration = mainPlayerVideoTag().duration;\r\n const viewedVideo: IViewedVideo = {\r\n video_id: +params.id!,\r\n video_type: 2,\r\n time: currentTime === duration ? 0 : Math.floor(mainPlayerVideoTag().currentTime),\r\n };\r\n let viewedVideosInLocalStorage = localStorage.getItem(\"viewedVideos\");\r\n if (viewedVideosInLocalStorage) {\r\n let viewedVideos: IViewedVideo[] = JSON.parse(viewedVideosInLocalStorage);\r\n viewedVideos = viewedVideos.filter(\r\n (video: IViewedVideo) => video.video_id !== viewedVideo.video_id || video.video_type !== viewedVideo.video_type\r\n );\r\n if (viewedVideos.length < 10) viewedVideos.push(viewedVideo);\r\n else {\r\n viewedVideos.shift();\r\n viewedVideos.push(viewedVideo);\r\n }\r\n localStorage.setItem(\"viewedVideos\", JSON.stringify(viewedVideos));\r\n } else localStorage.setItem(\"viewedVideos\", JSON.stringify([viewedVideo]));\r\n }\r\n};\r\n\r\nexport const handleApplyContinuousPlayback = () => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n let viewedVideosInLocalStorage = localStorage.getItem(\"viewedVideos\");\r\n if (viewedVideosInLocalStorage) {\r\n const viewedVideos: IViewedVideo[] = JSON.parse(viewedVideosInLocalStorage);\r\n const viewedVideo = viewedVideos.find(\r\n (video: IViewedVideo) => video.video_id === Number(params.id) && video.video_type === 2\r\n );\r\n\r\n if (viewedVideo) dispatch(setVideoSettings({ time: viewedVideo.time }));\r\n }\r\n};\r\n\r\n"]}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
'use strict';var chunk4NMQ3GHC_js=require('./chunk-4NMQ3GHC.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}=chunk4NMQ3GHC_js.L.getState().videoData;return chunk4NMQ3GHC_js.ha().vod.getVodUrl+(t||o.id)},r={url:"",maxRetryCount:0,headers:{},retryPolicy:[],errorCallback:void 0},v=t=>(r.url=k(t),r.maxRetryCount=3,r.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}],r),D=t=>(v(t),r);var P=t=>chunk4NMQ3GHC_js.ga({url:chunk4NMQ3GHC_js.ha().viewCount(t),data:{uuid:chunk4NMQ3GHC_js.M()}}),z=async t=>{let o=chunk4NMQ3GHC_js.L.dispatch;try{let e=await chunk4NMQ3GHC_js.ga({...D(t)});if(chunk4NMQ3GHC_js.T(e.status)){if(await I__default.default.head("https://"+chunk4NMQ3GHC_js.V(e.data.hls_links)+e.data.path),t)return o(chunk4NMQ3GHC_js.I(e.data));P(e.data.content_id),A(e.data);}else throw new Error(JSON.stringify({status:e.status,message:e.data}))}catch{o(chunk4NMQ3GHC_js.u(!0)),o(chunk4NMQ3GHC_js.v(!1));}},A=t=>{let o=chunk4NMQ3GHC_js.L.dispatch,e=chunk4NMQ3GHC_js.L.getState().videoData.params.subtitleUrl;o(chunk4NMQ3GHC_js.r({...t,subtitles:e?[{id:1,lang:"fa",url:e}]:t.subtitles,stream_link:!!t.stream_link&&chunk4NMQ3GHC_js.P("https://"+chunk4NMQ3GHC_js.V(t.hls_links)+t.path)})),o(chunk4NMQ3GHC_js.u(!0)),o(chunk4NMQ3GHC_js.v(!0));},G=()=>{let t=chunk4NMQ3GHC_js.L.dispatch,{subtitles:o,selectedSubtitle:e}=chunk4NMQ3GHC_js.L.getState().videoData,i=o.find(m=>m.language==="fa");e?(Object.values(chunk4NMQ3GHC_js.ca().textTracks).find(m=>m.mode==="showing").mode="disabled",t(chunk4NMQ3GHC_js.A(void 0)),chunk4NMQ3GHC_js.xa(chunk4NMQ3GHC_js.wa("empty"))):i?(i.mode="showing",t(chunk4NMQ3GHC_js.A(i)),chunk4NMQ3GHC_js.xa(chunk4NMQ3GHC_js.wa(i.language))):(chunk4NMQ3GHC_js.ca().textTracks[0].mode="showing",t(chunk4NMQ3GHC_js.A(chunk4NMQ3GHC_js.ca().textTracks[0])),chunk4NMQ3GHC_js.xa(chunk4NMQ3GHC_js.wa(chunk4NMQ3GHC_js.ca().textTracks[0].language)));};
|
|
2
|
+
exports.a=z;exports.b=G;//# sourceMappingURL=chunk-DIXECPWU.js.map
|
|
3
|
+
//# sourceMappingURL=chunk-DIXECPWU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/videoData.actions.ts","../src/videoPlayerLibrary/helpers/getDetailsConfigs.ts"],"names":["init_cjs_shims","detailAPI","id","params","store_default","API","detailsConfig","vodDetailsConfig","videoId","handleDetailsConfig","videoViewCount","contentId","apiCaller","getUUID","getVodDetails","dispatch","d","responseValidator","axios","weighted_random","setDetailsMiniPlayer","detailSetter","setIsFetchDetails","setIsValidAddress","data","paramsSubtitle","setInfo","addUuidToSrc","handleSubtitle","subtitles","selectedSubtitle","faSubtitle","subtitle","mainPlayerVideoTag","textTrack","setSelectedSubtitle","sendFluentLog","subtitleLog"],"mappings":"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","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/videoData.actions.ts","../src/videoPlayerLibrary/helpers/getDetailsConfigs.ts"],"names":["init_cjs_shims","detailAPI","id","params","store_default","API","detailsConfig","vodDetailsConfig","videoId","handleDetailsConfig","videoViewCount","contentId","apiCaller","getUUID","getVodDetails","dispatch","d","responseValidator","axios","weighted_random","setDetailsMiniPlayer","detailSetter","setIsFetchDetails","setIsValidAddress","data","paramsSubtitle","setInfo","addUuidToSrc","handleSubtitle","subtitles","selectedSubtitle","faSubtitle","subtitle","mainPlayerVideoTag","textTrack","setSelectedSubtitle","sendFluentLog","subtitleLog"],"mappings":"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","file":"chunk-DIXECPWU.js","sourcesContent":["import { apiCaller } from \"../../services/apiCaller\";\r\nimport { API } from \"../../services/services\";\r\nimport {\r\n setInfo,\r\n setIsFetchDetails,\r\n setIsValidAddress,\r\n setSelectedSubtitle,\r\n} from \"../slices/videoDataSlice\";\r\nimport store from \"../store\";\r\nimport {\r\n addUuidToSrc,\r\n getUUID,\r\n responseValidator,\r\n weighted_random,\r\n} from \"../../helpers\";\r\nimport axios from \"axios\";\r\nimport { handleDetailsConfig } from \"../../getDetailsConfigs\";\r\nimport { subtitleLog } from \"../../logs/logs\";\r\nimport { sendFluentLog } from \"../../logs/fluentdLogger\";\r\nimport { mainPlayerVideoTag } from \"../../constants\";\r\nimport { setDetailsMiniPlayer } from \"../slices/miniPlayerSlice\";\r\n\r\nconst videoViewCount = (contentId: number) =>\r\n apiCaller({ url: API().viewCount(contentId), data: { uuid: getUUID() } });\r\n\r\nexport const getVodDetails = async (videoId?: string) => {\r\n const dispatch = store.dispatch;\r\n try {\r\n const d = await apiCaller({ ...handleDetailsConfig(videoId) });\r\n if (responseValidator(d.status)) {\r\n await axios.head(\r\n \"https://\" + weighted_random(d.data.hls_links) + d.data.path\r\n );\r\n if (videoId) return dispatch(setDetailsMiniPlayer(d.data));\r\n videoViewCount(d.data.content_id!);\r\n detailSetter(d.data);\r\n } else\r\n throw new Error(JSON.stringify({ status: d.status, message: d.data }));\r\n } catch (error: any) {\r\n dispatch(setIsFetchDetails(true));\r\n dispatch(setIsValidAddress(false));\r\n }\r\n};\r\n\r\nexport const detailSetter = (data: any) => {\r\n const dispatch = store.dispatch;\r\n const paramsSubtitle = store.getState().videoData.params.subtitleUrl;\r\n dispatch(\r\n setInfo({\r\n ...data,\r\n subtitles: paramsSubtitle\r\n ? [{ id: 1, lang: \"fa\", url: paramsSubtitle }]\r\n : data.subtitles,\r\n stream_link:\r\n !!data.stream_link &&\r\n addUuidToSrc(\"https://\" + weighted_random(data.hls_links) + data.path),\r\n })\r\n );\r\n dispatch(setIsFetchDetails(true));\r\n dispatch(setIsValidAddress(true));\r\n};\r\n\r\nexport const handleSubtitle = () => {\r\n const dispatch = store.dispatch;\r\n const { subtitles, selectedSubtitle } = store.getState().videoData;\r\n\r\n const faSubtitle: any = subtitles.find(\r\n (subtitle: any) => subtitle.language === \"fa\"\r\n );\r\n if (selectedSubtitle) {\r\n Object.values(mainPlayerVideoTag().textTracks).find(\r\n (textTrack: any) => textTrack.mode === \"showing\"\r\n )!.mode = \"disabled\";\r\n dispatch(setSelectedSubtitle(undefined));\r\n sendFluentLog(subtitleLog(\"empty\"));\r\n } else {\r\n if (faSubtitle) {\r\n faSubtitle.mode = \"showing\";\r\n dispatch(setSelectedSubtitle(faSubtitle));\r\n sendFluentLog(subtitleLog(faSubtitle.language));\r\n } else {\r\n mainPlayerVideoTag().textTracks[0].mode = \"showing\";\r\n dispatch(setSelectedSubtitle(mainPlayerVideoTag().textTracks[0]));\r\n sendFluentLog(subtitleLog(mainPlayerVideoTag().textTracks[0].language));\r\n }\r\n }\r\n};\r\n","import { IDetailsConfig } from \"./interfaces/interfaces\";\r\nimport store from \"./redux/store\";\r\nimport { API } from \"./services/services\";\r\n\r\nexport const detailAPI = (id?: string) => {\r\n const { params } = store.getState().videoData;\r\n return API().vod.getVodUrl + (id ? id : params.id);\r\n};\r\n\r\nconst detailsConfig: IDetailsConfig = {\r\n url: \"\",\r\n maxRetryCount: 0,\r\n headers: {},\r\n retryPolicy: [],\r\n errorCallback: undefined\r\n};\r\n\r\nconst vodDetailsConfig = (videoId?:string) => {\r\n detailsConfig.url = detailAPI(videoId);\r\n detailsConfig.maxRetryCount = 3;\r\n detailsConfig.retryPolicy = [\r\n {\r\n codeAbove: 500,\r\n codeBelow: null,\r\n excludeCodes: [],\r\n includeCodes: [409],\r\n delay: 1,\r\n count: 3\r\n },\r\n {\r\n codeAbove: null,\r\n codeBelow: 404,\r\n excludeCodes: [403, 402, 401, 400],\r\n includeCodes: [],\r\n delay: 10,\r\n count: 6\r\n }\r\n ];\r\n return detailsConfig;\r\n};\r\n\r\n\r\nexport const handleDetailsConfig = (videoId?: string) => {\r\n vodDetailsConfig(videoId);\r\n return detailsConfig;\r\n};\r\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
'use strict';var chunkQQPMZJTF_js=require('./chunk-QQPMZJTF.js'),chunk4NMQ3GHC_js=require('./chunk-4NMQ3GHC.js'),chunkWO4IQUGO_js=require('./chunk-WO4IQUGO.js');chunkWO4IQUGO_js.e();var _=()=>{let t=chunk4NMQ3GHC_js.L.dispatch,{params:e}=chunk4NMQ3GHC_js.L.getState().videoData,a=r=>{r.requestFullScreen?r.requestFullScreen():r.mozRequestFullScreen?r.mozRequestFullScreen():r.webkitRequestFullScreen&&r.webkitRequestFullScreen();};t(chunk4NMQ3GHC_js.E()),a(document.documentElement),t(chunk4NMQ3GHC_js.h(e.fullscreen==="true"));},ue=()=>{let t=".ts",e=XMLHttpRequest.prototype.open;XMLHttpRequest.prototype.open=function(){arguments[1].endsWith(t)&&(arguments[1]=arguments[1]+"?uuid="+chunk4NMQ3GHC_js.M()),e.apply(this,arguments);};},X=(t,e)=>{let a=chunk4NMQ3GHC_js.L.dispatch;e.current=setInterval(()=>{let s=t.target.buffered.end(0)/chunk4NMQ3GHC_js.ca().duration*100;a(chunk4NMQ3GHC_js.i(s));},500);},ye=()=>{let t=chunk4NMQ3GHC_js.R("mainPlayer");return {xhrSetup:(e,a)=>{a.split("m3u8")[1]||(a=`${a}${t}`),e.open("GET",a,!0);},startLevel:-1,debug:!1,enableWorker:!0,abrBandWidthUpFactor:.7,abrBandWidthFactor:.95,backBufferLength:1/0,maxBufferLength:30,maxMaxBufferLength:60,manifestLoadPolicy:{default:{maxTimeToFirstByteMs:1/0,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4},errorRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4}}},fragLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:12e4,timeoutRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4},errorRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4}}},playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4},errorRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4}}}}},pe=()=>{let t=chunk4NMQ3GHC_js.R("miniPlayer");return {xhrSetup:(e,a)=>{a=`${a}${t}`,e.open("GET",a,!0);},startLevel:1,debug:!1,maxMaxBufferLength:60,playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:1e3,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1e3,retryDelayMs:1e3,maxRetryDelayMs:1e3}}}}},J=(t,e)=>{let a=chunk4NMQ3GHC_js.L.dispatch,r=[],s=[];t.levels.map(o=>{r.push(o.attrs.RESOLUTION.split("x")[1].trim()),s.push(o.attrs.RESOLUTION);}),t.autoLevelCapping=chunk4NMQ3GHC_js.X(s,window.innerWidth,window.innerHeight),a(chunk4NMQ3GHC_js.d(r)),["fullscreenchange","webkitfullscreenchange","mozfullscreenchange","msfullscreenchange"].forEach(o=>document.addEventListener(o,c=>{chunk4NMQ3GHC_js.$("isAutoQuality")&&(t.autoLevelCapping=chunk4NMQ3GHC_js.X(s,window.innerWidth,window.innerHeight),t.nextLevel=-1);},!1));},me=(t,e)=>{let{params:a,details:r}=chunk4NMQ3GHC_js.L.getState().videoData,s=r.stream_link;e.loadSource(s),e.on(t.Events.MANIFEST_PARSED,(o,c)=>J(e));},$=(t,e,a)=>{if(e.frag.type!=="audio"){let r=chunk4NMQ3GHC_js.L.dispatch,{settings:s}=chunk4NMQ3GHC_js.L.getState().user,{qualityLevels:o,manualQuality:c,autoQuality:f}=chunk4NMQ3GHC_js.L.getState().controller;chunk4NMQ3GHC_js.$("isAutoQuality")?chunk4NMQ3GHC_js.$("isAutoQuality")&&f===void 0?(t.nextLevel=-1,a(o[e.frag.level]),r(chunk4NMQ3GHC_js.e(e.frag.level))):chunk4NMQ3GHC_js.$("isAutoQuality")&&(a(o[e.frag.level]),f!==e.frag.level&&r(chunk4NMQ3GHC_js.e(e.frag.level))):(e.frag.level!==c&&(t.nextLevel=o[s.quality]?s.quality:-1),o[s.quality]?(r(chunk4NMQ3GHC_js.m(s.quality)),r(chunk4NMQ3GHC_js.e(void 0))):(a(o[e.frag.level]),r(chunk4NMQ3GHC_js.e(e.frag.level)),r(chunk4NMQ3GHC_js.F({...s,quality:-1}))));}},fe=t=>{let e=chunk4NMQ3GHC_js.L.dispatch,r=t.mainForwardBufferInfo?.end/chunk4NMQ3GHC_js.ca().duration*100;e(chunk4NMQ3GHC_js.i(r));},he=(t,e,a)=>{let{params:r}=chunk4NMQ3GHC_js.L.getState().videoData;r.type&&$(t,e,a);},ge=(t,e,a)=>{let{type:r}=chunk4NMQ3GHC_js.L.getState().videoData.params;r&&$(t,e,a);},xe=(t,e)=>{if(e.event!=="hlsAudioTrackLoading")return {type:"HLS_"+e.type,message:e.error.message}},Se=(t,e)=>{let a=chunk4NMQ3GHC_js.L.dispatch;t.preventDefault(),e.current=Date.now(),a(chunk4NMQ3GHC_js.g(!0));},De=(t,e)=>{let a=chunk4NMQ3GHC_js.L.dispatch;t.preventDefault(),e.current=0,a(chunk4NMQ3GHC_js.g(!0));},ve=(t,e)=>{let a=chunk4NMQ3GHC_js.L.dispatch,{videoSettings:r}=chunk4NMQ3GHC_js.L.getState().user,{params:s}=chunk4NMQ3GHC_js.L.getState().videoData;t.preventDefault(),e.current=Date.now(),a(chunk4NMQ3GHC_js.a(!0)),chunk4NMQ3GHC_js.$("hasOnPlayParams")&&s.onPlay(),chunk4NMQ3GHC_js.$("isFirstPlay")&&(chunk4NMQ3GHC_js.$("hasCurrentTimeParams")||(chunk4NMQ3GHC_js.ca().currentTime=r.time,a(chunk4NMQ3GHC_js.c(r.time))),chunk4NMQ3GHC_js.$("hasFullScreenParams")&&_(),chunk4NMQ3GHC_js.$("isFullScreen")&&chunkQQPMZJTF_js.g(),a(chunk4NMQ3GHC_js.w([Math.floor(chunk4NMQ3GHC_js.ca().currentTime)]))),chunk4NMQ3GHC_js.xa(chunk4NMQ3GHC_js.ta(!0)),a(chunk4NMQ3GHC_js.z(""));},Pe=(t,e,a,r,s,o,c,f)=>{let j=chunk4NMQ3GHC_js.L.dispatch,{autoQuality:q,canPlayVideo:z,firstPlay:G,qualityLevels:k}=chunk4NMQ3GHC_js.L.getState().controller,{settings:E}=chunk4NMQ3GHC_js.L.getState().user,I=E.quality===-1&&q?k[q]:k[E.quality],h=0;c.current&&(h=Date.now()-c.current),G&&chunk4NMQ3GHC_js.ca().played&&chunk4NMQ3GHC_js.xa(chunk4NMQ3GHC_js.ua(e.current,Date.now()-a.current,r.current-a.current,Date.now()-s.current,s)),j(chunk4NMQ3GHC_js.j(!1)),z&&h>0&&I!==void 0&&(o.current=h,c.current=0,chunk4NMQ3GHC_js.xa(chunk4NMQ3GHC_js.va(h,I,s,t,f.current)),t.current=t.current+1,s.current=Date.now());},Te=t=>{let e=chunk4NMQ3GHC_js.L.dispatch,{params:a}=chunk4NMQ3GHC_js.L.getState().videoData;t.preventDefault(),chunk4NMQ3GHC_js.xa(chunk4NMQ3GHC_js.ta(!1)),e(chunk4NMQ3GHC_js.a(!1)),chunk4NMQ3GHC_js.$("hasOnPauseParams")&&a.onPause();},Le=t=>{let e=chunk4NMQ3GHC_js.L.dispatch,{selectedSubtitle:a}=chunk4NMQ3GHC_js.L.getState().videoData;t.preventDefault(),e(chunk4NMQ3GHC_js.c(t.target.currentTime)),chunk4NMQ3GHC_js.$("hasActiveCue")&&e(chunk4NMQ3GHC_js.z(a.activeCues[0].text));},Me=t=>{let e=chunk4NMQ3GHC_js.L.dispatch,{settings:a}=chunk4NMQ3GHC_js.L.getState().user;if(t.preventDefault(),e(chunk4NMQ3GHC_js.g(!1)),e(chunk4NMQ3GHC_js.n(!0)),chunk4NMQ3GHC_js.ca().volume=a.volume/100,e(chunk4NMQ3GHC_js.b(t.target.duration)),chunk4NMQ3GHC_js.$("isIOS")){let r=Object.values(t.target.textTracks);r&&r.length&&e(chunk4NMQ3GHC_js.y(Object.values(r[0]).length?r:[]));}else e(chunk4NMQ3GHC_js.y(Object.values(t.target.textTracks)));},Fe=t=>{let e=chunk4NMQ3GHC_js.L.dispatch,{params:a}=chunk4NMQ3GHC_js.L.getState().videoData;t.preventDefault(),e(chunk4NMQ3GHC_js.p(!0)),e(chunk4NMQ3GHC_js.f(!0)),chunkQQPMZJTF_js.i(chunk4NMQ3GHC_js.ca().duration),chunk4NMQ3GHC_js.$("hasOnFinishedParams")&&a.onFinished();},Ve=(t,e)=>{let a=chunk4NMQ3GHC_js.L.dispatch;chunk4NMQ3GHC_js.L.getState().videoData;t.preventDefault(),e.current=Date.now(),a(chunk4NMQ3GHC_js.j(!1));},Re=()=>{let t=chunk4NMQ3GHC_js.L.dispatch;t(chunk4NMQ3GHC_js.g(!1));},be=t=>{let e=chunk4NMQ3GHC_js.L.dispatch;t.preventDefault(),e(chunk4NMQ3GHC_js.c(t.target.currentTime));},we=()=>{let t=chunk4NMQ3GHC_js.L.dispatch,{params:e}=chunk4NMQ3GHC_js.L.getState().videoData;t(chunk4NMQ3GHC_js.p(!0)),t(chunk4NMQ3GHC_js.f(!0)),chunk4NMQ3GHC_js.$("hasOnFinishedParams")&&e.onFinished();},qe=t=>{let e=chunk4NMQ3GHC_js.L.dispatch;t.preventDefault(),e(chunk4NMQ3GHC_js.a(!1));},ke=(t,e)=>{let a=chunk4NMQ3GHC_js.L.dispatch;t.preventDefault(),a(chunk4NMQ3GHC_js.a(!0)),e.current=Date.now(),chunk4NMQ3GHC_js.$("isFirstPlay")&&chunk4NMQ3GHC_js.$("hasFullScreenParams")&&(_(),chunk4NMQ3GHC_js.$("isFullScreen")&&chunkQQPMZJTF_js.g());},Ee=(t,e,a)=>{let r=chunk4NMQ3GHC_js.L.dispatch,{firstPlay:s}=chunk4NMQ3GHC_js.L.getState().controller;r(chunk4NMQ3GHC_js.g(!1)),s&&chunk4NMQ3GHC_js.ca().played&&chunk4NMQ3GHC_js.xa(chunk4NMQ3GHC_js.ua(Math.round(t.current),Date.now()-e.current,0,Date.now()-a.current,a)),r(chunk4NMQ3GHC_js.j(!1));},Ie=t=>{let e=chunk4NMQ3GHC_js.L.dispatch;t.preventDefault(),e(chunk4NMQ3GHC_js.c(t.target.currentTime)),e(chunk4NMQ3GHC_js.b(t.target.duration));},Oe=t=>{let e=chunk4NMQ3GHC_js.L.dispatch;t.preventDefault(),e(chunk4NMQ3GHC_js.g(!1)),e(chunk4NMQ3GHC_js.n(!0));},Be=(t,e)=>{t.preventDefault(),X(t,e);};var Ce=async t=>{let{stream_link:e}=chunk4NMQ3GHC_js.L.getState().miniPlayer.details;t.loadSource(e);},Ae=t=>{chunkQQPMZJTF_js.i(chunk4NMQ3GHC_js.ca().currentTime);};exports.A=Be;exports.B=Ce;exports.C=Ae;exports.a=ue;exports.b=ye;exports.c=pe;exports.d=J;exports.e=me;exports.f=fe;exports.g=he;exports.h=ge;exports.i=xe;exports.j=Se;exports.k=De;exports.l=ve;exports.m=Pe;exports.n=Te;exports.o=Le;exports.p=Me;exports.q=Fe;exports.r=Ve;exports.s=Re;exports.t=be;exports.u=we;exports.v=qe;exports.w=ke;exports.x=Ee;exports.y=Ie;exports.z=Oe;//# sourceMappingURL=chunk-K2JCFZE7.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-K2JCFZE7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/playerCore.actions.ts"],"names":["init_cjs_shims","handleAutoFullScreen","dispatch","store_default","params","launchFullScreen","element","setClearPopoversSlice","setIsFullScreen","appendQueryParamsToChunksIOS","fragmentExtension","originalOpen","getUUID","handleBufferedTime","event","intervalRef","bufferedTimeWidth","mainPlayerVideoTag","setBufferedTimeWidth","handleHlsConfig","streamLinkParams","splitQueryParamsFromStreamLink","xhr","url","handleMiniPlayerHlsConfig","handleManifestParsed","hls","data","qualityLevels","resolutions","level","highestResolutionSupported","setQualityLevels","eventType","conditions","handleMediaAttached","Hls","details","streamLink","handleLevels","setQualityLevel","settings","manualQuality","autoQuality","setAutoQuality","setManualQuality","setUserSettings","handleFragBuffered","handleFragChanged","handleFragParsed","type","handleHlsErrors","handleVideoWaiting","waitingTimerRef","setIsLoading","handleVideoSeeking","handleVideoPlay","timerRef","videoSettings","setPlay","setCurrentTime","handleLockOrientation","setVideoTimelines","sendFluentLog","pausePlayLog","setSubtitleText","handleVideoPlaying","loadingCounterRef","loadingDurationRef","initialWaitingDurationRef","bannerLoadingDurationRef","waitingDurationRef","videoEntranceTimeRef","canPlayVideo","firstPlay","qualityLevel","waitingDuration","initLog","setFirstPlay","loadingLog","handleVideoPause","handleVideoTimeUpdate","selectedSubtitle","handleVideoCanPlay","setCanPlayVideo","setDuration","subtitle","setSubtitles","handleVideoEnded","setIsEnded","setActiveElements","handleVideoTimeline","handleIosVideoPlay","handleIosVideoPlaying","handleIosVideoTimeUpdate","handleIosVideoEnded","handleStaticVideoPause","handleStaticVideoPlay","handleStaticVideoPlaying","handleStaticVideoTimeUpdate","handleStaticVideoCanPlay","handleStaticVideoLoadedData","handleMiniPlayerMediaAttached","stream_link","handleVideoVisibilityChange"],"mappings":"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","file":"chunk-K2JCFZE7.js","sourcesContent":["import { conditions } from \"../../conditions/conditions\";\r\nimport { mainPlayerVideoTag } from \"../../constants\";\r\nimport {\r\n getUUID,\r\n highestResolutionSupported,\r\n splitQueryParamsFromStreamLink,\r\n} from \"../../helpers\";\r\nimport { ConditionName } from \"../../interfaces/enums\";\r\nimport { sendFluentLog } from \"../../logs/fluentdLogger\";\r\nimport { initLog, loadingLog, pausePlayLog } from \"../../logs/logs\";\r\nimport {\r\n setActiveElements,\r\n setAutoQuality,\r\n setBufferedTimeWidth,\r\n setCanPlayVideo,\r\n setCurrentTime,\r\n setDuration,\r\n setFirstPlay,\r\n setIsEnded,\r\n setIsFullScreen,\r\n setIsLoading,\r\n setManualQuality,\r\n setPlay,\r\n setQualityLevels,\r\n} from \"../slices/controllerSlice\";\r\nimport { setClearPopoversSlice } from \"../slices/popoversSlice\";\r\nimport { setUserSettings } from \"../slices/userSlice\";\r\nimport {\r\n setSubtitleText,\r\n setSubtitles,\r\n setVideoTimelines,\r\n} from \"../slices/videoDataSlice\";\r\nimport store from \"../store\";\r\nimport {\r\n handleLockOrientation,\r\n handleVideoTimeline,\r\n} from \"./controller.actions\";\r\n\r\nexport const handleAutoFullScreen = () => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n const launchFullScreen = (element: any) => {\r\n if (element.requestFullScreen) element.requestFullScreen();\r\n else if (element.mozRequestFullScreen) element.mozRequestFullScreen();\r\n else if (element.webkitRequestFullScreen) element.webkitRequestFullScreen();\r\n };\r\n dispatch(setClearPopoversSlice());\r\n launchFullScreen(document.documentElement);\r\n dispatch(setIsFullScreen(params.fullscreen === \"true\"));\r\n};\r\n\r\nexport const appendQueryParamsToChunksIOS = () => {\r\n let fragmentExtension = \".ts\";\r\n let originalOpen = XMLHttpRequest.prototype.open;\r\n XMLHttpRequest.prototype.open = function () {\r\n if (arguments[1].endsWith(fragmentExtension))\r\n arguments[1] = arguments[1] + \"?uuid=\" + getUUID!();\r\n originalOpen.apply(this, arguments as any);\r\n };\r\n};\r\n\r\nexport const handleBufferedTime = (event: any, intervalRef: any) => {\r\n const dispatch = store.dispatch;\r\n intervalRef.current = setInterval(() => {\r\n const bufferedTime = event.target.buffered.end(0);\r\n const bufferedTimeWidth =\r\n (bufferedTime / mainPlayerVideoTag().duration) * 100;\r\n dispatch(setBufferedTimeWidth(bufferedTimeWidth));\r\n }, 500);\r\n};\r\n\r\n// ************* Hls Config Handlers ************* //\r\nexport const handleHlsConfig = () => {\r\n const streamLinkParams = splitQueryParamsFromStreamLink(\"mainPlayer\");\r\n return {\r\n xhrSetup: (xhr: any, url: any) => {\r\n if (!url.split(\"m3u8\")[1]) url = `${url}${streamLinkParams}`;\r\n xhr.open(\"GET\", url, true);\r\n },\r\n startLevel: -1,\r\n debug: false,\r\n enableWorker: true,\r\n abrBandWidthUpFactor: 0.7,\r\n abrBandWidthFactor: 0.95,\r\n backBufferLength: Infinity,\r\n maxBufferLength: 30,\r\n maxMaxBufferLength: 60,\r\n manifestLoadPolicy: {\r\n default: {\r\n maxTimeToFirstByteMs: Infinity,\r\n maxLoadTimeMs: 20000,\r\n timeoutRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n errorRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n },\r\n },\r\n fragLoadPolicy: {\r\n default: {\r\n maxTimeToFirstByteMs: 10000,\r\n maxLoadTimeMs: 120000,\r\n timeoutRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n errorRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n },\r\n },\r\n playlistLoadPolicy: {\r\n default: {\r\n maxTimeToFirstByteMs: 10000,\r\n maxLoadTimeMs: 20000,\r\n timeoutRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n errorRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n },\r\n },\r\n };\r\n};\r\n\r\nexport const handleMiniPlayerHlsConfig = () => {\r\n const streamLinkParams = splitQueryParamsFromStreamLink(\"miniPlayer\");\r\n return {\r\n xhrSetup: (xhr: any, url: any) => {\r\n url = `${url}${streamLinkParams}`;\r\n xhr.open(\"GET\", url, true);\r\n },\r\n startLevel: 1,\r\n debug: false,\r\n maxMaxBufferLength: 60,\r\n playlistLoadPolicy: {\r\n default: {\r\n maxTimeToFirstByteMs: 10000,\r\n maxLoadTimeMs: 20000,\r\n timeoutRetry: {\r\n maxNumRetry: 1000,\r\n retryDelayMs: 0,\r\n maxRetryDelayMs: 0,\r\n },\r\n errorRetry: {\r\n maxNumRetry: 1000,\r\n retryDelayMs: 1000,\r\n maxRetryDelayMs: 1000,\r\n },\r\n },\r\n },\r\n };\r\n};\r\n\r\n// ************* Manifest Handlers ************* //\r\n\r\nexport const handleManifestParsed = (hls: any, data: any) => {\r\n const dispatch = store.dispatch;\r\n let qualityLevels: any[] = [];\r\n let resolutions: any[] = [];\r\n hls.levels.map((level: any) => {\r\n qualityLevels.push(level.attrs.RESOLUTION!.split(\"x\")[1].trim());\r\n resolutions.push(level.attrs.RESOLUTION!);\r\n });\r\n hls.autoLevelCapping = highestResolutionSupported(\r\n resolutions,\r\n window.innerWidth,\r\n window.innerHeight\r\n );\r\n dispatch(setQualityLevels(qualityLevels));\r\n [\r\n \"fullscreenchange\",\r\n \"webkitfullscreenchange\",\r\n \"mozfullscreenchange\",\r\n \"msfullscreenchange\",\r\n ].forEach((eventType) =>\r\n document.addEventListener(\r\n eventType,\r\n (event: any) => {\r\n if (conditions(ConditionName.isAutoQuality)) {\r\n hls.autoLevelCapping = highestResolutionSupported(\r\n resolutions,\r\n window.innerWidth,\r\n window.innerHeight\r\n );\r\n hls.nextLevel = -1;\r\n }\r\n },\r\n false\r\n )\r\n );\r\n};\r\n\r\nexport const handleMediaAttached = (Hls: any, hls: any) => {\r\n const { params, details } = store.getState().videoData;\r\n let streamLink = details.stream_link;\r\n hls.loadSource(streamLink);\r\n hls.on(Hls.Events.MANIFEST_PARSED, (event: any, data: any) =>\r\n handleManifestParsed(hls, data)\r\n );\r\n};\r\n\r\n// ************* Level Handlers ************* //\r\n\r\nexport const handleLevels = (hls: any, data: any, setQualityLevel: any) => {\r\n if (data.frag.type !== \"audio\") {\r\n const dispatch = store.dispatch;\r\n const { settings } = store.getState().user;\r\n const { qualityLevels, manualQuality, autoQuality } =\r\n store.getState().controller;\r\n if (!conditions(ConditionName.isAutoQuality)) {\r\n if (data.frag.level !== manualQuality)\r\n hls.nextLevel = qualityLevels[settings.quality!]\r\n ? settings.quality\r\n : -1;\r\n if (qualityLevels[settings.quality!]) {\r\n dispatch(setManualQuality(settings.quality!));\r\n dispatch(setAutoQuality(undefined));\r\n } else {\r\n setQualityLevel(qualityLevels[data.frag.level]);\r\n dispatch(setAutoQuality(data.frag.level));\r\n dispatch(setUserSettings({ ...settings, quality: -1 }));\r\n }\r\n } else if (\r\n conditions(ConditionName.isAutoQuality) &&\r\n autoQuality === undefined\r\n ) {\r\n hls.nextLevel = -1;\r\n setQualityLevel(qualityLevels[data.frag.level]);\r\n dispatch(setAutoQuality(data.frag.level));\r\n } else if (conditions(ConditionName.isAutoQuality)) {\r\n setQualityLevel(qualityLevels[data.frag.level]);\r\n if (autoQuality !== data.frag.level)\r\n dispatch(setAutoQuality(data.frag.level));\r\n }\r\n }\r\n};\r\n\r\n// ************* Fragment Handlers ************* //\r\n\r\nexport const handleFragBuffered = (hls: any) => {\r\n const dispatch = store.dispatch;\r\n const bufferedTime = hls.mainForwardBufferInfo?.end;\r\n const bufferedTimeWidth =\r\n (bufferedTime! / mainPlayerVideoTag().duration) * 100;\r\n dispatch(setBufferedTimeWidth(bufferedTimeWidth));\r\n};\r\n\r\nexport const handleFragChanged = (\r\n hls: any,\r\n data: any,\r\n setQualityLevel: any\r\n) => {\r\n const { params } = store.getState().videoData;\r\n\r\n if (params.type) handleLevels(hls, data, setQualityLevel);\r\n};\r\n\r\nexport const handleFragParsed = (hls: any, data: any, setQualityLevel: any) => {\r\n const { type } = store.getState().videoData.params;\r\n if (type) handleLevels(hls, data, setQualityLevel);\r\n};\r\n\r\n// ************* HLS Error Handlers ************* //\r\n\r\nexport const handleHlsErrors = (Hls: any, data: any) => {\r\n if (data.event !== \"hlsAudioTrackLoading\")\r\n return { type: \"HLS_\" + data.type, message: data.error.message };\r\n return undefined;\r\n};\r\n\r\n// ************* Video Tag Handlers ************* //\r\n\r\nexport const handleVideoWaiting = (event: any, waitingTimerRef: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n waitingTimerRef.current = Date.now();\r\n dispatch(setIsLoading(true));\r\n};\r\n\r\nexport const handleVideoSeeking = (event: any, waitingTimerRef: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n waitingTimerRef.current = 0;\r\n dispatch(setIsLoading(true));\r\n};\r\n\r\nexport const handleVideoPlay = (event: any, timerRef: any) => {\r\n const dispatch = store.dispatch;\r\n const { videoSettings } = store.getState().user;\r\n const { params } = store.getState().videoData;\r\n event.preventDefault();\r\n timerRef.current = Date.now();\r\n dispatch(setPlay(true));\r\n if (conditions(ConditionName.hasOnPlayParams)) params.onPlay!();\r\n if (conditions(ConditionName.isFirstPlay)) {\r\n if(!conditions(ConditionName.hasCurrentTimeParams)) {\r\n mainPlayerVideoTag().currentTime = videoSettings.time;\r\n dispatch(setCurrentTime(videoSettings.time));\r\n }\r\n if (conditions(ConditionName.hasFullScreenParams)) handleAutoFullScreen();\r\n if (conditions(ConditionName.isFullScreen)) handleLockOrientation();\r\n dispatch(setVideoTimelines([Math.floor(mainPlayerVideoTag().currentTime)]));\r\n }\r\n sendFluentLog(pausePlayLog(true));\r\n dispatch(setSubtitleText(\"\"));\r\n};\r\n\r\nexport const handleVideoPlaying = (\r\n loadingCounterRef: any,\r\n loadingDurationRef: any,\r\n initialWaitingDurationRef: any,\r\n bannerLoadingDurationRef: any,\r\n timerRef: any,\r\n waitingDurationRef: any,\r\n waitingTimerRef: any,\r\n videoEntranceTimeRef: any\r\n) => {\r\n const dispatch = store.dispatch;\r\n const { autoQuality, canPlayVideo, firstPlay, qualityLevels } =\r\n store.getState().controller;\r\n const { settings } = store.getState().user;\r\n const qualityLevel =\r\n settings.quality === -1 && autoQuality\r\n ? qualityLevels[autoQuality]\r\n : qualityLevels[settings.quality!];\r\n let waitingDuration = 0;\r\n if (!!waitingTimerRef.current)\r\n waitingDuration = Date.now() - waitingTimerRef.current;\r\n if (firstPlay && !!mainPlayerVideoTag().played)\r\n sendFluentLog(\r\n initLog(\r\n loadingDurationRef.current,\r\n Date.now() - initialWaitingDurationRef.current,\r\n bannerLoadingDurationRef.current - initialWaitingDurationRef.current,\r\n Date.now() - timerRef.current,\r\n timerRef\r\n )\r\n );\r\n dispatch(setFirstPlay(false));\r\n if (canPlayVideo && waitingDuration > 0 && qualityLevel !== undefined) {\r\n waitingDurationRef.current = waitingDuration;\r\n waitingTimerRef.current = 0;\r\n sendFluentLog(\r\n loadingLog(\r\n waitingDuration,\r\n qualityLevel,\r\n timerRef,\r\n loadingCounterRef,\r\n videoEntranceTimeRef.current\r\n )\r\n );\r\n loadingCounterRef.current = loadingCounterRef.current + 1;\r\n timerRef.current = Date.now();\r\n }\r\n};\r\n\r\nexport const handleVideoPause = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n event.preventDefault();\r\n sendFluentLog(pausePlayLog(false));\r\n dispatch(setPlay(false));\r\n if (conditions(ConditionName.hasOnPauseParams)) params.onPause!();\r\n};\r\n\r\nexport const handleVideoTimeUpdate = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { selectedSubtitle } = store.getState().videoData;\r\n event.preventDefault();\r\n dispatch(setCurrentTime(event.target.currentTime));\r\n if (conditions(ConditionName.hasActiveCue))\r\n dispatch(setSubtitleText((selectedSubtitle!.activeCues![0] as any).text));\r\n};\r\n\r\nexport const handleVideoCanPlay = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { settings } = store.getState().user;\r\n event.preventDefault();\r\n dispatch(setIsLoading(false));\r\n dispatch(setCanPlayVideo(true));\r\n mainPlayerVideoTag().volume = settings.volume / 100;\r\n dispatch(setDuration(event.target.duration));\r\n if (conditions(ConditionName.isIOS)) {\r\n const subtitle: TextTrack[] = Object.values(event.target.textTracks);\r\n if (!!subtitle && subtitle.length)\r\n dispatch(\r\n setSubtitles(!!Object.values(subtitle[0]).length ? subtitle : [])\r\n );\r\n } else dispatch(setSubtitles(Object.values(event.target.textTracks)));\r\n};\r\n\r\nexport const handleVideoEnded = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n event.preventDefault();\r\n dispatch(setIsEnded(true));\r\n dispatch(setActiveElements(true));\r\n handleVideoTimeline(mainPlayerVideoTag().duration);\r\n if (conditions(ConditionName.hasOnFinishedParams)) params.onFinished!();\r\n};\r\n\r\n// ************* IOS Video Tag Handlers ************* //\r\n\r\nexport const handleIosVideoPlay = (event: any, timerRef: any) => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n event.preventDefault();\r\n timerRef.current = Date.now();\r\n dispatch(setFirstPlay(false));\r\n};\r\n\r\nexport const handleIosVideoPlaying = () => {\r\n const dispatch = store.dispatch;\r\n dispatch(setIsLoading(false));\r\n};\r\n\r\nexport const handleIosVideoTimeUpdate = (event: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setCurrentTime(event.target.currentTime));\r\n};\r\n\r\nexport const handleIosVideoEnded = () => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n dispatch(setIsEnded(true));\r\n dispatch(setActiveElements(true));\r\n if (conditions(ConditionName.hasOnFinishedParams)) params.onFinished!();\r\n};\r\n\r\n// ************* Static Video Tag Handlers ************* //\r\n\r\nexport const handleStaticVideoPause = (event: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setPlay(false));\r\n};\r\n\r\nexport const handleStaticVideoPlay = (event: any, timerRef: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setPlay(true));\r\n timerRef.current = Date.now();\r\n\r\n if (conditions(ConditionName.isFirstPlay) && conditions(ConditionName.hasFullScreenParams)) {\r\n handleAutoFullScreen();\r\n if (conditions(ConditionName.isFullScreen)) handleLockOrientation();\r\n }\r\n\r\n\r\n};\r\n\r\nexport const handleStaticVideoPlaying = (\r\n loadingDurationRef: any,\r\n initialWaitingDurationRef: any,\r\n timerRef: any\r\n) => {\r\n const dispatch = store.dispatch;\r\n const { firstPlay } = store.getState().controller;\r\n dispatch(setIsLoading(false));\r\n if (firstPlay && !!mainPlayerVideoTag().played)\r\n sendFluentLog(\r\n initLog(\r\n Math.round(loadingDurationRef.current),\r\n Date.now() - initialWaitingDurationRef.current,\r\n 0,\r\n Date.now() - timerRef.current,\r\n timerRef\r\n )\r\n );\r\n dispatch(setFirstPlay(false));\r\n};\r\n\r\nexport const handleStaticVideoTimeUpdate = (event: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setCurrentTime(event.target.currentTime));\r\n dispatch(setDuration(event.target.duration));\r\n};\r\n\r\nexport const handleStaticVideoCanPlay = (event: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setIsLoading(false));\r\n dispatch(setCanPlayVideo(true));\r\n};\r\n\r\nexport const handleStaticVideoLoadedData = (event: any, intervalRef: any) => {\r\n event.preventDefault();\r\n handleBufferedTime(event, intervalRef);\r\n};\r\n\r\nexport const handleStaticVideoEnded = (event: any) => {\r\n const { params } = store.getState().videoData;\r\n if (conditions(ConditionName.hasOnFinishedParams)) params.onFinished!();\r\n event.preventDefault();\r\n};\r\n\r\nexport const handleMiniPlayerMediaAttached = async (hls: any) => {\r\n const { stream_link } = store.getState().miniPlayer.details;\r\n hls.loadSource(stream_link);\r\n};\r\n\r\nexport const handleVideoVisibilityChange = (hls: any) => {\r\n handleVideoTimeline(mainPlayerVideoTag().currentTime);\r\n};\r\n"]}
|