cafe-video-player 2.0.21 → 2.0.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/backwardForward-3HROPSFK.js +2 -0
  2. package/{backwardForward-FW25LAUC.js.map → backwardForward-3HROPSFK.js.map} +1 -1
  3. package/backwardForward-4K2JDYXO.mjs +2 -0
  4. package/{backwardForward-6U6VETTV.mjs.map → backwardForward-4K2JDYXO.mjs.map} +1 -1
  5. package/chunk-2UQZ2IND.js +2 -0
  6. package/{chunk-4AXKM55A.js.map → chunk-2UQZ2IND.js.map} +1 -1
  7. package/chunk-4WSW2YML.js +2 -0
  8. package/{chunk-AJG5T24R.js.map → chunk-4WSW2YML.js.map} +1 -1
  9. package/chunk-5OIS455P.mjs +3 -0
  10. package/chunk-5OIS455P.mjs.map +1 -0
  11. package/{chunk-3ZNIRSH3.mjs → chunk-6ZKKSIBV.mjs} +2 -2
  12. package/{chunk-3ZNIRSH3.mjs.map → chunk-6ZKKSIBV.mjs.map} +1 -1
  13. package/chunk-AOOXGUAJ.js +2 -0
  14. package/{chunk-J7CRSGHN.js.map → chunk-AOOXGUAJ.js.map} +1 -1
  15. package/{chunk-P6UV7U4E.mjs → chunk-AUZAI7ZJ.mjs} +2 -2
  16. package/{chunk-P6UV7U4E.mjs.map → chunk-AUZAI7ZJ.mjs.map} +1 -1
  17. package/{chunk-7CZEUDNW.mjs → chunk-BMC7X7BK.mjs} +3 -3
  18. package/{chunk-7CZEUDNW.mjs.map → chunk-BMC7X7BK.mjs.map} +1 -1
  19. package/chunk-DQ4YH4BY.mjs +9 -0
  20. package/chunk-DQ4YH4BY.mjs.map +1 -0
  21. package/{chunk-LAFBWF7M.js → chunk-G5R3U2OG.js} +2 -2
  22. package/{chunk-LAFBWF7M.js.map → chunk-G5R3U2OG.js.map} +1 -1
  23. package/{chunk-NFS5ZBFX.mjs → chunk-IOYUXRGD.mjs} +2 -2
  24. package/{chunk-NFS5ZBFX.mjs.map → chunk-IOYUXRGD.mjs.map} +1 -1
  25. package/{chunk-R65WA2TV.mjs → chunk-Q52RFNV3.mjs} +2 -2
  26. package/{chunk-R65WA2TV.mjs.map → chunk-Q52RFNV3.mjs.map} +1 -1
  27. package/{chunk-NTINJ2J6.js → chunk-QHLPSV6I.js} +2 -2
  28. package/{chunk-NTINJ2J6.js.map → chunk-QHLPSV6I.js.map} +1 -1
  29. package/{chunk-ELG5PCR2.mjs → chunk-TUYGEJVR.mjs} +2 -2
  30. package/{chunk-ELG5PCR2.mjs.map → chunk-TUYGEJVR.mjs.map} +1 -1
  31. package/chunk-WG7PYZXW.js +3 -0
  32. package/chunk-WG7PYZXW.js.map +1 -0
  33. package/chunk-ZK5BOK4Y.js +3 -0
  34. package/{chunk-S3ULKQPB.js.map → chunk-ZK5BOK4Y.js.map} +1 -1
  35. package/chunk-ZPH2HWHV.js +9 -0
  36. package/chunk-ZPH2HWHV.js.map +1 -0
  37. package/index.js +1 -1
  38. package/index.js.map +1 -1
  39. package/index.mjs +1 -1
  40. package/index.mjs.map +1 -1
  41. package/nonStaticVideoTag-I5AI5KU3.js +2 -0
  42. package/{nonStaticVideoTag-6IOIANAD.js.map → nonStaticVideoTag-I5AI5KU3.js.map} +1 -1
  43. package/{nonStaticVideoTag-JKZGTEQK.mjs → nonStaticVideoTag-URXCYYXT.mjs} +2 -2
  44. package/{nonStaticVideoTag-JKZGTEQK.mjs.map → nonStaticVideoTag-URXCYYXT.mjs.map} +1 -1
  45. package/package.json +1 -1
  46. package/staticPlayer-GU5RRZIR.js +2 -0
  47. package/{staticPlayer-L6ZHTYIE.js.map → staticPlayer-GU5RRZIR.js.map} +1 -1
  48. package/staticPlayer-YU2BZCDF.mjs +2 -0
  49. package/{staticPlayer-4IVOGXWC.mjs.map → staticPlayer-YU2BZCDF.mjs.map} +1 -1
  50. package/staticVideoTag-DYKLVJRS.js +2 -0
  51. package/{staticVideoTag-4I2J2KRA.js.map → staticVideoTag-DYKLVJRS.js.map} +1 -1
  52. package/{staticVideoTag-GJF26BZ3.mjs → staticVideoTag-ZNZBQ7WW.mjs} +2 -2
  53. package/{staticVideoTag-GJF26BZ3.mjs.map → staticVideoTag-ZNZBQ7WW.mjs.map} +1 -1
  54. package/{touchVolumeBrightness-77BH7B3T.js → touchVolumeBrightness-BHL4CXCQ.js} +3 -3
  55. package/{touchVolumeBrightness-77BH7B3T.js.map → touchVolumeBrightness-BHL4CXCQ.js.map} +1 -1
  56. package/{touchVolumeBrightness-VSJS4WWO.mjs → touchVolumeBrightness-THRKUQFI.mjs} +3 -3
  57. package/{touchVolumeBrightness-VSJS4WWO.mjs.map → touchVolumeBrightness-THRKUQFI.mjs.map} +1 -1
  58. package/videoArea-JBENXGDZ.mjs +2 -0
  59. package/{videoArea-E7A4UFKZ.mjs.map → videoArea-JBENXGDZ.mjs.map} +1 -1
  60. package/videoArea-ZU4LKPTL.js +2 -0
  61. package/{videoArea-AXJIXBW5.js.map → videoArea-ZU4LKPTL.js.map} +1 -1
  62. package/videoPlayerStyles.css +6 -3
  63. package/vodPlayer-62FEZN5H.js +2 -0
  64. package/{vodPlayer-YZ7XNHKT.js.map → vodPlayer-62FEZN5H.js.map} +1 -1
  65. package/{vodPlayer-LEY3FMUD.mjs → vodPlayer-SQSP4JD5.mjs} +2 -2
  66. package/{vodPlayer-LEY3FMUD.mjs.map → vodPlayer-SQSP4JD5.mjs.map} +1 -1
  67. package/backwardForward-6U6VETTV.mjs +0 -2
  68. package/backwardForward-FW25LAUC.js +0 -2
  69. package/chunk-4AXKM55A.js +0 -2
  70. package/chunk-AJG5T24R.js +0 -2
  71. package/chunk-J7CRSGHN.js +0 -2
  72. package/chunk-KODWZOFT.js +0 -3
  73. package/chunk-KODWZOFT.js.map +0 -1
  74. package/chunk-LHO7HY26.mjs +0 -3
  75. package/chunk-LHO7HY26.mjs.map +0 -1
  76. package/chunk-S3ULKQPB.js +0 -3
  77. package/chunk-UTQQHPIT.mjs +0 -9
  78. package/chunk-UTQQHPIT.mjs.map +0 -1
  79. package/chunk-Y3GDFXWU.js +0 -9
  80. package/chunk-Y3GDFXWU.js.map +0 -1
  81. package/nonStaticVideoTag-6IOIANAD.js +0 -2
  82. package/staticPlayer-4IVOGXWC.mjs +0 -2
  83. package/staticPlayer-L6ZHTYIE.js +0 -2
  84. package/staticVideoTag-4I2J2KRA.js +0 -2
  85. package/videoArea-AXJIXBW5.js +0 -2
  86. package/videoArea-E7A4UFKZ.mjs +0 -2
  87. package/vodPlayer-YZ7XNHKT.js +0 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/videoPlayerLibrary/components/custom-components/backwardForward/backwardForward.tsx"],"names":["init_cjs_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-LAFBWF7M.js","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_cjs_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-G5R3U2OG.js","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,2 +1,2 @@
