cafe-video-player 2.0.13 → 2.0.14
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/README.md +9 -0
- package/backwardForward-5TPLJVCD.mjs +2 -0
- package/{backwardForward-NLZ3CXO7.mjs.map → backwardForward-5TPLJVCD.mjs.map} +1 -1
- package/backwardForward-GS3IUR5E.js +2 -0
- package/{backwardForward-2JSLBAF6.js.map → backwardForward-GS3IUR5E.js.map} +1 -1
- package/chunk-4DDOAXAN.js +3 -0
- package/chunk-4DDOAXAN.js.map +1 -0
- package/chunk-6CNSMDHE.mjs +2 -0
- package/{chunk-QUGJPG4L.mjs.map → chunk-6CNSMDHE.mjs.map} +1 -1
- package/chunk-6OZZD7ZH.mjs +3 -0
- package/chunk-6OZZD7ZH.mjs.map +1 -0
- package/chunk-7U67XHQ5.mjs +2 -0
- package/{chunk-CUK77YXD.mjs.map → chunk-7U67XHQ5.mjs.map} +1 -1
- package/chunk-7WPU5CCV.js +3 -0
- package/chunk-7WPU5CCV.js.map +1 -0
- package/chunk-AFNUTV2X.js +2 -0
- package/chunk-AFNUTV2X.js.map +1 -0
- package/chunk-B4MH7PMD.js +2 -0
- package/{chunk-XIQHENJJ.js.map → chunk-B4MH7PMD.js.map} +1 -1
- package/chunk-I6M7TYYX.mjs +3 -0
- package/chunk-I6M7TYYX.mjs.map +1 -0
- package/chunk-JDRW6CL5.mjs +2 -0
- package/chunk-JDRW6CL5.mjs.map +1 -0
- package/chunk-K5MO24JN.mjs +9 -0
- package/chunk-K5MO24JN.mjs.map +1 -0
- package/chunk-L2TKSWNJ.js +2 -0
- package/{chunk-CYPPFLAU.js.map → chunk-L2TKSWNJ.js.map} +1 -1
- package/chunk-L62LZRSJ.mjs +2 -0
- package/{chunk-GLSBWYKV.mjs.map → chunk-L62LZRSJ.mjs.map} +1 -1
- package/chunk-NOKQRBRW.mjs +2 -0
- package/chunk-NOKQRBRW.mjs.map +1 -0
- package/chunk-QIG5BBRI.js +2 -0
- package/{chunk-FROXUYBP.js.map → chunk-QIG5BBRI.js.map} +1 -1
- package/chunk-TU2WMDWK.js +2 -0
- package/chunk-TU2WMDWK.js.map +1 -0
- package/chunk-V6CLAIYW.js +9 -0
- package/chunk-V6CLAIYW.js.map +1 -0
- package/index.d.mts +7 -1
- package/index.d.ts +7 -1
- package/index.js +1 -1
- package/index.js.map +1 -1
- package/index.mjs +1 -1
- package/index.mjs.map +1 -1
- package/nonStaticVideoTag-64YYPQJE.mjs +2 -0
- package/nonStaticVideoTag-64YYPQJE.mjs.map +1 -0
- package/nonStaticVideoTag-A3EX3E6L.js +2 -0
- package/nonStaticVideoTag-A3EX3E6L.js.map +1 -0
- package/package.json +1 -1
- package/staticPlayer-67CKU4DK.js +2 -0
- package/{staticPlayer-SN6BVYOE.js.map → staticPlayer-67CKU4DK.js.map} +1 -1
- package/staticPlayer-D3YIYSMP.mjs +2 -0
- package/{staticPlayer-SBW7GHVS.mjs.map → staticPlayer-D3YIYSMP.mjs.map} +1 -1
- package/staticVideoTag-6E74J5TJ.js +2 -0
- package/staticVideoTag-6E74J5TJ.js.map +1 -0
- package/staticVideoTag-KFT476IV.mjs +2 -0
- package/staticVideoTag-KFT476IV.mjs.map +1 -0
- package/touchVolumeBrightness-KRFIP4HD.mjs +3 -0
- package/{touchVolumeBrightness-ENIH7QSQ.mjs.map → touchVolumeBrightness-KRFIP4HD.mjs.map} +1 -1
- package/touchVolumeBrightness-MDPI2BU6.js +3 -0
- package/{touchVolumeBrightness-ZXNNO4T3.js.map → touchVolumeBrightness-MDPI2BU6.js.map} +1 -1
- package/videoArea-3U6TLM5J.js +2 -0
- package/{videoArea-OQT6QXY3.js.map → videoArea-3U6TLM5J.js.map} +1 -1
- package/videoArea-PUZNSTD4.mjs +2 -0
- package/{videoArea-CRZ7GWE2.mjs.map → videoArea-PUZNSTD4.mjs.map} +1 -1
- package/videoPlayerStyles.css +294 -0
- package/vodPlayer-TS3P4LV6.js +2 -0
- package/{vodPlayer-UIKDTZEE.js.map → vodPlayer-TS3P4LV6.js.map} +1 -1
- package/vodPlayer-YTF66SAF.mjs +2 -0
- package/{vodPlayer-AMZF7H2P.mjs.map → vodPlayer-YTF66SAF.mjs.map} +1 -1
- package/backwardForward-2JSLBAF6.js +0 -2
- package/backwardForward-NLZ3CXO7.mjs +0 -2
- package/chunk-CUK77YXD.mjs +0 -2
- package/chunk-CYPPFLAU.js +0 -2
- package/chunk-D5SYSU54.mjs +0 -2
- package/chunk-D5SYSU54.mjs.map +0 -1
- package/chunk-F6ORJRBD.mjs +0 -9
- package/chunk-F6ORJRBD.mjs.map +0 -1
- package/chunk-FROXUYBP.js +0 -2
- package/chunk-GLSBWYKV.mjs +0 -2
- package/chunk-JXZC26YX.js +0 -2
- package/chunk-JXZC26YX.js.map +0 -1
- package/chunk-MHRCF7BY.js +0 -2
- package/chunk-MHRCF7BY.js.map +0 -1
- package/chunk-NBQP3BW3.js +0 -9
- package/chunk-NBQP3BW3.js.map +0 -1
- package/chunk-PFQ3XQ2T.js +0 -3
- package/chunk-PFQ3XQ2T.js.map +0 -1
- package/chunk-PTHQRCRX.js +0 -3
- package/chunk-PTHQRCRX.js.map +0 -1
- package/chunk-QUGJPG4L.mjs +0 -2
- package/chunk-SGVX3SAL.mjs +0 -3
- package/chunk-SGVX3SAL.mjs.map +0 -1
- package/chunk-SNY6OHXM.mjs +0 -3
- package/chunk-SNY6OHXM.mjs.map +0 -1
- package/chunk-SSQ7STCV.mjs +0 -2
- package/chunk-SSQ7STCV.mjs.map +0 -1
- package/chunk-XIQHENJJ.js +0 -2
- package/nonStaticVideoTag-4VFXGCDA.mjs +0 -2
- package/nonStaticVideoTag-4VFXGCDA.mjs.map +0 -1
- package/nonStaticVideoTag-WN7RZ3A7.js +0 -2
- package/nonStaticVideoTag-WN7RZ3A7.js.map +0 -1
- package/staticPlayer-SBW7GHVS.mjs +0 -2
- package/staticPlayer-SN6BVYOE.js +0 -2
- package/staticVideoTag-G5OAE56E.mjs +0 -2
- package/staticVideoTag-G5OAE56E.mjs.map +0 -1
- package/staticVideoTag-YTYDYFT3.js +0 -2
- package/staticVideoTag-YTYDYFT3.js.map +0 -1
- package/touchVolumeBrightness-ENIH7QSQ.mjs +0 -3
- package/touchVolumeBrightness-ZXNNO4T3.js +0 -3
- package/videoArea-CRZ7GWE2.mjs +0 -2
- package/videoArea-OQT6QXY3.js +0 -2
- package/vodPlayer-AMZF7H2P.mjs +0 -2
- package/vodPlayer-UIKDTZEE.js +0 -2
package/README.md
CHANGED
|
@@ -24,6 +24,15 @@ export default function HomePage() {
|
|
|
24
24
|
banner: "image path", // (to display cover image from external url) optional
|
|
25
25
|
subtitleUrl: "subtitle url", // (to display subtitle from external url) optional
|
|
26
26
|
currentTime: 100, // (jump to second 100) optional
|
|
27
|
+
subtitles = [{lang: "string", title: "string", url: "subtitle url"}]
|
|
28
|
+
/*
|
|
29
|
+
subtitle example
|
|
30
|
+
subtitles = [
|
|
31
|
+
{lang: "fa", title: "فارسی", url: "https://hamrahi.cloud/subtitles/216-282790-6770242c63370b3aa9ce680b-sub_fa.srt"},
|
|
32
|
+
{lang: "en", title: "انگلیسی", url: "https://hamrahi.cloud/subtitles/216-282790-6770242c63370b58ecce680d-sub_en.srt"},
|
|
33
|
+
]
|
|
34
|
+
*/
|
|
35
|
+
|
|
27
36
|
};
|
|
28
37
|
|
|
29
38
|
return (
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"backwardForward-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"backwardForward-5TPLJVCD.mjs"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
'use strict';var chunkB4MH7PMD_js=require('./chunk-B4MH7PMD.js');require('./chunk-QIG5BBRI.js'),require('./chunk-7WPU5CCV.js'),require('./chunk-DQNYU4AM.js'),require('./chunk-WO4IQUGO.js');module.exports=chunkB4MH7PMD_js.a;//# sourceMappingURL=backwardForward-GS3IUR5E.js.map
|
|
2
|
+
//# sourceMappingURL=backwardForward-GS3IUR5E.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"backwardForward-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"backwardForward-GS3IUR5E.js"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
'use strict';var chunk7WPU5CCV_js=require('./chunk-7WPU5CCV.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 v=t=>{let{params:o}=chunk7WPU5CCV_js.M.getState().videoData;return chunk7WPU5CCV_js.ka().vod.getVodUrl+(t||o.id)},a={url:"",maxRetryCount:0,headers:{},retryPolicy:[],errorCallback:void 0},A=t=>(a.url=v(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),S=t=>(A(t),a);var P=t=>chunk7WPU5CCV_js.ia({url:chunk7WPU5CCV_js.ka().viewCount(t),data:{uuid:chunk7WPU5CCV_js.N()}}),W=async t=>{let o=chunk7WPU5CCV_js.M.dispatch;try{let e=await chunk7WPU5CCV_js.ia({...S(t)});if(chunk7WPU5CCV_js.U(e.status)){if(await I__default.default.head("https://"+chunk7WPU5CCV_js.W(e.data.hls_links)+e.data.path),t)return o(chunk7WPU5CCV_js.J(e.data));P(e.data.content_id),T(e.data);}else throw new Error(JSON.stringify({status:e.status,message:e.data}))}catch{o(chunk7WPU5CCV_js.u(!0)),o(chunk7WPU5CCV_js.v(!1));}},T=t=>{let o=chunk7WPU5CCV_js.M.dispatch,{params:e}=chunk7WPU5CCV_js.M.getState().videoData;o(chunk7WPU5CCV_js.r({...t,subtitles:chunk7WPU5CCV_js.ba("hasSubtitlesInParams")?e.subtitles:t.subtitles,stream_link:!!t.stream_link&&chunk7WPU5CCV_js.Q("https://"+chunk7WPU5CCV_js.W(t.hls_links)+t.path)})),o(chunk7WPU5CCV_js.u(!0)),o(chunk7WPU5CCV_js.v(!0));},X=()=>{let t=chunk7WPU5CCV_js.M.dispatch,{subtitles:o,selectedSubtitle:e}=chunk7WPU5CCV_js.M.getState().videoData,i=o.find(m=>m.language==="fa");e?(Object.values(chunk7WPU5CCV_js.ea().textTracks).find(m=>m.mode==="showing").mode="disabled",t(chunk7WPU5CCV_js.A(void 0)),chunk7WPU5CCV_js.Ba(chunk7WPU5CCV_js.za("empty"))):i?(i.mode="showing",t(chunk7WPU5CCV_js.A(i)),chunk7WPU5CCV_js.Ba(chunk7WPU5CCV_js.za(i.language))):(chunk7WPU5CCV_js.ea().textTracks[0].mode="showing",t(chunk7WPU5CCV_js.A(chunk7WPU5CCV_js.ea().textTracks[0])),chunk7WPU5CCV_js.Ba(chunk7WPU5CCV_js.za(chunk7WPU5CCV_js.ea().textTracks[0].language)));};
|
|
2
|
+
exports.a=W;exports.b=X;//# sourceMappingURL=chunk-4DDOAXAN.js.map
|
|
3
|
+
//# sourceMappingURL=chunk-4DDOAXAN.js.map
|
|
@@ -0,0 +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","setInfo","conditions","addUuidToSrc","handleSubtitle","subtitles","selectedSubtitle","faSubtitle","subtitle","mainPlayerVideoTag","textTrack","setSelectedSubtitle","sendFluentLog","subtitleLog"],"mappings":"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","file":"chunk-4DDOAXAN.js","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\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 {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
|
+
import {M,ea,H}from'./chunk-I6M7TYYX.mjs';import {e}from'./chunk-DBPGS72Q.mjs';e();var f=()=>{let{params:r}=M.getState().videoData,t=ea().currentTime;if(t!==0){let d=ea().duration,i={video_id:+r.id,video_type:2,time:t===d?0:Math.floor(ea().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-6CNSMDHE.mjs.map
|
|
2
|
+
//# sourceMappingURL=chunk-6CNSMDHE.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-6CNSMDHE.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
|
+
import {M,ia,U,W,J,u,v,r,ba,Q,ea,A as A$1,Ba,za,ka,N}from'./chunk-I6M7TYYX.mjs';import {e}from'./chunk-DBPGS72Q.mjs';import P 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),S=t=>(I(t),a);var T=t=>ia({url:ka().viewCount(t),data:{uuid:N()}}),X=async t=>{let o=M.dispatch;try{let e=await ia({...S(t)});if(U(e.status)){if(await P.head("https://"+W(e.data.hls_links)+e.data.path),t)return o(J(e.data));T(e.data.content_id),V(e.data);}else throw new Error(JSON.stringify({status:e.status,message:e.data}))}catch{o(u(!0)),o(v(!1));}},V=t=>{let o=M.dispatch,{params:e}=M.getState().videoData;o(r({...t,subtitles:ba("hasSubtitlesInParams")?e.subtitles:t.subtitles,stream_link:!!t.stream_link&&Q("https://"+W(t.hls_links)+t.path)})),o(u(!0)),o(v(!0));},Y=()=>{let t=M.dispatch,{subtitles:o,selectedSubtitle:e}=M.getState().videoData,i=o.find(m=>m.language==="fa");e?(Object.values(ea().textTracks).find(m=>m.mode==="showing").mode="disabled",t(A$1(void 0)),Ba(za("empty"))):i?(i.mode="showing",t(A$1(i)),Ba(za(i.language))):(ea().textTracks[0].mode="showing",t(A$1(ea().textTracks[0])),Ba(za(ea().textTracks[0].language)));};
|
|
2
|
+
export{X as a,Y as b};//# sourceMappingURL=chunk-6OZZD7ZH.mjs.map
|
|
3
|
+
//# sourceMappingURL=chunk-6OZZD7ZH.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","videoViewCount","contentId","apiCaller","getUUID","getVodDetails","dispatch","d","responseValidator","axios","weighted_random","setDetailsMiniPlayer","detailSetter","setIsFetchDetails","setIsValidAddress","data","setInfo","conditions","addUuidToSrc","handleSubtitle","subtitles","selectedSubtitle","faSubtitle","subtitle","mainPlayerVideoTag","textTrack","setSelectedSubtitle","sendFluentLog","subtitleLog"],"mappings":"0IAAAA,CAAAA,EAAAA,CCAAA,IAIO,IAAMC,CAAAA,CAAaC,GAAgB,CACtC,GAAM,CAAE,MAAA,CAAAC,CAAO,CAAIC,CAAAA,CAAAA,CAAM,UAAW,CAAA,SAAA,CACpC,OAAOC,EAAI,EAAA,CAAE,GAAI,CAAA,SAAA,EAAaH,GAAUC,CAAO,CAAA,EAAA,CACnD,EAEMG,CAAgC,CAAA,CAClC,IAAK,EACL,CAAA,aAAA,CAAe,CACf,CAAA,OAAA,CAAS,EACT,CAAA,WAAA,CAAa,EACb,CAAA,aAAA,CAAe,MACnB,CAEMC,CAAAA,CAAAA,CAAoBC,CACtBF,GAAAA,CAAAA,CAAc,IAAML,CAAUO,CAAAA,CAAO,EACrCF,CAAc,CAAA,aAAA,CAAgB,EAC9BA,CAAc,CAAA,WAAA,CAAc,CACxB,CACI,UAAW,GACX,CAAA,SAAA,CAAW,KACX,YAAc,CAAA,GACd,YAAc,CAAA,CAAC,GAAG,CAAA,CAClB,MAAO,CACP,CAAA,KAAA,CAAO,CACX,CACA,CAAA,CACI,UAAW,IACX,CAAA,SAAA,CAAW,GACX,CAAA,YAAA,CAAc,CAAC,GAAK,CAAA,GAAA,CAAK,IAAK,GAAG,CAAA,CACjC,aAAc,EAAC,CACf,KAAO,CAAA,EAAA,CACP,MAAO,CACX,CACJ,EACOA,CAIEG,CAAAA,CAAAA,CAAAA,CAAuBD,IAChCD,CAAiBC,CAAAA,CAAO,CACjBF,CAAAA,CAAAA,CAAAA,KDpBLI,CAAkBC,CAAAA,CAAAA,EACtBC,GAAU,CAAE,GAAA,CAAKP,IAAM,CAAA,SAAA,CAAUM,CAAS,CAAA,CAAG,KAAM,CAAE,IAAA,CAAME,GAAU,CAAE,CAAC,CAE7DC,CAAAA,CAAAA,CAAgB,MAAON,CAAAA,EAAqB,CACvD,IAAMO,CAAAA,CAAWX,EAAM,QACvB,CAAA,GAAI,CACF,IAAMY,CAAAA,CAAI,MAAMJ,EAAAA,CAAU,CAAE,GAAGH,CAAAA,CAAoBD,CAAO,CAAE,CAAC,EAC7D,GAAIS,CAAAA,CAAkBD,CAAE,CAAA,MAAM,EAAG,CAI/B,GAHA,MAAME,CAAM,CAAA,IAAA,CACV,WAAaC,CAAgBH,CAAAA,CAAAA,CAAE,IAAK,CAAA,SAAS,EAAIA,CAAE,CAAA,IAAA,CAAK,IAC1D,CACIR,CAAAA,CAAAA,CAAS,OAAOO,CAASK,CAAAA,CAAAA,CAAqBJ,EAAE,IAAI,CAAC,EACzDN,CAAeM,CAAAA,CAAAA,CAAE,KAAK,UAAW,CAAA,CACjCK,EAAaL,CAAE,CAAA,IAAI,EACrB,CAAA,WACQ,IAAI,KAAA,CAAM,KAAK,SAAU,CAAA,CAAE,OAAQA,CAAE,CAAA,MAAA,CAAQ,OAASA,CAAAA,CAAAA,CAAE,IAAK,CAAC,CAAC,CACzE,CAAqB,KAAA,CACnBD,EAASO,CAAkB,CAAA,CAAA,CAAI,CAAC,CAAA,CAChCP,EAASQ,CAAkB,CAAA,CAAA,CAAK,CAAC,EACnC,CACF,EAEaF,CAAgBG,CAAAA,CAAAA,EAAc,CACzC,IAAMT,EAAWX,CAAM,CAAA,QAAA,CACjB,CAAC,MAAAD,CAAAA,CAAM,EAAIC,CAAM,CAAA,QAAA,EAAW,CAAA,SAAA,CAClCW,EACEU,CAAQ,CAAA,CACN,GAAGD,CACH,CAAA,SAAA,CAAWE,yBAA6C,CAAIvB,CAAAA,CAAAA,CAAO,SAAYqB,CAAAA,CAAAA,CAAK,UACpF,WACE,CAAA,CAAC,CAACA,CAAK,CAAA,WAAA,EACPG,EAAa,UAAaR,CAAAA,CAAAA,CAAgBK,CAAK,CAAA,SAAS,EAAIA,CAAK,CAAA,IAAI,CACzE,CAAC,CACH,EACAT,CAASO,CAAAA,CAAAA,CAAkB,EAAI,CAAC,CAAA,CAChCP,EAASQ,CAAkB,CAAA,CAAA,CAAI,CAAC,EAClC,CAAA,CAEaK,EAAiB,IAAM,CAClC,IAAMb,CAAAA,CAAWX,EAAM,QACjB,CAAA,CAAE,UAAAyB,CAAW,CAAA,gBAAA,CAAAC,CAAiB,CAAI1B,CAAAA,CAAAA,CAAM,QAAS,EAAA,CAAE,UAEnD2B,CAAkBF,CAAAA,CAAAA,CAAU,KAC/BG,CAAkBA,EAAAA,CAAAA,CAAS,WAAa,IAC3C,CAAA,CACIF,CACF,EAAA,MAAA,CAAO,OAAOG,EAAmB,EAAA,CAAE,UAAU,CAAE,CAAA,IAAA,CAC5CC,GAAmBA,CAAU,CAAA,IAAA,GAAS,SACzC,CAAA,CAAG,KAAO,UACVnB,CAAAA,CAAAA,CAASoB,IAAoB,KAAS,CAAA,CAAC,EACvCC,EAAcC,CAAAA,EAAAA,CAAY,OAAO,CAAC,GAE9BN,CACFA,EAAAA,CAAAA,CAAW,KAAO,SAClBhB,CAAAA,CAAAA,CAASoB,IAAoBJ,CAAU,CAAC,CACxCK,CAAAA,EAAAA,CAAcC,GAAYN,CAAW,CAAA,QAAQ,CAAC,CAE9CE,GAAAA,EAAAA,GAAqB,UAAW,CAAA,CAAC,CAAE,CAAA,IAAA,CAAO,UAC1ClB,CAASoB,CAAAA,GAAAA,CAAoBF,IAAqB,CAAA,UAAA,CAAW,CAAC,CAAC,CAAC,EAChEG,EAAcC,CAAAA,EAAAA,CAAYJ,IAAqB,CAAA,UAAA,CAAW,CAAC,CAAE,CAAA,QAAQ,CAAC,CAG5E,EAAA","file":"chunk-6OZZD7ZH.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\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 {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
|
+
import {e as e$1}from'./chunk-L62LZRSJ.mjs';import {ca,da,f,ea,ba,T}from'./chunk-I6M7TYYX.mjs';import {a}from'./chunk-6567FIPA.mjs';import {e}from'./chunk-DBPGS72Q.mjs';import {useState,useRef,useEffect}from'react';import {shallowEqual}from'react-redux';import {useDoubleTap}from'use-double-tap';import u from'next/legacy/image';import {jsx,jsxs,Fragment}from'react/jsx-runtime';e();var j=1e3,H=({type:r,isRightDoubleTouched:F,isLeftDoubleTouched:g,setIsRightDoubleTouched:d,setIsLeftDoubleTouched:s})=>{let[c,f$1]=useState(15),[x,m]=useState(!1),i=useRef(c),M=ca(),{duration:q}=da(({controller:{currentTime:a,duration:n}})=>({currentTime:a,duration:n}),shallowEqual),{videoElementSizeInfo:B}=da(({videoData:{videoElementSizeInfo:a,params:n}})=>({videoElementSizeInfo:a,params:n}),shallowEqual),p=useRef(null);useEffect(()=>{i.current=c;},[c]);let N;N=useDoubleTap(a=>{["touchBackward","touchForward"].includes(r)&&(a.stopPropagation(),r==="touchBackward"&&s?s(!0):r==="touchForward"&&d&&d(!0),clearTimeout(p.current),p.current=setTimeout(()=>m(!0),j));},200),useEffect(()=>{x&&(m(!1),M(f(!1)),F&&d?(d(!1),ea().duration-ea().currentTime<=i.current?e$1(r,ea().duration):e$1(r,i.current),f$1(15)):g&&s&&(s(!1),ea().currentTime<=i.current?e$1(r,0):e$1(r,i.current),f$1(15)));},[x]);let z=a=>{f$1(n=>n+15),ba("isTouchScreenLandscape")&&T(a,r),clearTimeout(p.current),p.current=setTimeout(()=>m(!0),j);},w;return ["backward","forward"].includes(r)?w=jsx("div",{className:`${!ba("isTouchScreen")&&"hover:pl-scale-125"} pl-transition-transform pl-ease-in-out pl-cursor-pointer ${r==="backward"&&(ea().currentTime>=15?"pl-opacity-100":"pl-opacity-30 pl-cursor-default hover:pl-scale-100")} ${r==="forward"&&(q-ea().currentTime>=15?"pl-opacity-100":"pl-opacity-30 pl-cursor-default hover:pl-scale-100")}}`,onContextMenu:a=>a.preventDefault(),children:jsx(u,{alt:r==="backward"?"backward-icon":"forward-icon",src:r==="backward"?a.backward15:a.forward15,width:24,height:24,onClick:()=>e$1(r,c),onDoubleClick:a=>a.stopPropagation()})}):["touchBackward","touchForward"].includes(r)&&(w=jsx("div",{id:r,className:`pl-relative pl-flex pl-flex-col pl-justify-center pl-items-center pl-gap-2 pl-overflow-hidden ${r==="touchBackward"?"pl-rounded-r-full":"pl-rounded-l-full"}`,style:{width:B.width,height:B.width},...N,children:(F||g)&&jsxs("div",{className:"pl-w-full pl-h-full pl-flex pl-flex-col pl-justify-center pl-items-center pl-gap-2 pl-p-5 pl-bg-secondary-100/[0.3]",onTouchStart:z,children:[jsxs("div",{className:`${r==="touchBackward"?"pl-arrow-left":"pl-arrow-right pl-gap-2"} pl-flex pl-justify-center pl-items-center`,children:[jsx(u,{alt:"arrow-left-icon",src:a.arrowLeft,className:`${r==="touchForward"&&"pl-rotate-180"}`,width:24,height:24}),jsx(u,{alt:"arrow-left-icon",src:a.arrowLeft,className:`${r==="touchForward"&&"pl-rotate-180"}`,width:24,height:24}),jsx(u,{alt:"arrow-left-icon",src:a.arrowLeft,className:`${r==="touchForward"&&"pl-rotate-180"}`,width:24,height:24})]}),jsxs("p",{className:"pl-text-center pl-text-[14px] pl-font-normal pl-text-white",children:[c," \u062B\u0627\u0646\u06CC\u0647"]})]})})),jsx(Fragment,{children:w})},rr=H;export{rr as a};//# sourceMappingURL=chunk-7U67XHQ5.mjs.map
|
|
2
|
+
//# sourceMappingURL=chunk-7U67XHQ5.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/videoPlayerLibrary/components/custom-components/backwardForward/backwardForward.tsx"],"names":["init_esm_shims","hideTime","BackwardForward","type","isRightDoubleTouched","isLeftDoubleTouched","setIsRightDoubleTouched","setIsLeftDoubleTouched","backwardForwardCount","setBackwardForwardCount","useState","hide","setHide","backwardForwardCountRef","useRef","dispatch","useAppDispatch","duration","useAppSelector","currentTime","shallowEqual","videoElementSizeInfo","params","timeoutRef","useEffect","doubleTouch","useDoubleTap","event","setActiveElements","mainPlayerVideoTag","handleBackwardForward","handleTouchStart","prev","conditions","handleRippleCircle","component","jsx","Image","importImages_default","jsxs","Fragment","backwardForward_default"],"mappings":"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","file":"chunk-CUK77YXD.mjs","sourcesContent":["import { useEffect, useRef, useState } from \"react\";\r\nimport { shallowEqual } from \"react-redux\";\r\nimport { useDoubleTap } from \"use-double-tap\";\r\nimport { useAppDispatch, useAppSelector } from \"../../../helpers/redux/hooks\";\r\nimport { IBackwardForwardProps } from \"../../../helpers/interfaces/interfaces\";\r\nimport { setActiveElements } from \"../../../helpers/redux/slices/controllerSlice\";\r\nimport { handleBackwardForward } from \"../../../helpers/redux/actions/controller.actions\";\r\nimport { ConditionName } from \"../../../helpers/interfaces/enums\";\r\nimport { conditions } from \"../../../helpers/conditions/conditions\";\r\nimport { handleRippleCircle } from \"../../../helpers/helpers\";\r\nimport IMAGES from \"../../../images/importImages\";\r\nimport Image from \"next/legacy/image\";\r\nimport { mainPlayerVideoTag } from \"../../../helpers/constants\";\r\n\r\nconst hideTime = 1000;\r\n\r\nconst BackwardForward = ({\r\n type,\r\n isRightDoubleTouched,\r\n isLeftDoubleTouched,\r\n setIsRightDoubleTouched,\r\n setIsLeftDoubleTouched\r\n}: IBackwardForwardProps) => {\r\n const [backwardForwardCount, setBackwardForwardCount] = useState<number>(15);\r\n const [hide, setHide] = useState<boolean>(false);\r\n const backwardForwardCountRef = useRef<number>(backwardForwardCount);\r\n\r\n const dispatch = useAppDispatch();\r\n const { duration } = useAppSelector(({ controller: { currentTime, duration } }) => ({ currentTime, duration }), shallowEqual);\r\n const { videoElementSizeInfo } = useAppSelector(\r\n ({ videoData: { videoElementSizeInfo, params } }) => ({ videoElementSizeInfo, params }),\r\n shallowEqual\r\n );\r\n\r\n const timeoutRef = useRef<any>(null);\r\n\r\n useEffect(() => {\r\n backwardForwardCountRef.current = backwardForwardCount;\r\n }, [backwardForwardCount]);\r\n\r\n let doubleTouch: any = undefined;\r\n\r\n doubleTouch = useDoubleTap((event) => {\r\n if ([\"touchBackward\", \"touchForward\"].includes(type)) {\r\n event.stopPropagation();\r\n if (type === \"touchBackward\" && setIsLeftDoubleTouched) setIsLeftDoubleTouched(true);\r\n else if (type === \"touchForward\" && setIsRightDoubleTouched) setIsRightDoubleTouched(true);\r\n clearTimeout(timeoutRef.current);\r\n timeoutRef.current = setTimeout(() => setHide(true), hideTime);\r\n }\r\n }, 200);\r\n\r\n useEffect(() => {\r\n if (hide) {\r\n setHide(false);\r\n dispatch(setActiveElements(false));\r\n if (isRightDoubleTouched && setIsRightDoubleTouched) {\r\n setIsRightDoubleTouched(false);\r\n if (mainPlayerVideoTag().duration - mainPlayerVideoTag().currentTime <= backwardForwardCountRef.current) handleBackwardForward(type, mainPlayerVideoTag().duration);\r\n else handleBackwardForward(type, backwardForwardCountRef.current);\r\n setBackwardForwardCount(15);\r\n } else if (isLeftDoubleTouched && setIsLeftDoubleTouched) {\r\n setIsLeftDoubleTouched(false);\r\n if (mainPlayerVideoTag().currentTime <= backwardForwardCountRef.current) handleBackwardForward(type, 0);\r\n else handleBackwardForward(type, backwardForwardCountRef.current);\r\n setBackwardForwardCount(15);\r\n }\r\n }\r\n }, [hide]);\r\n\r\n const handleTouchStart = (event: any) => {\r\n setBackwardForwardCount((prev) => prev + 15);\r\n if (conditions(ConditionName.isTouchScreenLandscape)) handleRippleCircle(event, type);\r\n clearTimeout(timeoutRef.current);\r\n timeoutRef.current = setTimeout(() => setHide(true), hideTime);\r\n };\r\n\r\n let component;\r\n\r\n if ([\"backward\", \"forward\"].includes(type)) {\r\n component = (\r\n <div\r\n className={`${\r\n !conditions(ConditionName.isTouchScreen) && \"hover:pl-scale-125\"\r\n } pl-transition-transform pl-ease-in-out pl-cursor-pointer ${\r\n type === \"backward\" && (mainPlayerVideoTag().currentTime >= 15 ? \"pl-opacity-100\" : \"pl-opacity-30 pl-cursor-default hover:pl-scale-100\")\r\n } ${\r\n type === \"forward\" &&\r\n (duration - mainPlayerVideoTag().currentTime >= 15 ? \"pl-opacity-100\" : \"pl-opacity-30 pl-cursor-default hover:pl-scale-100\")\r\n }}`}\r\n onContextMenu={(event) => event.preventDefault()}\r\n >\r\n <Image\r\n alt={type === \"backward\" ? \"backward-icon\" : \"forward-icon\"}\r\n src={type === \"backward\" ? IMAGES.backward15 : IMAGES.forward15}\r\n width={24} \r\n height={24}\r\n onClick={() => handleBackwardForward(type, backwardForwardCount)}\r\n onDoubleClick={(event: any) => event.stopPropagation()}\r\n />\r\n </div>\r\n );\r\n } else if ([\"touchBackward\", \"touchForward\"].includes(type)) {\r\n component = (\r\n <div\r\n id={type}\r\n className={`pl-relative pl-flex pl-flex-col pl-justify-center pl-items-center pl-gap-2 pl-overflow-hidden ${\r\n type === \"touchBackward\" ? \"pl-rounded-r-full\" : \"pl-rounded-l-full\"\r\n }`}\r\n style={{ width: videoElementSizeInfo.width, height: videoElementSizeInfo.width }}\r\n {...doubleTouch}\r\n >\r\n {(isRightDoubleTouched || isLeftDoubleTouched) && (\r\n <div\r\n className={`pl-w-full pl-h-full pl-flex pl-flex-col pl-justify-center pl-items-center pl-gap-2 pl-p-5 pl-bg-secondary-100/[0.3]`}\r\n onTouchStart={handleTouchStart}\r\n >\r\n <div\r\n className={`${\r\n type === \"touchBackward\" ? \"pl-arrow-left\" : \"pl-arrow-right pl-gap-2\"\r\n } pl-flex pl-justify-center pl-items-center`}\r\n >\r\n <Image\r\n alt=\"arrow-left-icon\"\r\n src={IMAGES.arrowLeft}\r\n className={`${type === \"touchForward\" && \"pl-rotate-180\"}`}\r\n width={24}\r\n height={24}\r\n />\r\n <Image\r\n alt=\"arrow-left-icon\"\r\n src={IMAGES.arrowLeft}\r\n className={`${type === \"touchForward\" && \"pl-rotate-180\"}`}\r\n width={24}\r\n height={24}\r\n />\r\n <Image\r\n alt=\"arrow-left-icon\"\r\n src={IMAGES.arrowLeft}\r\n className={`${type === \"touchForward\" && \"pl-rotate-180\"}`}\r\n width={24}\r\n height={24}\r\n />\r\n </div>\r\n <p className=\"pl-text-center pl-text-[14px] pl-font-normal pl-text-white\">{backwardForwardCount} ثانیه</p>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n\r\n return <>{component}</>;\r\n};\r\n\r\nexport default BackwardForward;\r\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/videoPlayerLibrary/components/custom-components/backwardForward/backwardForward.tsx"],"names":["init_esm_shims","hideTime","BackwardForward","type","isRightDoubleTouched","isLeftDoubleTouched","setIsRightDoubleTouched","setIsLeftDoubleTouched","backwardForwardCount","setBackwardForwardCount","useState","hide","setHide","backwardForwardCountRef","useRef","dispatch","useAppDispatch","duration","useAppSelector","currentTime","shallowEqual","videoElementSizeInfo","params","timeoutRef","useEffect","doubleTouch","useDoubleTap","event","setActiveElements","mainPlayerVideoTag","handleBackwardForward","handleTouchStart","prev","conditions","handleRippleCircle","component","jsx","Image","importImages_default","jsxs","Fragment","backwardForward_default"],"mappings":"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","file":"chunk-7U67XHQ5.mjs","sourcesContent":["import { useEffect, useRef, useState } from \"react\";\r\nimport { shallowEqual } from \"react-redux\";\r\nimport { useDoubleTap } from \"use-double-tap\";\r\nimport { useAppDispatch, useAppSelector } from \"../../../helpers/redux/hooks\";\r\nimport { IBackwardForwardProps } from \"../../../helpers/interfaces/interfaces\";\r\nimport { setActiveElements } from \"../../../helpers/redux/slices/controllerSlice\";\r\nimport { handleBackwardForward } from \"../../../helpers/redux/actions/controller.actions\";\r\nimport { ConditionName } from \"../../../helpers/interfaces/enums\";\r\nimport { conditions } from \"../../../helpers/conditions/conditions\";\r\nimport { handleRippleCircle } from \"../../../helpers/helpers\";\r\nimport IMAGES from \"../../../images/importImages\";\r\nimport Image from \"next/legacy/image\";\r\nimport { mainPlayerVideoTag } from \"../../../helpers/constants\";\r\n\r\nconst hideTime = 1000;\r\n\r\nconst BackwardForward = ({\r\n type,\r\n isRightDoubleTouched,\r\n isLeftDoubleTouched,\r\n setIsRightDoubleTouched,\r\n setIsLeftDoubleTouched\r\n}: IBackwardForwardProps) => {\r\n const [backwardForwardCount, setBackwardForwardCount] = useState<number>(15);\r\n const [hide, setHide] = useState<boolean>(false);\r\n const backwardForwardCountRef = useRef<number>(backwardForwardCount);\r\n\r\n const dispatch = useAppDispatch();\r\n const { duration } = useAppSelector(({ controller: { currentTime, duration } }) => ({ currentTime, duration }), shallowEqual);\r\n const { videoElementSizeInfo } = useAppSelector(\r\n ({ videoData: { videoElementSizeInfo, params } }) => ({ videoElementSizeInfo, params }),\r\n shallowEqual\r\n );\r\n\r\n const timeoutRef = useRef<any>(null);\r\n\r\n useEffect(() => {\r\n backwardForwardCountRef.current = backwardForwardCount;\r\n }, [backwardForwardCount]);\r\n\r\n let doubleTouch: any = undefined;\r\n\r\n doubleTouch = useDoubleTap((event) => {\r\n if ([\"touchBackward\", \"touchForward\"].includes(type)) {\r\n event.stopPropagation();\r\n if (type === \"touchBackward\" && setIsLeftDoubleTouched) setIsLeftDoubleTouched(true);\r\n else if (type === \"touchForward\" && setIsRightDoubleTouched) setIsRightDoubleTouched(true);\r\n clearTimeout(timeoutRef.current);\r\n timeoutRef.current = setTimeout(() => setHide(true), hideTime);\r\n }\r\n }, 200);\r\n\r\n useEffect(() => {\r\n if (hide) {\r\n setHide(false);\r\n dispatch(setActiveElements(false));\r\n if (isRightDoubleTouched && setIsRightDoubleTouched) {\r\n setIsRightDoubleTouched(false);\r\n if (mainPlayerVideoTag().duration - mainPlayerVideoTag().currentTime <= backwardForwardCountRef.current) handleBackwardForward(type, mainPlayerVideoTag().duration);\r\n else handleBackwardForward(type, backwardForwardCountRef.current);\r\n setBackwardForwardCount(15);\r\n } else if (isLeftDoubleTouched && setIsLeftDoubleTouched) {\r\n setIsLeftDoubleTouched(false);\r\n if (mainPlayerVideoTag().currentTime <= backwardForwardCountRef.current) handleBackwardForward(type, 0);\r\n else handleBackwardForward(type, backwardForwardCountRef.current);\r\n setBackwardForwardCount(15);\r\n }\r\n }\r\n }, [hide]);\r\n\r\n const handleTouchStart = (event: any) => {\r\n setBackwardForwardCount((prev) => prev + 15);\r\n if (conditions(ConditionName.isTouchScreenLandscape)) handleRippleCircle(event, type);\r\n clearTimeout(timeoutRef.current);\r\n timeoutRef.current = setTimeout(() => setHide(true), hideTime);\r\n };\r\n\r\n let component;\r\n\r\n if ([\"backward\", \"forward\"].includes(type)) {\r\n component = (\r\n <div\r\n className={`${\r\n !conditions(ConditionName.isTouchScreen) && \"hover:pl-scale-125\"\r\n } pl-transition-transform pl-ease-in-out pl-cursor-pointer ${\r\n type === \"backward\" && (mainPlayerVideoTag().currentTime >= 15 ? \"pl-opacity-100\" : \"pl-opacity-30 pl-cursor-default hover:pl-scale-100\")\r\n } ${\r\n type === \"forward\" &&\r\n (duration - mainPlayerVideoTag().currentTime >= 15 ? \"pl-opacity-100\" : \"pl-opacity-30 pl-cursor-default hover:pl-scale-100\")\r\n }}`}\r\n onContextMenu={(event) => event.preventDefault()}\r\n >\r\n <Image\r\n alt={type === \"backward\" ? \"backward-icon\" : \"forward-icon\"}\r\n src={type === \"backward\" ? IMAGES.backward15 : IMAGES.forward15}\r\n width={24} \r\n height={24}\r\n onClick={() => handleBackwardForward(type, backwardForwardCount)}\r\n onDoubleClick={(event: any) => event.stopPropagation()}\r\n />\r\n </div>\r\n );\r\n } else if ([\"touchBackward\", \"touchForward\"].includes(type)) {\r\n component = (\r\n <div\r\n id={type}\r\n className={`pl-relative pl-flex pl-flex-col pl-justify-center pl-items-center pl-gap-2 pl-overflow-hidden ${\r\n type === \"touchBackward\" ? \"pl-rounded-r-full\" : \"pl-rounded-l-full\"\r\n }`}\r\n style={{ width: videoElementSizeInfo.width, height: videoElementSizeInfo.width }}\r\n {...doubleTouch}\r\n >\r\n {(isRightDoubleTouched || isLeftDoubleTouched) && (\r\n <div\r\n className={`pl-w-full pl-h-full pl-flex pl-flex-col pl-justify-center pl-items-center pl-gap-2 pl-p-5 pl-bg-secondary-100/[0.3]`}\r\n onTouchStart={handleTouchStart}\r\n >\r\n <div\r\n className={`${\r\n type === \"touchBackward\" ? \"pl-arrow-left\" : \"pl-arrow-right pl-gap-2\"\r\n } pl-flex pl-justify-center pl-items-center`}\r\n >\r\n <Image\r\n alt=\"arrow-left-icon\"\r\n src={IMAGES.arrowLeft}\r\n className={`${type === \"touchForward\" && \"pl-rotate-180\"}`}\r\n width={24}\r\n height={24}\r\n />\r\n <Image\r\n alt=\"arrow-left-icon\"\r\n src={IMAGES.arrowLeft}\r\n className={`${type === \"touchForward\" && \"pl-rotate-180\"}`}\r\n width={24}\r\n height={24}\r\n />\r\n <Image\r\n alt=\"arrow-left-icon\"\r\n src={IMAGES.arrowLeft}\r\n className={`${type === \"touchForward\" && \"pl-rotate-180\"}`}\r\n width={24}\r\n height={24}\r\n />\r\n </div>\r\n <p className=\"pl-text-center pl-text-[14px] pl-font-normal pl-text-white\">{backwardForwardCount} ثانیه</p>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n\r\n return <>{component}</>;\r\n};\r\n\r\nexport default BackwardForward;\r\n"]}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
'use strict';var chunkWO4IQUGO_js=require('./chunk-WO4IQUGO.js'),toolkit=require('@reduxjs/toolkit'),reactRedux=require('react-redux'),Ie=require('axios');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var Ie__default=/*#__PURE__*/_interopDefault(Ie);var oe=chunkWO4IQUGO_js.b((la,se)=>{chunkWO4IQUGO_js.e();se.exports={baseUrl:"https://hamrahi.cloud",fluentdUrl:"https://hamrahi.cloud"};});var ie={};chunkWO4IQUGO_js.c(ie,{isNpmPackage:()=>Fe});var Fe,ne=chunkWO4IQUGO_js.a(()=>{chunkWO4IQUGO_js.e();Fe=!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},B=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:_e,setIsAutoPlay:Re,setDuration:Ee,setCurrentTime:Qe,setQualityLevels:Be,setAutoQuality:$e,setActiveElements:Oe,setIsLoading:Ke,setIsFullScreen:qe,setBufferedTimeWidth:je,setFirstPlay:Ce,setActivePointerProgressBar:We,setDelayTurnOffControlbar:He,setManualQuality:Xe,setCanPlayVideo:Ye,setLock:Ge,setIsEnded:Je,setTooltipTime:Ze,setClearControllerSlice:$}=B.actions,O=B.reducer;chunkWO4IQUGO_js.e();var K={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},markers:[],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},q=toolkit.createSlice({name:"videoData",initialState:K,reducers:{setInfo:(t,e)=>{t.details=e.payload;},setPlayerParams:(t,e)=>{t.params=e.payload;},setMarkers:(t,e)=>{t.markers=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=>K}}),{setInfo:rt,setPlayerParams:at,setVideoElementSizeInfo:st,setMarkers:ot,setIsFetchDetails:it,setIsValidAddress:nt,setVideoTimelines:lt,setIsReady:ut,setSubtitles:ct,setSubtitleText:dt,setSelectedSubtitle:pt,setClearVideoDataSlice:j}=q.actions,C=q.reducer;chunkWO4IQUGO_js.e();var W={settings:{quality:-1,brightness:100,volume:100,speed:1},videoSettings:{time:0}},H=toolkit.createSlice({name:"user",initialState:W,reducers:{setUserSettings:(t,e)=>{t.settings=e.payload;},setVideoSettings:(t,e)=>{t.videoSettings=e.payload;},setClearUserSlice:()=>W}}),{setUserSettings:Pt,setVideoSettings:ft,setClearUserSlice:X}=H.actions,Y=H.reducer;chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();var we={settingPopover:!1,speedPopover:!1,qualityLevelsPopover:!1,markersListPopover:!1},G=toolkit.createSlice({name:"popover",initialState:we,reducers:{setSettingPopover:(t,e)=>{t.settingPopover=e.payload;},setSpeedPopover:(t,e)=>{t.speedPopover=e.payload;},setQualityLevelsPopover:(t,e)=>{t.qualityLevelsPopover=e.payload;},setMarkersListPopover:(t,e)=>{t.markersListPopover=e.payload;},setClearPopoversSlice:t=>{t.settingPopover=!1,t.speedPopover=!1,t.qualityLevelsPopover=!1,t.markersListPopover=!1;}}}),{setSettingPopover:kt,setSpeedPopover:xt,setQualityLevelsPopover:Tt,setMarkersListPopover:Dt,setClearPopoversSlice:J}=G.actions,Z=G.reducer;chunkWO4IQUGO_js.e();var z={params:{id:"0",type:"",currentTime:0,autoPlay:!1,onClose:()=>{}},details:{},play:!1},N=toolkit.createSlice({name:"user",initialState:z,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=>z}}),{setMiniPlayerInfo:_t,setDetailsMiniPlayer:Rt,setPlayMiniPlayer:Et,setClearMiniPlayerSlice:Qt}=N.actions,ee=N.reducer;var xe=toolkit.configureStore({reducer:{controller:O,videoData:C,popovers:Z,user:Y,miniPlayer:ee},devTools:!0,middleware:t=>t({serializableCheck:!1})}),s=xe;chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();var c=t=>{let{params:e,details:r,isValidAddress:a,isFetchDetails:i,isReady:n,subtitles:d,selectedSubtitle:l,markers:h}=s.getState().videoData,{firstPlay:p,lock:u,canPlayVideo:m,manualQuality:f,activeElements:S,isLoading:g,isEnded:_,isAutoPlay:ue,play:ce,isFullScreen:k}=s.getState().controller,{settingPopover:R,speedPopover:de,qualityLevelsPopover:pe,markersListPopover:me}=s.getState().popovers,{settings:E}=s.getState().user,x=s.getState().miniPlayer;switch(t){case"showHeader":return !p&&m;case"showMain":return !u||p;case"showFooter":return !p&&m;case"showTouchVolumeBrightness":return !p&&T()&&!u&&!_;case"showBackwardForward":return !p&&v()&&!u;case"showTitle":return !w(e.type)&&k&&!u;case"showSettingPopover":return R;case"showSpeedPopover":return de;case"showQualityLevelsPopover":return pe;case"showSettingIcon":return !w(e.type)&&!b()&&!k;case"showBanner":return p&&(r.banner||e.banner);case"showProgressbar":return !b();case"showPictureInPicture":return !b()&&!v();case"showSubtitle":return !!l;case"showMarkerListPopover":return me;case"hidePopovers":return !R;case"isLandscape":return window.innerHeight<=window.innerWidth;case"isTouchScreen":return v();case"isTouchScreenPortrait":return re();case"isTouchScreenLandscape":return T();case"isActiveElements":return S;case"isPlay":return ce;case"isPlayMiniPlayer":return x.play;case"isFirstPlay":return p;case"isLock":return u;case"isIOS":return b();case"isLoading":return g;case"isStaticFormat":return e.type==="static";case"isEnded":return _;case"isAutoPlay":return ue;case"isFullScreen":return k;case"isValidAddress":return a;case"isFetchDetails":return i;case"isAutoQuality":return E.quality===-1;case"isPressKeySpace":return !u;case"isPressKeyI":return !u&&!p;case"isPressKeyF":return !u&&!p;case"isPressKeyS":return !u&&!p;case"isPressKeyArrowRight":return !p&&!u;case"isPressKeyArrowLeft":return !p&&!u;case"isPressKeyM":return !p&&!u;case"isPressKeyC":return !u&&!p&&!!d&&d.length>0;case"isSendTimelineLog":return !w(e.type);case"isReady":return n;case"isSelectedSubtitle":return !!d&&d.length>0&&l;case"isMiniPlayerAndMainPlayerSame":return e.id===x.params.id;case"hasTitle":return r.title;case"hasBanner":return r.banner;case"hasStreamLink":return r.stream_link;case"hasManualQuality":return f!=null;case"hasSound":return !!E.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 l&&l.activeCues&&l.activeCues.length>0;case"hasOnPlayParams":return !!e.onPlay;case"hasOnPauseParams":return !!e.onPause;case"hasPlayStatusParams":return e.playStatus!==void 0;case"hasMiniPlayer":return x.params.id;case"hasCurrentTimeParams":return e.currentTime!==void 0;case"hasMarkers":return h.length!==0;case"hasSubtitlesInParams":return e.subtitles&&e.subtitles.length;case"getDetails":return !!e.type&&e.id;case"getMarkers":return String(e.type)==="vod"&&e.id&&i;case"canPlayVideo":return m;case"setSubtitleFirstPlay":return r.subtitles&&r.subtitles.length>0&&!p&&!w(e.type);}};var ae=t=>new Promise(e=>setTimeout(e,t*1e3)),P=()=>{let t=localStorage.getItem("hamrahiUUID");return t||(t=Te(),localStorage.setItem("hamrahiUUID",t)),t.toString()},Te=()=>{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},v=()=>"ontouchstart"in window||window.DocumentTouch&&document instanceof window.DocumentTouch,T=()=>{let{isFullScreen:t}=s.getState().controller;return v()&&t},re=()=>{let{isFullScreen:t}=s.getState().controller;return v()&&!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,ir=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,nr=t=>{let e=new URL(t),r=t;return e.search.length?r+=`&uuid=${P()}`:r+=`?uuid=${P()}`},lr=(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}},ur=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=${P()}`:r=`?uuid=${P()}`,r},cr=(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 i=r.getElementsByClassName("pl-ripple")[0];i&&i.remove(),r.appendChild(a);};var dr=t=>t>=200&&t<300,pr=()=>{let t=s.dispatch;t(j()),t($()),t(X()),t(J());},mr=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},yr=t=>{let e=0;performance&&performance.getEntriesByType("navigation")&&(e=performance.getEntriesByType("navigation")[0].duration),t.current=e;},gr=(t,e,r)=>{let a=e*window.devicePixelRatio,i=r*window.devicePixelRatio,n=[];return c("isTouchScreenPortrait")?n=t.filter(d=>Number(d.split("x")[0].trim())<=a):n=t.filter(d=>Number(d.split("x")[0].trim())<=i||Number(d.split("x")[1].trim())<=a),n.indexOf(n[n.length-1])},D=(t,e)=>{let r={};for(let a in t){let i=e?`${e}_${a}`:a;typeof t[a]=="object"&&!Array.isArray(t[a])?r={...r,...D(t[a],i)}:r[i]=t[a];}return r},hr=t=>{let e={fa:1,en:2};return t.slice().sort((r,a)=>{let i=e[r.lang]||999,n=e[a.lang]||999;return i-n})},Pr=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},fr=t=>t.split(/\r?\n|\r|\n/g),Sr=t=>{if(t){let e=t.offsetLeft-t.offsetWidth/2,r=window.innerWidth-(t.offsetLeft+t.offsetWidth);if(e>=0&&r>=0)return "inViewport";if(e<0)return "OutViewPortFromLeft";if(r<0)return "OutViewPortFromRight"}};chunkWO4IQUGO_js.e();var Lr=()=>reactRedux.useDispatch(),kr=reactRedux.useSelector;chunkWO4IQUGO_js.e();var M=()=>document.getElementById("player-tag"),Mr=()=>document.getElementById("mini-player-video-tag"),Ir=()=>document.getElementById("time-progress-bar"),Fr=()=>s.getState().videoData.videoElementSizeInfo.width-2;chunkWO4IQUGO_js.e();var $r=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:c("hasStreamLink")?r.stream_link:e.id,provider:e.provider}},Or=t=>{let{params:e,details:r}=s.getState().videoData,{qualityLevels:a,manualQuality:i,autoQuality:n}=s.getState().controller;return {category:"qualityChangeRequest",currentPlayingQuality:`${a[c("isAutoQuality")?n??i:i]}P`,previousSelectedQuality:c("isAutoQuality")?"auto":`${a[i]}P`,selectedQuality:t,id:Number(e.id),type:e.type,src:c("hasStreamLink")?r.stream_link:e.id,provider:e.provider}},Kr=t=>{let{params:e,details:r}=s.getState().videoData,{qualityLevels:a,autoQuality:i}=s.getState().controller,{settings:n}=s.getState().user;return {category:"catchUpLoading",previousVideoTime:Number(sessionStorage.getItem("previousVideoTime")),currentVideoTime:M().currentTime,duration:t,quality:`${c("isAutoQuality")?a[i]:a[n.quality]}P`,isAutoQuality:c("isAutoQuality"),id:Number(e.id),type:e.type,src:c("hasStreamLink")?r.stream_link:e.id,provider:e.provider}},qr=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}},jr=t=>{let{params:e,details:r}=s.getState().videoData;return {category:t,id:Number(e.id),type:e.type,src:c("hasStreamLink")?r.stream_link:e.id}},Cr=(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:c("hasStreamLink")?a.stream_link:r.id}},Wr=(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:c("hasStreamLink")?a.stream_link:r.id}},Hr=t=>{let{params:e,details:r}=s.getState().videoData;return {category:t,id:Number(e.id),type:e.type,src:c("hasStreamLink")?r.stream_link:e.id}};var Xr=(t,e)=>{let{params:r,details:a}=s.getState().videoData,{duration:i}=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(i),clientUUID:P(),user_id:a.user_id,content_type:a.content_type,content_id:a.content_id}},Yr=(t,e,r)=>{let{params:a,details:i}=s.getState().videoData;return {category:"autoQualityChange",sourceQuality:t,targetQuality:e,diffQuality:r,id:Number(a.id),type:a.type,src:c("hasStreamLink")?i.stream_link:a.id,provider:a.provider}},Gr=(t,e)=>{let{params:r,details:a}=s.getState().videoData;return {category:"pingpong",id:Number(r.id),type:r.type,src:c("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}},Zr=(t,e,r,a,i)=>{let{params:n,details:d}=s.getState().videoData,l=Date.now()-i.current+t+e,h=window.performance.memory,p=JSON.parse(JSON.stringify(window.performance.timing));return {category:"initLog",id:Number(n.id),type:n.type,origin:new URL(c("hasStreamLink")?d.stream_link:n.id).origin,src:c("hasStreamLink")?d.stream_link:n.id,loading:t,bannerLoading:!c("hasBanner")||r<0?0:r,waiting:e,firstChunkPlaying:a<0?0:a,totalTime:l,provider:n.provider,performance:D({memory:h,timing:p},"performance"),userAgent:window.navigator.userAgent}},zr=(t,e,r,a,i)=>{let{params:n,details:d}=s.getState().videoData,{settings:l}=s.getState().user,h=Date.now()-r.current;return {category:"loading",id:Number(n.id),type:n.type,src:c("hasStreamLink")?d.stream_link:n.id,duration:t,quality:`${e}P`,isAutoQuality:c("isAutoQuality"),previousLoaderDiff:h,counter:a.current,loadingPercentile:Number((t/h).toFixed(2)),videoTime:M().currentTime,videoEntranceTime:i,speed:l.speed,provider:n.provider}},Nr=t=>{let{params:e,details:r}=s.getState().videoData;return {category:"subtitle",language:t,id:Number(e.id),type:e.type,src:c("hasStreamLink")?r.stream_link:e.id}},ea=(t,e,r,a,i)=>{let{params:n,details:d}=s.getState().videoData;return {category:"eventMarkerClick",video_id:Number(n.id),markerId:t,markerTime:e,markerTitle:r,markerDescription:a,markerSticker:i,type:n.type,src:c("hasStreamLink")?d.stream_link:n.id,provider:n.provider}};chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();var I=async({url:t,method:e="GET",data:r,headers:a,retryCount:i=1,maxRetryCount:n=0,errorMessage:d,retryPolicy:l,errorCallback:h,timeoutCount:p})=>{let u={url:t,method:e,headers:{...a,"Content-Type":"application/json"},timeout:p?p*1e3:void 0};r?e==="GET"?u={...u,params:{uuid:s.getState().videoData.params.uuid,provider:s.getState().videoData.params.provider==="unknown"?void 0:s.getState().videoData.params.provider,...r}}:u={...u,data:{uuid:s.getState().videoData.params.uuid,provider:s.getState().videoData.params.provider==="unknown"?void 0:s.getState().videoData.params.provider,...r}}:e==="GET"?u={...u,params:{uuid:s.getState().videoData.params.uuid,provider:s.getState().videoData.params.provider==="unknown"?void 0:s.getState().videoData.params.provider}}:u={...u,data:{uuid:s.getState().videoData.params.uuid,provider:s.getState().videoData.params.provider==="unknown"?void 0:s.getState().videoData.params.provider}};try{return await Ie__default.default(u)}catch(m){if(!(m&&m.response&&m.response.status===401)){h&&h(m.response.status,m.response.message);let f=0,S=0;if(l!==void 0){for(let g=0;g<l.length;g++)if((l[g].codeAbove&&m.response.status>=l[g].codeAbove||l[g].codeBelow&&m.response.status<=l[g].codeBelow)&&(l[g].excludeCodes.length===0||!l[g].excludeCodes.includes(m.response.status))||l[g].includeCodes.length===0||l[g].includeCodes.includes(m.response.status)){S=l[g].count,f=l[g].delay;break}}else S=n,f=i+1;if(i<S)return await ae(f),I({url:t,method:e,data:r,headers:a,retryCount:i+1,newMaxRetryCount:S,errorMessage:d,retryPolicy:l,errorCallback:h});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 F=oe(),V=(ne(),chunkWO4IQUGO_js.d(ie)),L=()=>(V?F.baseUrl:process.env.baseUrl)+"/live/api",U=()=>V?F.fluentdUrl:process.env.fluentdUrl,da=()=>(V?F.baseUrl:process.env.baseUrl)+"/emoji";var le=()=>({vod:{getVodUrl:`${L()}/v1/live/details/vod/`,getMarkerUrl:t=>`${L()}/v1/live/list-event/vod/${t}/`},viewCount:t=>`${L()}/v1/viewed/content/${t}`,videoTimelineLog:`${U()}/video-timeline.log`,logs:`${U()}/drive-endpoint.log`});var ba=t=>{let{details:e}=s.getState().videoData,r={...t,timestamp:Date.now(),clientUUID:P(),uuid:P(),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:le().logs,method:"post",data:r});};
|
|
2
|
+
exports.$=fr;exports.A=pt;exports.Aa=ea;exports.B=kt;exports.Ba=ba;exports.C=xt;exports.D=Tt;exports.E=Dt;exports.F=J;exports.G=Pt;exports.H=ft;exports.I=_t;exports.J=Rt;exports.K=Et;exports.L=Qt;exports.M=s;exports.N=P;exports.O=v;exports.P=ir;exports.Q=nr;exports.R=lr;exports.S=ur;exports.T=cr;exports.U=dr;exports.V=pr;exports.W=mr;exports.X=yr;exports.Y=gr;exports.Z=hr;exports._=Pr;exports.a=_e;exports.aa=Sr;exports.b=Ee;exports.ba=c;exports.c=Qe;exports.ca=Lr;exports.d=Be;exports.da=kr;exports.e=$e;exports.ea=M;exports.f=Oe;exports.fa=Mr;exports.g=Ke;exports.ga=Ir;exports.h=qe;exports.ha=Fr;exports.i=je;exports.ia=I;exports.j=Ce;exports.ja=da;exports.k=We;exports.ka=le;exports.l=He;exports.la=$r;exports.m=Xe;exports.ma=Or;exports.n=Ye;exports.na=Kr;exports.o=Ge;exports.oa=qr;exports.p=Je;exports.pa=jr;exports.q=Ze;exports.qa=Cr;exports.r=rt;exports.ra=Wr;exports.s=at;exports.sa=Hr;exports.t=st;exports.ta=Xr;exports.u=it;exports.ua=Yr;exports.v=nt;exports.va=Gr;exports.w=lt;exports.wa=Jr;exports.x=ut;exports.xa=Zr;exports.y=ct;exports.ya=zr;exports.z=dt;exports.za=Nr;//# sourceMappingURL=chunk-7WPU5CCV.js.map
|
|
3
|
+
//# sourceMappingURL=chunk-7WPU5CCV.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","setMarkers","setIsFetchDetails","setIsValidAddress","setVideoTimelines","setIsReady","setSubtitles","setSubtitleText","setSelectedSubtitle","setClearVideoDataSlice","videoDataSlice_default","UserSliceState","userSlice","setUserSettings","setVideoSettings","setClearUserSlice","userSlice_default","PopOversSliceState","popoversSlice","setSettingPopover","setSpeedPopover","setQualityLevelsPopover","setMarkersListPopover","setClearPopoversSlice","popoversSlice_default","MiniPlayerSliceState","setMiniPlayerInfo","setDetailsMiniPlayer","setPlayMiniPlayer","setClearMiniPlayerSlice","miniPlayerSlice_default","store","configureStore","getDefaultMiddleware","store_default","conditions","type","params","details","isValidAddress","isFetchDetails","isReady","subtitles","selectedSubtitle","markers","firstPlay","lock","canPlayVideo","manualQuality","activeElements","isLoading","isEnded","isAutoPlay","play","isFullScreen","settingPopover","speedPopover","qualityLevelsPopover","markersListPopover","settings","miniPlayer","isTouchScreenLandscape","isTouchScreen","staticFormats","isIOS","isTouchScreenPortrait","wait","s","resolve","getUUID","uuid","uuidGenerator","char","val","addZeroBefore","n","secondsToHMS","seconds","h","m","realFormat","addUuidToSrc","src","urlObject","urlSrc","checkParentTarget","event","target","splitQueryParamsFromStreamLink","playerType","streamLink","queryParams","handleRippleCircle","id","element","circle","ripple","responseValidator","status","clearRedux","dispatch","weighted_random","options","i","weights","random","handlePageLoadTime","loadingDurationRef","pageLoadTime","highestResolutionSupported","resolutions","width","height","w","filteredResolutions","resolution","flattenObject","input","keyName","result","key","newKey","sortLanguages","array","priority","a","b","prioA","prioB","getSubtitleLabel","subtitleLanguage","label","spliteStringPerLine","str","inViewPort","positionLeft","positionRight","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","eventMarkerClickLog","markerId","markerTime","markerTitle","markerDescription","markerSticker","apiCaller","url","method","data","headers","retryCount","maxRetryCount","errorMessage","retryPolicy","errorCallback","timeoutCount","axiosConfig","axios","error","newRetryDelay","newMaxRetryCount","envs","Pe","getRestApiLiveUrl","getFluentdUrl","getEmojiUrl","API","videoId","content_id","sendFluentLog","_data"],"mappings":"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","file":"chunk-7WPU5CCV.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, IMarker } from \"../../interfaces/interfaces\";\r\n\r\nexport const VideoDataSliceState: IVideoDataSlice = {\r\n details: {\r\n stream_link: \"\",\r\n type: \"\",\r\n banner: \"\",\r\n id: undefined,\r\n title: undefined,\r\n vtt: undefined,\r\n vtt_mobile: undefined,\r\n user_id: null,\r\n content_id: undefined,\r\n content_type: null,\r\n duration: 0,\r\n subtitles: undefined,\r\n },\r\n params: {\r\n type: \"\",\r\n id: \"\",\r\n bannerAlt: \"\",\r\n fullscreen: \"\",\r\n autoplay: \"\",\r\n banner: \"\",\r\n provider: \"cafevdo\",\r\n onFinished: undefined,\r\n onPlay: undefined,\r\n onPause: undefined,\r\n playStatus: undefined,\r\n currentTime: undefined,\r\n },\r\n markers: [],\r\n videoElementSizeInfo: {\r\n bottom: 0,\r\n top: 0,\r\n right: 0,\r\n left: 0,\r\n width: 0,\r\n height: 0\r\n },\r\n isFetchDetails: false,\r\n isValidAddress: false,\r\n videoTimelines: [],\r\n isReady: false,\r\n subtitles: [],\r\n selectedSubtitle: undefined,\r\n subtitleText: undefined,\r\n};\r\n\r\nexport const videoDataSlice = createSlice({\r\n name: \"videoData\",\r\n initialState: VideoDataSliceState,\r\n reducers: {\r\n setInfo: (state, action: PayloadAction<IDetails>) => {\r\n state.details = action.payload;\r\n },\r\n setPlayerParams: (state, action: PayloadAction<IParams>) => {\r\n state.params = action.payload;\r\n },\r\n setMarkers: (state, action: PayloadAction<IMarker[]>) => {\r\n state.markers = action.payload;\r\n },\r\n setVideoElementSizeInfo: (state, action: PayloadAction<IVideoElementSizeInfo>) => {\r\n state.videoElementSizeInfo = action.payload;\r\n },\r\n setIsFetchDetails: (state, action: PayloadAction<boolean>) => {\r\n state.isFetchDetails = action.payload;\r\n },\r\n setIsValidAddress: (state, action: PayloadAction<boolean>) => {\r\n state.isValidAddress = action.payload;\r\n },\r\n setVideoTimelines: (state, action: PayloadAction<number[]>) => {\r\n state.videoTimelines = action.payload;\r\n },\r\n setIsReady: (state, action: PayloadAction<boolean>) => {\r\n state.isReady = action.payload;\r\n },\r\n setSubtitles: (state, action: PayloadAction<TextTrack[]>) => {\r\n state.subtitles = action.payload;\r\n },\r\n setSelectedSubtitle: (state, action: PayloadAction<any>) => {\r\n state.selectedSubtitle = action.payload;\r\n },\r\n setSubtitleText: (state, action: PayloadAction<string>) => {\r\n state.subtitleText = action.payload;\r\n },\r\n setClearVideoDataSlice: (state) => {\r\n return (state = VideoDataSliceState);\r\n }\r\n }\r\n});\r\n\r\nexport const {\r\n setInfo,\r\n setPlayerParams,\r\n setVideoElementSizeInfo,\r\n setMarkers,\r\n setIsFetchDetails,\r\n setIsValidAddress,\r\n setVideoTimelines,\r\n setIsReady,\r\n setSubtitles,\r\n setSubtitleText,\r\n setSelectedSubtitle,\r\n setClearVideoDataSlice\r\n} = videoDataSlice.actions;\r\nexport default videoDataSlice.reducer;\r\n","import { createSlice, PayloadAction } from \"@reduxjs/toolkit\";\r\nimport { IUserSettings, IUserSlice, IVideoSettings } from \"../../interfaces/interfaces\";\r\n\r\nconst UserSliceState: IUserSlice = {\r\n settings: {\r\n quality: -1,\r\n brightness: 100,\r\n volume: 100,\r\n speed: 1,\r\n },\r\n videoSettings: {\r\n time: 0\r\n },\r\n};\r\n\r\nexport const userSlice = createSlice({\r\n name: \"user\",\r\n initialState: UserSliceState,\r\n reducers: {\r\n setUserSettings: (state, action: PayloadAction<IUserSettings>) => {\r\n state.settings = action.payload;\r\n },\r\n setVideoSettings: (state, action: PayloadAction<IVideoSettings>) => {\r\n state.videoSettings = action.payload;\r\n },\r\n setClearUserSlice: () => {\r\n return UserSliceState;\r\n }\r\n }\r\n});\r\n\r\nexport const {\r\n setUserSettings,\r\n setVideoSettings,\r\n setClearUserSlice\r\n} = userSlice.actions;\r\n\r\nexport default userSlice.reducer;\r\n","export const enum zIndex {\r\n vttDisable = -2,\r\n backwardForwardInActive = 1,\r\n videoPlayer,\r\n mainIcons,\r\n footer,\r\n vtt,\r\n markers,\r\n videoPlayerInFullScreen = 1000000,\r\n popoverBlurBackground,\r\n backwardForwardActive,\r\n miniPlayer,\r\n popoverContent,\r\n maxPopover,\r\n videoPlayerInPictureInPicture,\r\n}\r\n\r\nexport const enum SettingSections {\r\n main = \"main\",\r\n qualityLevels = \"qualityLevels\",\r\n speed = \"speed\",\r\n subtitles = \"subtitles\"\r\n}\r\n\r\nexport const enum PlayerTypes {\r\n static = \"static\",\r\n vod = \"vod\"\r\n}\r\n\r\nexport const enum ConditionName {\r\n showHeader = \"showHeader\",\r\n showMain = \"showMain\",\r\n showFooter = \"showFooter\",\r\n showTouchVolumeBrightness = \"showTouchVolumeBrightness\",\r\n showBackwardForward = \"showBackwardForward\",\r\n showTitle = \"showTitle\",\r\n showSettingPopover = \"showSettingPopover\",\r\n showSpeedPopover = \"showSpeedPopover\",\r\n showQualityLevelsPopover = \"showQualityLevelsPopover\",\r\n showSettingIcon = \"showSettingIcon\",\r\n showBanner = \"showBanner\",\r\n showProgressbar = \"showProgressbar\",\r\n showPictureInPicture = \"showPictureInPicture\",\r\n showSubtitle = \"showSubtitle\",\r\n showMarkerListPopover = \"showMarkerListPopover\",\r\n hidePopovers = \"hidePopovers\",\r\n isLandscape = \"isLandscape\",\r\n isTouchScreen = \"isTouchScreen\",\r\n isTouchScreenPortrait = \"isTouchScreenPortrait\",\r\n isTouchScreenLandscape = \"isTouchScreenLandscape\",\r\n isActiveElements = \"isActiveElements\",\r\n isPlay = \"isPlay\",\r\n isPlayMiniPlayer = \"isPlayMiniPlayer\",\r\n isFirstPlay = \"isFirstPlay\",\r\n isLock = \"isLock\",\r\n isIOS = \"isIOS\",\r\n isLoading = \"isLoading\",\r\n isStaticFormat = \"isStaticFormat\",\r\n isEnded = \"isEnded\",\r\n isAutoPlay = \"isAutoPlay\",\r\n isFullScreen = \"isFullScreen\",\r\n isValidAddress = \"isValidAddress\",\r\n isFetchDetails = \"isFetchDetails\",\r\n isAutoQuality = \"isAutoQuality\",\r\n isPressKeySpace = \"isPressKeySpace\",\r\n isPressKeyI = \"isPressKeyI\",\r\n isPressKeyF = \"isPressKeyF\",\r\n isPressKeyS = \"isPressKeyS\",\r\n isPressKeyArrowRight = \"isPressKeyArrowRight\",\r\n isPressKeyArrowLeft = \"isPressKeyArrowLeft\",\r\n isPressKeyM = \"isPressKeyM\",\r\n isPressKeyC = \"isPressKeyC\",\r\n isSendTimelineLog = \"isSendTimelineLog\",\r\n isReady = \"isReady\",\r\n isSelectedSubtitle = \"isSelectedSubtitle\",\r\n isMiniPlayerAndMainPlayerSame = \"isMiniPlayerAndMainPlayerSame\",\r\n hasTitle = \"hasTitle\",\r\n hasBanner = \"hasBanner\",\r\n hasStreamLink = \"hasStreamLink\",\r\n hasManualQuality = \"hasManualQuality\",\r\n hasSound = \"hasSound\",\r\n hasAutoPlay = \"hasAutoPlay\",\r\n hasFullScreenParams = \"hasFullScreenParams\",\r\n hasOnFinishedParams = \"hasOnFinishedParams\",\r\n hasSubtitles = \"hasSubtitles\",\r\n hasSubtitlesInDetails = \"hasSubtitlesInDetails\",\r\n hasActiveCue = \"hasActiveCue\",\r\n hasOnPlayParams = \"hasOnPlayParams\",\r\n hasOnPauseParams = \"hasOnPauseParams\",\r\n hasPlayStatusParams = \"hasPlayStatusParams\",\r\n hasMiniPlayer = \"hasMiniPlayer\",\r\n hasCurrentTimeParams = \"hasCurrentTimeParams\",\r\n hasMarkers = \"hasMarkers\",\r\n hasSubtitlesInParams = \"hasSubtitlesInParams\",\r\n getDetails = \"getDetails\",\r\n getMarkers = \"getMarkers\",\r\n canPlayVideo = \"canPlayVideo\",\r\n setSubtitleFirstPlay = \"setSubtitleFirstPlay\"\r\n}","import controllerReducer from \"./slices/controllerSlice\";\r\nimport videoDataReducer from \"./slices/videoDataSlice\";\r\nimport popoversReducer from \"./slices/popoversSlice\";\r\nimport userReducer from \"./slices/userSlice\";\r\nimport miniPlayerReducer from \"./slices/miniPlayerSlice\";\r\n\r\nimport { configureStore } from \"@reduxjs/toolkit\";\r\n\r\nconst store = configureStore({\r\n reducer: {\r\n controller: controllerReducer,\r\n videoData: videoDataReducer,\r\n popovers: popoversReducer,\r\n user: userReducer,\r\n miniPlayer: miniPlayerReducer,\r\n },\r\n devTools: true,\r\n middleware: (getDefaultMiddleware) => getDefaultMiddleware({ serializableCheck: false })\r\n});\r\n\r\nexport type RootState = ReturnType<typeof store.getState>;\r\nexport type AppDispatch = typeof store.dispatch;\r\nexport default store;\r\n","import { createSlice, PayloadAction } from \"@reduxjs/toolkit\";\r\nimport { IPopoversSlice } from \"../../interfaces/interfaces\";\r\n\r\nconst PopOversSliceState: IPopoversSlice = {\r\n settingPopover: false,\r\n speedPopover: false,\r\n qualityLevelsPopover: false,\r\n markersListPopover: false\r\n};\r\nexport const popoversSlice = createSlice({\r\n name: \"popover\",\r\n initialState: PopOversSliceState,\r\n reducers: {\r\n setSettingPopover: (state, action: PayloadAction<boolean>) => {\r\n state.settingPopover = action.payload;\r\n },\r\n setSpeedPopover: (state, action: PayloadAction<boolean>) => {\r\n state.speedPopover = action.payload;\r\n },\r\n setQualityLevelsPopover: (state, action: PayloadAction<boolean>) => {\r\n state.qualityLevelsPopover = action.payload;\r\n },\r\n setMarkersListPopover: (state, action: PayloadAction<boolean>) => {\r\n state.markersListPopover = action.payload;\r\n },\r\n setClearPopoversSlice: (state) => {\r\n state.settingPopover = false;\r\n state.speedPopover = false;\r\n state.qualityLevelsPopover = false;\r\n state.markersListPopover = false;\r\n }\r\n }\r\n});\r\n\r\nexport const {\r\n setSettingPopover,\r\n setSpeedPopover,\r\n setQualityLevelsPopover,\r\n setMarkersListPopover,\r\n setClearPopoversSlice\r\n} = popoversSlice.actions;\r\n\r\nexport default popoversSlice.reducer;\r\n","import { createSlice, PayloadAction } from \"@reduxjs/toolkit\";\r\nimport {\r\n IDetails,\r\n IMiniPlayerParams,\r\n IMiniPlayerSlice,\r\n} from \"../../interfaces/interfaces\";\r\nimport { PlayerTypes } from \"../../interfaces/enums\";\r\n\r\nconst MiniPlayerSliceState: IMiniPlayerSlice = {\r\n params: {\r\n id: \"0\",\r\n type: \"\",\r\n currentTime: 0,\r\n autoPlay: false,\r\n onClose: () => {},\r\n },\r\n details: {},\r\n play: false,\r\n};\r\n\r\nexport const userSlice = createSlice({\r\n name: \"user\",\r\n initialState: MiniPlayerSliceState,\r\n reducers: {\r\n setMiniPlayerInfo: (state, action: PayloadAction<IMiniPlayerParams>) => {\r\n state.params = {\r\n ...action.payload,\r\n id:\r\n action.payload.type === PlayerTypes.static\r\n ? window.atob(action.payload.id)\r\n : action.payload.id,\r\n banner: action.payload.banner ? action.payload.banner : undefined,\r\n };\r\n },\r\n setDetailsMiniPlayer: (state, action: PayloadAction<IDetails>) => {\r\n state.details = action.payload;\r\n },\r\n setPlayMiniPlayer: (state, action: PayloadAction<boolean>) => {\r\n state.play = action.payload;\r\n },\r\n setClearMiniPlayerSlice: (state) => {\r\n return (state = MiniPlayerSliceState);\r\n },\r\n },\r\n});\r\n\r\nexport const {\r\n setMiniPlayerInfo,\r\n setDetailsMiniPlayer,\r\n setPlayMiniPlayer,\r\n setClearMiniPlayerSlice,\r\n} = userSlice.actions;\r\n\r\nexport default userSlice.reducer;\r\n","import { conditions } from \"./conditions/conditions\";\r\nimport { ConditionName } from \"./interfaces/enums\";\r\nimport store from \"./redux/store\";\r\nimport { setClearVideoDataSlice } from \"./redux/slices/videoDataSlice\";\r\nimport { setClearControllerSlice } from \"./redux/slices/controllerSlice\";\r\nimport { setClearUserSlice } from \"./redux/slices/userSlice\";\r\nimport { setClearPopoversSlice } from \"./redux/slices/popoversSlice\";\r\n\r\nexport const wait = (s: number) => new Promise((resolve) => setTimeout(resolve, s * 1000));\r\n\r\nexport const getUUID = () => {\r\n let uuid = localStorage.getItem(\"hamrahiUUID\");\r\n if (!uuid) {\r\n uuid = uuidGenerator();\r\n localStorage.setItem(\"hamrahiUUID\", uuid);\r\n }\r\n return uuid.toString();\r\n};\r\n\r\nexport const uuidGenerator = () => {\r\n let uuid = \"xxxxxxxx-xxxx-Mxxx-Nxxx-x\".replace(/[xMN]/g, (char) => {\r\n let val: number;\r\n if (char === \"M\") val = Math.floor(1 + Math.random() * 5);\r\n else if (char === \"N\") val = Math.floor(8 + Math.random() * 4);\r\n else val = Math.floor(Math.random() * 16);\r\n return val.toString(16);\r\n });\r\n uuid += Date.now().toString(16);\r\n return uuid;\r\n};\r\n\r\nexport const isTouchScreen = () =>\r\n \"ontouchstart\" in window || ((window as any)[\"DocumentTouch\"] && document instanceof (window as any)[\"DocumentTouch\"]);\r\nexport const isTouchScreenLandscape = () => {\r\n const { isFullScreen } = store.getState().controller;\r\n return isTouchScreen() && isFullScreen;\r\n};\r\nexport const isTouchScreenPortrait = () => {\r\n const { isFullScreen } = store.getState().controller;\r\n return isTouchScreen() && !isFullScreen;\r\n};\r\n\r\nexport const isIOS = () => {\r\n return (\r\n [\"iPad Simulator\", \"iPhone Simulator\", \"iPod Simulator\", \"iPad\", \"iPhone\", \"iPod\"].includes(navigator.platform) ||\r\n // iPad on iOS 13 detection\r\n (navigator.userAgent.includes(\"Mac\") && \"ontouchend\" in document)\r\n );\r\n};\r\n\r\nexport const addZeroBefore = (n: number) => {\r\n return (n < 10 ? \"0\" : \"\") + n;\r\n};\r\n\r\nexport const secondsToHMS = (seconds: number) => {\r\n const h = Math.floor(seconds / 3600);\r\n const m = Math.floor((seconds % 3600) / 60);\r\n const s = Math.floor((seconds % 3600) % 60);\r\n return h < 1 ? `${addZeroBefore(m)}:${addZeroBefore(s)}` : `${addZeroBefore(h)}:${addZeroBefore(m)}:${addZeroBefore(s)}`;\r\n};\r\n\r\nexport const staticFormats = (realFormat: string) => {\r\n if ([\"mp4\", \"mkv\", \"mov\", \"m4v\"].includes(realFormat)) return \"mp4\";\r\n else if (realFormat === \"webm\" || realFormat === \"flv\") return realFormat;\r\n else if ([\"mp3\", \"ogg\"].includes(realFormat)) return \"mp3\";\r\n else return false;\r\n};\r\n\r\nexport const addUuidToSrc = (src: string) => {\r\n const urlObject = new URL(src);\r\n let urlSrc = src;\r\n if (urlObject.search.length) return (urlSrc += `&uuid=${getUUID()}`);\r\n else return (urlSrc += `?uuid=${getUUID()}`);\r\n};\r\n\r\nexport const checkParentTarget = (event: any, target: string) => {\r\n try {\r\n return [\r\n event.target.id,\r\n event.target.parentNode.id,\r\n event.target.parentNode.parentNode.id,\r\n event.target.parentNode.parentNode.parentNode.id,\r\n event.target.parentNode.parentNode.parentNode.parentNode.id\r\n ].includes(target);\r\n } catch (error) {\r\n return false;\r\n }\r\n};\r\n\r\nexport const splitQueryParamsFromStreamLink = (playerType: \"mainPlayer\" | \"miniPlayer\") => {\r\n let streamLink = \"\";\r\n if(playerType === \"mainPlayer\") streamLink = store.getState().videoData.details.stream_link!;\r\n else streamLink = store.getState().miniPlayer.details.stream_link!;\r\n let queryParams: string = \"\";\r\n if(streamLink) queryParams = streamLink.split(\"m3u8\")[1];\r\n if (queryParams) queryParams = `${queryParams}&uuid=${getUUID()}`;\r\n else queryParams = `?uuid=${getUUID()}`;\r\n return queryParams;\r\n};\r\n\r\nexport const handleRippleCircle = (event: any, id: string) => {\r\n const element: any = document.getElementById(id);\r\n const circle = document.createElement(\"span\");\r\n circle.style.width = circle.style.height = `50px`;\r\n circle.style.left = `${event.touches[0].clientX - element.offsetLeft - 25}px`;\r\n circle.style.top = `${event.touches[0].clientY - element.offsetTop - 25}px`;\r\n circle.classList.add(\"pl-ripple\");\r\n const ripple = element.getElementsByClassName(\"pl-ripple\")[0];\r\n if (ripple) ripple.remove();\r\n element.appendChild(circle);\r\n};\r\n\r\nexport const handleRipple = (event: any, id: string, size: number = 50) => {\r\n const clientX = event.clientX !== undefined ? event.clientX : event.touches[0].clientX;\r\n const clientY = event.clientY !== undefined ? event.clientY : event.touches[0].clientY;\r\n const element: any = document.getElementById(id);\r\n const circle = document.createElement(\"span\");\r\n circle.style.width = circle.style.height = `${size}px`;\r\n circle.style.left = `${clientX - size / 2}px`;\r\n circle.style.top = `${clientY - element.getBoundingClientRect().top - size / 2}px`;\r\n circle.classList.add(\"pl-ripple\");\r\n const ripple = element.getElementsByClassName(\"pl-ripple\")[0];\r\n if (ripple) ripple.remove();\r\n element.appendChild(circle);\r\n};\r\n\r\nexport const responseValidator = (status: number): boolean => status >= 200 && status < 300;\r\n\r\nexport const clearRedux = () => {\r\n const dispatch = store.dispatch;\r\n dispatch(setClearVideoDataSlice());\r\n dispatch(setClearControllerSlice());\r\n dispatch(setClearUserSlice());\r\n dispatch(setClearPopoversSlice());\r\n};\r\n\r\nexport const weighted_random = (options: any) => {\r\n let i;\r\n\r\n let weights: any[] = [];\r\n\r\n for (i = 0; i < options.length; i++) weights[i] = options[i].weight + (weights[i - 1] || 0);\r\n\r\n let random = Math.random() * weights[weights.length - 1];\r\n\r\n for (i = 0; i < weights.length; i++) if (weights[i] > random) break;\r\n\r\n return options[i].domain;\r\n};\r\n\r\n// ***** Player Core *****\r\n\r\nexport const handlePageLoadTime = (loadingDurationRef: any) => {\r\n let pageLoadTime = 0;\r\n if (performance && performance.getEntriesByType(\"navigation\")) pageLoadTime = performance.getEntriesByType(\"navigation\")[0].duration;\r\n loadingDurationRef.current = pageLoadTime;\r\n};\r\n\r\nexport const highestResolutionSupported = (resolutions: string[], width: number, height: number) => {\r\n const w = width * window.devicePixelRatio;\r\n const h = height * window.devicePixelRatio;\r\n let filteredResolutions: string[] = [];\r\n if (conditions(ConditionName.isTouchScreenPortrait))\r\n filteredResolutions = resolutions.filter((resolution: string) => Number(resolution.split(\"x\")[0].trim()) <= w);\r\n else\r\n filteredResolutions = resolutions.filter(\r\n (resolution: string) => Number(resolution.split(\"x\")[0].trim()) <= h || Number(resolution.split(\"x\")[1].trim()) <= w\r\n );\r\n return filteredResolutions.indexOf(filteredResolutions[filteredResolutions.length - 1]);\r\n};\r\n\r\nexport const flattenObject = (input: any, keyName?: string) => {\r\n let result: any = {};\r\n for (const key in input) {\r\n const newKey = keyName ? `${keyName}_${key}` : key;\r\n if (typeof input[key] === \"object\" && !Array.isArray(input[key])) result = { ...result, ...flattenObject(input[key], newKey) };\r\n else result[newKey] = input[key];\r\n }\r\n return result;\r\n};\r\n\r\nexport const sortLanguages = (array: any) => {\r\n const priority: any = { fa: 1, en: 2 };\r\n\r\n return array.slice().sort((a: any, b: any) => {\r\n const prioA = priority[a.lang] || 999;\r\n const prioB = priority[b.lang] || 999;\r\n\r\n return prioA - prioB;\r\n });\r\n};\r\n\r\nexport const getSubtitleLabel = (subtitleLanguage: string) => {\r\n let label;\r\n switch (subtitleLanguage) {\r\n case \"fa\":\r\n label = \"فارسی\";\r\n break;\r\n case \"en\":\r\n label = \"انگلیسی\";\r\n break;\r\n case \"ar\":\r\n label = \"عربی\";\r\n break;\r\n case \"tr\":\r\n label = \"ترکی\";\r\n break;\r\n default:\r\n break;\r\n }\r\n return label;\r\n};\r\n\r\nexport const spliteStringPerLine = (str: string) => str.split(/\\r?\\n|\\r|\\n/g);\r\n\r\nexport const inViewPort = (element: any) => {\r\n if (element) {\r\n const positionLeft = element.offsetLeft - element.offsetWidth / 2;\r\n const positionRight = window.innerWidth - (element.offsetLeft + element.offsetWidth);\r\n if (positionLeft >= 0 && positionRight >= 0) return \"inViewport\";\r\n else if (positionLeft < 0) return \"OutViewPortFromLeft\";\r\n else if (positionRight < 0) return \"OutViewPortFromRight\";\r\n }\r\n};\r\n\r\nexport const compare = (a: any, b: any) => {\r\n if (a.time < b.time) return -1;\r\n if (a.time > b.time) return 1;\r\n return 0;\r\n};","import {\r\n isIOS,\r\n isTouchScreen,\r\n isTouchScreenLandscape,\r\n isTouchScreenPortrait,\r\n staticFormats,\r\n} from \"../helpers\";\r\nimport { ConditionName, PlayerTypes } from \"../interfaces/enums\";\r\nimport store from \"../redux/store\";\r\n\r\nexport const conditions = (type: string) => {\r\n const {\r\n params,\r\n details,\r\n isValidAddress,\r\n isFetchDetails,\r\n isReady,\r\n subtitles,\r\n selectedSubtitle,\r\n markers\r\n } = store.getState().videoData;\r\n const {\r\n firstPlay,\r\n lock,\r\n canPlayVideo,\r\n manualQuality,\r\n activeElements,\r\n isLoading,\r\n isEnded,\r\n isAutoPlay,\r\n play,\r\n isFullScreen,\r\n } = store.getState().controller;\r\n const { settingPopover, speedPopover, qualityLevelsPopover, markersListPopover } =\r\n store.getState().popovers;\r\n const { settings } = store.getState().user;\r\n const miniPlayer = store.getState().miniPlayer;\r\n\r\n switch (type) {\r\n case ConditionName.showHeader:\r\n return !firstPlay && canPlayVideo;\r\n case ConditionName.showMain:\r\n return !lock || firstPlay;\r\n case ConditionName.showFooter:\r\n return !firstPlay && canPlayVideo;\r\n case ConditionName.showTouchVolumeBrightness:\r\n return !firstPlay && isTouchScreenLandscape() && !lock && !isEnded;\r\n case ConditionName.showBackwardForward:\r\n return !firstPlay && isTouchScreen() && !lock;\r\n case ConditionName.showTitle:\r\n return !staticFormats(params.type!) && isFullScreen && !lock;\r\n case ConditionName.showSettingPopover:\r\n return settingPopover;\r\n case ConditionName.showSpeedPopover:\r\n return speedPopover;\r\n case ConditionName.showQualityLevelsPopover:\r\n return qualityLevelsPopover;\r\n case ConditionName.showSettingIcon:\r\n return !staticFormats(params.type!) && !isIOS() && !isFullScreen;\r\n case ConditionName.showBanner:\r\n return firstPlay && (details.banner || params.banner);\r\n case ConditionName.showProgressbar:\r\n return !isIOS();\r\n case ConditionName.showPictureInPicture:\r\n return !isIOS() && !isTouchScreen();\r\n case ConditionName.showSubtitle:\r\n return !!selectedSubtitle;\r\n case ConditionName.showMarkerListPopover:\r\n return markersListPopover;\r\n case ConditionName.hidePopovers:\r\n return !settingPopover;\r\n case ConditionName.isLandscape:\r\n return window.innerHeight <= window.innerWidth;\r\n case ConditionName.isTouchScreen:\r\n return isTouchScreen();\r\n case ConditionName.isTouchScreenPortrait:\r\n return isTouchScreenPortrait();\r\n case ConditionName.isTouchScreenLandscape:\r\n return isTouchScreenLandscape();\r\n case ConditionName.isActiveElements:\r\n return activeElements;\r\n case ConditionName.isPlay:\r\n return play;\r\n case ConditionName.isPlayMiniPlayer:\r\n return miniPlayer.play;\r\n case ConditionName.isFirstPlay:\r\n return firstPlay;\r\n case ConditionName.isLock:\r\n return lock;\r\n case ConditionName.isIOS:\r\n return isIOS();\r\n case ConditionName.isLoading:\r\n return isLoading;\r\n case ConditionName.isStaticFormat:\r\n return params.type === PlayerTypes.static;\r\n case ConditionName.isEnded:\r\n return isEnded;\r\n case ConditionName.isAutoPlay:\r\n return isAutoPlay;\r\n case ConditionName.isFullScreen:\r\n return isFullScreen;\r\n case ConditionName.isValidAddress:\r\n return isValidAddress;\r\n case ConditionName.isFetchDetails:\r\n return isFetchDetails;\r\n case ConditionName.isAutoQuality:\r\n return settings.quality === -1;\r\n case ConditionName.isPressKeySpace:\r\n return !lock;\r\n case ConditionName.isPressKeyI:\r\n return !lock && !firstPlay;\r\n case ConditionName.isPressKeyF:\r\n return !lock && !firstPlay;\r\n case ConditionName.isPressKeyS:\r\n return !lock && !firstPlay;\r\n case ConditionName.isPressKeyArrowRight:\r\n return !firstPlay && !lock;\r\n case ConditionName.isPressKeyArrowLeft:\r\n return !firstPlay && !lock;\r\n case ConditionName.isPressKeyM:\r\n return !firstPlay && !lock;\r\n case ConditionName.isPressKeyC:\r\n return !lock && !firstPlay && !!subtitles && subtitles.length > 0;\r\n case ConditionName.isSendTimelineLog:\r\n return !staticFormats(params.type!);\r\n case ConditionName.isReady:\r\n return isReady;\r\n case ConditionName.isSelectedSubtitle:\r\n return !!subtitles && subtitles.length > 0 && selectedSubtitle;\r\n case ConditionName.isMiniPlayerAndMainPlayerSame:\r\n return params.id === miniPlayer.params.id;\r\n case ConditionName.hasTitle:\r\n return details.title;\r\n case ConditionName.hasBanner:\r\n return details.banner;\r\n case ConditionName.hasStreamLink:\r\n return details.stream_link;\r\n case ConditionName.hasManualQuality:\r\n return manualQuality !== undefined && manualQuality !== null;\r\n case ConditionName.hasSound:\r\n return !!settings.volume;\r\n case ConditionName.hasAutoPlay:\r\n return params.autoplay === \"true\";\r\n case ConditionName.hasFullScreenParams:\r\n return params.fullscreen === \"true\";\r\n case ConditionName.hasOnFinishedParams:\r\n return !!params.onFinished;\r\n case ConditionName.hasSubtitles:\r\n return !!subtitles && subtitles.length > 0;\r\n case ConditionName.hasSubtitlesInDetails:\r\n return details.subtitles && details.subtitles.length > 0;\r\n case ConditionName.hasActiveCue:\r\n return (\r\n selectedSubtitle &&\r\n selectedSubtitle.activeCues &&\r\n selectedSubtitle.activeCues.length > 0\r\n );\r\n case ConditionName.hasOnPlayParams:\r\n return !!params.onPlay;\r\n case ConditionName.hasOnPauseParams:\r\n return !!params.onPause;\r\n case ConditionName.hasPlayStatusParams:\r\n return params.playStatus !== undefined;\r\n case ConditionName.hasMiniPlayer:\r\n return miniPlayer.params.id;\r\n case ConditionName.hasCurrentTimeParams:\r\n return params.currentTime !== undefined;\r\n case ConditionName.hasMarkers:\r\n return markers.length !== 0;\r\n case ConditionName.hasSubtitlesInParams:\r\n return params.subtitles && params.subtitles.length;\r\n case ConditionName.getDetails:\r\n return !!params.type && params.id;\r\n case ConditionName.getMarkers:\r\n return String(params.type) === \"vod\" && params.id && isFetchDetails;\r\n case ConditionName.canPlayVideo:\r\n return canPlayVideo;\r\n case ConditionName.setSubtitleFirstPlay:\r\n return (\r\n details.subtitles &&\r\n details.subtitles.length > 0 &&\r\n !firstPlay &&\r\n !staticFormats(params.type!)\r\n );\r\n default:\r\n break;\r\n }\r\n};\r\n","import { AppDispatch, RootState } from \"./store\";\r\nimport { TypedUseSelectorHook, useDispatch, useSelector } from \"react-redux\";\r\n\r\nexport const useAppDispatch: any = () => useDispatch<AppDispatch>();\r\nexport const useAppSelector: TypedUseSelectorHook<RootState> = useSelector;\r\n","import store from \"./redux/store\";\r\n\r\nexport const mainPlayerVideoTag = () => document.getElementById(\"player-tag\") as HTMLVideoElement;\r\nexport const miniPlayerVideoTag = () => document.getElementById(\"mini-player-video-tag\") as HTMLVideoElement;\r\nexport const progressBar = () => document.getElementById(\"time-progress-bar\") as any;\r\nexport const progressBarWidth = () => store.getState().videoData.videoElementSizeInfo.width - 2;","import { 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};\r\n\r\nexport const eventMarkerClickLog = (markerId: Number, markerTime: Number, markerTitle: String, markerDescription: String, markerSticker: String) => {\r\n const { params, details } = store.getState().videoData;\r\n return {\r\n category: \"eventMarkerClick\",\r\n video_id: Number(params.id),\r\n markerId: markerId,\r\n markerTime: markerTime,\r\n markerTitle: markerTitle,\r\n markerDescription: markerDescription,\r\n markerSticker: markerSticker,\r\n type: params.type,\r\n src: conditions(ConditionName.hasStreamLink) ? details.stream_link : params.id,\r\n provider: params.provider\r\n };\r\n};","import 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, IRetryPolicy } 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\r\nexport function getAll(path: string, retryPolicy?: IRetryPolicy[], params?: any, retryCount: number = 1, maxRetryCount: number = 0) {\r\n return new Promise(async (resolve, reject) => {\r\n // Added reject to the Promise executor function.\r\n try {\r\n const url = new URL(path);\r\n const limit = 1000;\r\n if (params) {\r\n Object.keys(params).forEach((key) => {\r\n if (params[key]) {\r\n url.searchParams.set(key, params[key]);\r\n }\r\n });\r\n }\r\n url.searchParams.set(\"limit\", limit.toString());\r\n const response = await fetch(url.href);\r\n if (!response.ok) {\r\n // Check if the response was not ok (status not in the range 200-299).\r\n throw response;\r\n }\r\n const data = await response.json();\r\n const count = data.count;\r\n const requestCount = Math.ceil(count / limit) - 1;\r\n const promises: Array<Promise<any>> = [];\r\n for (let i = 0; i < requestCount; i++) {\r\n const offset = i * limit; // Fixed the offset calculation.\r\n url.searchParams.set(\"offset\", offset.toString());\r\n const promise: Promise<any> = fetch(url.href).then((res) => {\r\n if (res.ok) {\r\n return res.json();\r\n }\r\n return res.json().then((err) => Promise.reject(err));\r\n });\r\n promises.push(promise);\r\n }\r\n Promise.all(promises)\r\n .then((res) => {\r\n const results = res.flatMap((item) => item.results);\r\n resolve([...data.results, ...results]);\r\n })\r\n .catch(reject); // Added catch to handle any errors in the Promise.all.\r\n } catch (error: any) {\r\n let newRetryDelay = 0,\r\n newMaxRetryCount = 0;\r\n if (retryPolicy !== undefined) {\r\n for (let i = 0; i < retryPolicy.length; i++) {\r\n if (\r\n ((retryPolicy[i].codeAbove && error.status >= retryPolicy[i].codeAbove!) ||\r\n (retryPolicy[i].codeBelow && error.status <= retryPolicy[i].codeBelow!)) &&\r\n (retryPolicy[i].excludeCodes.length === 0 || !retryPolicy[i].excludeCodes.includes(error.status)) &&\r\n (retryPolicy[i].includeCodes.length === 0 || retryPolicy[i].includeCodes.includes(error.status))\r\n ) {\r\n newMaxRetryCount = retryPolicy[i].count;\r\n newRetryDelay = retryPolicy[i].delay;\r\n break;\r\n }\r\n }\r\n if (retryCount < newMaxRetryCount) {\r\n await wait(newRetryDelay);\r\n getAll(path, retryPolicy, params, retryCount + 1, newMaxRetryCount);\r\n }\r\n }\r\n }\r\n });\r\n}","import {\r\n getFluentdUrl,\r\n getRestApiLiveUrl,\r\n} from \"./baseUrl\";\r\n\r\nexport const API = () => {\r\n return {\r\n vod: {\r\n getVodUrl: `${getRestApiLiveUrl()}/v1/live/details/vod/`,\r\n getMarkerUrl: (videoId:number) => `${getRestApiLiveUrl()}/v1/live/list-event/vod/${videoId}/`\r\n },\r\n 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\nexport const getEmojiUrl = () => (isNpmPackage ? envs.baseUrl : (process.env.baseUrl as string)) + \"/emoji\";\r\n\r\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
'use strict';var chunkQIG5BBRI_js=require('./chunk-QIG5BBRI.js'),chunk7WPU5CCV_js=require('./chunk-7WPU5CCV.js'),chunkWO4IQUGO_js=require('./chunk-WO4IQUGO.js');chunkWO4IQUGO_js.e();var j=()=>{let t=chunk7WPU5CCV_js.M.dispatch,{params:e}=chunk7WPU5CCV_js.M.getState().videoData,a=r=>{r.requestFullScreen?r.requestFullScreen():r.mozRequestFullScreen?r.mozRequestFullScreen():r.webkitRequestFullScreen&&r.webkitRequestFullScreen();};t(chunk7WPU5CCV_js.F()),a(document.documentElement),t(chunk7WPU5CCV_js.h(e.fullscreen==="true"));},de=()=>{let t=".ts",e=XMLHttpRequest.prototype.open;XMLHttpRequest.prototype.open=function(){arguments[1].endsWith(t)&&(arguments[1]=arguments[1]+"?uuid="+chunk7WPU5CCV_js.N()),e.apply(this,arguments);};},X=(t,e)=>{let a=chunk7WPU5CCV_js.M.dispatch;e.current=setInterval(()=>{let s=t.target.buffered.end(0)/chunk7WPU5CCV_js.ea().duration*100;a(chunk7WPU5CCV_js.i(s));},500);},ye=()=>{let t=chunk7WPU5CCV_js.S("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=chunk7WPU5CCV_js.S("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=chunk7WPU5CCV_js.M.dispatch,r=[],s=[];t.levels.map(o=>{r.push(o.attrs.RESOLUTION.split("x")[1].trim()),s.push(o.attrs.RESOLUTION);}),t.autoLevelCapping=chunk7WPU5CCV_js.Y(s,window.innerWidth,window.innerHeight),a(chunk7WPU5CCV_js.d(r)),["fullscreenchange","webkitfullscreenchange","mozfullscreenchange","msfullscreenchange"].forEach(o=>document.addEventListener(o,c=>{chunk7WPU5CCV_js.ba("isAutoQuality")&&(t.autoLevelCapping=chunk7WPU5CCV_js.Y(s,window.innerWidth,window.innerHeight),t.nextLevel=-1);},!1));},me=(t,e)=>{let{params:a,details:r}=chunk7WPU5CCV_js.M.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=chunk7WPU5CCV_js.M.dispatch,{settings:s}=chunk7WPU5CCV_js.M.getState().user,{qualityLevels:o,manualQuality:c,autoQuality:g}=chunk7WPU5CCV_js.M.getState().controller;chunk7WPU5CCV_js.ba("isAutoQuality")?chunk7WPU5CCV_js.ba("isAutoQuality")&&g===void 0?(t.nextLevel=-1,a(o[e.frag.level]),r(chunk7WPU5CCV_js.e(e.frag.level))):chunk7WPU5CCV_js.ba("isAutoQuality")&&(a(o[e.frag.level]),g!==e.frag.level&&r(chunk7WPU5CCV_js.e(e.frag.level))):(e.frag.level!==c&&(t.nextLevel=o[s.quality]?s.quality:-1),o[s.quality]?(r(chunk7WPU5CCV_js.m(s.quality)),r(chunk7WPU5CCV_js.e(void 0))):(a(o[e.frag.level]),r(chunk7WPU5CCV_js.e(e.frag.level)),r(chunk7WPU5CCV_js.G({...s,quality:-1}))));}},fe=t=>{let e=chunk7WPU5CCV_js.M.dispatch,r=t.mainForwardBufferInfo?.end/chunk7WPU5CCV_js.ea().duration*100;e(chunk7WPU5CCV_js.i(r));},he=(t,e,a)=>{let{params:r}=chunk7WPU5CCV_js.M.getState().videoData;r.type&&_(t,e,a);},ge=(t,e,a)=>{let{type:r}=chunk7WPU5CCV_js.M.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=chunk7WPU5CCV_js.M.dispatch;t.preventDefault(),e.current=Date.now(),a(chunk7WPU5CCV_js.g(!0));},ve=(t,e)=>{let a=chunk7WPU5CCV_js.M.dispatch;t.preventDefault(),e.current=0,a(chunk7WPU5CCV_js.g(!0));},De=(t,e)=>{let a=chunk7WPU5CCV_js.M.dispatch,{videoSettings:r}=chunk7WPU5CCV_js.M.getState().user,{params:s}=chunk7WPU5CCV_js.M.getState().videoData;t.preventDefault(),e.current=Date.now(),a(chunk7WPU5CCV_js.a(!0)),chunk7WPU5CCV_js.ba("hasOnPlayParams")&&s.onPlay(),chunk7WPU5CCV_js.ba("isFirstPlay")&&(chunk7WPU5CCV_js.ba("hasCurrentTimeParams")||(chunk7WPU5CCV_js.ea().currentTime=r.time,a(chunk7WPU5CCV_js.c(r.time))),chunk7WPU5CCV_js.ba("hasFullScreenParams")&&j(),chunk7WPU5CCV_js.ba("isFullScreen")&&chunkQIG5BBRI_js.g(),a(chunk7WPU5CCV_js.w([Math.floor(chunk7WPU5CCV_js.ea().currentTime)]))),chunk7WPU5CCV_js.Ba(chunk7WPU5CCV_js.wa(!0)),a(chunk7WPU5CCV_js.z(""));},Pe=(t,e,a,r,s,o,c,g)=>{let $=chunk7WPU5CCV_js.M.dispatch,{autoQuality:w,canPlayVideo:z,firstPlay:G,qualityLevels:O}=chunk7WPU5CCV_js.M.getState().controller,{settings:q}=chunk7WPU5CCV_js.M.getState().user,I=q.quality===-1&&w?O[w]:O[q.quality],x=0;c.current&&(x=Date.now()-c.current),G&&chunk7WPU5CCV_js.ea().played&&chunk7WPU5CCV_js.Ba(chunk7WPU5CCV_js.xa(e.current,Date.now()-a.current,r.current-a.current,Date.now()-s.current,s)),$(chunk7WPU5CCV_js.j(!1)),z&&x>0&&I!==void 0&&(o.current=x,c.current=0,chunk7WPU5CCV_js.Ba(chunk7WPU5CCV_js.ya(x,I,s,t,g.current)),t.current=t.current+1,s.current=Date.now());},Te=t=>{let e=chunk7WPU5CCV_js.M.dispatch,{params:a}=chunk7WPU5CCV_js.M.getState().videoData;t.preventDefault(),chunk7WPU5CCV_js.Ba(chunk7WPU5CCV_js.wa(!1)),e(chunk7WPU5CCV_js.a(!1)),chunk7WPU5CCV_js.ba("hasOnPauseParams")&&a.onPause();},Le=t=>{let e=chunk7WPU5CCV_js.M.dispatch,{selectedSubtitle:a}=chunk7WPU5CCV_js.M.getState().videoData;t.preventDefault(),e(chunk7WPU5CCV_js.c(t.target.currentTime)),chunk7WPU5CCV_js.ba("hasActiveCue")&&e(chunk7WPU5CCV_js.z(a.activeCues[0].text));},Me=t=>{let e=chunk7WPU5CCV_js.M.dispatch,{settings:a}=chunk7WPU5CCV_js.M.getState().user;if(t.preventDefault(),e(chunk7WPU5CCV_js.g(!1)),e(chunk7WPU5CCV_js.n(!0)),chunk7WPU5CCV_js.ea().volume=a.volume/100,e(chunk7WPU5CCV_js.b(t.target.duration)),chunk7WPU5CCV_js.ba("isIOS")){let r=Object.values(t.target.textTracks);r&&r.length&&e(chunk7WPU5CCV_js.y(Object.values(r[0]).length?r:[]));}else e(chunk7WPU5CCV_js.y(Object.values(t.target.textTracks)));},Fe=t=>{let e=chunk7WPU5CCV_js.M.dispatch,{params:a}=chunk7WPU5CCV_js.M.getState().videoData;t.preventDefault(),e(chunk7WPU5CCV_js.p(!0)),e(chunk7WPU5CCV_js.f(!0)),chunkQIG5BBRI_js.i(chunk7WPU5CCV_js.ea().duration),chunk7WPU5CCV_js.ba("hasOnFinishedParams")&&a.onFinished();},be=(t,e)=>{let a=chunk7WPU5CCV_js.M.dispatch;t.preventDefault(),e.current=Date.now(),a(chunk7WPU5CCV_js.j(!1));},Ve=()=>{let t=chunk7WPU5CCV_js.M.dispatch;t(chunk7WPU5CCV_js.g(!1));},Re=t=>{let e=chunk7WPU5CCV_js.M.dispatch;t.preventDefault(),e(chunk7WPU5CCV_js.c(t.target.currentTime));},ke=()=>{let t=chunk7WPU5CCV_js.M.dispatch,{params:e}=chunk7WPU5CCV_js.M.getState().videoData;t(chunk7WPU5CCV_js.p(!0)),t(chunk7WPU5CCV_js.f(!0)),chunk7WPU5CCV_js.ba("hasOnFinishedParams")&&e.onFinished();},we=t=>{let e=chunk7WPU5CCV_js.M.dispatch;t.preventDefault(),e(chunk7WPU5CCV_js.a(!1));},Oe=(t,e)=>{let a=chunk7WPU5CCV_js.M.dispatch;t.preventDefault(),a(chunk7WPU5CCV_js.a(!0)),e.current=Date.now(),a(chunk7WPU5CCV_js.z("")),chunk7WPU5CCV_js.ba("isFirstPlay")&&chunk7WPU5CCV_js.ba("hasFullScreenParams")&&(j(),chunk7WPU5CCV_js.ba("isFullScreen")&&chunkQIG5BBRI_js.g());},qe=(t,e,a)=>{let r=chunk7WPU5CCV_js.M.dispatch,{firstPlay:s}=chunk7WPU5CCV_js.M.getState().controller;r(chunk7WPU5CCV_js.g(!1)),s&&chunk7WPU5CCV_js.ea().played&&chunk7WPU5CCV_js.Ba(chunk7WPU5CCV_js.xa(Math.round(t.current),Date.now()-e.current,0,Date.now()-a.current,a)),r(chunk7WPU5CCV_js.j(!1));},Ie=t=>{let e=chunk7WPU5CCV_js.M.dispatch,{selectedSubtitle:a}=chunk7WPU5CCV_js.M.getState().videoData;t.preventDefault(),e(chunk7WPU5CCV_js.c(t.target.currentTime)),e(chunk7WPU5CCV_js.b(t.target.duration)),chunk7WPU5CCV_js.ba("hasActiveCue")&&e(chunk7WPU5CCV_js.z(a.activeCues[0].text));},Ee=t=>{let e=chunk7WPU5CCV_js.M.dispatch;if(t.preventDefault(),e(chunk7WPU5CCV_js.g(!1)),e(chunk7WPU5CCV_js.n(!0)),chunk7WPU5CCV_js.ba("isIOS")){let a=Object.values(t.target.textTracks);a&&a.length&&e(chunk7WPU5CCV_js.y(Object.values(a[0]).length?a:[]));}else e(chunk7WPU5CCV_js.y(Object.values(t.target.textTracks)));},Ce=(t,e)=>{t.preventDefault(),X(t,e);};var Ae=async t=>{let{stream_link:e}=chunk7WPU5CCV_js.M.getState().miniPlayer.details;t.loadSource(e);},Be=t=>{chunkQIG5BBRI_js.i(chunk7WPU5CCV_js.ea().currentTime);};exports.A=Ce;exports.B=Ae;exports.C=Be;exports.a=de;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=ve;exports.l=De;exports.m=Pe;exports.n=Te;exports.o=Le;exports.p=Me;exports.q=Fe;exports.r=be;exports.s=Ve;exports.t=Re;exports.u=ke;exports.v=we;exports.w=Oe;exports.x=qe;exports.y=Ie;exports.z=Ee;//# sourceMappingURL=chunk-AFNUTV2X.js.map
|
|
2
|
+
//# sourceMappingURL=chunk-AFNUTV2X.js.map
|