cafe-video-player 2.0.20 → 2.0.22
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-6U6VETTV.mjs +2 -0
- package/{backwardForward-DYH6PHWL.mjs.map → backwardForward-6U6VETTV.mjs.map} +1 -1
- package/backwardForward-FW25LAUC.js +2 -0
- package/{backwardForward-E4S6FLOP.js.map → backwardForward-FW25LAUC.js.map} +1 -1
- package/{chunk-GOYUBLGM.mjs → chunk-3ZNIRSH3.mjs} +2 -2
- package/{chunk-GOYUBLGM.mjs.map → chunk-3ZNIRSH3.mjs.map} +1 -1
- package/chunk-4AXKM55A.js +2 -0
- package/{chunk-6KVFRDGD.js.map → chunk-4AXKM55A.js.map} +1 -1
- package/chunk-7CZEUDNW.mjs +3 -0
- package/chunk-7CZEUDNW.mjs.map +1 -0
- package/chunk-AJG5T24R.js +2 -0
- package/{chunk-FK3W2MAI.js.map → chunk-AJG5T24R.js.map} +1 -1
- package/{chunk-DYF7EM6B.mjs → chunk-DJJDQIWK.mjs} +5 -5
- package/chunk-DJJDQIWK.mjs.map +1 -0
- package/{chunk-47O2V3XF.mjs → chunk-ELG5PCR2.mjs} +2 -2
- package/{chunk-47O2V3XF.mjs.map → chunk-ELG5PCR2.mjs.map} +1 -1
- package/chunk-J7CRSGHN.js +2 -0
- package/{chunk-JWDZJC6T.js.map → chunk-J7CRSGHN.js.map} +1 -1
- package/{chunk-6RMNLQH2.js → chunk-KODWZOFT.js} +3 -3
- package/chunk-KODWZOFT.js.map +1 -0
- package/{chunk-GX3CDH5D.js → chunk-LAFBWF7M.js} +2 -2
- package/{chunk-GX3CDH5D.js.map → chunk-LAFBWF7M.js.map} +1 -1
- package/{chunk-HBZI4GO4.mjs → chunk-LHO7HY26.mjs} +3 -3
- package/chunk-LHO7HY26.mjs.map +1 -0
- package/{chunk-4LA4EUKN.mjs → chunk-NFS5ZBFX.mjs} +2 -2
- package/{chunk-4LA4EUKN.mjs.map → chunk-NFS5ZBFX.mjs.map} +1 -1
- package/{chunk-KRKIL4DM.js → chunk-NTINJ2J6.js} +2 -2
- package/{chunk-KRKIL4DM.js.map → chunk-NTINJ2J6.js.map} +1 -1
- package/{chunk-E3XZC6EZ.mjs → chunk-P6UV7U4E.mjs} +2 -2
- package/{chunk-E3XZC6EZ.mjs.map → chunk-P6UV7U4E.mjs.map} +1 -1
- package/{chunk-IWXS6HSK.mjs → chunk-R65WA2TV.mjs} +2 -2
- package/{chunk-IWXS6HSK.mjs.map → chunk-R65WA2TV.mjs.map} +1 -1
- package/chunk-S3ULKQPB.js +3 -0
- package/chunk-S3ULKQPB.js.map +1 -0
- package/chunk-TOLFOV7Z.js +9 -0
- package/chunk-TOLFOV7Z.js.map +1 -0
- package/index.js +1 -1
- package/index.mjs +1 -1
- package/nonStaticVideoTag-6IOIANAD.js +2 -0
- package/{nonStaticVideoTag-RFEJFQEN.js.map → nonStaticVideoTag-6IOIANAD.js.map} +1 -1
- package/{nonStaticVideoTag-KPO4CJIG.mjs → nonStaticVideoTag-JKZGTEQK.mjs} +2 -2
- package/{nonStaticVideoTag-KPO4CJIG.mjs.map → nonStaticVideoTag-JKZGTEQK.mjs.map} +1 -1
- package/package.json +1 -1
- package/staticPlayer-RFUJNR5C.mjs +2 -0
- package/{staticPlayer-CKX436BV.mjs.map → staticPlayer-RFUJNR5C.mjs.map} +1 -1
- package/staticPlayer-TLZMTTVV.js +2 -0
- package/{staticPlayer-PT7456TV.js.map → staticPlayer-TLZMTTVV.js.map} +1 -1
- package/staticVideoTag-4I2J2KRA.js +2 -0
- package/{staticVideoTag-CYVERXTD.js.map → staticVideoTag-4I2J2KRA.js.map} +1 -1
- package/{staticVideoTag-DVDX4WWE.mjs → staticVideoTag-GJF26BZ3.mjs} +2 -2
- package/{staticVideoTag-DVDX4WWE.mjs.map → staticVideoTag-GJF26BZ3.mjs.map} +1 -1
- package/{touchVolumeBrightness-VFNRQZOL.js → touchVolumeBrightness-77BH7B3T.js} +3 -3
- package/{touchVolumeBrightness-VFNRQZOL.js.map → touchVolumeBrightness-77BH7B3T.js.map} +1 -1
- package/{touchVolumeBrightness-Q4LQIIPO.mjs → touchVolumeBrightness-VSJS4WWO.mjs} +3 -3
- package/{touchVolumeBrightness-Q4LQIIPO.mjs.map → touchVolumeBrightness-VSJS4WWO.mjs.map} +1 -1
- package/videoArea-F2H74LD6.js +2 -0
- package/{videoArea-XNMWP7T4.js.map → videoArea-F2H74LD6.js.map} +1 -1
- package/videoArea-M2EQDHM2.mjs +2 -0
- package/{videoArea-NWBI3JOB.mjs.map → videoArea-M2EQDHM2.mjs.map} +1 -1
- package/vodPlayer-FK2KWGRR.js +2 -0
- package/{vodPlayer-57SJHXNJ.js.map → vodPlayer-FK2KWGRR.js.map} +1 -1
- package/{vodPlayer-LDSIA3V5.mjs → vodPlayer-UJEWVDLB.mjs} +2 -2
- package/{vodPlayer-LDSIA3V5.mjs.map → vodPlayer-UJEWVDLB.mjs.map} +1 -1
- package/backwardForward-DYH6PHWL.mjs +0 -2
- package/backwardForward-E4S6FLOP.js +0 -2
- package/chunk-3MU2SHHL.js +0 -9
- package/chunk-3MU2SHHL.js.map +0 -1
- package/chunk-6KVFRDGD.js +0 -2
- package/chunk-6RMNLQH2.js.map +0 -1
- package/chunk-7OLT67MH.js +0 -3
- package/chunk-7OLT67MH.js.map +0 -1
- package/chunk-DYF7EM6B.mjs.map +0 -1
- package/chunk-FK3W2MAI.js +0 -2
- package/chunk-GQDNBNXB.mjs +0 -3
- package/chunk-GQDNBNXB.mjs.map +0 -1
- package/chunk-HBZI4GO4.mjs.map +0 -1
- package/chunk-JWDZJC6T.js +0 -2
- package/nonStaticVideoTag-RFEJFQEN.js +0 -2
- package/staticPlayer-CKX436BV.mjs +0 -2
- package/staticPlayer-PT7456TV.js +0 -2
- package/staticVideoTag-CYVERXTD.js +0 -2
- package/videoArea-NWBI3JOB.mjs +0 -2
- package/videoArea-XNMWP7T4.js +0 -2
- package/vodPlayer-57SJHXNJ.js +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"backwardForward-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"backwardForward-6U6VETTV.mjs"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
'use strict';var chunkLAFBWF7M_js=require('./chunk-LAFBWF7M.js');require('./chunk-4AXKM55A.js'),require('./chunk-KODWZOFT.js'),require('./chunk-DQNYU4AM.js'),require('./chunk-WO4IQUGO.js');module.exports=chunkLAFBWF7M_js.a;//# sourceMappingURL=backwardForward-FW25LAUC.js.map
|
|
2
|
+
//# sourceMappingURL=backwardForward-FW25LAUC.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"backwardForward-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"backwardForward-FW25LAUC.js"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {M,fa,H}from'./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import {M,fa,H}from'./chunk-LHO7HY26.mjs';import {e}from'./chunk-DBPGS72Q.mjs';e();var f=()=>{let{params:r}=M.getState().videoData,t=fa().currentTime;if(t!==0){let d=fa().duration,i={video_id:+r.id,video_type:2,time:t===d?0:Math.floor(fa().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=M.dispatch,{params:t}=M.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(H({time:o.time}));}};export{f as a,g as b};//# sourceMappingURL=chunk-3ZNIRSH3.mjs.map
|
|
2
|
+
//# sourceMappingURL=chunk-3ZNIRSH3.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-3ZNIRSH3.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,2 @@
|
|
|
1
|
+
'use strict';var chunkKODWZOFT_js=require('./chunk-KODWZOFT.js'),chunkWO4IQUGO_js=require('./chunk-WO4IQUGO.js');chunkWO4IQUGO_js.e();var B=e=>{if(e===null||e.target.nodeName!=="INPUT"){let t=chunkKODWZOFT_js.M.dispatch;e!==null&&(e.stopPropagation(),e.preventDefault()),chunkKODWZOFT_js.fa().paused?chunkKODWZOFT_js.fa().play():chunkKODWZOFT_js.fa().pause(),t(chunkKODWZOFT_js.a(!chunkKODWZOFT_js.fa().paused)),chunkKODWZOFT_js.ga()&&chunkKODWZOFT_js.ga().played&&(chunkKODWZOFT_js.ga().pause(),t(chunkKODWZOFT_js.K(!1)));}},G=()=>{let e=chunkKODWZOFT_js.M.dispatch,{play:t}=chunkKODWZOFT_js.M.getState().controller;e(chunkKODWZOFT_js.a(t)),setTimeout(()=>{chunkKODWZOFT_js.fa()&&(t?chunkKODWZOFT_js.fa().play():chunkKODWZOFT_js.fa().pause());},0);},H=e=>{if(e===null||e.target.nodeName!=="INPUT"){let t=chunkKODWZOFT_js.M.dispatch;chunkKODWZOFT_js.ga().paused?chunkKODWZOFT_js.ga().play():chunkKODWZOFT_js.ga().pause(),t(chunkKODWZOFT_js.K(!chunkKODWZOFT_js.ga().paused)),chunkKODWZOFT_js.fa()&&chunkKODWZOFT_js.fa().played&&(chunkKODWZOFT_js.fa().pause(),t(chunkKODWZOFT_js.a(!1)));}};var J=e=>{let t=chunkKODWZOFT_js.M.dispatch,{settings:r}=chunkKODWZOFT_js.M.getState().user;t(chunkKODWZOFT_js.G({...r,volume:e})),chunkKODWZOFT_js.ca("isIOS")?chunkKODWZOFT_js.fa().muted=!chunkKODWZOFT_js.fa().muted:chunkKODWZOFT_js.fa().volume=e/100;},K=(e,t=15,r)=>{if(e==="touchBackward"?e="backward":e==="touchForward"&&(e="forward"),r&&r.target.nodeName==="INPUT"||e==="backward"&&chunkKODWZOFT_js.fa().currentTime<15||e==="forward"&&chunkKODWZOFT_js.fa().duration-chunkKODWZOFT_js.fa().currentTime<15)return;chunkKODWZOFT_js.la(chunkKODWZOFT_js.pa(e));let n=0;e==="backward"?t===0?n=0:n=chunkKODWZOFT_js.fa().currentTime-t:e==="forward"&&(t===chunkKODWZOFT_js.fa().duration?n=t:n=chunkKODWZOFT_js.fa().currentTime+t),chunkKODWZOFT_js.fa().currentTime=n;},w=()=>{let e=chunkKODWZOFT_js.M.dispatch,t=document.fullscreenElement;chunkKODWZOFT_js.ca("isIOS")?chunkKODWZOFT_js.fa().webkitEnterFullScreen?(e(chunkKODWZOFT_js.a(!1)),chunkKODWZOFT_js.fa().webkitEnterFullScreen()):(e(chunkKODWZOFT_js.F()),chunkKODWZOFT_js.la(chunkKODWZOFT_js.qa("fullScreen"))):t?(e(chunkKODWZOFT_js.h(!1)),document.exitFullscreen()):(e(chunkKODWZOFT_js.F()),document.documentElement.requestFullscreen(),e(chunkKODWZOFT_js.h(!0)),chunkKODWZOFT_js.la(chunkKODWZOFT_js.qa("fullScreen")));},Q=()=>{chunkKODWZOFT_js.ca("isTouchScreen")&&!chunkKODWZOFT_js.ca("isIOS")&&(chunkKODWZOFT_js.ca("isLandscape")&&!chunkKODWZOFT_js.ca("isFullScreen")?window.screen.orientation.lock("portrait"):window.screen.orientation.lock("landscape"));},W=e=>{let t=chunkKODWZOFT_js.M.dispatch;t(chunkKODWZOFT_js.o(e==="lock")),chunkKODWZOFT_js.la(chunkKODWZOFT_js.ta(e)),e==="unlock"&&localStorage.setItem("unlock-click","true");},X=(e,t)=>{if(chunkKODWZOFT_js.ca("isSendTimelineLog")){let r=chunkKODWZOFT_js.M.dispatch,{videoTimelines:n}=chunkKODWZOFT_js.M.getState().videoData,d=Math.floor(e),u=Math.floor(t);n.length===0?r(chunkKODWZOFT_js.w([d>=chunkKODWZOFT_js.fa().duration?u:d])):(n[0]<d&&chunkKODWZOFT_js.Da({url:chunkKODWZOFT_js.ka().videoTimelineLog,method:"post",data:chunkKODWZOFT_js.ua(n[0],d)}),u&&u>=chunkKODWZOFT_js.fa().duration?r(chunkKODWZOFT_js.w([])):r(chunkKODWZOFT_js.w([u])));}},Y=()=>{let e=chunkKODWZOFT_js.M.dispatch,t=document.getElementById("video-area")?.getBoundingClientRect();t.height=t.width*9/16,t&&e(chunkKODWZOFT_js.t(t));},Z=e=>{!chunkKODWZOFT_js.ca("isTouchScreen")&&e.target.nodeName!=="INPUT"&&w();};exports.a=B;exports.b=G;exports.c=H;exports.d=J;exports.e=K;exports.f=w;exports.g=Q;exports.h=W;exports.i=X;exports.j=Y;exports.k=Z;//# sourceMappingURL=chunk-4AXKM55A.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-4AXKM55A.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/controller.actions.ts"],"names":["init_cjs_shims","handlePlayPause","event","dispatch","store_default","mainPlayerVideoTag","setPlay","miniPlayerVideoTag","setPlayMiniPlayer","handlePlayPauseAfterChangeVideo","play","handlePlayerPauseMiniPlayer","handleChangeSoundVolume","volume","settings","setUserSettings","conditions","handleBackwardForward","type","forwardBackwardCount","sendFluentLog","backwardForwardLog","currentTime","handleFullScreen","isFullScreen","setClearPopoversSlice","fullscreenLog","setIsFullScreen","handleLockOrientation","handleLock","setLock","lockLog","handleVideoTimeline","currentTimeValue","movedTimeValue","videoTimelines","movedTime","setVideoTimelines","apiCaller","API","videoTimelineLog","handleVideoElementSizeInfo","element","setVideoElementSizeInfo","handleDoubleClick"],"mappings":"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","file":"chunk-6KVFRDGD.js","sourcesContent":["import { setIsFullScreen, setLock, setPlay } from \"../slices/controllerSlice\";\r\nimport store from \"../store\";\r\nimport { setVideoElementSizeInfo, setVideoTimelines } from \"../slices/videoDataSlice\";\r\nimport { ConditionName } from \"../../interfaces/enums\";\r\nimport { apiCaller } from \"../../services/apiCaller\";\r\nimport { API } from \"../../services/services\";\r\nimport { setUserSettings } from \"../slices/userSlice\";\r\nimport { setClearPopoversSlice } from \"../slices/popoversSlice\";\r\nimport { conditions } from \"../../conditions/conditions\";\r\nimport { backwardForwardLog, fullscreenLog, lockLog, videoTimelineLog } from \"../../logs/logs\";\r\nimport { sendFluentLog } from \"../../logs/fluentdLogger\";\r\nimport { mainPlayerVideoTag, miniPlayerVideoTag } from \"../../constants\";\r\nimport { setPlayMiniPlayer } from \"../slices/miniPlayerSlice\";\r\n\r\nexport const handlePlayPause = (event: any) => {\r\n if (event === null || event.target.nodeName !== \"INPUT\") {\r\n const dispatch = store.dispatch;\r\n if (event !== null) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n }\r\n mainPlayerVideoTag().paused ? mainPlayerVideoTag().play() : mainPlayerVideoTag().pause();\r\n dispatch(setPlay(!mainPlayerVideoTag().paused));\r\n if(miniPlayerVideoTag() && miniPlayerVideoTag().played) {\r\n miniPlayerVideoTag().pause();\r\n dispatch(setPlayMiniPlayer(false));\r\n }\r\n }\r\n};\r\n\r\nexport const handlePlayPauseAfterChangeVideo = () => {\r\n const dispatch = store.dispatch;\r\n const {play} = store.getState().controller;\r\n dispatch(setPlay(play));\r\n setTimeout(() => {\r\n if(mainPlayerVideoTag()) {\r\n if(play) mainPlayerVideoTag().play();\r\n else mainPlayerVideoTag().pause();\r\n }\r\n },0)\r\n}\r\n\r\nexport const handlePlayerPauseMiniPlayer = (event:any) => {\r\n if (event === null || event.target.nodeName !== \"INPUT\") {\r\n const dispatch = store.dispatch;\r\n miniPlayerVideoTag().paused ? miniPlayerVideoTag().play() : miniPlayerVideoTag().pause();\r\n dispatch(setPlayMiniPlayer(!miniPlayerVideoTag().paused))\r\n if(mainPlayerVideoTag() && mainPlayerVideoTag().played) {\r\n mainPlayerVideoTag().pause();\r\n dispatch(setPlay(false));\r\n }\r\n }\r\n}\r\n\r\nexport const handlePlayPauseInDOM = (type: boolean) => {\r\n const dispatch = store.dispatch;\r\n if (type) {\r\n mainPlayerVideoTag().play();\r\n dispatch(setPlay(true));\r\n return true;\r\n } else {\r\n mainPlayerVideoTag().pause();\r\n dispatch(setPlay(false));\r\n return false;\r\n }\r\n};\r\n\r\nexport const handleChangeSoundVolume = (volume: number) => {\r\n const dispatch = store.dispatch;\r\n const { settings } = store.getState().user;\r\n dispatch(setUserSettings({ ...settings, volume }));\r\n if (conditions(ConditionName.isIOS)) mainPlayerVideoTag().muted = !mainPlayerVideoTag().muted;\r\n else mainPlayerVideoTag().volume = volume / 100;\r\n};\r\n\r\nexport const handleBackwardForward = (type: string, forwardBackwardCount: number = 15, event?: any) => {\r\n if (type === \"touchBackward\") type = \"backward\";\r\n else if (type === \"touchForward\") type = \"forward\";\r\n if ((event && event.target.nodeName === \"INPUT\") || (type === \"backward\" && mainPlayerVideoTag().currentTime < 15) || (type === \"forward\" && mainPlayerVideoTag().duration - mainPlayerVideoTag().currentTime < 15 )) return;\r\n sendFluentLog(backwardForwardLog(type));\r\n let currentTime = 0;\r\n if (type === \"backward\") {\r\n if (forwardBackwardCount === 0) currentTime = 0;\r\n else currentTime = mainPlayerVideoTag().currentTime - forwardBackwardCount;\r\n } else if (type === \"forward\") {\r\n if (forwardBackwardCount === mainPlayerVideoTag().duration) currentTime = forwardBackwardCount;\r\n else currentTime = mainPlayerVideoTag().currentTime + forwardBackwardCount;\r\n }\r\n mainPlayerVideoTag().currentTime = currentTime;\r\n};\r\n\r\nexport const handleFullScreen = () => {\r\n const dispatch = store.dispatch;\r\n const isFullScreen = document.fullscreenElement;\r\n if (conditions(ConditionName.isIOS)) {\r\n if ((mainPlayerVideoTag() as any).webkitEnterFullScreen) {\r\n dispatch(setPlay(false));\r\n // Toggle fullscreen in Safari for iPad\r\n (mainPlayerVideoTag() as any).webkitEnterFullScreen();\r\n } else {\r\n dispatch(setClearPopoversSlice());\r\n sendFluentLog(fullscreenLog(\"fullScreen\"));\r\n }\r\n } else {\r\n if (isFullScreen) {\r\n dispatch(setIsFullScreen(false));\r\n document.exitFullscreen();\r\n } else {\r\n dispatch(setClearPopoversSlice());\r\n document.documentElement.requestFullscreen();\r\n dispatch(setIsFullScreen(true));\r\n sendFluentLog(fullscreenLog(\"fullScreen\"));\r\n }\r\n }\r\n};\r\n\r\nexport const handleLockOrientation = () => {\r\n if (conditions(ConditionName.isTouchScreen) && !conditions(ConditionName.isIOS)) {\r\n if (conditions(ConditionName.isLandscape) && !conditions(ConditionName.isFullScreen)) (window.screen.orientation as any).lock(\"portrait\");\r\n else (window.screen.orientation as any).lock(\"landscape\");\r\n }\r\n};\r\n\r\nexport const handleLock = (type: string) => {\r\n const dispatch = store.dispatch;\r\n dispatch(setLock(type === \"lock\"));\r\n sendFluentLog(lockLog(type));\r\n if(type === \"unlock\") localStorage.setItem(\"unlock-click\",\"true\");\r\n};\r\n\r\nexport const handleVideoTimeline = (currentTimeValue: number, movedTimeValue?: number) => {\r\n if (conditions(ConditionName.isSendTimelineLog)) {\r\n const dispatch = store.dispatch;\r\n const { videoTimelines } = store.getState().videoData;\r\n let currentTime = Math.floor(currentTimeValue);\r\n let movedTime = Math.floor(movedTimeValue!);\r\n if (videoTimelines.length === 0) {\r\n dispatch(setVideoTimelines([currentTime >= mainPlayerVideoTag().duration ? movedTime! : currentTime]));\r\n } else {\r\n if (videoTimelines[0] < currentTime)\r\n apiCaller({ url: API().videoTimelineLog, method: \"post\", data: videoTimelineLog(videoTimelines[0], currentTime) });\r\n if (movedTime && movedTime >= mainPlayerVideoTag().duration) dispatch(setVideoTimelines([]));\r\n else dispatch(setVideoTimelines([movedTime!]));\r\n }\r\n }\r\n};\r\n\r\nexport const handleVideoElementSizeInfo = () => {\r\n const dispatch = store.dispatch;\r\n const element: any = document.getElementById(\"video-area\")?.getBoundingClientRect();\r\n element.height = (element.width * 9) / 16;\r\n if (element) dispatch(setVideoElementSizeInfo(element));\r\n};\r\n\r\nexport const handleDoubleClick = (event: any) => {\r\n if (!conditions(ConditionName.isTouchScreen) && event.target.nodeName !== \"INPUT\") handleFullScreen();\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/controller.actions.ts"],"names":["init_cjs_shims","handlePlayPause","event","dispatch","store_default","mainPlayerVideoTag","setPlay","miniPlayerVideoTag","setPlayMiniPlayer","handlePlayPauseAfterChangeVideo","play","handlePlayerPauseMiniPlayer","handleChangeSoundVolume","volume","settings","setUserSettings","conditions","handleBackwardForward","type","forwardBackwardCount","sendFluentLog","backwardForwardLog","currentTime","handleFullScreen","isFullScreen","setClearPopoversSlice","fullscreenLog","setIsFullScreen","handleLockOrientation","handleLock","setLock","lockLog","handleVideoTimeline","currentTimeValue","movedTimeValue","videoTimelines","movedTime","setVideoTimelines","apiCaller","API","videoTimelineLog","handleVideoElementSizeInfo","element","setVideoElementSizeInfo","handleDoubleClick"],"mappings":"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","file":"chunk-4AXKM55A.js","sourcesContent":["import { setIsFullScreen, setLock, setPlay } from \"../slices/controllerSlice\";\r\nimport store from \"../store\";\r\nimport { setVideoElementSizeInfo, setVideoTimelines } from \"../slices/videoDataSlice\";\r\nimport { ConditionName } from \"../../interfaces/enums\";\r\nimport { apiCaller } from \"../../services/apiCaller\";\r\nimport { API } from \"../../services/services\";\r\nimport { setUserSettings } from \"../slices/userSlice\";\r\nimport { setClearPopoversSlice } from \"../slices/popoversSlice\";\r\nimport { conditions } from \"../../conditions/conditions\";\r\nimport { backwardForwardLog, fullscreenLog, lockLog, videoTimelineLog } from \"../../logs/logs\";\r\nimport { sendFluentLog } from \"../../logs/fluentdLogger\";\r\nimport { mainPlayerVideoTag, miniPlayerVideoTag } from \"../../constants\";\r\nimport { setPlayMiniPlayer } from \"../slices/miniPlayerSlice\";\r\n\r\nexport const handlePlayPause = (event: any) => {\r\n if (event === null || event.target.nodeName !== \"INPUT\") {\r\n const dispatch = store.dispatch;\r\n if (event !== null) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n }\r\n mainPlayerVideoTag().paused ? mainPlayerVideoTag().play() : mainPlayerVideoTag().pause();\r\n dispatch(setPlay(!mainPlayerVideoTag().paused));\r\n if(miniPlayerVideoTag() && miniPlayerVideoTag().played) {\r\n miniPlayerVideoTag().pause();\r\n dispatch(setPlayMiniPlayer(false));\r\n }\r\n }\r\n};\r\n\r\nexport const handlePlayPauseAfterChangeVideo = () => {\r\n const dispatch = store.dispatch;\r\n const {play} = store.getState().controller;\r\n dispatch(setPlay(play));\r\n setTimeout(() => {\r\n if(mainPlayerVideoTag()) {\r\n if(play) mainPlayerVideoTag().play();\r\n else mainPlayerVideoTag().pause();\r\n }\r\n },0)\r\n}\r\n\r\nexport const handlePlayerPauseMiniPlayer = (event:any) => {\r\n if (event === null || event.target.nodeName !== \"INPUT\") {\r\n const dispatch = store.dispatch;\r\n miniPlayerVideoTag().paused ? miniPlayerVideoTag().play() : miniPlayerVideoTag().pause();\r\n dispatch(setPlayMiniPlayer(!miniPlayerVideoTag().paused))\r\n if(mainPlayerVideoTag() && mainPlayerVideoTag().played) {\r\n mainPlayerVideoTag().pause();\r\n dispatch(setPlay(false));\r\n }\r\n }\r\n}\r\n\r\nexport const handlePlayPauseInDOM = (type: boolean) => {\r\n const dispatch = store.dispatch;\r\n if (type) {\r\n mainPlayerVideoTag().play();\r\n dispatch(setPlay(true));\r\n return true;\r\n } else {\r\n mainPlayerVideoTag().pause();\r\n dispatch(setPlay(false));\r\n return false;\r\n }\r\n};\r\n\r\nexport const handleChangeSoundVolume = (volume: number) => {\r\n const dispatch = store.dispatch;\r\n const { settings } = store.getState().user;\r\n dispatch(setUserSettings({ ...settings, volume }));\r\n if (conditions(ConditionName.isIOS)) mainPlayerVideoTag().muted = !mainPlayerVideoTag().muted;\r\n else mainPlayerVideoTag().volume = volume / 100;\r\n};\r\n\r\nexport const handleBackwardForward = (type: string, forwardBackwardCount: number = 15, event?: any) => {\r\n if (type === \"touchBackward\") type = \"backward\";\r\n else if (type === \"touchForward\") type = \"forward\";\r\n if ((event && event.target.nodeName === \"INPUT\") || (type === \"backward\" && mainPlayerVideoTag().currentTime < 15) || (type === \"forward\" && mainPlayerVideoTag().duration - mainPlayerVideoTag().currentTime < 15 )) return;\r\n sendFluentLog(backwardForwardLog(type));\r\n let currentTime = 0;\r\n if (type === \"backward\") {\r\n if (forwardBackwardCount === 0) currentTime = 0;\r\n else currentTime = mainPlayerVideoTag().currentTime - forwardBackwardCount;\r\n } else if (type === \"forward\") {\r\n if (forwardBackwardCount === mainPlayerVideoTag().duration) currentTime = forwardBackwardCount;\r\n else currentTime = mainPlayerVideoTag().currentTime + forwardBackwardCount;\r\n }\r\n mainPlayerVideoTag().currentTime = currentTime;\r\n};\r\n\r\nexport const handleFullScreen = () => {\r\n const dispatch = store.dispatch;\r\n const isFullScreen = document.fullscreenElement;\r\n if (conditions(ConditionName.isIOS)) {\r\n if ((mainPlayerVideoTag() as any).webkitEnterFullScreen) {\r\n dispatch(setPlay(false));\r\n // Toggle fullscreen in Safari for iPad\r\n (mainPlayerVideoTag() as any).webkitEnterFullScreen();\r\n } else {\r\n dispatch(setClearPopoversSlice());\r\n sendFluentLog(fullscreenLog(\"fullScreen\"));\r\n }\r\n } else {\r\n if (isFullScreen) {\r\n dispatch(setIsFullScreen(false));\r\n document.exitFullscreen();\r\n } else {\r\n dispatch(setClearPopoversSlice());\r\n document.documentElement.requestFullscreen();\r\n dispatch(setIsFullScreen(true));\r\n sendFluentLog(fullscreenLog(\"fullScreen\"));\r\n }\r\n }\r\n};\r\n\r\nexport const handleLockOrientation = () => {\r\n if (conditions(ConditionName.isTouchScreen) && !conditions(ConditionName.isIOS)) {\r\n if (conditions(ConditionName.isLandscape) && !conditions(ConditionName.isFullScreen)) (window.screen.orientation as any).lock(\"portrait\");\r\n else (window.screen.orientation as any).lock(\"landscape\");\r\n }\r\n};\r\n\r\nexport const handleLock = (type: string) => {\r\n const dispatch = store.dispatch;\r\n dispatch(setLock(type === \"lock\"));\r\n sendFluentLog(lockLog(type));\r\n if(type === \"unlock\") localStorage.setItem(\"unlock-click\",\"true\");\r\n};\r\n\r\nexport const handleVideoTimeline = (currentTimeValue: number, movedTimeValue?: number) => {\r\n if (conditions(ConditionName.isSendTimelineLog)) {\r\n const dispatch = store.dispatch;\r\n const { videoTimelines } = store.getState().videoData;\r\n let currentTime = Math.floor(currentTimeValue);\r\n let movedTime = Math.floor(movedTimeValue!);\r\n if (videoTimelines.length === 0) {\r\n dispatch(setVideoTimelines([currentTime >= mainPlayerVideoTag().duration ? movedTime! : currentTime]));\r\n } else {\r\n if (videoTimelines[0] < currentTime)\r\n apiCaller({ url: API().videoTimelineLog, method: \"post\", data: videoTimelineLog(videoTimelines[0], currentTime) });\r\n if (movedTime && movedTime >= mainPlayerVideoTag().duration) dispatch(setVideoTimelines([]));\r\n else dispatch(setVideoTimelines([movedTime!]));\r\n }\r\n }\r\n};\r\n\r\nexport const handleVideoElementSizeInfo = () => {\r\n const dispatch = store.dispatch;\r\n const element: any = document.getElementById(\"video-area\")?.getBoundingClientRect();\r\n element.height = (element.width * 9) / 16;\r\n if (element) dispatch(setVideoElementSizeInfo(element));\r\n};\r\n\r\nexport const handleDoubleClick = (event: any) => {\r\n if (!conditions(ConditionName.isTouchScreen) && event.target.nodeName !== \"INPUT\") handleFullScreen();\r\n};\r\n"]}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import {M,Da,U,W as W$1,J,u,v as v$1,r,ca,Q as Q$1,fa,A as A$1,la,Aa,ka}from'./chunk-LHO7HY26.mjs';import {e}from'./chunk-DBPGS72Q.mjs';import v from'axios';e();e();var A=t=>{let{params:o}=M.getState().videoData;return ka().vod.getVodUrl+(t||o.id)},a={url:"",maxRetryCount:0,headers:{},retryPolicy:[],errorCallback:void 0},I=t=>(a.url=A(t),a.maxRetryCount=3,a.retryPolicy=[{codeAbove:500,codeBelow:null,excludeCodes:[],includeCodes:[409],delay:1,count:3},{codeAbove:null,codeBelow:404,excludeCodes:[403,402,401,400],includeCodes:[],delay:10,count:6}],a),D=t=>(I(t),a);var Q=async t=>{let o=M.dispatch;try{let e=await Da({...D(t)});if(U(e.status)){if(await v.head("https://"+W$1(e.data.hls_links)+e.data.path),t)return o(J(e.data));P(e.data);}else throw new Error(JSON.stringify({status:e.status,message:e.data}))}catch{o(u(!0)),o(v$1(!1));}},P=t=>{let o=M.dispatch,{params:e}=M.getState().videoData;o(r({...t,subtitles:ca("hasSubtitlesInParams")?e.subtitles:t.subtitles,stream_link:!!t.stream_link&&Q$1("https://"+W$1(t.hls_links)+t.path)})),o(u(!0)),o(v$1(!0));},W=()=>{let t=M.dispatch,{subtitles:o,selectedSubtitle:e}=M.getState().videoData,i=o.find(m=>m.language==="fa");e?(Object.values(fa().textTracks).find(m=>m.mode==="showing").mode="disabled",t(A$1(void 0)),la(Aa("empty"))):i?(i.mode="showing",t(A$1(i)),la(Aa(i.language))):(fa().textTracks[0].mode="showing",t(A$1(fa().textTracks[0])),la(Aa(fa().textTracks[0].language)));};
|
|
2
|
+
export{Q as a,W as b};//# sourceMappingURL=chunk-7CZEUDNW.mjs.map
|
|
3
|
+
//# sourceMappingURL=chunk-7CZEUDNW.mjs.map
|
|
@@ -0,0 +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","getVodDetails","dispatch","d","apiCaller","responseValidator","axios","weighted_random","setDetailsMiniPlayer","detailSetter","setIsFetchDetails","setIsValidAddress","data","setInfo","conditions","addUuidToSrc","handleSubtitle","subtitles","selectedSubtitle","faSubtitle","subtitle","mainPlayerVideoTag","textTrack","setSelectedSubtitle","sendFluentLog","subtitleLog"],"mappings":"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","file":"chunk-7CZEUDNW.mjs","sourcesContent":["import { apiCaller, getAll } 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\nimport { conditions } from \"../../conditions/conditions\";\r\nimport { ConditionName } from \"../../interfaces/enums\";\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 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 {params} = store.getState().videoData;\r\n dispatch(\r\n setInfo({\r\n ...data,\r\n subtitles: conditions(ConditionName.hasSubtitlesInParams) ? params.subtitles : 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\r\nexport const getAllGeneralMarker = async (url: string) => {\r\n const response: any = await getAll(url, [\r\n {\r\n codeAbove: 400,\r\n codeBelow: null,\r\n excludeCodes: [],\r\n includeCodes: [],\r\n delay: 2,\r\n count: 3\r\n }\r\n ]);\r\n return response;\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 chunk4AXKM55A_js=require('./chunk-4AXKM55A.js'),chunkKODWZOFT_js=require('./chunk-KODWZOFT.js'),chunkWO4IQUGO_js=require('./chunk-WO4IQUGO.js');chunkWO4IQUGO_js.e();var me=e=>{e.preventDefault();let t=(chunkKODWZOFT_js.fa()||chunkKODWZOFT_js.ga()).error;if(t)switch(t.code){case t.MEDIA_ERR_ABORTED:chunkKODWZOFT_js.Ca({type:"videoTagError",message:"You aborted the video playback."});break;case t.MEDIA_ERR_NETWORK:chunkKODWZOFT_js.Ca({type:"videoTagError",message:"A network error caused the video download to fail part-way."});break;case t.MEDIA_ERR_DECODE:chunkKODWZOFT_js.Ca({type:"videoTagError",message:"The video playback was aborted due to a corruption problem or because the video used features your browser did not support."});break;case t.MEDIA_ERR_SRC_NOT_SUPPORTED:chunkKODWZOFT_js.Ca({type:"videoTagError",message:"The video could not be loaded, either because the server or network failed or because the format is not supported."});break;default:chunkKODWZOFT_js.Ca({type:"videoTagError",message:"An unknown error occurred."});break}else chunkKODWZOFT_js.Ca({type:"videoTagError",message:"An error occurred, but the error object is not available."});},$=()=>{let e=chunkKODWZOFT_js.M.dispatch,{params:t}=chunkKODWZOFT_js.M.getState().videoData,a=n=>{n.requestFullScreen?n.requestFullScreen():n.mozRequestFullScreen?n.mozRequestFullScreen():n.webkitRequestFullScreen&&n.webkitRequestFullScreen();};e(chunkKODWZOFT_js.F()),a(document.documentElement),e(chunkKODWZOFT_js.h(t.fullscreen==="true"));},fe=()=>{let e=".ts",t=XMLHttpRequest.prototype.open;XMLHttpRequest.prototype.open=function(){arguments[1].endsWith(e)&&(arguments[1]=arguments[1]+"?uuid="+chunkKODWZOFT_js.N()),t.apply(this,arguments);};},Y=(e,t)=>{let a=chunkKODWZOFT_js.M.dispatch;t.current=setInterval(()=>{let s=e.target.buffered.end(0)/chunkKODWZOFT_js.fa().duration*100;a(chunkKODWZOFT_js.i(s));},500);},he=()=>{let e=chunkKODWZOFT_js.S("mainPlayer");return {xhrSetup:(t,a)=>{a.split("m3u8")[1]||(a=`${a}${e}`),t.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}}}}},ge=()=>{let e=chunkKODWZOFT_js.S("miniPlayer");return {xhrSetup:(t,a)=>{a=`${a}${e}`,t.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=(e,t)=>{let a=chunkKODWZOFT_js.M.dispatch,n=[],s=[];e.levels.map(i=>{n.push(i.attrs.RESOLUTION.split("x")[1].trim()),s.push(i.attrs.RESOLUTION);}),e.autoLevelCapping=chunkKODWZOFT_js.Y(s,window.innerWidth,window.innerHeight),a(chunkKODWZOFT_js.d(n)),["fullscreenchange","webkitfullscreenchange","mozfullscreenchange","msfullscreenchange"].forEach(i=>document.addEventListener(i,c=>{chunkKODWZOFT_js.ca("isAutoQuality")&&(e.autoLevelCapping=chunkKODWZOFT_js.Y(s,window.innerWidth,window.innerHeight),e.nextLevel=-1);},!1));},xe=(e,t)=>{let{params:a,details:n}=chunkKODWZOFT_js.M.getState().videoData,s=n.stream_link;t.loadSource(s),t.on(e.Events.MANIFEST_PARSED,(i,c)=>J(t));},z=(e,t,a)=>{if(t.frag.type!=="audio"){let n=chunkKODWZOFT_js.M.dispatch,{settings:s}=chunkKODWZOFT_js.M.getState().user,{qualityLevels:i,manualQuality:c,autoQuality:x}=chunkKODWZOFT_js.M.getState().controller;chunkKODWZOFT_js.ca("isAutoQuality")?chunkKODWZOFT_js.ca("isAutoQuality")&&x===void 0?(e.nextLevel=-1,a(i[t.frag.level]),n(chunkKODWZOFT_js.e(t.frag.level))):chunkKODWZOFT_js.ca("isAutoQuality")&&(a(i[t.frag.level]),x!==t.frag.level&&n(chunkKODWZOFT_js.e(t.frag.level))):(t.frag.level!==c&&(e.nextLevel=i[s.quality]?s.quality:-1),i[s.quality]?(n(chunkKODWZOFT_js.m(s.quality)),n(chunkKODWZOFT_js.e(void 0))):(a(i[t.frag.level]),n(chunkKODWZOFT_js.e(t.frag.level)),n(chunkKODWZOFT_js.G({...s,quality:-1}))));}},ve=e=>{let t=chunkKODWZOFT_js.M.dispatch,n=e.mainForwardBufferInfo?.end/chunkKODWZOFT_js.fa().duration*100;t(chunkKODWZOFT_js.i(n));},De=(e,t,a)=>{let{params:n}=chunkKODWZOFT_js.M.getState().videoData;n.type&&z(e,t,a);},Se=(e,t,a)=>{let{type:n}=chunkKODWZOFT_js.M.getState().videoData.params;n&&z(e,t,a);},Te=e=>{if(e.event!=="hlsAudioTrackLoading")return {type:"HLS_"+e.type,message:e.error.message}},Pe=(e,t)=>{let a=chunkKODWZOFT_js.M.dispatch;e.preventDefault(),t.current=Date.now(),a(chunkKODWZOFT_js.g(!0));},be=(e,t)=>{let a=chunkKODWZOFT_js.M.dispatch;e.preventDefault(),t.current=0,a(chunkKODWZOFT_js.g(!0));},Le=(e,t)=>{let a=chunkKODWZOFT_js.M.dispatch,{videoSettings:n}=chunkKODWZOFT_js.M.getState().user,{params:s}=chunkKODWZOFT_js.M.getState().videoData;e.preventDefault(),t.current=Date.now(),a(chunkKODWZOFT_js.a(!0)),chunkKODWZOFT_js.ca("hasOnPlayParams")&&s.onPlay(),chunkKODWZOFT_js.ca("isFirstPlay")&&(chunkKODWZOFT_js.ca("hasCurrentTimeParams")||(chunkKODWZOFT_js.fa().currentTime=n.time,a(chunkKODWZOFT_js.c(n.time))),chunkKODWZOFT_js.ca("hasFullScreenParams")&&$(),chunkKODWZOFT_js.ca("isFullScreen")&&chunk4AXKM55A_js.g(),a(chunkKODWZOFT_js.w([Math.floor(chunkKODWZOFT_js.fa().currentTime)]))),chunkKODWZOFT_js.la(chunkKODWZOFT_js.xa(!0)),a(chunkKODWZOFT_js.z(""));},Me=(e,t,a,n,s,i,c,x)=>{let G=chunkKODWZOFT_js.M.dispatch,{autoQuality:V,canPlayVideo:X,firstPlay:K,qualityLevels:O}=chunkKODWZOFT_js.M.getState().controller,{settings:A}=chunkKODWZOFT_js.M.getState().user,I=A.quality===-1&&V?O[V]:O[A.quality],v=0;c.current&&(v=Date.now()-c.current),K&&chunkKODWZOFT_js.fa().played&&chunkKODWZOFT_js.la(chunkKODWZOFT_js.ya(t.current,Date.now()-a.current,n.current-a.current,Date.now()-s.current,s)),G(chunkKODWZOFT_js.j(!1)),X&&v>0&&I!==void 0&&(i.current=v,c.current=0,chunkKODWZOFT_js.la(chunkKODWZOFT_js.za(v,I,s,e,x.current)),e.current=e.current+1,s.current=Date.now());},Ee=e=>{let t=chunkKODWZOFT_js.M.dispatch,{params:a}=chunkKODWZOFT_js.M.getState().videoData;e.preventDefault(),chunkKODWZOFT_js.la(chunkKODWZOFT_js.xa(!1)),t(chunkKODWZOFT_js.a(!1)),chunkKODWZOFT_js.ca("hasOnPauseParams")&&a.onPause();},Re=e=>{let t=chunkKODWZOFT_js.M.dispatch,{selectedSubtitle:a}=chunkKODWZOFT_js.M.getState().videoData;e.preventDefault(),t(chunkKODWZOFT_js.c(e.target.currentTime)),chunkKODWZOFT_js.ca("hasActiveCue")&&t(chunkKODWZOFT_js.z(a.activeCues[0].text));},Fe=e=>{let t=chunkKODWZOFT_js.M.dispatch,{settings:a}=chunkKODWZOFT_js.M.getState().user;if(e.preventDefault(),t(chunkKODWZOFT_js.g(!1)),t(chunkKODWZOFT_js.n(!0)),chunkKODWZOFT_js.fa().volume=a.volume/100,t(chunkKODWZOFT_js.b(e.target.duration)),chunkKODWZOFT_js.ca("isIOS")){let n=Object.values(e.target.textTracks);n&&n.length&&t(chunkKODWZOFT_js.y(Object.values(n[0]).length?n:[]));}else t(chunkKODWZOFT_js.y(Object.values(e.target.textTracks)));},ke=e=>{let t=chunkKODWZOFT_js.M.dispatch,{params:a}=chunkKODWZOFT_js.M.getState().videoData;e.preventDefault(),t(chunkKODWZOFT_js.p(!0)),t(chunkKODWZOFT_js.f(!0)),chunk4AXKM55A_js.i(chunkKODWZOFT_js.fa().duration),chunkKODWZOFT_js.ca("hasOnFinishedParams")&&a.onFinished();},we=(e,t)=>{let a=chunkKODWZOFT_js.M.dispatch;e.preventDefault(),t.current=Date.now(),a(chunkKODWZOFT_js.j(!1));},Ve=()=>{let e=chunkKODWZOFT_js.M.dispatch;e(chunkKODWZOFT_js.g(!1));},Oe=e=>{let t=chunkKODWZOFT_js.M.dispatch;e.preventDefault(),t(chunkKODWZOFT_js.c(e.target.currentTime));},Ae=()=>{let e=chunkKODWZOFT_js.M.dispatch,{params:t}=chunkKODWZOFT_js.M.getState().videoData;e(chunkKODWZOFT_js.p(!0)),e(chunkKODWZOFT_js.f(!0)),chunkKODWZOFT_js.ca("hasOnFinishedParams")&&t.onFinished();},Ie=e=>{let t=chunkKODWZOFT_js.M.dispatch;e.preventDefault(),t(chunkKODWZOFT_js.a(!1));},qe=(e,t)=>{let a=chunkKODWZOFT_js.M.dispatch;e.preventDefault(),a(chunkKODWZOFT_js.a(!0)),t.current=Date.now(),a(chunkKODWZOFT_js.z("")),chunkKODWZOFT_js.ca("isFirstPlay")&&chunkKODWZOFT_js.ca("hasFullScreenParams")&&($(),chunkKODWZOFT_js.ca("isFullScreen")&&chunk4AXKM55A_js.g());},Ce=(e,t,a)=>{let n=chunkKODWZOFT_js.M.dispatch,{firstPlay:s}=chunkKODWZOFT_js.M.getState().controller;n(chunkKODWZOFT_js.g(!1)),s&&chunkKODWZOFT_js.fa().played&&chunkKODWZOFT_js.la(chunkKODWZOFT_js.ya(Math.round(e.current),Date.now()-t.current,0,Date.now()-a.current,a)),n(chunkKODWZOFT_js.j(!1));},Be=e=>{let t=chunkKODWZOFT_js.M.dispatch,{selectedSubtitle:a}=chunkKODWZOFT_js.M.getState().videoData;e.preventDefault(),t(chunkKODWZOFT_js.c(e.target.currentTime)),t(chunkKODWZOFT_js.b(e.target.duration)),chunkKODWZOFT_js.ca("hasActiveCue")&&t(chunkKODWZOFT_js.z(a.activeCues[0].text));},Ne=e=>{let t=chunkKODWZOFT_js.M.dispatch;if(e.preventDefault(),t(chunkKODWZOFT_js.g(!1)),t(chunkKODWZOFT_js.n(!0)),chunkKODWZOFT_js.ca("isIOS")){let a=Object.values(e.target.textTracks);a&&a.length&&t(chunkKODWZOFT_js.y(Object.values(a[0]).length?a:[]));}else t(chunkKODWZOFT_js.y(Object.values(e.target.textTracks)));},_e=(e,t)=>{e.preventDefault(),Y(e,t);};var Qe=async e=>{let{stream_link:t}=chunkKODWZOFT_js.M.getState().miniPlayer.details;e.loadSource(t);},Ue=e=>{chunk4AXKM55A_js.i(chunkKODWZOFT_js.fa().currentTime);};exports.A=Ne;exports.B=_e;exports.C=Qe;exports.D=Ue;exports.a=me;exports.b=fe;exports.c=he;exports.d=ge;exports.e=J;exports.f=xe;exports.g=ve;exports.h=De;exports.i=Se;exports.j=Te;exports.k=Pe;exports.l=be;exports.m=Le;exports.n=Me;exports.o=Ee;exports.p=Re;exports.q=Fe;exports.r=ke;exports.s=we;exports.t=Ve;exports.u=Oe;exports.v=Ae;exports.w=Ie;exports.x=qe;exports.y=Ce;exports.z=Be;//# sourceMappingURL=chunk-AJG5T24R.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-AJG5T24R.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/playerCore.actions.ts"],"names":["init_cjs_shims","handleVideoError","event","error","mainPlayerVideoTag","miniPlayerVideoTag","errorLogProvider","handleAutoFullScreen","dispatch","store_default","params","launchFullScreen","element","setClearPopoversSlice","setIsFullScreen","appendQueryParamsToChunksIOS","fragmentExtension","originalOpen","getUUID","handleBufferedTime","intervalRef","bufferedTimeWidth","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-FK3W2MAI.js","sourcesContent":["import { conditions } from \"../../conditions/conditions\";\r\nimport { mainPlayerVideoTag, miniPlayerVideoTag } from \"../../constants\";\r\nimport { errorLogProvider } from \"../../errorBoundary/errorBoundaryFunctions\";\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 handleVideoError = (event: any) => {\r\n event.preventDefault();\r\n // Access the error property from the video element\r\n let error = (mainPlayerVideoTag() || miniPlayerVideoTag()).error;\r\n if (error) {\r\n switch (error.code) {\r\n case error.MEDIA_ERR_ABORTED:\r\n errorLogProvider({ type: \"videoTagError\", message: \"You aborted the video playback.\" });\r\n break;\r\n case error.MEDIA_ERR_NETWORK:\r\n errorLogProvider({ type: \"videoTagError\", message: \"A network error caused the video download to fail part-way.\" });\r\n break;\r\n case error.MEDIA_ERR_DECODE:\r\n errorLogProvider({\r\n type: \"videoTagError\",\r\n message:\r\n \"The video playback was aborted due to a corruption problem or because the video used features your browser did not support.\"\r\n });\r\n break;\r\n case error.MEDIA_ERR_SRC_NOT_SUPPORTED:\r\n errorLogProvider({\r\n type: \"videoTagError\",\r\n message: \"The video could not be loaded, either because the server or network failed or because the format is not supported.\"\r\n });\r\n break;\r\n default:\r\n errorLogProvider({ type: \"videoTagError\", message: \"An unknown error occurred.\" });\r\n break;\r\n }\r\n } else {\r\n errorLogProvider({ type: \"videoTagError\", message: \"An error occurred, but the error object is not available.\" });\r\n }\r\n};\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 = (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 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 dispatch(setSubtitleText(\"\"));\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 const { selectedSubtitle } = store.getState().videoData;\r\n event.preventDefault();\r\n dispatch(setCurrentTime(event.target.currentTime));\r\n dispatch(setDuration(event.target.duration));\r\n if (conditions(ConditionName.hasActiveCue))\r\n dispatch(setSubtitleText((selectedSubtitle!.activeCues![0] as any).text));\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 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 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"]}
|
|
1
|
+
{"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/playerCore.actions.ts"],"names":["init_cjs_shims","handleVideoError","event","error","mainPlayerVideoTag","miniPlayerVideoTag","errorLogProvider","handleAutoFullScreen","dispatch","store_default","params","launchFullScreen","element","setClearPopoversSlice","setIsFullScreen","appendQueryParamsToChunksIOS","fragmentExtension","originalOpen","getUUID","handleBufferedTime","intervalRef","bufferedTimeWidth","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-AJG5T24R.js","sourcesContent":["import { conditions } from \"../../conditions/conditions\";\r\nimport { mainPlayerVideoTag, miniPlayerVideoTag } from \"../../constants\";\r\nimport { errorLogProvider } from \"../../errorBoundary/errorBoundaryFunctions\";\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 handleVideoError = (event: any) => {\r\n event.preventDefault();\r\n // Access the error property from the video element\r\n let error = (mainPlayerVideoTag() || miniPlayerVideoTag()).error;\r\n if (error) {\r\n switch (error.code) {\r\n case error.MEDIA_ERR_ABORTED:\r\n errorLogProvider({ type: \"videoTagError\", message: \"You aborted the video playback.\" });\r\n break;\r\n case error.MEDIA_ERR_NETWORK:\r\n errorLogProvider({ type: \"videoTagError\", message: \"A network error caused the video download to fail part-way.\" });\r\n break;\r\n case error.MEDIA_ERR_DECODE:\r\n errorLogProvider({\r\n type: \"videoTagError\",\r\n message:\r\n \"The video playback was aborted due to a corruption problem or because the video used features your browser did not support.\"\r\n });\r\n break;\r\n case error.MEDIA_ERR_SRC_NOT_SUPPORTED:\r\n errorLogProvider({\r\n type: \"videoTagError\",\r\n message: \"The video could not be loaded, either because the server or network failed or because the format is not supported.\"\r\n });\r\n break;\r\n default:\r\n errorLogProvider({ type: \"videoTagError\", message: \"An unknown error occurred.\" });\r\n break;\r\n }\r\n } else {\r\n errorLogProvider({ type: \"videoTagError\", message: \"An error occurred, but the error object is not available.\" });\r\n }\r\n};\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 = (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 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 dispatch(setSubtitleText(\"\"));\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 const { selectedSubtitle } = store.getState().videoData;\r\n event.preventDefault();\r\n dispatch(setCurrentTime(event.target.currentTime));\r\n dispatch(setDuration(event.target.duration));\r\n if (conditions(ConditionName.hasActiveCue))\r\n dispatch(setSubtitleText((selectedSubtitle!.activeCues![0] as any).text));\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 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 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"]}
|