1
- import {e as e$1}from'./chunk-P6UV7U4E.mjs';import {da,ea,f,fa,ca,T}from'./chunk-LHO7HY26.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=da(),{duration:q}=ea(({controller:{currentTime:a,duration:n}})=>({currentTime:a,duration:n}),shallowEqual),{videoElementSizeInfo:B}=ea(({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),fa().duration-fa().currentTime<=i.current?e$1(r,fa().duration):e$1(r,i.current),f$1(15)):g&&s&&(s(!1),fa().currentTime<=i.current?e$1(r,0):e$1(r,i.current),f$1(15)));},[x]);let z=a=>{f$1(n=>n+15),ca("isTouchScreenLandscape")&&T(a,r),clearTimeout(p.current),p.current=setTimeout(()=>m(!0),j);},w;return ["backward","forward"].includes(r)?w=jsx("div",{className:`${!ca("isTouchScreen")&&"hover:pl-scale-125"} pl-transition-transform pl-ease-in-out pl-cursor-pointer ${r==="backward"&&(fa().currentTime>=15?"pl-opacity-100":"pl-opacity-30 pl-cursor-default hover:pl-scale-100")} ${r==="forward"&&(q-fa().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-NFS5ZBFX.mjs.map
2
- //# sourceMappingURL=chunk-NFS5ZBFX.mjs.map
1
+ import {e as e$1}from'./chunk-AUZAI7ZJ.mjs';import {da,ea,f,fa,ca,T}from'./chunk-5OIS455P.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=da(),{duration:q}=ea(({controller:{currentTime:a,duration:n}})=>({currentTime:a,duration:n}),shallowEqual),{videoElementSizeInfo:B}=ea(({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),fa().duration-fa().currentTime<=i.current?e$1(r,fa().duration):e$1(r,i.current),f$1(15)):g&&s&&(s(!1),fa().currentTime<=i.current?e$1(r,0):e$1(r,i.current),f$1(15)));},[x]);let z=a=>{f$1(n=>n+15),ca("isTouchScreenLandscape")&&T(a,r),clearTimeout(p.current),p.current=setTimeout(()=>m(!0),j);},w;return ["backward","forward"].includes(r)?w=jsx("div",{className:`${!ca("isTouchScreen")&&"hover:pl-scale-125"} pl-transition-transform pl-ease-in-out pl-cursor-pointer ${r==="backward"&&(fa().currentTime>=15?"pl-opacity-100":"pl-opacity-30 pl-cursor-default hover:pl-scale-100")} ${r==="forward"&&(q-fa().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-IOYUXRGD.mjs.map
2
+ //# sourceMappingURL=chunk-IOYUXRGD.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-NFS5ZBFX.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-IOYUXRGD.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,2 +1,2 @@
1
- import {g as g$1,i as i$1}from'./chunk-P6UV7U4E.mjs';import {fa,ga,Ca,N,S,M,Y as Y$1,d,ca,i,g,a,c,w,la,xa,z as z$1,ya,j,za,n,b,y,p,f,F,h,e as e$1,m,G}from'./chunk-LHO7HY26.mjs';import {e}from'./chunk-DBPGS72Q.mjs';e();var fe=e=>{e.preventDefault();let t=(fa()||ga()).error;if(t)switch(t.code){case t.MEDIA_ERR_ABORTED:Ca({type:"videoTagError",message:"You aborted the video playback."});break;case t.MEDIA_ERR_NETWORK:Ca({type:"videoTagError",message:"A network error caused the video download to fail part-way."});break;case t.MEDIA_ERR_DECODE:Ca({type:"videoTagError",message:"The video playback was aborted due to a corruption problem or because the video used features your browser did not support."});break;case t.MEDIA_ERR_SRC_NOT_SUPPORTED:Ca({type:"videoTagError",message:"The video could not be loaded, either because the server or network failed or because the format is not supported."});break;default:Ca({type:"videoTagError",message:"An unknown error occurred."});break}else Ca({type:"videoTagError",message:"An error occurred, but the error object is not available."});},$=()=>{let e=M.dispatch,{params:t}=M.getState().videoData,a=n=>{n.requestFullScreen?n.requestFullScreen():n.mozRequestFullScreen?n.mozRequestFullScreen():n.webkitRequestFullScreen&&n.webkitRequestFullScreen();};e(F()),a(document.documentElement),e(h(t.fullscreen==="true"));},he=()=>{let e=".ts",t=XMLHttpRequest.prototype.open;XMLHttpRequest.prototype.open=function(){arguments[1].endsWith(e)&&(arguments[1]=arguments[1]+"?uuid="+N()),t.apply(this,arguments);};},Y=(e,t)=>{let a=M.dispatch;t.current=setInterval(()=>{let s=e.target.buffered.end(0)/fa().duration*100;a(i(s));},500);},ge=()=>{let e=S("mainPlayer");return {xhrSetup:(t,a)=>{a.split("m3u8")[1]||(a=`${a}${e}`),t.open("GET",a,!0);},startLevel:-1,debug:!1,enableWorker:!0,abrBandWidthUpFactor:.7,abrBandWidthFactor:.95,backBufferLength:1/0,maxBufferLength:30,maxMaxBufferLength:60,manifestLoadPolicy:{default:{maxTimeToFirstByteMs:1/0,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4},errorRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4}}},fragLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:12e4,timeoutRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4},errorRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4}}},playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4},errorRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4}}}}},xe=()=>{let e=S("miniPlayer");return {xhrSetup:(t,a)=>{a=`${a}${e}`,t.open("GET",a,!0);},startLevel:1,debug:!1,maxMaxBufferLength:60,playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:1e3,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1e3,retryDelayMs:1e3,maxRetryDelayMs:1e3}}}}},J=(e,t)=>{let a=M.dispatch,n=[],s=[];e.levels.map(i=>{n.push(i.attrs.RESOLUTION.split("x")[1].trim()),s.push(i.attrs.RESOLUTION);}),e.autoLevelCapping=Y$1(s,window.innerWidth,window.innerHeight),a(d(n)),["fullscreenchange","webkitfullscreenchange","mozfullscreenchange","msfullscreenchange"].forEach(i=>document.addEventListener(i,c=>{ca("isAutoQuality")&&(e.autoLevelCapping=Y$1(s,window.innerWidth,window.innerHeight),e.nextLevel=-1);},!1));},ve=(e,t)=>{let{params:a,details:n}=M.getState().videoData,s=n.stream_link;t.loadSource(s),t.on(e.Events.MANIFEST_PARSED,(i,c)=>J(t));},z=(e,t,a)=>{if(t.frag.type!=="audio"){let n=M.dispatch,{settings:s}=M.getState().user,{qualityLevels:i,manualQuality:c,autoQuality:x}=M.getState().controller;ca("isAutoQuality")?ca("isAutoQuality")&&x===void 0?(e.nextLevel=-1,a(i[t.frag.level]),n(e$1(t.frag.level))):ca("isAutoQuality")&&(a(i[t.frag.level]),x!==t.frag.level&&n(e$1(t.frag.level))):(t.frag.level!==c&&(e.nextLevel=i[s.quality]?s.quality:-1),i[s.quality]?(n(m(s.quality)),n(e$1(void 0))):(a(i[t.frag.level]),n(e$1(t.frag.level)),n(G({...s,quality:-1}))));}},De=e=>{let t=M.dispatch,n=e.mainForwardBufferInfo?.end/fa().duration*100;t(i(n));},Se=(e,t,a)=>{let{params:n}=M.getState().videoData;n.type&&z(e,t,a);},Te=(e,t,a)=>{let{type:n}=M.getState().videoData.params;n&&z(e,t,a);},Pe=e=>{if(e.event!=="hlsAudioTrackLoading")return {type:"HLS_"+e.type,message:e.error.message}},be=(e,t)=>{let a=M.dispatch;e.preventDefault(),t.current=Date.now(),a(g(!0));},Le=(e,t)=>{let a=M.dispatch;e.preventDefault(),t.current=0,a(g(!0));},Me=(e,t)=>{let a$1=M.dispatch,{videoSettings:n}=M.getState().user,{params:s}=M.getState().videoData;e.preventDefault(),t.current=Date.now(),a$1(a(!0)),ca("hasOnPlayParams")&&s.onPlay(),ca("isFirstPlay")&&(ca("hasCurrentTimeParams")||(fa().currentTime=n.time,a$1(c(n.time))),ca("hasFullScreenParams")&&$(),ca("isFullScreen")&&g$1(),a$1(w([Math.floor(fa().currentTime)]))),la(xa(!0)),a$1(z$1(""));},Ee=(e,t,a,n,s,i,c,x)=>{let G=M.dispatch,{autoQuality:V,canPlayVideo:X,firstPlay:K,qualityLevels:O}=M.getState().controller,{settings:A}=M.getState().user,I=A.quality===-1&&V?O[V]:O[A.quality],v=0;c.current&&(v=Date.now()-c.current),K&&fa().played&&la(ya(t.current,Date.now()-a.current,n.current-a.current,Date.now()-s.current,s)),G(j(!1)),X&&v>0&&I!==void 0&&(i.current=v,c.current=0,la(za(v,I,s,e,x.current)),e.current=e.current+1,s.current=Date.now());},Re=e=>{let t=M.dispatch,{params:a$1}=M.getState().videoData;e.preventDefault(),la(xa(!1)),t(a(!1)),ca("hasOnPauseParams")&&a$1.onPause();},Fe=e=>{let t=M.dispatch,{selectedSubtitle:a}=M.getState().videoData;e.preventDefault(),t(c(e.target.currentTime)),ca("hasActiveCue")&&t(z$1(a.activeCues[0].text));},ke=e=>{let t=M.dispatch,{settings:a}=M.getState().user;if(e.preventDefault(),t(g(!1)),t(n(!0)),fa().volume=a.volume/100,t(b(e.target.duration)),ca("isIOS")){let n=Object.values(e.target.textTracks);n&&n.length&&t(y(Object.values(n[0]).length?n:[]));}else t(y(Object.values(e.target.textTracks)));},we=e=>{let t=M.dispatch,{params:a}=M.getState().videoData;e.preventDefault(),t(p(!0)),t(f(!0)),i$1(fa().duration),ca("hasOnFinishedParams")&&a.onFinished();},Ve=(e,t)=>{let a=M.dispatch;e.preventDefault(),t.current=Date.now(),a(j(!1));},Oe=()=>{let e=M.dispatch;e(g(!1));},Ae=e=>{let t=M.dispatch;e.preventDefault(),t(c(e.target.currentTime));},Ie=()=>{let e=M.dispatch,{params:t}=M.getState().videoData;e(p(!0)),e(f(!0)),ca("hasOnFinishedParams")&&t.onFinished();},qe=e=>{let t=M.dispatch;e.preventDefault(),t(a(!1));},Ce=(e,t)=>{let a$1=M.dispatch;e.preventDefault(),a$1(a(!0)),t.current=Date.now(),a$1(z$1("")),ca("isFirstPlay")&&ca("hasFullScreenParams")&&($(),ca("isFullScreen")&&g$1());},Be=(e,t,a)=>{let n=M.dispatch,{firstPlay:s}=M.getState().controller;n(g(!1)),s&&fa().played&&la(ya(Math.round(e.current),Date.now()-t.current,0,Date.now()-a.current,a)),n(j(!1));},Ne=e=>{let t=M.dispatch,{selectedSubtitle:a}=M.getState().videoData;e.preventDefault(),t(c(e.target.currentTime)),t(b(e.target.duration)),ca("hasActiveCue")&&t(z$1(a.activeCues[0].text));},_e=e=>{let t=M.dispatch;if(e.preventDefault(),t(g(!1)),t(n(!0)),ca("isIOS")){let a=Object.values(e.target.textTracks);a&&a.length&&t(y(Object.values(a[0]).length?a:[]));}else t(y(Object.values(e.target.textTracks)));},Qe=(e,t)=>{e.preventDefault(),Y(e,t);};var Ue=async e=>{let{stream_link:t}=M.getState().miniPlayer.details;e.loadSource(t);},We=e=>{i$1(fa().currentTime);};export{_e as A,Qe as B,Ue as C,We as D,fe as a,he as b,ge as c,xe as d,J as e,ve as f,De as g,Se as h,Te as i,Pe as j,be as k,Le as l,Me as m,Ee as n,Re as o,Fe as p,ke as q,we as r,Ve as s,Oe as t,Ae as u,Ie as v,qe as w,Ce as x,Be as y,Ne as z};//# sourceMappingURL=chunk-R65WA2TV.mjs.map
2
- //# sourceMappingURL=chunk-R65WA2TV.mjs.map
1
+ import {g as g$1,i as i$1}from'./chunk-AUZAI7ZJ.mjs';import {fa,ga,Ca,N,S,M,Y as Y$1,d,ca,i,g,a,c,w,la,xa,z as z$1,ya,j,za,n,b,y,p,f,F,h,e as e$1,m,G}from'./chunk-5OIS455P.mjs';import {e}from'./chunk-DBPGS72Q.mjs';e();var fe=e=>{e.preventDefault();let t=(fa()||ga()).error;if(t)switch(t.code){case t.MEDIA_ERR_ABORTED:Ca({type:"videoTagError",message:"You aborted the video playback."});break;case t.MEDIA_ERR_NETWORK:Ca({type:"videoTagError",message:"A network error caused the video download to fail part-way."});break;case t.MEDIA_ERR_DECODE:Ca({type:"videoTagError",message:"The video playback was aborted due to a corruption problem or because the video used features your browser did not support."});break;case t.MEDIA_ERR_SRC_NOT_SUPPORTED:Ca({type:"videoTagError",message:"The video could not be loaded, either because the server or network failed or because the format is not supported."});break;default:Ca({type:"videoTagError",message:"An unknown error occurred."});break}else Ca({type:"videoTagError",message:"An error occurred, but the error object is not available."});},$=()=>{let e=M.dispatch,{params:t}=M.getState().videoData,a=n=>{n.requestFullScreen?n.requestFullScreen():n.mozRequestFullScreen?n.mozRequestFullScreen():n.webkitRequestFullScreen&&n.webkitRequestFullScreen();};e(F()),a(document.documentElement),e(h(t.fullscreen==="true"));},he=()=>{let e=".ts",t=XMLHttpRequest.prototype.open;XMLHttpRequest.prototype.open=function(){arguments[1].endsWith(e)&&(arguments[1]=arguments[1]+"?uuid="+N()),t.apply(this,arguments);};},Y=(e,t)=>{let a=M.dispatch;t.current=setInterval(()=>{let s=e.target.buffered.end(0)/fa().duration*100;a(i(s));},500);},ge=()=>{let e=S("mainPlayer");return {xhrSetup:(t,a)=>{a.split("m3u8")[1]||(a=`${a}${e}`),t.open("GET",a,!0);},startLevel:-1,debug:!1,enableWorker:!0,abrBandWidthUpFactor:.7,abrBandWidthFactor:.95,backBufferLength:1/0,maxBufferLength:30,maxMaxBufferLength:60,manifestLoadPolicy:{default:{maxTimeToFirstByteMs:1/0,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4},errorRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4}}},fragLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:12e4,timeoutRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4},errorRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4}}},playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4},errorRetry:{maxNumRetry:10,retryDelayMs:5e3,maxRetryDelayMs:1e4}}}}},xe=()=>{let e=S("miniPlayer");return {xhrSetup:(t,a)=>{a=`${a}${e}`,t.open("GET",a,!0);},startLevel:1,debug:!1,maxMaxBufferLength:60,playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:1e3,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1e3,retryDelayMs:1e3,maxRetryDelayMs:1e3}}}}},J=(e,t)=>{let a=M.dispatch,n=[],s=[];e.levels.map(i=>{n.push(i.attrs.RESOLUTION.split("x")[1].trim()),s.push(i.attrs.RESOLUTION);}),e.autoLevelCapping=Y$1(s,window.innerWidth,window.innerHeight),a(d(n)),["fullscreenchange","webkitfullscreenchange","mozfullscreenchange","msfullscreenchange"].forEach(i=>document.addEventListener(i,c=>{ca("isAutoQuality")&&(e.autoLevelCapping=Y$1(s,window.innerWidth,window.innerHeight),e.nextLevel=-1);},!1));},ve=(e,t)=>{let{params:a,details:n}=M.getState().videoData,s=n.stream_link;t.loadSource(s),t.on(e.Events.MANIFEST_PARSED,(i,c)=>J(t));},z=(e,t,a)=>{if(t.frag.type!=="audio"){let n=M.dispatch,{settings:s}=M.getState().user,{qualityLevels:i,manualQuality:c,autoQuality:x}=M.getState().controller;ca("isAutoQuality")?ca("isAutoQuality")&&x===void 0?(e.nextLevel=-1,a(i[t.frag.level]),n(e$1(t.frag.level))):ca("isAutoQuality")&&(a(i[t.frag.level]),x!==t.frag.level&&n(e$1(t.frag.level))):(t.frag.level!==c&&(e.nextLevel=i[s.quality]?s.quality:-1),i[s.quality]?(n(m(s.quality)),n(e$1(void 0))):(a(i[t.frag.level]),n(e$1(t.frag.level)),n(G({...s,quality:-1}))));}},De=e=>{let t=M.dispatch,n=e.mainForwardBufferInfo?.end/fa().duration*100;t(i(n));},Se=(e,t,a)=>{let{params:n}=M.getState().videoData;n.type&&z(e,t,a);},Te=(e,t,a)=>{let{type:n}=M.getState().videoData.params;n&&z(e,t,a);},Pe=e=>{if(e.event!=="hlsAudioTrackLoading")return {type:"HLS_"+e.type,message:e.error.message}},be=(e,t)=>{let a=M.dispatch;e.preventDefault(),t.current=Date.now(),a(g(!0));},Le=(e,t)=>{let a=M.dispatch;e.preventDefault(),t.current=0,a(g(!0));},Me=(e,t)=>{let a$1=M.dispatch,{videoSettings:n}=M.getState().user,{params:s}=M.getState().videoData;e.preventDefault(),t.current=Date.now(),a$1(a(!0)),ca("hasOnPlayParams")&&s.onPlay(),ca("isFirstPlay")&&(ca("hasCurrentTimeParams")||(fa().currentTime=n.time,a$1(c(n.time))),ca("hasFullScreenParams")&&$(),ca("isFullScreen")&&g$1(),a$1(w([Math.floor(fa().currentTime)]))),la(xa(!0)),a$1(z$1(""));},Ee=(e,t,a,n,s,i,c,x)=>{let G=M.dispatch,{autoQuality:V,canPlayVideo:X,firstPlay:K,qualityLevels:O}=M.getState().controller,{settings:A}=M.getState().user,I=A.quality===-1&&V?O[V]:O[A.quality],v=0;c.current&&(v=Date.now()-c.current),K&&fa().played&&la(ya(t.current,Date.now()-a.current,n.current-a.current,Date.now()-s.current,s)),G(j(!1)),X&&v>0&&I!==void 0&&(i.current=v,c.current=0,la(za(v,I,s,e,x.current)),e.current=e.current+1,s.current=Date.now());},Re=e=>{let t=M.dispatch,{params:a$1}=M.getState().videoData;e.preventDefault(),la(xa(!1)),t(a(!1)),ca("hasOnPauseParams")&&a$1.onPause();},Fe=e=>{let t=M.dispatch,{selectedSubtitle:a}=M.getState().videoData;e.preventDefault(),t(c(e.target.currentTime)),ca("hasActiveCue")&&t(z$1(a.activeCues[0].text));},ke=e=>{let t=M.dispatch,{settings:a}=M.getState().user;if(e.preventDefault(),t(g(!1)),t(n(!0)),fa().volume=a.volume/100,t(b(e.target.duration)),ca("isIOS")){let n=Object.values(e.target.textTracks);n&&n.length&&t(y(Object.values(n[0]).length?n:[]));}else t(y(Object.values(e.target.textTracks)));},we=e=>{let t=M.dispatch,{params:a}=M.getState().videoData;e.preventDefault(),t(p(!0)),t(f(!0)),i$1(fa().duration),ca("hasOnFinishedParams")&&a.onFinished();},Ve=(e,t)=>{let a=M.dispatch;e.preventDefault(),t.current=Date.now(),a(j(!1));},Oe=()=>{let e=M.dispatch;e(g(!1));},Ae=e=>{let t=M.dispatch;e.preventDefault(),t(c(e.target.currentTime));},Ie=()=>{let e=M.dispatch,{params:t}=M.getState().videoData;e(p(!0)),e(f(!0)),ca("hasOnFinishedParams")&&t.onFinished();},qe=e=>{let t=M.dispatch;e.preventDefault(),t(a(!1));},Ce=(e,t)=>{let a$1=M.dispatch;e.preventDefault(),a$1(a(!0)),t.current=Date.now(),a$1(z$1("")),ca("isFirstPlay")&&ca("hasFullScreenParams")&&($(),ca("isFullScreen")&&g$1());},Be=(e,t,a)=>{let n=M.dispatch,{firstPlay:s}=M.getState().controller;n(g(!1)),s&&fa().played&&la(ya(Math.round(e.current),Date.now()-t.current,0,Date.now()-a.current,a)),n(j(!1));},Ne=e=>{let t=M.dispatch,{selectedSubtitle:a}=M.getState().videoData;e.preventDefault(),t(c(e.target.currentTime)),t(b(e.target.duration)),ca("hasActiveCue")&&t(z$1(a.activeCues[0].text));},_e=e=>{let t=M.dispatch;if(e.preventDefault(),t(g(!1)),t(n(!0)),ca("isIOS")){let a=Object.values(e.target.textTracks);a&&a.length&&t(y(Object.values(a[0]).length?a:[]));}else t(y(Object.values(e.target.textTracks)));},Qe=(e,t)=>{e.preventDefault(),Y(e,t);};var Ue=async e=>{let{stream_link:t}=M.getState().miniPlayer.details;e.loadSource(t);},We=e=>{i$1(fa().currentTime);};export{_e as A,Qe as B,Ue as C,We as D,fe as a,he as b,ge as c,xe as d,J as e,ve as f,De as g,Se as h,Te as i,Pe as j,be as k,Le as l,Me as m,Ee as n,Re as o,Fe as p,ke as q,we as r,Ve as s,Oe as t,Ae as u,Ie as v,qe as w,Ce as x,Be as y,Ne as z};//# sourceMappingURL=chunk-Q52RFNV3.mjs.map
2
+ //# sourceMappingURL=chunk-Q52RFNV3.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/playerCore.actions.ts"],"names":["init_esm_shims","handleVideoError","event","error","mainPlayerVideoTag","miniPlayerVideoTag","errorLogProvider","handleAutoFullScreen","dispatch","store_default","params","launchFullScreen","element","setClearPopoversSlice","setIsFullScreen","appendQueryParamsToChunksIOS","fragmentExtension","originalOpen","getUUID","handleBufferedTime","intervalRef","bufferedTimeWidth","setBufferedTimeWidth","handleHlsConfig","streamLinkParams","splitQueryParamsFromStreamLink","xhr","url","handleMiniPlayerHlsConfig","handleManifestParsed","hls","data","qualityLevels","resolutions","level","highestResolutionSupported","setQualityLevels","eventType","conditions","handleMediaAttached","Hls","details","streamLink","handleLevels","setQualityLevel","settings","manualQuality","autoQuality","setAutoQuality","setManualQuality","setUserSettings","handleFragBuffered","handleFragChanged","handleFragParsed","type","handleHlsErrors","handleVideoWaiting","waitingTimerRef","setIsLoading","handleVideoSeeking","handleVideoPlay","timerRef","videoSettings","setPlay","setCurrentTime","handleLockOrientation","setVideoTimelines","sendFluentLog","pausePlayLog","setSubtitleText","handleVideoPlaying","loadingCounterRef","loadingDurationRef","initialWaitingDurationRef","bannerLoadingDurationRef","waitingDurationRef","videoEntranceTimeRef","canPlayVideo","firstPlay","qualityLevel","waitingDuration","initLog","setFirstPlay","loadingLog","handleVideoPause","handleVideoTimeUpdate","selectedSubtitle","handleVideoCanPlay","setCanPlayVideo","setDuration","subtitle","setSubtitles","handleVideoEnded","setIsEnded","setActiveElements","handleVideoTimeline","handleIosVideoPlay","handleIosVideoPlaying","handleIosVideoTimeUpdate","handleIosVideoEnded","handleStaticVideoPause","handleStaticVideoPlay","handleStaticVideoPlaying","handleStaticVideoTimeUpdate","handleStaticVideoCanPlay","handleStaticVideoLoadedData","handleMiniPlayerMediaAttached","stream_link","handleVideoVisibilityChange"],"mappings":"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","file":"chunk-R65WA2TV.mjs","sourcesContent":["import { conditions } from \"../../conditions/conditions\";\r\nimport { mainPlayerVideoTag, miniPlayerVideoTag } from \"../../constants\";\r\nimport { errorLogProvider } from \"../../errorBoundary/errorBoundaryFunctions\";\r\nimport {\r\n getUUID,\r\n highestResolutionSupported,\r\n splitQueryParamsFromStreamLink,\r\n} from \"../../helpers\";\r\nimport { ConditionName } from \"../../interfaces/enums\";\r\nimport { sendFluentLog } from \"../../logs/fluentdLogger\";\r\nimport { initLog, loadingLog, pausePlayLog } from \"../../logs/logs\";\r\nimport {\r\n setActiveElements,\r\n setAutoQuality,\r\n setBufferedTimeWidth,\r\n setCanPlayVideo,\r\n setCurrentTime,\r\n setDuration,\r\n setFirstPlay,\r\n setIsEnded,\r\n setIsFullScreen,\r\n setIsLoading,\r\n setManualQuality,\r\n setPlay,\r\n setQualityLevels,\r\n} from \"../slices/controllerSlice\";\r\nimport { setClearPopoversSlice } from \"../slices/popoversSlice\";\r\nimport { setUserSettings } from \"../slices/userSlice\";\r\nimport {\r\n setSubtitleText,\r\n setSubtitles,\r\n setVideoTimelines,\r\n} from \"../slices/videoDataSlice\";\r\nimport store from \"../store\";\r\nimport {\r\n handleLockOrientation,\r\n handleVideoTimeline,\r\n} from \"./controller.actions\";\r\n\r\nexport const handleVideoError = (event: any) => {\r\n event.preventDefault();\r\n // Access the error property from the video element\r\n let error = (mainPlayerVideoTag() || miniPlayerVideoTag()).error;\r\n if (error) {\r\n switch (error.code) {\r\n case error.MEDIA_ERR_ABORTED:\r\n errorLogProvider({ type: \"videoTagError\", message: \"You aborted the video playback.\" });\r\n break;\r\n case error.MEDIA_ERR_NETWORK:\r\n errorLogProvider({ type: \"videoTagError\", message: \"A network error caused the video download to fail part-way.\" });\r\n break;\r\n case error.MEDIA_ERR_DECODE:\r\n errorLogProvider({\r\n type: \"videoTagError\",\r\n message:\r\n \"The video playback was aborted due to a corruption problem or because the video used features your browser did not support.\"\r\n });\r\n break;\r\n case error.MEDIA_ERR_SRC_NOT_SUPPORTED:\r\n errorLogProvider({\r\n type: \"videoTagError\",\r\n message: \"The video could not be loaded, either because the server or network failed or because the format is not supported.\"\r\n });\r\n break;\r\n default:\r\n errorLogProvider({ type: \"videoTagError\", message: \"An unknown error occurred.\" });\r\n break;\r\n }\r\n } else {\r\n errorLogProvider({ type: \"videoTagError\", message: \"An error occurred, but the error object is not available.\" });\r\n }\r\n};\r\n\r\nexport const handleAutoFullScreen = () => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n const launchFullScreen = (element: any) => {\r\n if (element.requestFullScreen) element.requestFullScreen();\r\n else if (element.mozRequestFullScreen) element.mozRequestFullScreen();\r\n else if (element.webkitRequestFullScreen) element.webkitRequestFullScreen();\r\n };\r\n dispatch(setClearPopoversSlice());\r\n launchFullScreen(document.documentElement);\r\n dispatch(setIsFullScreen(params.fullscreen === \"true\"));\r\n};\r\n\r\nexport const appendQueryParamsToChunksIOS = () => {\r\n let fragmentExtension = \".ts\";\r\n let originalOpen = XMLHttpRequest.prototype.open;\r\n XMLHttpRequest.prototype.open = function () {\r\n if (arguments[1].endsWith(fragmentExtension))\r\n arguments[1] = arguments[1] + \"?uuid=\" + getUUID!();\r\n originalOpen.apply(this, arguments as any);\r\n };\r\n};\r\n\r\nexport const handleBufferedTime = (event: any, intervalRef: any) => {\r\n const dispatch = store.dispatch;\r\n intervalRef.current = setInterval(() => {\r\n const bufferedTime = event.target.buffered.end(0);\r\n const bufferedTimeWidth =\r\n (bufferedTime / mainPlayerVideoTag().duration) * 100;\r\n dispatch(setBufferedTimeWidth(bufferedTimeWidth));\r\n }, 500);\r\n};\r\n\r\n// ************* Hls Config Handlers ************* //\r\nexport const handleHlsConfig = () => {\r\n const streamLinkParams = splitQueryParamsFromStreamLink(\"mainPlayer\");\r\n return {\r\n xhrSetup: (xhr: any, url: any) => {\r\n if (!url.split(\"m3u8\")[1]) url = `${url}${streamLinkParams}`;\r\n xhr.open(\"GET\", url, true);\r\n },\r\n startLevel: -1,\r\n debug: false,\r\n enableWorker: true,\r\n abrBandWidthUpFactor: 0.7,\r\n abrBandWidthFactor: 0.95,\r\n backBufferLength: Infinity,\r\n maxBufferLength: 30,\r\n maxMaxBufferLength: 60,\r\n manifestLoadPolicy: {\r\n default: {\r\n maxTimeToFirstByteMs: Infinity,\r\n maxLoadTimeMs: 20000,\r\n timeoutRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n errorRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n },\r\n },\r\n fragLoadPolicy: {\r\n default: {\r\n maxTimeToFirstByteMs: 10000,\r\n maxLoadTimeMs: 120000,\r\n timeoutRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n errorRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n },\r\n },\r\n playlistLoadPolicy: {\r\n default: {\r\n maxTimeToFirstByteMs: 10000,\r\n maxLoadTimeMs: 20000,\r\n timeoutRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n errorRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n },\r\n },\r\n };\r\n};\r\n\r\nexport const handleMiniPlayerHlsConfig = () => {\r\n const streamLinkParams = splitQueryParamsFromStreamLink(\"miniPlayer\");\r\n return {\r\n xhrSetup: (xhr: any, url: any) => {\r\n url = `${url}${streamLinkParams}`;\r\n xhr.open(\"GET\", url, true);\r\n },\r\n startLevel: 1,\r\n debug: false,\r\n maxMaxBufferLength: 60,\r\n playlistLoadPolicy: {\r\n default: {\r\n maxTimeToFirstByteMs: 10000,\r\n maxLoadTimeMs: 20000,\r\n timeoutRetry: {\r\n maxNumRetry: 1000,\r\n retryDelayMs: 0,\r\n maxRetryDelayMs: 0,\r\n },\r\n errorRetry: {\r\n maxNumRetry: 1000,\r\n retryDelayMs: 1000,\r\n maxRetryDelayMs: 1000,\r\n },\r\n },\r\n },\r\n };\r\n};\r\n\r\n// ************* Manifest Handlers ************* //\r\n\r\nexport const handleManifestParsed = (hls: any, data: any) => {\r\n const dispatch = store.dispatch;\r\n let qualityLevels: any[] = [];\r\n let resolutions: any[] = [];\r\n hls.levels.map((level: any) => {\r\n qualityLevels.push(level.attrs.RESOLUTION!.split(\"x\")[1].trim());\r\n resolutions.push(level.attrs.RESOLUTION!);\r\n });\r\n hls.autoLevelCapping = highestResolutionSupported(\r\n resolutions,\r\n window.innerWidth,\r\n window.innerHeight\r\n );\r\n dispatch(setQualityLevels(qualityLevels));\r\n [\r\n \"fullscreenchange\",\r\n \"webkitfullscreenchange\",\r\n \"mozfullscreenchange\",\r\n \"msfullscreenchange\",\r\n ].forEach((eventType) =>\r\n document.addEventListener(\r\n eventType,\r\n (event: any) => {\r\n if (conditions(ConditionName.isAutoQuality)) {\r\n hls.autoLevelCapping = highestResolutionSupported(\r\n resolutions,\r\n window.innerWidth,\r\n window.innerHeight\r\n );\r\n hls.nextLevel = -1;\r\n }\r\n },\r\n false\r\n )\r\n );\r\n};\r\n\r\nexport const handleMediaAttached = (Hls: any, hls: any) => {\r\n const { params, details } = store.getState().videoData;\r\n let streamLink = details.stream_link;\r\n hls.loadSource(streamLink);\r\n hls.on(Hls.Events.MANIFEST_PARSED, (event: any, data: any) =>\r\n handleManifestParsed(hls, data)\r\n );\r\n};\r\n\r\n// ************* Level Handlers ************* //\r\n\r\nexport const handleLevels = (hls: any, data: any, setQualityLevel: any) => {\r\n if (data.frag.type !== \"audio\") {\r\n const dispatch = store.dispatch;\r\n const { settings } = store.getState().user;\r\n const { qualityLevels, manualQuality, autoQuality } =\r\n store.getState().controller;\r\n if (!conditions(ConditionName.isAutoQuality)) {\r\n if (data.frag.level !== manualQuality)\r\n hls.nextLevel = qualityLevels[settings.quality!]\r\n ? settings.quality\r\n : -1;\r\n if (qualityLevels[settings.quality!]) {\r\n dispatch(setManualQuality(settings.quality!));\r\n dispatch(setAutoQuality(undefined));\r\n } else {\r\n setQualityLevel(qualityLevels[data.frag.level]);\r\n dispatch(setAutoQuality(data.frag.level));\r\n dispatch(setUserSettings({ ...settings, quality: -1 }));\r\n }\r\n } else if (\r\n conditions(ConditionName.isAutoQuality) &&\r\n autoQuality === undefined\r\n ) {\r\n hls.nextLevel = -1;\r\n setQualityLevel(qualityLevels[data.frag.level]);\r\n dispatch(setAutoQuality(data.frag.level));\r\n } else if (conditions(ConditionName.isAutoQuality)) {\r\n setQualityLevel(qualityLevels[data.frag.level]);\r\n if (autoQuality !== data.frag.level)\r\n dispatch(setAutoQuality(data.frag.level));\r\n }\r\n }\r\n};\r\n\r\n// ************* Fragment Handlers ************* //\r\n\r\nexport const handleFragBuffered = (hls: any) => {\r\n const dispatch = store.dispatch;\r\n const bufferedTime = hls.mainForwardBufferInfo?.end;\r\n const bufferedTimeWidth =\r\n (bufferedTime! / mainPlayerVideoTag().duration) * 100;\r\n dispatch(setBufferedTimeWidth(bufferedTimeWidth));\r\n};\r\n\r\nexport const handleFragChanged = (\r\n hls: any,\r\n data: any,\r\n setQualityLevel: any\r\n) => {\r\n const { params } = store.getState().videoData;\r\n\r\n if (params.type) handleLevels(hls, data, setQualityLevel);\r\n};\r\n\r\nexport const handleFragParsed = (hls: any, data: any, setQualityLevel: any) => {\r\n const { type } = store.getState().videoData.params;\r\n if (type) handleLevels(hls, data, setQualityLevel);\r\n};\r\n\r\n// ************* HLS Error Handlers ************* //\r\n\r\nexport const handleHlsErrors = (data: any) => {\r\n if (data.event !== \"hlsAudioTrackLoading\")\r\n return { type: \"HLS_\" + data.type, message: data.error.message };\r\n return undefined;\r\n};\r\n\r\n// ************* Video Tag Handlers ************* //\r\n\r\nexport const handleVideoWaiting = (event: any, waitingTimerRef: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n waitingTimerRef.current = Date.now();\r\n dispatch(setIsLoading(true));\r\n};\r\n\r\nexport const handleVideoSeeking = (event: any, waitingTimerRef: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n waitingTimerRef.current = 0;\r\n dispatch(setIsLoading(true));\r\n};\r\n\r\nexport const handleVideoPlay = (event: any, timerRef: any) => {\r\n const dispatch = store.dispatch;\r\n const { videoSettings } = store.getState().user;\r\n const { params } = store.getState().videoData;\r\n event.preventDefault();\r\n timerRef.current = Date.now();\r\n dispatch(setPlay(true));\r\n if (conditions(ConditionName.hasOnPlayParams)) params.onPlay!();\r\n if (conditions(ConditionName.isFirstPlay)) {\r\n if(!conditions(ConditionName.hasCurrentTimeParams)) {\r\n mainPlayerVideoTag().currentTime = videoSettings.time;\r\n dispatch(setCurrentTime(videoSettings.time));\r\n }\r\n if (conditions(ConditionName.hasFullScreenParams)) handleAutoFullScreen();\r\n if (conditions(ConditionName.isFullScreen)) handleLockOrientation();\r\n dispatch(setVideoTimelines([Math.floor(mainPlayerVideoTag().currentTime)]));\r\n }\r\n sendFluentLog(pausePlayLog(true));\r\n dispatch(setSubtitleText(\"\"));\r\n};\r\n\r\nexport const handleVideoPlaying = (\r\n loadingCounterRef: any,\r\n loadingDurationRef: any,\r\n initialWaitingDurationRef: any,\r\n bannerLoadingDurationRef: any,\r\n timerRef: any,\r\n waitingDurationRef: any,\r\n waitingTimerRef: any,\r\n videoEntranceTimeRef: any\r\n) => {\r\n const dispatch = store.dispatch;\r\n const { autoQuality, canPlayVideo, firstPlay, qualityLevels } =\r\n store.getState().controller;\r\n const { settings } = store.getState().user;\r\n const qualityLevel =\r\n settings.quality === -1 && autoQuality\r\n ? qualityLevels[autoQuality]\r\n : qualityLevels[settings.quality!];\r\n let waitingDuration = 0;\r\n if (!!waitingTimerRef.current)\r\n waitingDuration = Date.now() - waitingTimerRef.current;\r\n if (firstPlay && !!mainPlayerVideoTag().played)\r\n sendFluentLog(\r\n initLog(\r\n loadingDurationRef.current,\r\n Date.now() - initialWaitingDurationRef.current,\r\n bannerLoadingDurationRef.current - initialWaitingDurationRef.current,\r\n Date.now() - timerRef.current,\r\n timerRef\r\n )\r\n );\r\n dispatch(setFirstPlay(false));\r\n if (canPlayVideo && waitingDuration > 0 && qualityLevel !== undefined) {\r\n waitingDurationRef.current = waitingDuration;\r\n waitingTimerRef.current = 0;\r\n sendFluentLog(\r\n loadingLog(\r\n waitingDuration,\r\n qualityLevel,\r\n timerRef,\r\n loadingCounterRef,\r\n videoEntranceTimeRef.current\r\n )\r\n );\r\n loadingCounterRef.current = loadingCounterRef.current + 1;\r\n timerRef.current = Date.now();\r\n }\r\n};\r\n\r\nexport const handleVideoPause = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n event.preventDefault();\r\n sendFluentLog(pausePlayLog(false));\r\n dispatch(setPlay(false));\r\n if (conditions(ConditionName.hasOnPauseParams)) params.onPause!();\r\n};\r\n\r\nexport const handleVideoTimeUpdate = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { selectedSubtitle } = store.getState().videoData;\r\n event.preventDefault();\r\n dispatch(setCurrentTime(event.target.currentTime));\r\n if (conditions(ConditionName.hasActiveCue))\r\n dispatch(setSubtitleText((selectedSubtitle!.activeCues![0] as any).text));\r\n};\r\n\r\nexport const handleVideoCanPlay = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { settings } = store.getState().user;\r\n event.preventDefault();\r\n dispatch(setIsLoading(false));\r\n dispatch(setCanPlayVideo(true));\r\n mainPlayerVideoTag().volume = settings.volume / 100;\r\n dispatch(setDuration(event.target.duration));\r\n if (conditions(ConditionName.isIOS)) {\r\n const subtitle: TextTrack[] = Object.values(event.target.textTracks);\r\n if (!!subtitle && subtitle.length)\r\n dispatch(\r\n setSubtitles(!!Object.values(subtitle[0]).length ? subtitle : [])\r\n );\r\n } else dispatch(setSubtitles(Object.values(event.target.textTracks)));\r\n};\r\n\r\nexport const handleVideoEnded = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n event.preventDefault();\r\n dispatch(setIsEnded(true));\r\n dispatch(setActiveElements(true));\r\n handleVideoTimeline(mainPlayerVideoTag().duration);\r\n if (conditions(ConditionName.hasOnFinishedParams)) params.onFinished!();\r\n};\r\n\r\n// ************* IOS Video Tag Handlers ************* //\r\n\r\nexport const handleIosVideoPlay = (event: any, timerRef: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n timerRef.current = Date.now();\r\n dispatch(setFirstPlay(false));\r\n};\r\n\r\nexport const handleIosVideoPlaying = () => {\r\n const dispatch = store.dispatch;\r\n dispatch(setIsLoading(false));\r\n};\r\n\r\nexport const handleIosVideoTimeUpdate = (event: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setCurrentTime(event.target.currentTime));\r\n};\r\n\r\nexport const handleIosVideoEnded = () => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n dispatch(setIsEnded(true));\r\n dispatch(setActiveElements(true));\r\n if (conditions(ConditionName.hasOnFinishedParams)) params.onFinished!();\r\n};\r\n\r\n// ************* Static Video Tag Handlers ************* //\r\n\r\nexport const handleStaticVideoPause = (event: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setPlay(false));\r\n};\r\n\r\nexport const handleStaticVideoPlay = (event: any, timerRef: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setPlay(true));\r\n timerRef.current = Date.now();\r\n dispatch(setSubtitleText(\"\"));\r\n\r\n if (conditions(ConditionName.isFirstPlay) && conditions(ConditionName.hasFullScreenParams)) {\r\n handleAutoFullScreen();\r\n if (conditions(ConditionName.isFullScreen)) handleLockOrientation();\r\n }\r\n\r\n\r\n};\r\n\r\nexport const handleStaticVideoPlaying = (\r\n loadingDurationRef: any,\r\n initialWaitingDurationRef: any,\r\n timerRef: any\r\n) => {\r\n const dispatch = store.dispatch;\r\n const { firstPlay } = store.getState().controller;\r\n dispatch(setIsLoading(false));\r\n if (firstPlay && !!mainPlayerVideoTag().played)\r\n sendFluentLog(\r\n initLog(\r\n Math.round(loadingDurationRef.current),\r\n Date.now() - initialWaitingDurationRef.current,\r\n 0,\r\n Date.now() - timerRef.current,\r\n timerRef\r\n )\r\n );\r\n dispatch(setFirstPlay(false));\r\n};\r\n\r\nexport const handleStaticVideoTimeUpdate = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { selectedSubtitle } = store.getState().videoData;\r\n event.preventDefault();\r\n dispatch(setCurrentTime(event.target.currentTime));\r\n dispatch(setDuration(event.target.duration));\r\n if (conditions(ConditionName.hasActiveCue))\r\n dispatch(setSubtitleText((selectedSubtitle!.activeCues![0] as any).text));\r\n};\r\n\r\nexport const handleStaticVideoCanPlay = (event: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setIsLoading(false));\r\n dispatch(setCanPlayVideo(true));\r\n if (conditions(ConditionName.isIOS)) {\r\n const subtitle: TextTrack[] = Object.values(event.target.textTracks);\r\n if (!!subtitle && subtitle.length)\r\n dispatch(\r\n setSubtitles(!!Object.values(subtitle[0]).length ? subtitle : [])\r\n );\r\n } else dispatch(setSubtitles(Object.values(event.target.textTracks)));\r\n};\r\n\r\nexport const handleStaticVideoLoadedData = (event: any, intervalRef: any) => {\r\n event.preventDefault();\r\n handleBufferedTime(event, intervalRef);\r\n};\r\n\r\nexport const handleStaticVideoEnded = (event: any) => {\r\n const { params } = store.getState().videoData;\r\n if (conditions(ConditionName.hasOnFinishedParams)) params.onFinished!();\r\n event.preventDefault();\r\n};\r\n\r\nexport const handleMiniPlayerMediaAttached = async (hls: any) => {\r\n const { stream_link } = store.getState().miniPlayer.details;\r\n hls.loadSource(stream_link);\r\n};\r\n\r\nexport const handleVideoVisibilityChange = (hls: any) => {\r\n handleVideoTimeline(mainPlayerVideoTag().currentTime);\r\n};\r\n"]}
1
+ {"version":3,"sources":["../src/videoPlayerLibrary/helpers/redux/actions/playerCore.actions.ts"],"names":["init_esm_shims","handleVideoError","event","error","mainPlayerVideoTag","miniPlayerVideoTag","errorLogProvider","handleAutoFullScreen","dispatch","store_default","params","launchFullScreen","element","setClearPopoversSlice","setIsFullScreen","appendQueryParamsToChunksIOS","fragmentExtension","originalOpen","getUUID","handleBufferedTime","intervalRef","bufferedTimeWidth","setBufferedTimeWidth","handleHlsConfig","streamLinkParams","splitQueryParamsFromStreamLink","xhr","url","handleMiniPlayerHlsConfig","handleManifestParsed","hls","data","qualityLevels","resolutions","level","highestResolutionSupported","setQualityLevels","eventType","conditions","handleMediaAttached","Hls","details","streamLink","handleLevels","setQualityLevel","settings","manualQuality","autoQuality","setAutoQuality","setManualQuality","setUserSettings","handleFragBuffered","handleFragChanged","handleFragParsed","type","handleHlsErrors","handleVideoWaiting","waitingTimerRef","setIsLoading","handleVideoSeeking","handleVideoPlay","timerRef","videoSettings","setPlay","setCurrentTime","handleLockOrientation","setVideoTimelines","sendFluentLog","pausePlayLog","setSubtitleText","handleVideoPlaying","loadingCounterRef","loadingDurationRef","initialWaitingDurationRef","bannerLoadingDurationRef","waitingDurationRef","videoEntranceTimeRef","canPlayVideo","firstPlay","qualityLevel","waitingDuration","initLog","setFirstPlay","loadingLog","handleVideoPause","handleVideoTimeUpdate","selectedSubtitle","handleVideoCanPlay","setCanPlayVideo","setDuration","subtitle","setSubtitles","handleVideoEnded","setIsEnded","setActiveElements","handleVideoTimeline","handleIosVideoPlay","handleIosVideoPlaying","handleIosVideoTimeUpdate","handleIosVideoEnded","handleStaticVideoPause","handleStaticVideoPlay","handleStaticVideoPlaying","handleStaticVideoTimeUpdate","handleStaticVideoCanPlay","handleStaticVideoLoadedData","handleMiniPlayerMediaAttached","stream_link","handleVideoVisibilityChange"],"mappings":"sNAAAA,CAuCO,EAAA,CAAA,IAAMC,GAAoBC,CAAe,EAAA,CAC9CA,EAAM,cAAe,EAAA,CAErB,IAAIC,CAASC,CAAAA,CAAAA,EAAAA,IAAwBC,EAAmB,EAAA,EAAG,MAC3D,GAAIF,CAAAA,CACA,OAAQA,CAAM,CAAA,IAAA,EACV,KAAKA,CAAAA,CAAM,kBACPG,EAAiB,CAAA,CAAE,KAAM,eAAiB,CAAA,OAAA,CAAS,iCAAkC,CAAC,CAAA,CACtF,MACJ,KAAKH,CAAAA,CAAM,kBACPG,EAAiB,CAAA,CAAE,KAAM,eAAiB,CAAA,OAAA,CAAS,6DAA8D,CAAC,CAAA,CAClH,MACJ,KAAKH,CAAAA,CAAM,iBACPG,EAAiB,CAAA,CACb,KAAM,eACN,CAAA,OAAA,CACI,6HACR,CAAC,CAAA,CACD,MACJ,KAAKH,CAAAA,CAAM,4BACPG,EAAiB,CAAA,CACb,KAAM,eACN,CAAA,OAAA,CAAS,oHACb,CAAC,CAAA,CACD,MACJ,QACIA,EAAAA,CAAiB,CAAE,IAAM,CAAA,eAAA,CAAiB,QAAS,4BAA6B,CAAC,EACjF,KACR,CAAA,KAEAA,GAAiB,CAAE,IAAA,CAAM,gBAAiB,OAAS,CAAA,2DAA4D,CAAC,EAEtH,CAAA,CAEaC,EAAuB,IAAM,CACxC,IAAMC,CAAWC,CAAAA,CAAAA,CAAM,SACjB,CAAE,MAAA,CAAAC,CAAO,CAAID,CAAAA,CAAAA,CAAM,UAAW,CAAA,SAAA,CAC9BE,EAAoBC,CAAiB,EAAA,CACrCA,EAAQ,iBAAmBA,CAAAA,CAAAA,CAAQ,mBAC9BA,CAAAA,CAAAA,CAAQ,qBAAsBA,CAAQ,CAAA,oBAAA,GACtCA,CAAQ,CAAA,uBAAA,EAAyBA,EAAQ,uBAAwB,GAC5E,EACAJ,CAASK,CAAAA,CAAAA,EAAuB,CAChCF,CAAAA,CAAAA,CAAiB,SAAS,eAAe,CAAA,CACzCH,EAASM,CAAgBJ,CAAAA,CAAAA,CAAO,aAAe,MAAM,CAAC,EACxD,CAEaK,CAAAA,EAAAA,CAA+B,IAAM,CAChD,IAAIC,EAAoB,KACpBC,CAAAA,CAAAA,CAAe,eAAe,SAAU,CAAA,IAAA,CAC5C,eAAe,SAAU,CAAA,IAAA,CAAO,UAAY,CACtC,SAAA,CAAU,CAAC,CAAE,CAAA,QAAA,CAASD,CAAiB,CACzC,GAAA,SAAA,CAAU,CAAC,CAAI,CAAA,SAAA,CAAU,CAAC,CAAI,CAAA,QAAA,CAAWE,GAC3CD,CAAAA,CAAAA,CAAAA,CAAa,MAAM,IAAM,CAAA,SAAgB,EAC3C,EACF,CAAA,CAEaE,EAAqB,CAACjB,CAAAA,CAAYkB,IAAqB,CAClE,IAAMZ,EAAWC,CAAM,CAAA,QAAA,CACvBW,EAAY,OAAU,CAAA,WAAA,CAAY,IAAM,CAEtC,IAAMC,EADenB,CAAM,CAAA,MAAA,CAAO,SAAS,GAAI,CAAA,CAAC,EAE9BE,EAAmB,EAAA,CAAE,SAAY,GACnDI,CAAAA,CAAAA,CAASc,EAAqBD,CAAiB,CAAC,EAClD,CAAG,CAAA,GAAG,EACR,CAGaE,CAAAA,EAAAA,CAAkB,IAAM,CACnC,IAAMC,EAAmBC,CAA+B,CAAA,YAAY,EACpE,OAAO,CACL,SAAU,CAACC,CAAAA,CAAUC,IAAa,CAC3BA,CAAAA,CAAI,MAAM,MAAM,CAAA,CAAE,CAAC,CAAGA,GAAAA,CAAAA,CAAM,GAAGA,CAAG,CAAA,EAAGH,CAAgB,CAC1DE,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,KAAK,KAAOC,CAAAA,CAAAA,CAAK,EAAI,EAC3B,CAAA,CACA,WAAY,CACZ,CAAA,CAAA,KAAA,CAAO,GACP,YAAc,CAAA,CAAA,CAAA,CACd,qBAAsB,EACtB,CAAA,kBAAA,CAAoB,IACpB,gBAAkB,CAAA,CAAA,CAAA,CAAA,CAClB,gBAAiB,EACjB,CAAA,kBAAA,CAAoB,GACpB,kBAAoB,CAAA,CAClB,QAAS,CACP,oBAAA,CAAsB,IACtB,aAAe,CAAA,GAAA,CACf,aAAc,CACZ,WAAA,CAAa,GACb,YAAc,CAAA,GAAA,CACd,gBAAiB,GACnB,CAAA,CACA,WAAY,CACV,WAAA,CAAa,GACb,YAAc,CAAA,GAAA,CACd,gBAAiB,GACnB,CACF,CACF,CACA,CAAA,cAAA,CAAgB,CACd,OAAS,CAAA,CACP,qBAAsB,GACtB,CAAA,aAAA,CAAe,KACf,YAAc,CAAA,CACZ,YAAa,EACb,CAAA,YAAA,CAAc,IACd,eAAiB,CAAA,GACnB,EACA,UAAY,CAAA,CACV,YAAa,EACb,CAAA,YAAA,CAAc,IACd,eAAiB,CAAA,GACnB,CACF,CACF,CAAA,CACA,mBAAoB,CAClB,OAAA,CAAS,CACP,oBAAsB,CAAA,GAAA,CACtB,cAAe,GACf,CAAA,YAAA,CAAc,CACZ,WAAa,CAAA,EAAA,CACb,aAAc,GACd,CAAA,eAAA,CAAiB,GACnB,CACA,CAAA,UAAA,CAAY,CACV,WAAa,CAAA,EAAA,CACb,aAAc,GACd,CAAA,eAAA,CAAiB,GACnB,CACF,CACF,CACF,CACF,CAAA,CAEaC,GAA4B,IAAM,CAC7C,IAAMJ,CAAmBC,CAAAA,CAAAA,CAA+B,YAAY,CACpE,CAAA,OAAO,CACL,QAAU,CAAA,CAACC,EAAUC,CAAa,GAAA,CAChCA,EAAM,CAAGA,EAAAA,CAAG,GAAGH,CAAgB,CAAA,CAAA,CAC/BE,EAAI,IAAK,CAAA,KAAA,CAAOC,EAAK,CAAI,CAAA,EAC3B,EACA,UAAY,CAAA,CAAA,CACZ,MAAO,CACP,CAAA,CAAA,kBAAA,CAAoB,EACpB,CAAA,kBAAA,CAAoB,CAClB,OAAA,CAAS,CACP,oBAAsB,CAAA,GAAA,CACtB,cAAe,GACf,CAAA,YAAA,CAAc,CACZ,WAAa,CAAA,GAAA,CACb,aAAc,CACd,CAAA,eAAA,CAAiB,CACnB,CACA,CAAA,UAAA,CAAY,CACV,WAAa,CAAA,GAAA,CACb,aAAc,GACd,CAAA,eAAA,CAAiB,GACnB,CACF,CACF,CACF,CACF,CAAA,CAIaE,EAAuB,CAACC,CAAAA,CAAUC,IAAc,CAC3D,IAAMvB,EAAWC,CAAM,CAAA,QAAA,CACnBuB,EAAuB,EAAC,CACxBC,EAAqB,EAAC,CAC1BH,EAAI,MAAO,CAAA,GAAA,CAAKI,GAAe,CAC7BF,CAAAA,CAAc,KAAKE,CAAM,CAAA,KAAA,CAAM,WAAY,KAAM,CAAA,GAAG,EAAE,CAAC,CAAA,CAAE,MAAM,CAAA,CAC/DD,EAAY,IAAKC,CAAAA,CAAAA,CAAM,MAAM,UAAW,EAC1C,CAAC,CACDJ,CAAAA,CAAAA,CAAI,iBAAmBK,GACrBF,CAAAA,CAAAA,CACA,OAAO,UACP,CAAA,MAAA,CAAO,WACT,CACAzB,CAAAA,CAAAA,CAAS4B,EAAiBJ,CAAa,CAAC,EACxC,CACE,kBAAA,CACA,yBACA,qBACA,CAAA,oBACF,EAAE,OAASK,CAAAA,CAAAA,EACT,SAAS,gBACPA,CAAAA,CAAAA,CACCnC,GAAe,CACVoC,EAAAA,CAAAA,eAAsC,IACxCR,CAAI,CAAA,gBAAA,CAAmBK,IACrBF,CACA,CAAA,MAAA,CAAO,WACP,MAAO,CAAA,WACT,EACAH,CAAI,CAAA,SAAA,CAAY,IAEpB,CACA,CAAA,CAAA,CACF,CACF,EACF,CAAA,CAEaS,GAAsB,CAACC,CAAAA,CAAUV,IAAa,CACzD,GAAM,CAAE,MAAApB,CAAAA,CAAAA,CAAQ,QAAA+B,CAAQ,CAAA,CAAIhC,EAAM,QAAS,EAAA,CAAE,UACzCiC,CAAaD,CAAAA,CAAAA,CAAQ,YACzBX,CAAI,CAAA,UAAA,CAAWY,CAAU,CACzBZ,CAAAA,CAAAA,CAAI,GAAGU,CAAI,CAAA,MAAA,CAAO,gBAAiB,CAACtC,CAAAA,CAAY6B,IAC9CF,CAAqBC,CAAAA,CAAS,CAChC,EACF,EAIaa,CAAe,CAAA,CAACb,EAAUC,CAAWa,CAAAA,CAAAA,GAAyB,CACzE,GAAIb,CAAAA,CAAK,KAAK,IAAS,GAAA,OAAA,CAAS,CAC9B,IAAMvB,CAAAA,CAAWC,EAAM,QACjB,CAAA,CAAE,SAAAoC,CAAS,CAAA,CAAIpC,EAAM,QAAS,EAAA,CAAE,KAChC,CAAE,aAAA,CAAAuB,EAAe,aAAAc,CAAAA,CAAAA,CAAe,YAAAC,CAAY,CAAA,CAChDtC,EAAM,QAAS,EAAA,CAAE,WACd6B,EAAsC,CAAA,eAAA,CAAA,CAczCA,kBAAsC,CACtCS,EAAAA,CAAAA,GAAgB,QAEhBjB,CAAI,CAAA,SAAA,CAAY,GAChBc,CAAgBZ,CAAAA,CAAAA,CAAcD,EAAK,IAAK,CAAA,KAAK,CAAC,CAC9CvB,CAAAA,CAAAA,CAASwC,IAAejB,CAAK,CAAA,IAAA,CAAK,KAAK,CAAC,CAAA,EAC/BO,kBAAsC,CAC/CM,GAAAA,CAAAA,CAAgBZ,EAAcD,CAAK,CAAA,IAAA,CAAK,KAAK,CAAC,CAAA,CAC1CgB,IAAgBhB,CAAK,CAAA,IAAA,CAAK,OAC5BvB,CAASwC,CAAAA,GAAAA,CAAejB,EAAK,IAAK,CAAA,KAAK,CAAC,CAtBtCA,CAAAA,EAAAA,CAAAA,CAAK,KAAK,KAAUe,GAAAA,CAAAA,GACtBhB,EAAI,SAAYE,CAAAA,CAAAA,CAAca,EAAS,OAAQ,CAAA,CAC3CA,EAAS,OACT,CAAA,CAAA,CAAA,CAAA,CACFb,EAAca,CAAS,CAAA,OAAQ,GACjCrC,CAASyC,CAAAA,CAAAA,CAAiBJ,EAAS,OAAQ,CAAC,EAC5CrC,CAASwC,CAAAA,GAAAA,CAAe,MAAS,CAAC,CAAA,GAElCJ,EAAgBZ,CAAcD,CAAAA,CAAAA,CAAK,KAAK,KAAK,CAAC,EAC9CvB,CAASwC,CAAAA,GAAAA,CAAejB,EAAK,IAAK,CAAA,KAAK,CAAC,CACxCvB,CAAAA,CAAAA,CAAS0C,EAAgB,CAAE,GAAGL,EAAU,OAAS,CAAA,CAAA,CAAG,CAAC,CAAC,CAAA,CAAA,EAc5D,CACF,CAIaM,CAAAA,EAAAA,CAAsBrB,GAAa,CAC9C,IAAMtB,EAAWC,CAAM,CAAA,QAAA,CAEjBY,EADeS,CAAI,CAAA,qBAAA,EAAuB,IAE7B1B,EAAmB,EAAA,CAAE,SAAY,GACpDI,CAAAA,CAAAA,CAASc,EAAqBD,CAAiB,CAAC,EAClD,CAEa+B,CAAAA,EAAAA,CAAoB,CAC/BtB,CACAC,CAAAA,CAAAA,CACAa,IACG,CACH,GAAM,CAAE,MAAAlC,CAAAA,CAAO,EAAID,CAAM,CAAA,QAAA,GAAW,SAEhCC,CAAAA,CAAAA,CAAO,MAAMiC,CAAab,CAAAA,CAAAA,CAAKC,EAAMa,CAAe,EAC1D,EAEaS,EAAmB,CAAA,CAACvB,EAAUC,CAAWa,CAAAA,CAAAA,GAAyB,CAC7E,GAAM,CAAE,KAAAU,CAAK,CAAA,CAAI7C,EAAM,QAAS,EAAA,CAAE,UAAU,MACxC6C,CAAAA,CAAAA,EAAMX,EAAab,CAAKC,CAAAA,CAAAA,CAAMa,CAAe,EACnD,CAAA,CAIaW,GAAmBxB,CAAc,EAAA,CAC5C,GAAIA,CAAK,CAAA,KAAA,GAAU,uBACjB,OAAO,CAAE,KAAM,MAASA,CAAAA,CAAAA,CAAK,KAAM,OAASA,CAAAA,CAAAA,CAAK,MAAM,OAAQ,CAEnE,EAIayB,EAAqB,CAAA,CAACtD,EAAYuD,CAAyB,GAAA,CACtE,IAAMjD,CAAWC,CAAAA,CAAAA,CAAM,SACvBP,CAAM,CAAA,cAAA,EACNuD,CAAAA,CAAAA,CAAgB,OAAU,CAAA,IAAA,CAAK,KAC/BjD,CAAAA,CAAAA,CAASkD,EAAa,CAAI,CAAA,CAAC,EAC7B,CAEaC,CAAAA,EAAAA,CAAqB,CAACzD,CAAYuD,CAAAA,CAAAA,GAAyB,CACtE,IAAMjD,CAAAA,CAAWC,EAAM,QACvBP,CAAAA,CAAAA,CAAM,gBACNuD,CAAAA,CAAAA,CAAgB,QAAU,CAC1BjD,CAAAA,CAAAA,CAASkD,EAAa,CAAI,CAAA,CAAC,EAC7B,CAEaE,CAAAA,EAAAA,CAAkB,CAAC1D,CAAY2D,CAAAA,CAAAA,GAAkB,CAC5D,IAAMrD,GAAAA,CAAWC,EAAM,QACjB,CAAA,CAAE,cAAAqD,CAAc,CAAA,CAAIrD,EAAM,QAAS,EAAA,CAAE,KACrC,CAAE,MAAA,CAAAC,CAAO,CAAID,CAAAA,CAAAA,CAAM,UAAW,CAAA,SAAA,CACpCP,EAAM,cAAe,EAAA,CACrB2D,EAAS,OAAU,CAAA,IAAA,CAAK,KACxBrD,CAAAA,GAAAA,CAASuD,EAAQ,CAAI,CAAA,CAAC,EAClBzB,EAAwC,CAAA,iBAAA,CAAA,EAAG5B,EAAO,MAAQ,EAAA,CAC1D4B,gBAAoC,CAClCA,GAAAA,EAAAA,CAAAA,sBAA6C,IAC/ClC,EAAmB,EAAA,CAAE,YAAc0D,CAAc,CAAA,IAAA,CACjDtD,IAASwD,CAAeF,CAAAA,CAAAA,CAAc,IAAI,CAAC,CAAA,CAAA,CAEzCxB,wBAA4C,CAAG/B,EAAAA,CAAAA,GAC/C+B,EAAqC,CAAA,cAAA,CAAA,EAAG2B,KAC5CzD,CAAAA,GAAAA,CAAS0D,EAAkB,CAAC,IAAA,CAAK,MAAM9D,EAAmB,EAAA,CAAE,WAAW,CAAC,CAAC,CAAC,CAE5E+D,CAAAA,CAAAA,EAAAA,CAAcC,GAAa,CAAI,CAAA,CAAC,EAChC5D,GAAS6D,CAAAA,GAAAA,CAAgB,EAAE,CAAC,EAC9B,EAEaC,EAAqB,CAAA,CAChCC,EACAC,CACAC,CAAAA,CAAAA,CACAC,EACAb,CACAc,CAAAA,CAAAA,CACAlB,EACAmB,CACG,GAAA,CACH,IAAMpE,CAAWC,CAAAA,CAAAA,CAAM,SACjB,CAAE,WAAA,CAAAsC,EAAa,YAAA8B,CAAAA,CAAAA,CAAc,UAAAC,CAAW,CAAA,aAAA,CAAA9C,CAAc,CAC1DvB,CAAAA,CAAAA,CAAM,UAAW,CAAA,UAAA,CACb,CAAE,QAAAoC,CAAAA,CAAS,EAAIpC,CAAM,CAAA,QAAA,GAAW,IAChCsE,CAAAA,CAAAA,CACJlC,EAAS,OAAY,GAAA,CAAA,CAAA,EAAME,EACvBf,CAAce,CAAAA,CAAW,EACzBf,CAAca,CAAAA,CAAAA,CAAS,OAAQ,CACjCmC,CAAAA,CAAAA,CAAkB,EAChBvB,CAAgB,CAAA,OAAA,GACpBuB,EAAkB,IAAK,CAAA,GAAA,GAAQvB,CAAgB,CAAA,OAAA,CAAA,CAC7CqB,GAAe1E,EAAmB,EAAA,CAAE,QACtC+D,EACEc,CAAAA,EAAAA,CACET,EAAmB,OACnB,CAAA,IAAA,CAAK,KAAQC,CAAAA,CAAAA,CAA0B,QACvCC,CAAyB,CAAA,OAAA,CAAUD,EAA0B,OAC7D,CAAA,IAAA,CAAK,KAAQZ,CAAAA,CAAAA,CAAS,QACtBA,CACF,CACF,EACFrD,CAAS0E,CAAAA,CAAAA,CAAa,EAAK,CAAC,CAAA,CACxBL,GAAgBG,CAAkB,CAAA,CAAA,EAAKD,IAAiB,KAC1DJ,CAAAA,GAAAA,CAAAA,CAAmB,QAAUK,CAC7BvB,CAAAA,CAAAA,CAAgB,QAAU,CAC1BU,CAAAA,EAAAA,CACEgB,GACEH,CACAD,CAAAA,CAAAA,CACAlB,EACAU,CACAK,CAAAA,CAAAA,CAAqB,OACvB,CACF,CAAA,CACAL,EAAkB,OAAUA,CAAAA,CAAAA,CAAkB,QAAU,CACxDV,CAAAA,CAAAA,CAAS,QAAU,IAAK,CAAA,GAAA,IAE5B,CAEauB,CAAAA,EAAAA,CAAoBlF,GAAe,CAC9C,IAAMM,EAAWC,CAAM,CAAA,QAAA,CACjB,CAAE,MAAAC,CAAAA,GAAO,EAAID,CAAM,CAAA,QAAA,GAAW,SACpCP,CAAAA,CAAAA,CAAM,gBACNiE,CAAAA,EAAAA,CAAcC,GAAa,CAAK,CAAA,CAAC,EACjC5D,CAASuD,CAAAA,CAAAA,CAAQ,EAAK,CAAC,CAAA,CACnBzB,qBAAyC,CAAG5B,EAAAA,GAAAA,CAAO,UACzD,CAAA,CAEa2E,GAAyBnF,CAAe,EAAA,CACnD,IAAMM,CAAWC,CAAAA,CAAAA,CAAM,SACjB,CAAE,gBAAA,CAAA6E,CAAiB,CAAI7E,CAAAA,CAAAA,CAAM,UAAW,CAAA,SAAA,CAC9CP,EAAM,cAAe,EAAA,CACrBM,EAASwD,CAAe9D,CAAAA,CAAAA,CAAM,OAAO,WAAW,CAAC,EAC7CoC,EAAqC,CAAA,cAAA,CAAA,EACvC9B,EAAS6D,GAAiBiB,CAAAA,CAAAA,CAAkB,WAAY,CAAC,CAAA,CAAU,IAAI,CAAC,EAC5E,EAEaC,EAAsBrF,CAAAA,CAAAA,EAAe,CAChD,IAAMM,CAAAA,CAAWC,EAAM,QACjB,CAAA,CAAE,SAAAoC,CAAS,CAAA,CAAIpC,EAAM,QAAS,EAAA,CAAE,KAMtC,GALAP,CAAAA,CAAM,gBACNM,CAAAA,CAAAA,CAASkD,EAAa,CAAK,CAAA,CAAC,EAC5BlD,CAASgF,CAAAA,CAAAA,CAAgB,EAAI,CAAC,CAAA,CAC9BpF,IAAqB,CAAA,MAAA,CAASyC,EAAS,MAAS,CAAA,GAAA,CAChDrC,EAASiF,CAAYvF,CAAAA,CAAAA,CAAM,OAAO,QAAQ,CAAC,EACvCoC,EAA8B,CAAA,OAAA,CAAA,CAAG,CACnC,IAAMoD,CAAAA,CAAwB,OAAO,MAAOxF,CAAAA,CAAAA,CAAM,OAAO,UAAU,CAAA,CAC7DwF,GAAYA,CAAS,CAAA,MAAA,EACzBlF,EACEmF,CAAe,CAAA,MAAA,CAAO,OAAOD,CAAS,CAAA,CAAC,CAAC,CAAE,CAAA,MAAA,CAASA,EAAW,EAAE,CAClE,EACJ,CAAA,KAAOlF,CAASmF,CAAAA,CAAAA,CAAa,MAAO,CAAA,MAAA,CAAOzF,EAAM,MAAO,CAAA,UAAU,CAAC,CAAC,EACtE,EAEa0F,EAAoB1F,CAAAA,CAAAA,EAAe,CAC9C,IAAMM,CAAAA,CAAWC,EAAM,QACjB,CAAA,CAAE,OAAAC,CAAO,CAAA,CAAID,EAAM,QAAS,EAAA,CAAE,UACpCP,CAAM,CAAA,cAAA,GACNM,CAASqF,CAAAA,CAAAA,CAAW,EAAI,CAAC,CAAA,CACzBrF,EAASsF,CAAkB,CAAA,CAAA,CAAI,CAAC,CAChCC,CAAAA,GAAAA,CAAoB3F,IAAqB,CAAA,QAAQ,EAC7CkC,EAA4C,CAAA,qBAAA,CAAA,EAAG5B,EAAO,UAAY,GACxE,EAIasF,EAAqB,CAAA,CAAC9F,EAAY2D,CAAkB,GAAA,CAC/D,IAAMrD,CAAWC,CAAAA,CAAAA,CAAM,SACvBP,CAAM,CAAA,cAAA,GACN2D,CAAS,CAAA,OAAA,CAAU,KAAK,GAAI,EAAA,CAC5BrD,EAAS0E,CAAa,CAAA,CAAA,CAAK,CAAC,EAC9B,CAAA,CAEae,GAAwB,IAAM,CACzC,IAAMzF,CAAWC,CAAAA,CAAAA,CAAM,SACvBD,CAASkD,CAAAA,CAAAA,CAAa,EAAK,CAAC,EAC9B,EAEawC,EAA4BhG,CAAAA,CAAAA,EAAe,CACtD,IAAMM,CAAAA,CAAWC,EAAM,QACvBP,CAAAA,CAAAA,CAAM,gBACNM,CAAAA,CAAAA,CAASwD,EAAe9D,CAAM,CAAA,MAAA,CAAO,WAAW,CAAC,EACnD,EAEaiG,EAAsB,CAAA,IAAM,CACvC,IAAM3F,CAAAA,CAAWC,EAAM,QACjB,CAAA,CAAE,OAAAC,CAAO,CAAA,CAAID,EAAM,QAAS,EAAA,CAAE,UACpCD,CAASqF,CAAAA,CAAAA,CAAW,EAAI,CAAC,CAAA,CACzBrF,EAASsF,CAAkB,CAAA,CAAA,CAAI,CAAC,CAC5BxD,CAAAA,EAAAA,CAAAA,qBAA4C,GAAG5B,CAAO,CAAA,UAAA,GAC5D,CAIa0F,CAAAA,EAAAA,CAA0BlG,GAAe,CACpD,IAAMM,EAAWC,CAAM,CAAA,QAAA,CACvBP,EAAM,cAAe,EAAA,CACrBM,EAASuD,CAAQ,CAAA,CAAA,CAAK,CAAC,EACzB,CAAA,CAEasC,GAAwB,CAACnG,CAAAA,CAAY2D,IAAkB,CAClE,IAAMrD,IAAWC,CAAM,CAAA,QAAA,CACvBP,EAAM,cAAe,EAAA,CACrBM,IAASuD,CAAQ,CAAA,CAAA,CAAI,CAAC,CACtBF,CAAAA,CAAAA,CAAS,QAAU,IAAK,CAAA,GAAA,GACxBrD,GAAS6D,CAAAA,GAAAA,CAAgB,EAAE,CAAC,CAAA,CAExB/B,gBAAoC,CAAKA,EAAAA,EAAAA,CAAAA,qBAA4C,IACvF/B,CAAqB,EAAA,CACjB+B,iBAAqC,CAAG2B,EAAAA,GAAAA,IAIhD,CAEaqC,CAAAA,EAAAA,CAA2B,CACtC9B,CACAC,CAAAA,CAAAA,CACAZ,CACG,GAAA,CACH,IAAMrD,CAAAA,CAAWC,EAAM,QACjB,CAAA,CAAE,UAAAqE,CAAU,CAAA,CAAIrE,EAAM,QAAS,EAAA,CAAE,WACvCD,CAASkD,CAAAA,CAAAA,CAAa,EAAK,CAAC,CAAA,CACxBoB,GAAe1E,EAAmB,EAAA,CAAE,QACtC+D,EACEc,CAAAA,EAAAA,CACE,KAAK,KAAMT,CAAAA,CAAAA,CAAmB,OAAO,CACrC,CAAA,IAAA,CAAK,KAAQC,CAAAA,CAAAA,CAA0B,QACvC,CACA,CAAA,IAAA,CAAK,KAAQZ,CAAAA,CAAAA,CAAS,QACtBA,CACF,CACF,EACFrD,CAAS0E,CAAAA,CAAAA,CAAa,EAAK,CAAC,EAC9B,EAEaqB,EAA+BrG,CAAAA,CAAAA,EAAe,CACzD,IAAMM,CAAAA,CAAWC,EAAM,QACjB,CAAA,CAAE,iBAAA6E,CAAiB,CAAA,CAAI7E,EAAM,QAAS,EAAA,CAAE,UAC9CP,CAAM,CAAA,cAAA,GACNM,CAASwD,CAAAA,CAAAA,CAAe9D,EAAM,MAAO,CAAA,WAAW,CAAC,CACjDM,CAAAA,CAAAA,CAASiF,EAAYvF,CAAM,CAAA,MAAA,CAAO,QAAQ,CAAC,CAAA,CACvCoC,iBAAqC,CACvC9B,EAAAA,CAAAA,CAAS6D,IAAiBiB,CAAkB,CAAA,UAAA,CAAY,CAAC,CAAU,CAAA,IAAI,CAAC,EAC5E,CAAA,CAEakB,GAA4BtG,CAAe,EAAA,CACtD,IAAMM,CAAWC,CAAAA,CAAAA,CAAM,SAIvB,GAHAP,CAAAA,CAAM,gBACNM,CAAAA,CAAAA,CAASkD,EAAa,CAAK,CAAA,CAAC,EAC5BlD,CAASgF,CAAAA,CAAAA,CAAgB,EAAI,CAAC,CAAA,CAC1BlD,UAA8B,CAAG,CAAA,CACnC,IAAMoD,CAAwB,CAAA,MAAA,CAAO,OAAOxF,CAAM,CAAA,MAAA,CAAO,UAAU,CAC7DwF,CAAAA,CAAAA,EAAYA,EAAS,MACzBlF,EAAAA,CAAAA,CACEmF,EAAe,MAAO,CAAA,MAAA,CAAOD,EAAS,CAAC,CAAC,EAAE,MAASA,CAAAA,CAAAA,CAAW,EAAE,CAClE,EACJ,CAAOlF,KAAAA,CAAAA,CAASmF,EAAa,MAAO,CAAA,MAAA,CAAOzF,EAAM,MAAO,CAAA,UAAU,CAAC,CAAC,EACtE,EAEauG,EAA8B,CAAA,CAACvG,EAAYkB,CAAqB,GAAA,CAC3ElB,EAAM,cAAe,EAAA,CACrBiB,EAAmBjB,CAAOkB,CAAAA,CAAW,EACvC,EAQO,IAAMsF,GAAgC,MAAO5E,CAAAA,EAAa,CAC/D,GAAM,CAAE,YAAA6E,CAAY,CAAA,CAAIlG,EAAM,QAAS,EAAA,CAAE,WAAW,OACpDqB,CAAAA,CAAAA,CAAI,WAAW6E,CAAW,EAC5B,EAEaC,EAA+B9E,CAAAA,CAAAA,EAAa,CACvDiE,GAAoB3F,CAAAA,EAAAA,EAAqB,CAAA,WAAW,EACtD","file":"chunk-Q52RFNV3.mjs","sourcesContent":["import { conditions } from \"../../conditions/conditions\";\r\nimport { mainPlayerVideoTag, miniPlayerVideoTag } from \"../../constants\";\r\nimport { errorLogProvider } from \"../../errorBoundary/errorBoundaryFunctions\";\r\nimport {\r\n getUUID,\r\n highestResolutionSupported,\r\n splitQueryParamsFromStreamLink,\r\n} from \"../../helpers\";\r\nimport { ConditionName } from \"../../interfaces/enums\";\r\nimport { sendFluentLog } from \"../../logs/fluentdLogger\";\r\nimport { initLog, loadingLog, pausePlayLog } from \"../../logs/logs\";\r\nimport {\r\n setActiveElements,\r\n setAutoQuality,\r\n setBufferedTimeWidth,\r\n setCanPlayVideo,\r\n setCurrentTime,\r\n setDuration,\r\n setFirstPlay,\r\n setIsEnded,\r\n setIsFullScreen,\r\n setIsLoading,\r\n setManualQuality,\r\n setPlay,\r\n setQualityLevels,\r\n} from \"../slices/controllerSlice\";\r\nimport { setClearPopoversSlice } from \"../slices/popoversSlice\";\r\nimport { setUserSettings } from \"../slices/userSlice\";\r\nimport {\r\n setSubtitleText,\r\n setSubtitles,\r\n setVideoTimelines,\r\n} from \"../slices/videoDataSlice\";\r\nimport store from \"../store\";\r\nimport {\r\n handleLockOrientation,\r\n handleVideoTimeline,\r\n} from \"./controller.actions\";\r\n\r\nexport const handleVideoError = (event: any) => {\r\n event.preventDefault();\r\n // Access the error property from the video element\r\n let error = (mainPlayerVideoTag() || miniPlayerVideoTag()).error;\r\n if (error) {\r\n switch (error.code) {\r\n case error.MEDIA_ERR_ABORTED:\r\n errorLogProvider({ type: \"videoTagError\", message: \"You aborted the video playback.\" });\r\n break;\r\n case error.MEDIA_ERR_NETWORK:\r\n errorLogProvider({ type: \"videoTagError\", message: \"A network error caused the video download to fail part-way.\" });\r\n break;\r\n case error.MEDIA_ERR_DECODE:\r\n errorLogProvider({\r\n type: \"videoTagError\",\r\n message:\r\n \"The video playback was aborted due to a corruption problem or because the video used features your browser did not support.\"\r\n });\r\n break;\r\n case error.MEDIA_ERR_SRC_NOT_SUPPORTED:\r\n errorLogProvider({\r\n type: \"videoTagError\",\r\n message: \"The video could not be loaded, either because the server or network failed or because the format is not supported.\"\r\n });\r\n break;\r\n default:\r\n errorLogProvider({ type: \"videoTagError\", message: \"An unknown error occurred.\" });\r\n break;\r\n }\r\n } else {\r\n errorLogProvider({ type: \"videoTagError\", message: \"An error occurred, but the error object is not available.\" });\r\n }\r\n};\r\n\r\nexport const handleAutoFullScreen = () => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n const launchFullScreen = (element: any) => {\r\n if (element.requestFullScreen) element.requestFullScreen();\r\n else if (element.mozRequestFullScreen) element.mozRequestFullScreen();\r\n else if (element.webkitRequestFullScreen) element.webkitRequestFullScreen();\r\n };\r\n dispatch(setClearPopoversSlice());\r\n launchFullScreen(document.documentElement);\r\n dispatch(setIsFullScreen(params.fullscreen === \"true\"));\r\n};\r\n\r\nexport const appendQueryParamsToChunksIOS = () => {\r\n let fragmentExtension = \".ts\";\r\n let originalOpen = XMLHttpRequest.prototype.open;\r\n XMLHttpRequest.prototype.open = function () {\r\n if (arguments[1].endsWith(fragmentExtension))\r\n arguments[1] = arguments[1] + \"?uuid=\" + getUUID!();\r\n originalOpen.apply(this, arguments as any);\r\n };\r\n};\r\n\r\nexport const handleBufferedTime = (event: any, intervalRef: any) => {\r\n const dispatch = store.dispatch;\r\n intervalRef.current = setInterval(() => {\r\n const bufferedTime = event.target.buffered.end(0);\r\n const bufferedTimeWidth =\r\n (bufferedTime / mainPlayerVideoTag().duration) * 100;\r\n dispatch(setBufferedTimeWidth(bufferedTimeWidth));\r\n }, 500);\r\n};\r\n\r\n// ************* Hls Config Handlers ************* //\r\nexport const handleHlsConfig = () => {\r\n const streamLinkParams = splitQueryParamsFromStreamLink(\"mainPlayer\");\r\n return {\r\n xhrSetup: (xhr: any, url: any) => {\r\n if (!url.split(\"m3u8\")[1]) url = `${url}${streamLinkParams}`;\r\n xhr.open(\"GET\", url, true);\r\n },\r\n startLevel: -1,\r\n debug: false,\r\n enableWorker: true,\r\n abrBandWidthUpFactor: 0.7,\r\n abrBandWidthFactor: 0.95,\r\n backBufferLength: Infinity,\r\n maxBufferLength: 30,\r\n maxMaxBufferLength: 60,\r\n manifestLoadPolicy: {\r\n default: {\r\n maxTimeToFirstByteMs: Infinity,\r\n maxLoadTimeMs: 20000,\r\n timeoutRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n errorRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n },\r\n },\r\n fragLoadPolicy: {\r\n default: {\r\n maxTimeToFirstByteMs: 10000,\r\n maxLoadTimeMs: 120000,\r\n timeoutRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n errorRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n },\r\n },\r\n playlistLoadPolicy: {\r\n default: {\r\n maxTimeToFirstByteMs: 10000,\r\n maxLoadTimeMs: 20000,\r\n timeoutRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n errorRetry: {\r\n maxNumRetry: 10,\r\n retryDelayMs: 5000,\r\n maxRetryDelayMs: 10000,\r\n },\r\n },\r\n },\r\n };\r\n};\r\n\r\nexport const handleMiniPlayerHlsConfig = () => {\r\n const streamLinkParams = splitQueryParamsFromStreamLink(\"miniPlayer\");\r\n return {\r\n xhrSetup: (xhr: any, url: any) => {\r\n url = `${url}${streamLinkParams}`;\r\n xhr.open(\"GET\", url, true);\r\n },\r\n startLevel: 1,\r\n debug: false,\r\n maxMaxBufferLength: 60,\r\n playlistLoadPolicy: {\r\n default: {\r\n maxTimeToFirstByteMs: 10000,\r\n maxLoadTimeMs: 20000,\r\n timeoutRetry: {\r\n maxNumRetry: 1000,\r\n retryDelayMs: 0,\r\n maxRetryDelayMs: 0,\r\n },\r\n errorRetry: {\r\n maxNumRetry: 1000,\r\n retryDelayMs: 1000,\r\n maxRetryDelayMs: 1000,\r\n },\r\n },\r\n },\r\n };\r\n};\r\n\r\n// ************* Manifest Handlers ************* //\r\n\r\nexport const handleManifestParsed = (hls: any, data: any) => {\r\n const dispatch = store.dispatch;\r\n let qualityLevels: any[] = [];\r\n let resolutions: any[] = [];\r\n hls.levels.map((level: any) => {\r\n qualityLevels.push(level.attrs.RESOLUTION!.split(\"x\")[1].trim());\r\n resolutions.push(level.attrs.RESOLUTION!);\r\n });\r\n hls.autoLevelCapping = highestResolutionSupported(\r\n resolutions,\r\n window.innerWidth,\r\n window.innerHeight\r\n );\r\n dispatch(setQualityLevels(qualityLevels));\r\n [\r\n \"fullscreenchange\",\r\n \"webkitfullscreenchange\",\r\n \"mozfullscreenchange\",\r\n \"msfullscreenchange\",\r\n ].forEach((eventType) =>\r\n document.addEventListener(\r\n eventType,\r\n (event: any) => {\r\n if (conditions(ConditionName.isAutoQuality)) {\r\n hls.autoLevelCapping = highestResolutionSupported(\r\n resolutions,\r\n window.innerWidth,\r\n window.innerHeight\r\n );\r\n hls.nextLevel = -1;\r\n }\r\n },\r\n false\r\n )\r\n );\r\n};\r\n\r\nexport const handleMediaAttached = (Hls: any, hls: any) => {\r\n const { params, details } = store.getState().videoData;\r\n let streamLink = details.stream_link;\r\n hls.loadSource(streamLink);\r\n hls.on(Hls.Events.MANIFEST_PARSED, (event: any, data: any) =>\r\n handleManifestParsed(hls, data)\r\n );\r\n};\r\n\r\n// ************* Level Handlers ************* //\r\n\r\nexport const handleLevels = (hls: any, data: any, setQualityLevel: any) => {\r\n if (data.frag.type !== \"audio\") {\r\n const dispatch = store.dispatch;\r\n const { settings } = store.getState().user;\r\n const { qualityLevels, manualQuality, autoQuality } =\r\n store.getState().controller;\r\n if (!conditions(ConditionName.isAutoQuality)) {\r\n if (data.frag.level !== manualQuality)\r\n hls.nextLevel = qualityLevels[settings.quality!]\r\n ? settings.quality\r\n : -1;\r\n if (qualityLevels[settings.quality!]) {\r\n dispatch(setManualQuality(settings.quality!));\r\n dispatch(setAutoQuality(undefined));\r\n } else {\r\n setQualityLevel(qualityLevels[data.frag.level]);\r\n dispatch(setAutoQuality(data.frag.level));\r\n dispatch(setUserSettings({ ...settings, quality: -1 }));\r\n }\r\n } else if (\r\n conditions(ConditionName.isAutoQuality) &&\r\n autoQuality === undefined\r\n ) {\r\n hls.nextLevel = -1;\r\n setQualityLevel(qualityLevels[data.frag.level]);\r\n dispatch(setAutoQuality(data.frag.level));\r\n } else if (conditions(ConditionName.isAutoQuality)) {\r\n setQualityLevel(qualityLevels[data.frag.level]);\r\n if (autoQuality !== data.frag.level)\r\n dispatch(setAutoQuality(data.frag.level));\r\n }\r\n }\r\n};\r\n\r\n// ************* Fragment Handlers ************* //\r\n\r\nexport const handleFragBuffered = (hls: any) => {\r\n const dispatch = store.dispatch;\r\n const bufferedTime = hls.mainForwardBufferInfo?.end;\r\n const bufferedTimeWidth =\r\n (bufferedTime! / mainPlayerVideoTag().duration) * 100;\r\n dispatch(setBufferedTimeWidth(bufferedTimeWidth));\r\n};\r\n\r\nexport const handleFragChanged = (\r\n hls: any,\r\n data: any,\r\n setQualityLevel: any\r\n) => {\r\n const { params } = store.getState().videoData;\r\n\r\n if (params.type) handleLevels(hls, data, setQualityLevel);\r\n};\r\n\r\nexport const handleFragParsed = (hls: any, data: any, setQualityLevel: any) => {\r\n const { type } = store.getState().videoData.params;\r\n if (type) handleLevels(hls, data, setQualityLevel);\r\n};\r\n\r\n// ************* HLS Error Handlers ************* //\r\n\r\nexport const handleHlsErrors = (data: any) => {\r\n if (data.event !== \"hlsAudioTrackLoading\")\r\n return { type: \"HLS_\" + data.type, message: data.error.message };\r\n return undefined;\r\n};\r\n\r\n// ************* Video Tag Handlers ************* //\r\n\r\nexport const handleVideoWaiting = (event: any, waitingTimerRef: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n waitingTimerRef.current = Date.now();\r\n dispatch(setIsLoading(true));\r\n};\r\n\r\nexport const handleVideoSeeking = (event: any, waitingTimerRef: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n waitingTimerRef.current = 0;\r\n dispatch(setIsLoading(true));\r\n};\r\n\r\nexport const handleVideoPlay = (event: any, timerRef: any) => {\r\n const dispatch = store.dispatch;\r\n const { videoSettings } = store.getState().user;\r\n const { params } = store.getState().videoData;\r\n event.preventDefault();\r\n timerRef.current = Date.now();\r\n dispatch(setPlay(true));\r\n if (conditions(ConditionName.hasOnPlayParams)) params.onPlay!();\r\n if (conditions(ConditionName.isFirstPlay)) {\r\n if(!conditions(ConditionName.hasCurrentTimeParams)) {\r\n mainPlayerVideoTag().currentTime = videoSettings.time;\r\n dispatch(setCurrentTime(videoSettings.time));\r\n }\r\n if (conditions(ConditionName.hasFullScreenParams)) handleAutoFullScreen();\r\n if (conditions(ConditionName.isFullScreen)) handleLockOrientation();\r\n dispatch(setVideoTimelines([Math.floor(mainPlayerVideoTag().currentTime)]));\r\n }\r\n sendFluentLog(pausePlayLog(true));\r\n dispatch(setSubtitleText(\"\"));\r\n};\r\n\r\nexport const handleVideoPlaying = (\r\n loadingCounterRef: any,\r\n loadingDurationRef: any,\r\n initialWaitingDurationRef: any,\r\n bannerLoadingDurationRef: any,\r\n timerRef: any,\r\n waitingDurationRef: any,\r\n waitingTimerRef: any,\r\n videoEntranceTimeRef: any\r\n) => {\r\n const dispatch = store.dispatch;\r\n const { autoQuality, canPlayVideo, firstPlay, qualityLevels } =\r\n store.getState().controller;\r\n const { settings } = store.getState().user;\r\n const qualityLevel =\r\n settings.quality === -1 && autoQuality\r\n ? qualityLevels[autoQuality]\r\n : qualityLevels[settings.quality!];\r\n let waitingDuration = 0;\r\n if (!!waitingTimerRef.current)\r\n waitingDuration = Date.now() - waitingTimerRef.current;\r\n if (firstPlay && !!mainPlayerVideoTag().played)\r\n sendFluentLog(\r\n initLog(\r\n loadingDurationRef.current,\r\n Date.now() - initialWaitingDurationRef.current,\r\n bannerLoadingDurationRef.current - initialWaitingDurationRef.current,\r\n Date.now() - timerRef.current,\r\n timerRef\r\n )\r\n );\r\n dispatch(setFirstPlay(false));\r\n if (canPlayVideo && waitingDuration > 0 && qualityLevel !== undefined) {\r\n waitingDurationRef.current = waitingDuration;\r\n waitingTimerRef.current = 0;\r\n sendFluentLog(\r\n loadingLog(\r\n waitingDuration,\r\n qualityLevel,\r\n timerRef,\r\n loadingCounterRef,\r\n videoEntranceTimeRef.current\r\n )\r\n );\r\n loadingCounterRef.current = loadingCounterRef.current + 1;\r\n timerRef.current = Date.now();\r\n }\r\n};\r\n\r\nexport const handleVideoPause = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n event.preventDefault();\r\n sendFluentLog(pausePlayLog(false));\r\n dispatch(setPlay(false));\r\n if (conditions(ConditionName.hasOnPauseParams)) params.onPause!();\r\n};\r\n\r\nexport const handleVideoTimeUpdate = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { selectedSubtitle } = store.getState().videoData;\r\n event.preventDefault();\r\n dispatch(setCurrentTime(event.target.currentTime));\r\n if (conditions(ConditionName.hasActiveCue))\r\n dispatch(setSubtitleText((selectedSubtitle!.activeCues![0] as any).text));\r\n};\r\n\r\nexport const handleVideoCanPlay = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { settings } = store.getState().user;\r\n event.preventDefault();\r\n dispatch(setIsLoading(false));\r\n dispatch(setCanPlayVideo(true));\r\n mainPlayerVideoTag().volume = settings.volume / 100;\r\n dispatch(setDuration(event.target.duration));\r\n if (conditions(ConditionName.isIOS)) {\r\n const subtitle: TextTrack[] = Object.values(event.target.textTracks);\r\n if (!!subtitle && subtitle.length)\r\n dispatch(\r\n setSubtitles(!!Object.values(subtitle[0]).length ? subtitle : [])\r\n );\r\n } else dispatch(setSubtitles(Object.values(event.target.textTracks)));\r\n};\r\n\r\nexport const handleVideoEnded = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n event.preventDefault();\r\n dispatch(setIsEnded(true));\r\n dispatch(setActiveElements(true));\r\n handleVideoTimeline(mainPlayerVideoTag().duration);\r\n if (conditions(ConditionName.hasOnFinishedParams)) params.onFinished!();\r\n};\r\n\r\n// ************* IOS Video Tag Handlers ************* //\r\n\r\nexport const handleIosVideoPlay = (event: any, timerRef: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n timerRef.current = Date.now();\r\n dispatch(setFirstPlay(false));\r\n};\r\n\r\nexport const handleIosVideoPlaying = () => {\r\n const dispatch = store.dispatch;\r\n dispatch(setIsLoading(false));\r\n};\r\n\r\nexport const handleIosVideoTimeUpdate = (event: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setCurrentTime(event.target.currentTime));\r\n};\r\n\r\nexport const handleIosVideoEnded = () => {\r\n const dispatch = store.dispatch;\r\n const { params } = store.getState().videoData;\r\n dispatch(setIsEnded(true));\r\n dispatch(setActiveElements(true));\r\n if (conditions(ConditionName.hasOnFinishedParams)) params.onFinished!();\r\n};\r\n\r\n// ************* Static Video Tag Handlers ************* //\r\n\r\nexport const handleStaticVideoPause = (event: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setPlay(false));\r\n};\r\n\r\nexport const handleStaticVideoPlay = (event: any, timerRef: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setPlay(true));\r\n timerRef.current = Date.now();\r\n dispatch(setSubtitleText(\"\"));\r\n\r\n if (conditions(ConditionName.isFirstPlay) && conditions(ConditionName.hasFullScreenParams)) {\r\n handleAutoFullScreen();\r\n if (conditions(ConditionName.isFullScreen)) handleLockOrientation();\r\n }\r\n\r\n\r\n};\r\n\r\nexport const handleStaticVideoPlaying = (\r\n loadingDurationRef: any,\r\n initialWaitingDurationRef: any,\r\n timerRef: any\r\n) => {\r\n const dispatch = store.dispatch;\r\n const { firstPlay } = store.getState().controller;\r\n dispatch(setIsLoading(false));\r\n if (firstPlay && !!mainPlayerVideoTag().played)\r\n sendFluentLog(\r\n initLog(\r\n Math.round(loadingDurationRef.current),\r\n Date.now() - initialWaitingDurationRef.current,\r\n 0,\r\n Date.now() - timerRef.current,\r\n timerRef\r\n )\r\n );\r\n dispatch(setFirstPlay(false));\r\n};\r\n\r\nexport const handleStaticVideoTimeUpdate = (event: any) => {\r\n const dispatch = store.dispatch;\r\n const { selectedSubtitle } = store.getState().videoData;\r\n event.preventDefault();\r\n dispatch(setCurrentTime(event.target.currentTime));\r\n dispatch(setDuration(event.target.duration));\r\n if (conditions(ConditionName.hasActiveCue))\r\n dispatch(setSubtitleText((selectedSubtitle!.activeCues![0] as any).text));\r\n};\r\n\r\nexport const handleStaticVideoCanPlay = (event: any) => {\r\n const dispatch = store.dispatch;\r\n event.preventDefault();\r\n dispatch(setIsLoading(false));\r\n dispatch(setCanPlayVideo(true));\r\n if (conditions(ConditionName.isIOS)) {\r\n const subtitle: TextTrack[] = Object.values(event.target.textTracks);\r\n if (!!subtitle && subtitle.length)\r\n dispatch(\r\n setSubtitles(!!Object.values(subtitle[0]).length ? subtitle : [])\r\n );\r\n } else dispatch(setSubtitles(Object.values(event.target.textTracks)));\r\n};\r\n\r\nexport const handleStaticVideoLoadedData = (event: any, intervalRef: any) => {\r\n event.preventDefault();\r\n handleBufferedTime(event, intervalRef);\r\n};\r\n\r\nexport const handleStaticVideoEnded = (event: any) => {\r\n const { params } = store.getState().videoData;\r\n if (conditions(ConditionName.hasOnFinishedParams)) params.onFinished!();\r\n event.preventDefault();\r\n};\r\n\r\nexport const handleMiniPlayerMediaAttached = async (hls: any) => {\r\n const { stream_link } = store.getState().miniPlayer.details;\r\n hls.loadSource(stream_link);\r\n};\r\n\r\nexport const handleVideoVisibilityChange = (hls: any) => {\r\n handleVideoTimeline(mainPlayerVideoTag().currentTime);\r\n};\r\n"]}
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkKODWZOFT_js=require('./chunk-KODWZOFT.js'),chunkWO4IQUGO_js=require('./chunk-WO4IQUGO.js'),react=require('react'),reactRedux=require('react-redux');chunkWO4IQUGO_js.e();var y=()=>{let m=chunkKODWZOFT_js.da(),{params:e}=chunkKODWZOFT_js.ea(({videoData:{params:t}})=>({params:t}),reactRedux.shallowEqual);react.useEffect(()=>{chunkKODWZOFT_js.ca("hasCurrentTimeParams")&&(chunkKODWZOFT_js.fa().currentTime=e.currentTime,m(chunkKODWZOFT_js.c(e.currentTime)));},[e.currentTime]);},P=y;chunkWO4IQUGO_js.e();var h=()=>{let{details:m}=chunkKODWZOFT_js.ea(({videoData:{details:e}})=>({details:e}),reactRedux.shallowEqual);react.useEffect(()=>{let e=chunkKODWZOFT_js.fa().getElementsByTagName("track");for(let t=0;t<e.length;t++)e[t].addEventListener("cuechange",p=>{let n=p.target.track,s;n.activeCues&&(s=n.activeCues[0]),s&&(setTimeout(()=>{let o=document.getElementById("subtitle-id");o&&(o.style.display="block");},300),s.onexit=()=>{let o=document.getElementById("subtitle-id");o&&(o.style.display="none");});});},[m.subtitles]);},H=h;exports.a=P;exports.b=H;//# sourceMappingURL=chunk-NTINJ2J6.js.map
2
- //# sourceMappingURL=chunk-NTINJ2J6.js.map
1
+ 'use strict';var chunkWG7PYZXW_js=require('./chunk-WG7PYZXW.js'),chunkWO4IQUGO_js=require('./chunk-WO4IQUGO.js'),react=require('react'),reactRedux=require('react-redux');chunkWO4IQUGO_js.e();var y=()=>{let m=chunkWG7PYZXW_js.da(),{params:e}=chunkWG7PYZXW_js.ea(({videoData:{params:t}})=>({params:t}),reactRedux.shallowEqual);react.useEffect(()=>{chunkWG7PYZXW_js.ca("hasCurrentTimeParams")&&(chunkWG7PYZXW_js.fa().currentTime=e.currentTime,m(chunkWG7PYZXW_js.c(e.currentTime)));},[e.currentTime]);},P=y;chunkWO4IQUGO_js.e();var h=()=>{let{details:m}=chunkWG7PYZXW_js.ea(({videoData:{details:e}})=>({details:e}),reactRedux.shallowEqual);react.useEffect(()=>{let e=chunkWG7PYZXW_js.fa().getElementsByTagName("track");for(let t=0;t<e.length;t++)e[t].addEventListener("cuechange",p=>{let n=p.target.track,s;n.activeCues&&(s=n.activeCues[0]),s&&(setTimeout(()=>{let o=document.getElementById("subtitle-id");o&&(o.style.display="block");},300),s.onexit=()=>{let o=document.getElementById("subtitle-id");o&&(o.style.display="none");});});},[m.subtitles]);},H=h;exports.a=P;exports.b=H;//# sourceMappingURL=chunk-QHLPSV6I.js.map
2
+ //# sourceMappingURL=chunk-QHLPSV6I.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/videoPlayerLibrary/helpers/hooks/useJumpToCurrentTime.tsx","../src/videoPlayerLibrary/helpers/hooks/useHideSubtitle.tsx"],"names":["init_cjs_shims","useJumpToCurrentTime","dispatch","useAppDispatch","params","useAppSelector","shallowEqual","useEffect","conditions","mainPlayerVideoTag","setCurrentTime","useJumpToCurrentTime_default","useHideSubtitle","details","tracks","i","event","track","activeCue","el","useHideSubtitle_default"],"mappings":"0KAAAA,kBAAAA,EAAAA,CAQA,IAAMC,CAAuB,CAAA,IAAM,CAC/B,IAAMC,CAAAA,CAAWC,qBACX,CAAA,CAAE,OAAAC,CAAO,CAAA,CAAIC,mBAAe,CAAA,CAAC,CAAE,SAAW,CAAA,CAAE,OAAAD,CAAO,CAAE,KAAO,CAAE,MAAA,CAAAA,CAAO,CAAA,CAAA,CAAIE,uBAAY,CAE3FC,CAAAA,eAAAA,CAAU,IAAM,CACRC,mBAAAA,CAAAA,sBAA6C,IAC/CC,mBAAmB,EAAA,CAAE,WAAcL,CAAAA,CAAAA,CAAO,YAC1CF,CAASQ,CAAAA,kBAAAA,CAAeN,EAAO,WAAY,CAAC,GAElD,CAAG,CAAA,CAACA,CAAO,CAAA,WAAW,CAAC,EAC3B,CAAA,CAEOO,EAAQV,ECpBfD,kBAAAA,EAAAA,KAKMY,CAAkB,CAAA,IAAM,CAE1B,GAAM,CAAE,OAAAC,CAAAA,CAAQ,EAAIR,mBAAe,CAAA,CAAC,CAAE,SAAW,CAAA,CAAE,QAAAQ,CAAQ,CAAE,CAAO,IAAA,CAAC,QAAAA,CAAO,CAAA,CAAA,CAAGP,uBAAY,CAE3FC,CAAAA,eAAAA,CAAU,IAAM,CACZ,IAAMO,CAASL,CAAAA,mBAAAA,GAAqB,oBAAqB,CAAA,OAAO,EAChE,IAASM,IAAAA,CAAAA,CAAI,EAAGA,CAAID,CAAAA,CAAAA,CAAO,MAAQC,CAAAA,CAAAA,EAAAA,CAC/BD,EAAOC,CAAC,CAAA,CAAE,iBAAiB,WAAcC,CAAAA,CAAAA,EAAU,CAC/C,IAAMC,CAAAA,CAASD,CAAM,CAAA,MAAA,CAAgB,MACjCE,CACAD,CAAAA,CAAAA,CAAM,aAAYC,CAAYD,CAAAA,CAAAA,CAAM,WAAW,CAAC,CAAA,CAAA,CAChDC,CACA,GAAA,UAAA,CAAW,IAAM,CACb,IAAMC,EAAK,QAAS,CAAA,cAAA,CAAe,aAAa,CAC5CA,CAAAA,CAAAA,GAAIA,CAAG,CAAA,KAAA,CAAM,QAAU,OAC/B,EAAA,CAAA,CAAG,GAAG,CAEND,CAAAA,CAAAA,CAAU,OAAS,IAAM,CACrB,IAAMC,CAAAA,CAAK,SAAS,cAAe,CAAA,aAAa,EAC5CA,CAAIA,GAAAA,CAAAA,CAAG,MAAM,OAAU,CAAA,MAAA,EAC/B,GAER,CAAC,EAET,EAAG,CAACN,CAAAA,CAAQ,SAAU,CAAC,EAC3B,EAEOO,CAAQR,CAAAA","file":"chunk-NTINJ2J6.js","sourcesContent":["import { useEffect } from \"react\";\r\nimport { conditions } from \"../conditions/conditions\";\r\nimport { ConditionName } from \"../interfaces/enums\";\r\nimport { mainPlayerVideoTag } from \"../constants\";\r\nimport { useAppDispatch, useAppSelector } from \"../redux/hooks\";\r\nimport { setCurrentTime } from \"../redux/slices/controllerSlice\";\r\nimport { shallowEqual } from \"react-redux\";\r\n\r\nconst useJumpToCurrentTime = () => {\r\n const dispatch = useAppDispatch();\r\n const { params } = useAppSelector(({ videoData: { params } }) => ({ params }), shallowEqual);\r\n\r\n useEffect(() => {\r\n if (conditions(ConditionName.hasCurrentTimeParams)) {\r\n mainPlayerVideoTag().currentTime = params.currentTime!;\r\n dispatch(setCurrentTime(params.currentTime!));\r\n }\r\n }, [params.currentTime]);\r\n}\r\n\r\nexport default useJumpToCurrentTime;","import { useEffect } from \"react\";\r\nimport { useAppSelector } from \"../redux/hooks\";\r\nimport { shallowEqual } from \"react-redux\";\r\nimport { mainPlayerVideoTag } from \"../constants\";\r\n\r\nconst useHideSubtitle = () => {\r\n\r\n const { details } = useAppSelector(({ videoData: { details } }) => ({details}),shallowEqual);\r\n\r\n useEffect(() => {\r\n const tracks = mainPlayerVideoTag().getElementsByTagName(\"track\");\r\n for (let i = 0; i < tracks.length; i++) {\r\n tracks[i].addEventListener(\"cuechange\", (event) => {\r\n const track = (event.target! as any).track;\r\n let activeCue: any;\r\n if (track.activeCues) activeCue = track.activeCues[0];\r\n if (activeCue) {\r\n setTimeout(() => {\r\n const el = document.getElementById(\"subtitle-id\");\r\n if (el) el.style.display = \"block\";\r\n }, 300);\r\n\r\n activeCue.onexit = () => {\r\n const el = document.getElementById(\"subtitle-id\");\r\n if (el) el.style.display = \"none\";\r\n };\r\n }\r\n });\r\n }\r\n }, [details.subtitles!]);\r\n}\r\n\r\nexport default useHideSubtitle;"]}
1
+ {"version":3,"sources":["../src/videoPlayerLibrary/helpers/hooks/useJumpToCurrentTime.tsx","../src/videoPlayerLibrary/helpers/hooks/useHideSubtitle.tsx"],"names":["init_cjs_shims","useJumpToCurrentTime","dispatch","useAppDispatch","params","useAppSelector","shallowEqual","useEffect","conditions","mainPlayerVideoTag","setCurrentTime","useJumpToCurrentTime_default","useHideSubtitle","details","tracks","i","event","track","activeCue","el","useHideSubtitle_default"],"mappings":"0KAAAA,kBAAAA,EAAAA,CAQA,IAAMC,CAAuB,CAAA,IAAM,CAC/B,IAAMC,CAAAA,CAAWC,qBACX,CAAA,CAAE,OAAAC,CAAO,CAAA,CAAIC,mBAAe,CAAA,CAAC,CAAE,SAAW,CAAA,CAAE,OAAAD,CAAO,CAAE,KAAO,CAAE,MAAA,CAAAA,CAAO,CAAA,CAAA,CAAIE,uBAAY,CAE3FC,CAAAA,eAAAA,CAAU,IAAM,CACRC,mBAAAA,CAAAA,sBAA6C,IAC/CC,mBAAmB,EAAA,CAAE,WAAcL,CAAAA,CAAAA,CAAO,YAC1CF,CAASQ,CAAAA,kBAAAA,CAAeN,EAAO,WAAY,CAAC,GAElD,CAAG,CAAA,CAACA,CAAO,CAAA,WAAW,CAAC,EAC3B,CAAA,CAEOO,EAAQV,ECpBfD,kBAAAA,EAAAA,KAKMY,CAAkB,CAAA,IAAM,CAE1B,GAAM,CAAE,OAAAC,CAAAA,CAAQ,EAAIR,mBAAe,CAAA,CAAC,CAAE,SAAW,CAAA,CAAE,QAAAQ,CAAQ,CAAE,CAAO,IAAA,CAAC,QAAAA,CAAO,CAAA,CAAA,CAAGP,uBAAY,CAE3FC,CAAAA,eAAAA,CAAU,IAAM,CACZ,IAAMO,CAASL,CAAAA,mBAAAA,GAAqB,oBAAqB,CAAA,OAAO,EAChE,IAASM,IAAAA,CAAAA,CAAI,EAAGA,CAAID,CAAAA,CAAAA,CAAO,MAAQC,CAAAA,CAAAA,EAAAA,CAC/BD,EAAOC,CAAC,CAAA,CAAE,iBAAiB,WAAcC,CAAAA,CAAAA,EAAU,CAC/C,IAAMC,CAAAA,CAASD,CAAM,CAAA,MAAA,CAAgB,MACjCE,CACAD,CAAAA,CAAAA,CAAM,aAAYC,CAAYD,CAAAA,CAAAA,CAAM,WAAW,CAAC,CAAA,CAAA,CAChDC,CACA,GAAA,UAAA,CAAW,IAAM,CACb,IAAMC,EAAK,QAAS,CAAA,cAAA,CAAe,aAAa,CAC5CA,CAAAA,CAAAA,GAAIA,CAAG,CAAA,KAAA,CAAM,QAAU,OAC/B,EAAA,CAAA,CAAG,GAAG,CAEND,CAAAA,CAAAA,CAAU,OAAS,IAAM,CACrB,IAAMC,CAAAA,CAAK,SAAS,cAAe,CAAA,aAAa,EAC5CA,CAAIA,GAAAA,CAAAA,CAAG,MAAM,OAAU,CAAA,MAAA,EAC/B,GAER,CAAC,EAET,EAAG,CAACN,CAAAA,CAAQ,SAAU,CAAC,EAC3B,EAEOO,CAAQR,CAAAA","file":"chunk-QHLPSV6I.js","sourcesContent":["import { useEffect } from \"react\";\r\nimport { conditions } from \"../conditions/conditions\";\r\nimport { ConditionName } from \"../interfaces/enums\";\r\nimport { mainPlayerVideoTag } from \"../constants\";\r\nimport { useAppDispatch, useAppSelector } from \"../redux/hooks\";\r\nimport { setCurrentTime } from \"../redux/slices/controllerSlice\";\r\nimport { shallowEqual } from \"react-redux\";\r\n\r\nconst useJumpToCurrentTime = () => {\r\n const dispatch = useAppDispatch();\r\n const { params } = useAppSelector(({ videoData: { params } }) => ({ params }), shallowEqual);\r\n\r\n useEffect(() => {\r\n if (conditions(ConditionName.hasCurrentTimeParams)) {\r\n mainPlayerVideoTag().currentTime = params.currentTime!;\r\n dispatch(setCurrentTime(params.currentTime!));\r\n }\r\n }, [params.currentTime]);\r\n}\r\n\r\nexport default useJumpToCurrentTime;","import { useEffect } from \"react\";\r\nimport { useAppSelector } from \"../redux/hooks\";\r\nimport { shallowEqual } from \"react-redux\";\r\nimport { mainPlayerVideoTag } from \"../constants\";\r\n\r\nconst useHideSubtitle = () => {\r\n\r\n const { details } = useAppSelector(({ videoData: { details } }) => ({details}),shallowEqual);\r\n\r\n useEffect(() => {\r\n const tracks = mainPlayerVideoTag().getElementsByTagName(\"track\");\r\n for (let i = 0; i < tracks.length; i++) {\r\n tracks[i].addEventListener(\"cuechange\", (event) => {\r\n const track = (event.target! as any).track;\r\n let activeCue: any;\r\n if (track.activeCues) activeCue = track.activeCues[0];\r\n if (activeCue) {\r\n setTimeout(() => {\r\n const el = document.getElementById(\"subtitle-id\");\r\n if (el) el.style.display = \"block\";\r\n }, 300);\r\n\r\n activeCue.onexit = () => {\r\n const el = document.getElementById(\"subtitle-id\");\r\n if (el) el.style.display = \"none\";\r\n };\r\n }\r\n });\r\n }\r\n }, [details.subtitles!]);\r\n}\r\n\r\nexport default useHideSubtitle;"]}
@@ -1,2 +1,2 @@
1
- import {da,ea,ca,fa,c}from'./chunk-LHO7HY26.mjs';import {e}from'./chunk-DBPGS72Q.mjs';import {useEffect}from'react';import {shallowEqual}from'react-redux';e();var g=()=>{let m=da(),{params:e}=ea(({videoData:{params:t}})=>({params:t}),shallowEqual);useEffect(()=>{ca("hasCurrentTimeParams")&&(fa().currentTime=e.currentTime,m(c(e.currentTime)));},[e.currentTime]);},S=g;e();var C=()=>{let{details:m}=ea(({videoData:{details:e}})=>({details:e}),shallowEqual);useEffect(()=>{let e=fa().getElementsByTagName("track");for(let t=0;t<e.length;t++)e[t].addEventListener("cuechange",p=>{let n=p.target.track,s;n.activeCues&&(s=n.activeCues[0]),s&&(setTimeout(()=>{let o=document.getElementById("subtitle-id");o&&(o.style.display="block");},300),s.onexit=()=>{let o=document.getElementById("subtitle-id");o&&(o.style.display="none");});});},[m.subtitles]);},J=C;export{S as a,J as b};//# sourceMappingURL=chunk-ELG5PCR2.mjs.map
2
- //# sourceMappingURL=chunk-ELG5PCR2.mjs.map
1
+ import {da,ea,ca,fa,c}from'./chunk-5OIS455P.mjs';import {e}from'./chunk-DBPGS72Q.mjs';import {useEffect}from'react';import {shallowEqual}from'react-redux';e();var g=()=>{let m=da(),{params:e}=ea(({videoData:{params:t}})=>({params:t}),shallowEqual);useEffect(()=>{ca("hasCurrentTimeParams")&&(fa().currentTime=e.currentTime,m(c(e.currentTime)));},[e.currentTime]);},S=g;e();var C=()=>{let{details:m}=ea(({videoData:{details:e}})=>({details:e}),shallowEqual);useEffect(()=>{let e=fa().getElementsByTagName("track");for(let t=0;t<e.length;t++)e[t].addEventListener("cuechange",p=>{let n=p.target.track,s;n.activeCues&&(s=n.activeCues[0]),s&&(setTimeout(()=>{let o=document.getElementById("subtitle-id");o&&(o.style.display="block");},300),s.onexit=()=>{let o=document.getElementById("subtitle-id");o&&(o.style.display="none");});});},[m.subtitles]);},J=C;export{S as a,J as b};//# sourceMappingURL=chunk-TUYGEJVR.mjs.map
2
+ //# sourceMappingURL=chunk-TUYGEJVR.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/videoPlayerLibrary/helpers/hooks/useJumpToCurrentTime.tsx","../src/videoPlayerLibrary/helpers/hooks/useHideSubtitle.tsx"],"names":["init_esm_shims","useJumpToCurrentTime","dispatch","useAppDispatch","params","useAppSelector","shallowEqual","useEffect","conditions","mainPlayerVideoTag","setCurrentTime","useJumpToCurrentTime_default","useHideSubtitle","details","tracks","i","event","track","activeCue","el","useHideSubtitle_default"],"mappings":"2JAAAA,CAAAA,EAAAA,CAQA,IAAMC,CAAuB,CAAA,IAAM,CAC/B,IAAMC,CAAAA,CAAWC,IACX,CAAA,CAAE,OAAAC,CAAO,CAAA,CAAIC,EAAe,CAAA,CAAC,CAAE,SAAW,CAAA,CAAE,OAAAD,CAAO,CAAE,KAAO,CAAE,MAAA,CAAAA,CAAO,CAAA,CAAA,CAAIE,YAAY,CAE3FC,CAAAA,SAAAA,CAAU,IAAM,CACRC,EAAAA,CAAAA,sBAA6C,IAC/CC,EAAmB,EAAA,CAAE,WAAcL,CAAAA,CAAAA,CAAO,YAC1CF,CAASQ,CAAAA,CAAAA,CAAeN,EAAO,WAAY,CAAC,GAElD,CAAG,CAAA,CAACA,CAAO,CAAA,WAAW,CAAC,EAC3B,CAAA,CAEOO,EAAQV,ECpBfD,CAAAA,EAAAA,KAKMY,CAAkB,CAAA,IAAM,CAE1B,GAAM,CAAE,OAAAC,CAAAA,CAAQ,EAAIR,EAAe,CAAA,CAAC,CAAE,SAAW,CAAA,CAAE,QAAAQ,CAAQ,CAAE,CAAO,IAAA,CAAC,QAAAA,CAAO,CAAA,CAAA,CAAGP,YAAY,CAE3FC,CAAAA,SAAAA,CAAU,IAAM,CACZ,IAAMO,CAASL,CAAAA,EAAAA,GAAqB,oBAAqB,CAAA,OAAO,EAChE,IAASM,IAAAA,CAAAA,CAAI,EAAGA,CAAID,CAAAA,CAAAA,CAAO,MAAQC,CAAAA,CAAAA,EAAAA,CAC/BD,EAAOC,CAAC,CAAA,CAAE,iBAAiB,WAAcC,CAAAA,CAAAA,EAAU,CAC/C,IAAMC,CAAAA,CAASD,CAAM,CAAA,MAAA,CAAgB,MACjCE,CACAD,CAAAA,CAAAA,CAAM,aAAYC,CAAYD,CAAAA,CAAAA,CAAM,WAAW,CAAC,CAAA,CAAA,CAChDC,CACA,GAAA,UAAA,CAAW,IAAM,CACb,IAAMC,EAAK,QAAS,CAAA,cAAA,CAAe,aAAa,CAC5CA,CAAAA,CAAAA,GAAIA,CAAG,CAAA,KAAA,CAAM,QAAU,OAC/B,EAAA,CAAA,CAAG,GAAG,CAEND,CAAAA,CAAAA,CAAU,OAAS,IAAM,CACrB,IAAMC,CAAAA,CAAK,SAAS,cAAe,CAAA,aAAa,EAC5CA,CAAIA,GAAAA,CAAAA,CAAG,MAAM,OAAU,CAAA,MAAA,EAC/B,GAER,CAAC,EAET,EAAG,CAACN,CAAAA,CAAQ,SAAU,CAAC,EAC3B,EAEOO,CAAQR,CAAAA","file":"chunk-ELG5PCR2.mjs","sourcesContent":["import { useEffect } from \"react\";\r\nimport { conditions } from \"../conditions/conditions\";\r\nimport { ConditionName } from \"../interfaces/enums\";\r\nimport { mainPlayerVideoTag } from \"../constants\";\r\nimport { useAppDispatch, useAppSelector } from \"../redux/hooks\";\r\nimport { setCurrentTime } from \"../redux/slices/controllerSlice\";\r\nimport { shallowEqual } from \"react-redux\";\r\n\r\nconst useJumpToCurrentTime = () => {\r\n const dispatch = useAppDispatch();\r\n const { params } = useAppSelector(({ videoData: { params } }) => ({ params }), shallowEqual);\r\n\r\n useEffect(() => {\r\n if (conditions(ConditionName.hasCurrentTimeParams)) {\r\n mainPlayerVideoTag().currentTime = params.currentTime!;\r\n dispatch(setCurrentTime(params.currentTime!));\r\n }\r\n }, [params.currentTime]);\r\n}\r\n\r\nexport default useJumpToCurrentTime;","import { useEffect } from \"react\";\r\nimport { useAppSelector } from \"../redux/hooks\";\r\nimport { shallowEqual } from \"react-redux\";\r\nimport { mainPlayerVideoTag } from \"../constants\";\r\n\r\nconst useHideSubtitle = () => {\r\n\r\n const { details } = useAppSelector(({ videoData: { details } }) => ({details}),shallowEqual);\r\n\r\n useEffect(() => {\r\n const tracks = mainPlayerVideoTag().getElementsByTagName(\"track\");\r\n for (let i = 0; i < tracks.length; i++) {\r\n tracks[i].addEventListener(\"cuechange\", (event) => {\r\n const track = (event.target! as any).track;\r\n let activeCue: any;\r\n if (track.activeCues) activeCue = track.activeCues[0];\r\n if (activeCue) {\r\n setTimeout(() => {\r\n const el = document.getElementById(\"subtitle-id\");\r\n if (el) el.style.display = \"block\";\r\n }, 300);\r\n\r\n activeCue.onexit = () => {\r\n const el = document.getElementById(\"subtitle-id\");\r\n if (el) el.style.display = \"none\";\r\n };\r\n }\r\n });\r\n }\r\n }, [details.subtitles!]);\r\n}\r\n\r\nexport default useHideSubtitle;"]}
1
+ {"version":3,"sources":["../src/videoPlayerLibrary/helpers/hooks/useJumpToCurrentTime.tsx","../src/videoPlayerLibrary/helpers/hooks/useHideSubtitle.tsx"],"names":["init_esm_shims","useJumpToCurrentTime","dispatch","useAppDispatch","params","useAppSelector","shallowEqual","useEffect","conditions","mainPlayerVideoTag","setCurrentTime","useJumpToCurrentTime_default","useHideSubtitle","details","tracks","i","event","track","activeCue","el","useHideSubtitle_default"],"mappings":"2JAAAA,CAAAA,EAAAA,CAQA,IAAMC,CAAuB,CAAA,IAAM,CAC/B,IAAMC,CAAAA,CAAWC,IACX,CAAA,CAAE,OAAAC,CAAO,CAAA,CAAIC,EAAe,CAAA,CAAC,CAAE,SAAW,CAAA,CAAE,OAAAD,CAAO,CAAE,KAAO,CAAE,MAAA,CAAAA,CAAO,CAAA,CAAA,CAAIE,YAAY,CAE3FC,CAAAA,SAAAA,CAAU,IAAM,CACRC,EAAAA,CAAAA,sBAA6C,IAC/CC,EAAmB,EAAA,CAAE,WAAcL,CAAAA,CAAAA,CAAO,YAC1CF,CAASQ,CAAAA,CAAAA,CAAeN,EAAO,WAAY,CAAC,GAElD,CAAG,CAAA,CAACA,CAAO,CAAA,WAAW,CAAC,EAC3B,CAAA,CAEOO,EAAQV,ECpBfD,CAAAA,EAAAA,KAKMY,CAAkB,CAAA,IAAM,CAE1B,GAAM,CAAE,OAAAC,CAAAA,CAAQ,EAAIR,EAAe,CAAA,CAAC,CAAE,SAAW,CAAA,CAAE,QAAAQ,CAAQ,CAAE,CAAO,IAAA,CAAC,QAAAA,CAAO,CAAA,CAAA,CAAGP,YAAY,CAE3FC,CAAAA,SAAAA,CAAU,IAAM,CACZ,IAAMO,CAASL,CAAAA,EAAAA,GAAqB,oBAAqB,CAAA,OAAO,EAChE,IAASM,IAAAA,CAAAA,CAAI,EAAGA,CAAID,CAAAA,CAAAA,CAAO,MAAQC,CAAAA,CAAAA,EAAAA,CAC/BD,EAAOC,CAAC,CAAA,CAAE,iBAAiB,WAAcC,CAAAA,CAAAA,EAAU,CAC/C,IAAMC,CAAAA,CAASD,CAAM,CAAA,MAAA,CAAgB,MACjCE,CACAD,CAAAA,CAAAA,CAAM,aAAYC,CAAYD,CAAAA,CAAAA,CAAM,WAAW,CAAC,CAAA,CAAA,CAChDC,CACA,GAAA,UAAA,CAAW,IAAM,CACb,IAAMC,EAAK,QAAS,CAAA,cAAA,CAAe,aAAa,CAC5CA,CAAAA,CAAAA,GAAIA,CAAG,CAAA,KAAA,CAAM,QAAU,OAC/B,EAAA,CAAA,CAAG,GAAG,CAEND,CAAAA,CAAAA,CAAU,OAAS,IAAM,CACrB,IAAMC,CAAAA,CAAK,SAAS,cAAe,CAAA,aAAa,EAC5CA,CAAIA,GAAAA,CAAAA,CAAG,MAAM,OAAU,CAAA,MAAA,EAC/B,GAER,CAAC,EAET,EAAG,CAACN,CAAAA,CAAQ,SAAU,CAAC,EAC3B,EAEOO,CAAQR,CAAAA","file":"chunk-TUYGEJVR.mjs","sourcesContent":["import { useEffect } from \"react\";\r\nimport { conditions } from \"../conditions/conditions\";\r\nimport { ConditionName } from \"../interfaces/enums\";\r\nimport { mainPlayerVideoTag } from \"../constants\";\r\nimport { useAppDispatch, useAppSelector } from \"../redux/hooks\";\r\nimport { setCurrentTime } from \"../redux/slices/controllerSlice\";\r\nimport { shallowEqual } from \"react-redux\";\r\n\r\nconst useJumpToCurrentTime = () => {\r\n const dispatch = useAppDispatch();\r\n const { params } = useAppSelector(({ videoData: { params } }) => ({ params }), shallowEqual);\r\n\r\n useEffect(() => {\r\n if (conditions(ConditionName.hasCurrentTimeParams)) {\r\n mainPlayerVideoTag().currentTime = params.currentTime!;\r\n dispatch(setCurrentTime(params.currentTime!));\r\n }\r\n }, [params.currentTime]);\r\n}\r\n\r\nexport default useJumpToCurrentTime;","import { useEffect } from \"react\";\r\nimport { useAppSelector } from \"../redux/hooks\";\r\nimport { shallowEqual } from \"react-redux\";\r\nimport { mainPlayerVideoTag } from \"../constants\";\r\n\r\nconst useHideSubtitle = () => {\r\n\r\n const { details } = useAppSelector(({ videoData: { details } }) => ({details}),shallowEqual);\r\n\r\n useEffect(() => {\r\n const tracks = mainPlayerVideoTag().getElementsByTagName(\"track\");\r\n for (let i = 0; i < tracks.length; i++) {\r\n tracks[i].addEventListener(\"cuechange\", (event) => {\r\n const track = (event.target! as any).track;\r\n let activeCue: any;\r\n if (track.activeCues) activeCue = track.activeCues[0];\r\n if (activeCue) {\r\n setTimeout(() => {\r\n const el = document.getElementById(\"subtitle-id\");\r\n if (el) el.style.display = \"block\";\r\n }, 300);\r\n\r\n activeCue.onexit = () => {\r\n const el = document.getElementById(\"subtitle-id\");\r\n if (el) el.style.display = \"none\";\r\n };\r\n }\r\n });\r\n }\r\n }, [details.subtitles!]);\r\n}\r\n\r\nexport default useHideSubtitle;"]}
@@ -0,0 +1,3 @@
1
+ 'use strict';var chunkWO4IQUGO_js=require('./chunk-WO4IQUGO.js'),toolkit=require('@reduxjs/toolkit'),reactRedux=require('react-redux'),Ve=require('axios');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var Ve__default=/*#__PURE__*/_interopDefault(Ve);var ne=chunkWO4IQUGO_js.b((ha,ie)=>{chunkWO4IQUGO_js.e();ie.exports={baseUrl:"https://hamrahi.cloud",fluentdUrl:"https://hamrahi.cloud"};});var le={};chunkWO4IQUGO_js.c(le,{isNpmPackage:()=>Re});var Re,ce=chunkWO4IQUGO_js.a(()=>{chunkWO4IQUGO_js.e();Re=!1;});chunkWO4IQUGO_js.e();var E={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},Q=toolkit.createSlice({name:"controller",initialState:E,reducers:{setPlay:(e,t)=>{e.play=t.payload;},setIsAutoPlay:(e,t)=>{e.isAutoPlay=t.payload;},setDuration:(e,t)=>{e.duration=t.payload;},setCurrentTime:(e,t)=>{e.currentTime=t.payload;},setManualQuality:(e,t)=>{e.manualQuality=t.payload;},setAutoQuality:(e,t)=>{e.autoQuality=t.payload;},setQualityLevels:(e,t)=>{e.qualityLevels=t.payload;},setActiveElements:(e,t)=>{e.activeElements=t.payload;},setIsLoading:(e,t)=>{e.isLoading=t.payload;},setIsFullScreen:(e,t)=>{e.isFullScreen=t.payload;},setBufferedTimeWidth:(e,t)=>{e.bufferedTimeWidth=t.payload;},setFirstPlay:(e,t)=>{e.firstPlay=t.payload;},setActivePointerProgressBar:(e,t)=>{e.activePointerProgressBar=t.payload;},setDelayTurnOffControlbar:(e,t)=>{e.delayTurnOffControlbar=t.payload;},setCanPlayVideo:(e,t)=>{e.canPlayVideo=t.payload;},setLock:(e,t)=>{e.lock=t.payload;},setIsEnded:(e,t)=>{e.isEnded=t.payload;},setTooltipTime:(e,t)=>{e.tooltipTime=t.payload;},setClearControllerSlice:()=>E}}),{setPlay:Ee,setIsAutoPlay:Qe,setDuration:Be,setCurrentTime:Oe,setQualityLevels:$e,setAutoQuality:Ke,setActiveElements:qe,setIsLoading:Ce,setIsFullScreen:je,setBufferedTimeWidth:He,setFirstPlay:We,setActivePointerProgressBar:Xe,setDelayTurnOffControlbar:Ye,setManualQuality:Ge,setCanPlayVideo:Je,setLock:Ze,setIsEnded:ze,setTooltipTime:Ne,setClearControllerSlice:B}=Q.actions,O=Q.reducer;chunkWO4IQUGO_js.e();var $={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,daaniHashCode: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},K=toolkit.createSlice({name:"videoData",initialState:$,reducers:{setInfo:(e,t)=>{e.details=t.payload;},setPlayerParams:(e,t)=>{e.params=t.payload;},setMarkers:(e,t)=>{e.markers=t.payload;},setVideoElementSizeInfo:(e,t)=>{e.videoElementSizeInfo=t.payload;},setIsFetchDetails:(e,t)=>{e.isFetchDetails=t.payload;},setIsValidAddress:(e,t)=>{e.isValidAddress=t.payload;},setVideoTimelines:(e,t)=>{e.videoTimelines=t.payload;},setIsReady:(e,t)=>{e.isReady=t.payload;},setSubtitles:(e,t)=>{e.subtitles=t.payload;},setSelectedSubtitle:(e,t)=>{e.selectedSubtitle=t.payload;},setSubtitleText:(e,t)=>{e.subtitleText=t.payload;},setClearVideoDataSlice:e=>$}}),{setInfo:st,setPlayerParams:ot,setVideoElementSizeInfo:it,setMarkers:nt,setIsFetchDetails:lt,setIsValidAddress:ct,setVideoTimelines:ut,setIsReady:dt,setSubtitles:pt,setSubtitleText:mt,setSelectedSubtitle:yt,setClearVideoDataSlice:q}=K.actions,C=K.reducer;chunkWO4IQUGO_js.e();var j={settings:{quality:-1,brightness:100,volume:100,speed:1},videoSettings:{time:0}},H=toolkit.createSlice({name:"user",initialState:j,reducers:{setUserSettings:(e,t)=>{e.settings=t.payload;},setVideoSettings:(e,t)=>{e.videoSettings=t.payload;},setClearUserSlice:()=>j}}),{setUserSettings:St,setVideoSettings:vt,setClearUserSlice:W}=H.actions,X=H.reducer;chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();var Le={settingPopover:!1,speedPopover:!1,qualityLevelsPopover:!1,markersListPopover:!1},Y=toolkit.createSlice({name:"popover",initialState:Le,reducers:{setSettingPopover:(e,t)=>{e.settingPopover=t.payload;},setSpeedPopover:(e,t)=>{e.speedPopover=t.payload;},setQualityLevelsPopover:(e,t)=>{e.qualityLevelsPopover=t.payload;},setMarkersListPopover:(e,t)=>{e.markersListPopover=t.payload;},setClearPopoversSlice:e=>{e.settingPopover=!1,e.speedPopover=!1,e.qualityLevelsPopover=!1,e.markersListPopover=!1;}}}),{setSettingPopover:Dt,setSpeedPopover:Tt,setQualityLevelsPopover:Mt,setMarkersListPopover:It,setClearPopoversSlice:G}=Y.actions,J=Y.reducer;chunkWO4IQUGO_js.e();var Z={params:{id:"0",type:"",currentTime:0,autoPlay:!1,onClose:()=>{}},details:{},play:!1},z=toolkit.createSlice({name:"user",initialState:Z,reducers:{setMiniPlayerInfo:(e,t)=>{e.params={...t.payload,id:t.payload.type==="static"?window.atob(t.payload.id):t.payload.id,banner:t.payload.banner?t.payload.banner:void 0};},setDetailsMiniPlayer:(e,t)=>{e.details=t.payload;},setPlayMiniPlayer:(e,t)=>{e.play=t.payload;},setClearMiniPlayerSlice:e=>Z}}),{setMiniPlayerInfo:Et,setDetailsMiniPlayer:Qt,setPlayMiniPlayer:Bt,setClearMiniPlayerSlice:Ot}=z.actions,N=z.reducer;var Te=toolkit.configureStore({reducer:{controller:O,videoData:C,popovers:J,user:X,miniPlayer:N},devTools:!0,middleware:e=>e({serializableCheck:!1})}),s=Te;chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();var u=e=>{let{params:t,details:r,isValidAddress:a,isFetchDetails:i,isReady:n,subtitles:p,selectedSubtitle:l,markers:h}=s.getState().videoData,{firstPlay:m,lock:c,canPlayVideo:d,manualQuality:f,activeElements:S,isLoading:g,isEnded:R,isAutoPlay:de,play:pe,isFullScreen:A}=s.getState().controller,{settingPopover:U,speedPopover:me,qualityLevelsPopover:ye,markersListPopover:ge}=s.getState().popovers,{settings:_}=s.getState().user,L=s.getState().miniPlayer;switch(e){case"showHeader":return !m&&d;case"showMain":return !c||m;case"showFooter":return !m&&d;case"showTouchVolumeBrightness":return !m&&k()&&!c&&!R;case"showBackwardForward":return !m&&v()&&!c;case"showTitle":return t.type!=="static"&&A&&!c;case"showSettingPopover":return U;case"showSpeedPopover":return me;case"showQualityLevelsPopover":return ye;case"showSettingIcon":return t.type!=="static"&&!b()&&!A;case"showBanner":return m&&(r.banner||t.banner);case"showProgressbar":return !b();case"showPictureInPicture":return !b()&&!v();case"showSubtitle":return !!l;case"showMarkerListPopover":return ge;case"hidePopovers":return !U;case"isLandscape":return window.innerHeight<=window.innerWidth;case"isTouchScreen":return v();case"isTouchScreenPortrait":return te();case"isTouchScreenLandscape":return k();case"isActiveElements":return S;case"isPlay":return pe;case"isPlayMiniPlayer":return L.play;case"isFirstPlay":return m;case"isLock":return c;case"isIOS":return b();case"isLoading":return g;case"isStaticFormat":return t.type==="static";case"isEnded":return R;case"isAutoPlay":return de;case"isFullScreen":return A;case"isValidAddress":return a;case"isFetchDetails":return i;case"isAutoQuality":return _.quality===-1;case"isPressKeySpace":return !c;case"isPressKeyI":return !c&&!m;case"isPressKeyF":return !c&&!m;case"isPressKeyS":return !c&&!m;case"isPressKeyArrowRight":return !m&&!c;case"isPressKeyArrowLeft":return !m&&!c;case"isPressKeyM":return !m&&!c;case"isPressKeyC":return !c&&!m&&!!p&&p.length>0;case"isSendTimelineLog":return t.type!=="static";case"isReady":return n;case"isSelectedSubtitle":return !!p&&p.length>0&&l;case"isMiniPlayerAndMainPlayerSame":return t.id===L.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 !!_.volume;case"hasAutoPlay":return t.autoplay==="true";case"hasFullScreenParams":return t.fullscreen==="true";case"hasOnFinishedParams":return !!t.onFinished;case"hasSubtitles":return !!p&&p.length>0;case"hasSubtitlesInDetails":return r.subtitles&&r.subtitles.length>0;case"hasActiveCue":return l&&l.activeCues&&l.activeCues.length>0;case"hasOnPlayParams":return !!t.onPlay;case"hasOnPauseParams":return !!t.onPause;case"hasPlayStatusParams":return t.playStatus!==void 0;case"hasMiniPlayer":return L.params.id;case"hasCurrentTimeParams":return t.currentTime!==void 0;case"hasMarkers":return h.length!==0;case"hasSubtitlesInParams":return t.subtitles&&t.subtitles.length;case"getDetails":return !!t.type&&t.id;case"getMarkers":return String(t.type)==="vod"&&t.id&&i;case"canPlayVideo":return d;case"setSubtitleFirstPlay":return r.subtitles&&r.subtitles.length>0&&!m&&t.type!=="static";}};var re=e=>new Promise(t=>setTimeout(t,e*1e3)),P=()=>{let e=localStorage.getItem("hamrahiUUID");return e||(e=Me(),localStorage.setItem("hamrahiUUID",e)),e.toString()},Me=()=>{let e="xxxxxxxx-xxxx-Mxxx-Nxxx-x".replace(/[xMN]/g,t=>{let r;return t==="M"?r=Math.floor(1+Math.random()*5):t==="N"?r=Math.floor(8+Math.random()*4):r=Math.floor(Math.random()*16),r.toString(16)});return e+=Date.now().toString(16),e},v=()=>"ontouchstart"in window||window.DocumentTouch&&document instanceof window.DocumentTouch,k=()=>{let{isFullScreen:e}=s.getState().controller;return v()&&e},te=()=>{let{isFullScreen:e}=s.getState().controller;return v()&&!e},b=()=>["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document,w=e=>(e<10?"0":"")+e,lr=e=>{let t=Math.floor(e/3600),r=Math.floor(e%3600/60),a=Math.floor(e%3600%60);return t<1?`${w(r)}:${w(a)}`:`${w(t)}:${w(r)}:${w(a)}`},cr=e=>{let t=new URL(e),r=e;return t.search.length?r+=`&uuid=${P()}`:r+=`?uuid=${P()}`},ur=(e,t)=>{try{return [e.target.id,e.target.parentNode.id,e.target.parentNode.parentNode.id,e.target.parentNode.parentNode.parentNode.id,e.target.parentNode.parentNode.parentNode.parentNode.id].includes(t)}catch{return !1}},dr=e=>{let t="";e==="mainPlayer"?t=s.getState().videoData.details.stream_link:t=s.getState().miniPlayer.details.stream_link;let r="";return t&&(r=t.split("m3u8")[1]),r?r=`${r}&uuid=${P()}`:r=`?uuid=${P()}`,r},pr=(e,t)=>{let r=document.getElementById(t),a=document.createElement("span");a.style.width=a.style.height="50px",a.style.left=`${e.touches[0].clientX-r.offsetLeft-25}px`,a.style.top=`${e.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 mr=e=>e>=200&&e<300,yr=()=>{let e=s.dispatch;e(q()),e(B()),e(W()),e(G());},gr=e=>{let t,r=[];for(t=0;t<e.length;t++)r[t]=e[t].weight+(r[t-1]||0);let a=Math.random()*r[r.length-1];for(t=0;t<r.length&&!(r[t]>a);t++);return e[t].domain},hr=e=>{let t=0;performance&&performance.getEntriesByType("navigation")&&(t=performance.getEntriesByType("navigation")[0].duration),e.current=t;},Pr=(e,t,r)=>{let a=t*window.devicePixelRatio,i=r*window.devicePixelRatio,n=[];return u("isTouchScreenPortrait")?n=e.filter(p=>Number(p.split("x")[0].trim())<=a):n=e.filter(p=>Number(p.split("x")[0].trim())<=i||Number(p.split("x")[1].trim())<=a),n.indexOf(n[n.length-1])},x=(e,t)=>{let r={};for(let a in e){let i=t?`${t}_${a}`:a;typeof e[a]=="object"&&!Array.isArray(e[a])?r={...r,...x(e[a],i)}:r[i]=e[a];}return r},fr=e=>{let t={fa:1,en:2};return e.slice().sort((r,a)=>{let i=t[r.lang]||999,n=t[a.lang]||999;return i-n})},Sr=e=>{let t;switch(e){case"fa":t="\u0641\u0627\u0631\u0633\u06CC";break;case"en":t="\u0627\u0646\u06AF\u0644\u06CC\u0633\u06CC";break;case"ar":t="\u0639\u0631\u0628\u06CC";break;case"tr":t="\u062A\u0631\u06A9\u06CC";break;}return t},vr=e=>e.split(/\r?\n|\r|\n/g),br=e=>{if(e){let t=e.offsetLeft-e.offsetWidth/2,r=window.innerWidth-(e.offsetLeft+e.offsetWidth);if(t>=0&&r>=0)return "inViewport";if(t<0)return "OutViewPortFromLeft";if(r<0)return "OutViewPortFromRight"}};var wr=e=>(e=e.replace(/\d{2}:\d{2}:\d{2}\.\d{3} --> \d{2}:\d{2}:\d{2}\.\d{3}.*\n/g,""),e=e.replace(/<[^>]+>/g,""),e=e.replace(/\n+/g,`
2
+ `),e=e.trim(),e);chunkWO4IQUGO_js.e();var Dr=()=>reactRedux.useDispatch(),Tr=reactRedux.useSelector;chunkWO4IQUGO_js.e();var D=()=>document.getElementById("player-tag"),Vr=()=>document.getElementById("mini-player-video-tag"),Rr=()=>document.getElementById("time-progress-bar"),Ur=()=>s.getState().videoData.videoElementSizeInfo.width-2;chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();var qr=e=>{let{params:t,details:r}=s.getState().videoData,{settings:a}=s.getState().user;return {category:"speedChange",previousSelectedSpeed:a.speed,selectedSpeed:e,id:Number(t.id),type:t.type,src:u("hasStreamLink")?r.stream_link:t.id,provider:t.provider}},Cr=e=>{let{params:t,details:r}=s.getState().videoData,{qualityLevels:a,manualQuality:i,autoQuality:n}=s.getState().controller;return {category:"qualityChangeRequest",currentPlayingQuality:`${a[u("isAutoQuality")?n??i:i]}P`,previousSelectedQuality:u("isAutoQuality")?"auto":`${a[i]}P`,selectedQuality:e,id:Number(t.id),type:t.type,src:u("hasStreamLink")?r.stream_link:t.id,provider:t.provider}},jr=e=>{let{params:t,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:D().currentTime,duration:e,quality:`${u("isAutoQuality")?a[i]:a[n.quality]}P`,isAutoQuality:u("isAutoQuality"),id:Number(t.id),type:t.type,src:u("hasStreamLink")?r.stream_link:t.id,provider:t.provider}},Hr=e=>{let{params:t,details:r}=s.getState().videoData;return {category:e==="backward"?"backward":"forward",id:Number(t.id),type:t.type,src:r.stream_link?r.stream_link:t.id,provider:t.provider}},Wr=e=>{let{params:t,details:r}=s.getState().videoData;return {category:e,id:Number(t.id),type:t.type,src:u("hasStreamLink")?r.stream_link:t.id}},Xr=(e,t)=>{let{params:r,details:a}=s.getState().videoData;return {category:"brightnessChange",source:e,target:t,id:Number(r.id),type:r.type,src:u("hasStreamLink")?a.stream_link:r.id}},Yr=(e,t)=>{let{params:r,details:a}=s.getState().videoData;return {category:"volumeChange",source:e,target:t,id:Number(r.id),type:r.type,src:u("hasStreamLink")?a.stream_link:r.id}},Gr=e=>{let{params:t,details:r}=s.getState().videoData;return {category:e,id:Number(t.id),type:t.type,src:u("hasStreamLink")?r.stream_link:t.id}},ae=(e,t,r,a)=>({category:"player-error",type:e,message:t,statusCode:r,url:a}),Jr=(e,t)=>{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:e,end:t,watchedDuration:t-e,video_duration:Math.floor(i),clientUUID:P(),user_id:a.user_id,content_type:a.content_type,content_id:a.content_id}},Zr=(e,t,r)=>{let{params:a,details:i}=s.getState().videoData;return {category:"autoQualityChange",sourceQuality:e,targetQuality:t,diffQuality:r,id:Number(a.id),type:a.type,src:u("hasStreamLink")?i.stream_link:a.id,provider:a.provider}},zr=(e,t)=>{let{params:r,details:a}=s.getState().videoData;return {category:"pingpong",id:Number(r.id),type:r.type,src:u("hasStreamLink")?a.stream_link:r.id,PingPongDuration:Number((new Date().getTime()-e).toFixed(2)),PingPongSourceQuality:`${t[0]}P`,PingPongTargetQuality:`${t[1]}P`,provider:r.provider}},Nr=e=>{let{params:t,details:r}=s.getState().videoData;return {category:e?"playVideo":"pauseVideo",id:Number(t.id),type:t.type,src:r.stream_link?r.stream_link:t.id,provider:t.provider}},ea=(e,t,r,a,i)=>{let{params:n,details:p}=s.getState().videoData,l=Date.now()-i.current+e+t,h=window.performance.memory,m=JSON.parse(JSON.stringify(window.performance.timing));return {category:"initLog",id:Number(n.id),type:n.type,origin:new URL(u("hasStreamLink")?p.stream_link:n.id).origin,src:u("hasStreamLink")?p.stream_link:n.id,loading:e,bannerLoading:!u("hasBanner")||r<0?0:r,waiting:t,firstChunkPlaying:a<0?0:a,totalTime:l,provider:n.provider,performance:x({memory:h,timing:m},"performance"),userAgent:window.navigator.userAgent}},ta=(e,t,r,a,i)=>{let{params:n,details:p}=s.getState().videoData,{settings:l}=s.getState().user,h=Date.now()-r.current;return {category:"loading",id:Number(n.id),type:n.type,src:u("hasStreamLink")?p.stream_link:n.id,duration:e,quality:`${t}P`,isAutoQuality:u("isAutoQuality"),previousLoaderDiff:h,counter:a.current,loadingPercentile:Number((e/h).toFixed(2)),videoTime:D().currentTime,videoEntranceTime:i,speed:l.speed,provider:n.provider}},ra=e=>{let{params:t,details:r}=s.getState().videoData;return {category:"subtitle",language:e,id:Number(t.id),type:t.type,src:u("hasStreamLink")?r.stream_link:t.id}},aa=(e,t,r,a,i)=>{let{params:n,details:p}=s.getState().videoData;return {category:"eventMarkerClick",video_id:Number(n.id),markerId:e,markerTime:t,markerTitle:r,markerDescription:a,markerSticker:i,type:n.type,src:u("hasStreamLink")?p.stream_link:n.id,provider:n.provider}};var oe=e=>{e&&se(ae(e.type,e.message,e.statusCode,e.url));};var T=async({url:e,method:t="GET",data:r,headers:a,retryCount:i=1,maxRetryCount:n=0,errorMessage:p,retryPolicy:l,errorCallback:h,timeoutCount:m})=>{let c={url:e,method:t,headers:{...a,"Content-Type":"application/json"},timeout:m?m*1e3:void 0};r?t==="GET"?c={...c,params:{uuid:s.getState().videoData.params.uuid,provider:s.getState().videoData.params.provider==="unknown"?void 0:s.getState().videoData.params.provider,...r}}:c={...c,data:{uuid:s.getState().videoData.params.uuid,provider:s.getState().videoData.params.provider==="unknown"?void 0:s.getState().videoData.params.provider,...r}}:t==="GET"?c={...c,params:{uuid:s.getState().videoData.params.uuid,provider:s.getState().videoData.params.provider==="unknown"?void 0:s.getState().videoData.params.provider}}:c={...c,data:{uuid:s.getState().videoData.params.uuid,provider:s.getState().videoData.params.provider==="unknown"?void 0:s.getState().videoData.params.provider}};try{return await Ve__default.default(c)}catch(d){if(oe({type:"API-ERROR",message:d.message?d.message:"",statusCode:d.response&&d.response.status?d.response.status:void 0,url:e}),!(d&&d.response&&d.response.status===401)){h&&h(d.response.status,d.response.message);let f=0,S=0;if(l!==void 0){for(let g=0;g<l.length;g++)if((l[g].codeAbove&&d.response.status>=l[g].codeAbove||l[g].codeBelow&&d.response.status<=l[g].codeBelow)&&(l[g].excludeCodes.length===0||!l[g].excludeCodes.includes(d.response.status))||l[g].includeCodes.length===0||l[g].includeCodes.includes(d.response.status)){S=l[g].count,f=l[g].delay;break}}else S=n,f=i+1;if(i<S)return await re(f),T({url:e,method:t,data:r,headers:a,retryCount:i+1,newMaxRetryCount:S,errorMessage:p,retryPolicy:l,errorCallback:h});if(d.response)return {data:d.response.data?d.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:d.response.status}}}};chunkWO4IQUGO_js.e();chunkWO4IQUGO_js.e();var M=ne(),I=(ce(),chunkWO4IQUGO_js.d(le)),F=()=>(I?M.baseUrl:process.env.baseUrl)+"/live/api",V=()=>I?M.fluentdUrl:process.env.fluentdUrl,Sa=()=>(I?M.baseUrl:process.env.baseUrl)+"/emoji";var ue=()=>({vod:{getVodUrl:`${F()}/v1/live/details/vod/`,getMarkerUrl:e=>`${F()}/v1/live/list-event/vod/${e}/`},videoTimelineLog:`${V()}/video-timeline.log`,logs:`${V()}/drive-endpoint.log`});var se=e=>{let{details:t,params:r}=s.getState().videoData,a={...e,timestamp:Date.now(),clientUUID:P(),uuid:P(),link:window.location.href,user_id:t.user_id,live_id:null,format:void 0,content_type:t.content_type,content_id:t.content_id,daaniHashCode:r.daaniHashCode};T({url:ue().logs,method:"post",data:a});};exports.$=vr;exports.A=yt;exports.Aa=ra;exports.B=Dt;exports.Ba=aa;exports.C=Tt;exports.Ca=oe;exports.D=Mt;exports.Da=T;exports.E=It;exports.F=G;exports.G=St;exports.H=vt;exports.I=Et;exports.J=Qt;exports.K=Bt;exports.L=Ot;exports.M=s;exports.N=P;exports.O=v;exports.P=lr;exports.Q=cr;exports.R=ur;exports.S=dr;exports.T=pr;exports.U=mr;exports.V=yr;exports.W=gr;exports.X=hr;exports.Y=Pr;exports.Z=fr;exports._=Sr;exports.a=Ee;exports.aa=br;exports.b=Be;exports.ba=wr;exports.c=Oe;exports.ca=u;exports.d=$e;exports.da=Dr;exports.e=Ke;exports.ea=Tr;exports.f=qe;exports.fa=D;exports.g=Ce;exports.ga=Vr;exports.h=je;exports.ha=Rr;exports.i=He;exports.ia=Ur;exports.j=We;exports.ja=Sa;exports.k=Xe;exports.ka=ue;exports.l=Ye;exports.la=se;exports.m=Ge;exports.ma=qr;exports.n=Je;exports.na=Cr;exports.o=Ze;exports.oa=jr;exports.p=ze;exports.pa=Hr;exports.q=Ne;exports.qa=Wr;exports.r=st;exports.ra=Xr;exports.s=ot;exports.sa=Yr;exports.t=it;exports.ta=Gr;exports.u=lt;exports.ua=Jr;exports.v=ct;exports.va=Zr;exports.w=ut;exports.wa=zr;exports.x=dt;exports.xa=Nr;exports.y=pt;exports.ya=ea;exports.z=mt;exports.za=ta;//# sourceMappingURL=chunk-WG7PYZXW.js.map
3
+ //# sourceMappingURL=chunk-WG7PYZXW.js.map