{"version":3,"sources":["../configs/imageDomains/imageDomains.js","../index.ts","../ui/src/components/modules/video-player-library/videoPlayerLibrary.tsx","../ui/src/components/modules/video-player-library/videoPlayer.tsx"],"sourcesContent":["module.exports = ['abrehamrahi.ir', 'hamrahi.cloud', 'sthamrahi.ir', 'zarebin.ir', 'browser-cdn.zarebin.ir', 'mmd-cdn.zarebin.ir', 'browser-cdn.zarebin.ir']","export {default, domains} from \"./ui/src/components/modules/video-player-library/videoPlayerLibrary\";\r\n","import { Provider } from \"react-redux\";\r\nimport { ThemeProvider } from \"next-themes\";\r\nimport VideoPlayer from \"./videoPlayer\";\r\nimport store from \"redux-share/store\";\r\nimport { IParams } from \"interfaces\";\r\nimport { memo } from \"react\";\r\n\r\nexport const domains = require('configs/imageDomains/imageDomains');\r\n\r\nconst VideoPlayerLibrary = (props: IParams) => {\r\n    return (\r\n        <Provider store={store}>\r\n            <ThemeProvider enableSystem={true} attribute=\"class\">\r\n                <VideoPlayer params={props} />\r\n            </ThemeProvider>\r\n        </Provider>\r\n    )\r\n}\r\n\r\nexport default memo(VideoPlayerLibrary);\r\n","import {useEffect} from \"react\";\r\nimport dynamic from \"next/dynamic\";\r\nimport { handlePlayPauseInDOM } from \"redux-share/actions\";\r\nimport { useAppDispatch, useAppSelector } from \"redux-share/hooks\";\r\nimport { setIsComplexPortrait } from \"redux-share/slices/videoDataSlice\";\r\nimport { setIsAutoPlay, setIsClickInnerCard } from \"redux-share/slices/controllerSlice\";\r\nimport { setXToken } from \"redux-share/slices/userSlice\";\r\nimport { ConditionName, IParams, zIndex } from \"interfaces\";\r\nimport useHandleParams from \"helpers/hooks/useHandleParams\";\r\nimport useHandleKeyPress from \"helpers/hooks/useHandleKeyPress\";\r\nimport useHandleScroll from \"helpers/hooks/useHandleScroll\";\r\nimport { clearRedux, conditions } from \"helpers\";\r\n// import useAdvertisment from \"helpers/hooks/useAdvertisment\";\r\nimport { shallowEqual } from \"react-redux\";\r\nimport ToastContainer from \"mobin-toast\";\r\n\r\nconst StaticPlayer = dynamic(() => import(\"./players/staticPlayer/player\"));\r\nconst LiveAndVodPlayer = dynamic(() => import(\"./players/liveAndVodPlayer/player\"));\r\nconst SplusPlayer = dynamic(() => import(\"../splus/splusPlayer\"));\r\nconst Factor = dynamic(() => import(\"ui/src/components/player-components/cinemaHamrahPopovers/factor\"));\r\n\r\nconst VideoPlayer = ({ params }: {params:IParams}) => {\r\n    const dispatch = useAppDispatch();\r\n\r\n    useAppSelector(({ controller: { isFullScreen } }) => ({ isFullScreen }), shallowEqual);\r\n    useAppSelector(({ videoData: { isReady, params, isComplexPortrait } }) => ({ isReady, params, isComplexPortrait }), shallowEqual);\r\n\r\n    useHandleParams(params);\r\n    useHandleKeyPress();\r\n    useHandleScroll();\r\n\r\n    useEffect(() => {\r\n        dispatch(setIsClickInnerCard(false));\r\n        if (conditions(ConditionName.hasAdParam)) {\r\n            let now = new Date();\r\n            let head = document.getElementsByTagName('head')[0];\r\n            let script = document.createElement('script');\r\n            if (!!script) {\r\n                script.async = true;\r\n                let script_address = 'https://native-ad-placement-cdn.yektanet.com/static/video_scripts/video-705f2172834666788607efbfca35afb3.js'; script.charset= \"utf-8\";\r\n                script.src = script_address + '?v=' + now.getFullYear().toString() + '0' + now.getMonth() + '0' + now.getDate() + '0' + now.getHours();\r\n                if (!!head) head.appendChild(script);\r\n            }\r\n        }\r\n        \r\n        return () => {\r\n            clearRedux();\r\n        }\r\n    }, [])\r\n\r\n    useEffect(() => {\r\n        const isAutoPlay = localStorage.getItem(\"isAutoPlay\");\r\n        if (isAutoPlay) dispatch(setIsAutoPlay(isAutoPlay === \"true\"));\r\n        (Document.prototype as any).playPause = (type: boolean) => handlePlayPauseInDOM(type);\r\n        if(!conditions(ConditionName.isIOS)) {\r\n            window.screen.orientation.addEventListener(\"change\", (event: any) => {\r\n                if (!conditions(ConditionName.isFullScreen) && conditions(ConditionName.isParamsPortrait)) dispatch(setIsComplexPortrait(true));\r\n                const videoPlayerElement = document.getElementById(\"video-player-module\");\r\n                if (!!videoPlayerElement) {\r\n                    if (event.target.type.includes(\"landscape\") && !conditions(ConditionName.isFullScreen)) {\r\n                        videoPlayerElement.classList.add(\"pl-overflow-scroll\");\r\n                        videoPlayerElement.classList.remove(\"pl-overflow-hidden\");\r\n                    } else {\r\n                        videoPlayerElement.classList.add(\"pl-overflow-hidden\");\r\n                        videoPlayerElement.classList.remove(\"pl-overflow-scroll\");\r\n                    }\r\n                }\r\n\r\n            })\r\n        }\r\n    }, [])\r\n\r\n    useEffect(() => {\r\n        if (conditions(ConditionName.hasXToken)) dispatch(setXToken(String(params.xToken)));\r\n    }, [params.xToken])\r\n    \r\n    // useAdvertisment();\r\n\r\n    const checkOverflow = () => {\r\n        let overflow: string = \"\";\r\n        if (!conditions(ConditionName.isParamsPortrait)) overflow = \"pl-overflow-hidden\";\r\n        else if (window.innerWidth > window.innerHeight && conditions(ConditionName.isFullScreen)) overflow = \"pl-overflow-hidden\";\r\n        else if (window.innerWidth > window.innerHeight && !conditions(ConditionName.isFullScreen)) overflow = \"pl-overflow-auto\";\r\n        else if (window.innerWidth < window.innerHeight) overflow = \"pl-overflow-hidden\";\r\n        return overflow;\r\n    }\r\n    \r\n    return (\r\n        <>\r\n            {conditions(ConditionName.hasTransactionId) ? (\r\n                <Factor />\r\n            ) : (\r\n                <>\r\n                    <ToastContainer position='bottom-right' autoClose={3000} theme={conditions(ConditionName.isDarkMode) ? \"dark\" : \"light\"} />\r\n                    {conditions(ConditionName.isReady) ? (\r\n                        <div\r\n                            className={`${checkOverflow()} ${(conditions(ConditionName.isComplexPortrait)) && \"pl-max-h-[100dvh] !no-scrollbar\"} ${(conditions(ConditionName.isFullScreen)) && \"!pl-overflow-hidden pl-fixed pl-top-0 pl-right-0 pl-w-screen pl-h-screen\"}`}\r\n                            style={{ zIndex: zIndex.videoPlayerInFullScreen, touchAction: \"pan-y\" }}\r\n                            id=\"video-player-module\"\r\n                        >\r\n                            {conditions(ConditionName.isStaticFormat) ? <StaticPlayer /> : conditions(ConditionName.isSplusEnvironment) ? <SplusPlayer /> : <LiveAndVodPlayer />}\r\n                        </div>\r\n                    ) : (\r\n                        <div className=\"pl-w-full !pl-aspect-video pl-bg-white dark:pl-bg-black pl-overflow-hidden pl-max-h-screen\" />\r\n                    )}\r\n                </>\r\n            )}\r\n        </>\r\n    )\r\n}\r\n\r\nexport default VideoPlayer;\r\n"],"mappings":"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","names":["require_imageDomains","__commonJSMin","exports","module","init_esm_shims","init_esm_shims","init_esm_shims","Provider","ThemeProvider","init_esm_shims","useEffect","dynamic","shallowEqual","ToastContainer","Fragment","jsx","jsxs","StaticPlayer","dynamic","LiveAndVodPlayer","SplusPlayer","Factor","VideoPlayer","params","dispatch","useAppDispatch","useAppSelector","isFullScreen","isReady","isComplexPortrait","useHandleParams_default","useHandleKeyPress_default","useHandleScroll_default","useEffect","setIsClickInnerCard","conditions","now","head","script","script_address","clearRedux","isAutoPlay","setIsAutoPlay","type","handlePlayPauseInDOM","event","setIsComplexPortrait","videoPlayerElement","setXToken","checkOverflow","overflow","videoPlayer_default","memo","jsx","domains","VideoPlayerLibrary","props","Provider","store_default","ThemeProvider","videoPlayer_default","videoPlayerLibrary_default"]}