{"version":3,"sources":["../ui/src/components/player-components/ad/advertisement.tsx","../ui/src/components/player-components/ad/adTimer/adTimer.tsx","../ui/src/components/player-components/ad/adIcon/adIcon1.tsx"],"sourcesContent":["import AdTimer from \"./adTimer/adTimer\";\r\nimport AdIcon from \"./adIcon/adIcon1\";\r\nimport {useEffect} from \"react\";import { useAppDispatch, useAppSelector } from \"../../../../../redux/hooks\";\r\nimport { setCurrentTime, setPlay } from \"../../../../../redux/slices/controllerSlice\";\r\nimport { conditions } from \"../../../../../helpers\";\r\nimport { ConditionName } from \"../../../../../interfaces\";\r\nimport { shallowEqual } from 'react-redux'\r\nimport dynamic from \"next/dynamic\";\r\n\r\nconst SoundVolume = dynamic(() => import(\"../soundVolume/soundVolume\"));\r\n\r\nconst Advertisement = () => {\r\n    const dispatch = useAppDispatch();\r\n    const { play } = useAppSelector(({ controller: { play } }) => ({ play }), shallowEqual);\r\n\r\n    useEffect(() => {\r\n        return () => {\r\n            dispatch(setCurrentTime(0))\r\n            dispatch(setPlay(!play));\r\n        }\r\n    }, [])\r\n\r\n    return (\r\n        <div className=\"pl-absolute pl-w-full pl-h-full pl-z-[1000]\">\r\n            <AdTimer/>\r\n            <AdIcon/>\r\n            {!conditions(ConditionName.isIOS) && <SoundVolume/>}\r\n        </div>\r\n    )\r\n}\r\n\r\nexport default Advertisement;\r\n","import {useEffect, useState} from \"react\";\r\nimport axios from \"axios\";\r\nimport { useAppDispatch, useAppSelector } from \"../../../../../../redux/hooks\";\r\nimport { setAdvertisement } from \"../../../../../../redux/slices/videoDataSlice\";\r\nimport { conditions, getUUID, secondsToPersianHMS, videoTag } from \"../../../../../../helpers\";\r\nimport { ConditionName } from \"../../../../../../interfaces\";\r\nimport { shallowEqual } from 'react-redux'\r\n\r\nconst AdTimer = () => {\r\n    \r\n    const [previewAdDuration, setPreviewAdDuration] = useState<number>(0);\r\n\r\n    const dispatch = useAppDispatch();\r\n    const { ads } = useAppSelector(({ videoData: { ads } }) => ({ ads }), shallowEqual);\r\n\r\n    useEffect(() => {\r\n        let id: any = null;\r\n        if (previewAdDuration !== ads.adPreDuration) {\r\n            id = setInterval(() => {\r\n                setPreviewAdDuration(prevState => prevState + 1)\r\n            }, 1000);\r\n        }\r\n        return () => clearInterval(id)\r\n    }, [])\r\n\r\n    useEffect(() => {\r\n        if (previewAdDuration === ads.adPreDuration) {\r\n            (async () => {\r\n                try {\r\n                    const uuidObj = {\"uuid\": getUUID()};\r\n                    const response = await axios({\r\n                        url: ads.progressUrl,\r\n                        method: \"get\",\r\n                        headers: {},\r\n                        data: uuidObj\r\n                    });\r\n                } catch (error) {\r\n                    console.error(error)\r\n                }\r\n            })()\r\n        } else if (previewAdDuration === ads.adDuration) {\r\n            (async () => {\r\n                try {\r\n                    const uuidObj = {\"uuid\": getUUID()};\r\n                    const response = await axios({\r\n                        url: ads.completeUrl,\r\n                        method: \"get\",\r\n                        headers: {},\r\n                        data: uuidObj\r\n                    });\r\n                } catch (error) {\r\n                    console.error(error)\r\n                }\r\n                dispatch(setAdvertisement({...ads, adStreamLink: undefined}))\r\n            })()\r\n        }\r\n    }, [previewAdDuration])\r\n\r\n    return (\r\n        <div\r\n            onClick={(e) => {\r\n                e.stopPropagation();\r\n                e.preventDefault();\r\n                if (previewAdDuration >= ads.adPreDuration) {\r\n                    (async () => {\r\n                        try {\r\n                            const uuidObj = {\"uuid\": getUUID()};\r\n                            const response = await axios({\r\n                                url: ads.skipUrl + `?skipTime=${videoTag().currentTime}`,\r\n                                method: \"get\",\r\n                                headers: {},\r\n                                data: uuidObj\r\n                            });\r\n                        } catch (error) {\r\n                            console.error(error)\r\n                        }\r\n                    })()\r\n                    dispatch(setAdvertisement({...ads, adStreamLink: undefined}))\r\n                }\r\n            }}\r\n            className={`${previewAdDuration >= ads.adPreDuration && \"pl-cursor-pointer\"} pl-absolute pl-bg-secondary-700/[0.8] pl-rounded-l-[8px] pl-text-white pl-font-[700] pl-right-0 ${conditions(ConditionName.isTouchScreen) ? \"pl-text-[12px] pl-bottom-[42px] pl-py-[13px] pl-px-2 pl-h-[48px]\" : \"pl-text-[16px] pl-bottom-[148px] pl-py-[25px] pl-px-4 pl-h-[72px]\"}`}>\r\n            {`رد کردن تبلیغات ${previewAdDuration <= ads.adPreDuration ? secondsToPersianHMS(ads.adPreDuration - previewAdDuration) : \"\"}`}\r\n        </div>\r\n    )\r\n}\r\n\r\nexport default AdTimer;","import axios from \"axios\";\r\nimport Image from \"next/image\";\r\nimport { conditions, getUUID } from \"../../../../../../helpers\";\r\nimport { ConditionName } from \"../../../../../../interfaces\";\r\nimport { useAppSelector } from \"../../../../../../redux/hooks\";\r\nimport { shallowEqual } from 'react-redux'\r\n\r\nconst AdIcon = () => {\r\n    \r\n    const { ads } = useAppSelector(({ videoData: { ads } }) => ({ ads }), shallowEqual);\r\n    const {iconSrc, iconText, iconDestination, iconUrl} = ads\r\n\r\n    return (\r\n        <div\r\n            onClick={() => {\r\n                (async () => {\r\n                    try {\r\n                        const uuidObj = {\"uuid\": getUUID()};\r\n                        const response = await axios({\r\n                            url: iconUrl,\r\n                            method: \"get\",\r\n                            headers: {},\r\n                            data: uuidObj\r\n                        });\r\n                    } catch (error) {\r\n                        console.error(error)\r\n                    }\r\n                })()\r\n                window.open(`https://${iconDestination}`, '_blank')\r\n            }}\r\n            className={`pl-flex pl-gap-2 pl-items-center pl-cursor-pointer pl-w-max pl-absolute pl-bg-secondary-700/[0.8] pl-rounded-r-[8px] pl-text-white pl-font-[700] pl-left-0 pl-pl-[5px] ${conditions(ConditionName.isTouchScreen) ? `pl-text-[12px] pl-bottom-[42px] ${!!iconSrc ? \"!pl-h-max\" : \"pl-h-[48px]\"}` : \"pl-text-[16px] pl-bottom-[148px] pl-h-[72px]\"}`}>\r\n            {\r\n                !!iconSrc && (\r\n                    <div\r\n                        className={`pl-relative ${conditions(ConditionName.isTouchScreen) ? \"pl-h-[48px] pl-max-w-[62px]\" : \"pl-h-[72px] pl-max-w-[80px]\"}`}>\r\n                        <Image src={iconSrc} width={conditions(ConditionName.isTouchScreen) ? 48 : 72} height={conditions(ConditionName.isTouchScreen) ? 48 : 72}/>\r\n                    </div>\r\n                )\r\n            }\r\n            {\r\n                !!iconText && (\r\n                    <div\r\n                        className={`pl-flex pl-items-center pl-self-center ${conditions(ConditionName.isTouchScreen) && (!!iconSrc ? \"pl-max-w-[62px] pl-h-[72px]\" : \"pl-max-w-[150px]\")} ${!iconSrc && \"pl-p-2\"}`}>\r\n                        {iconText}\r\n                    </div>\r\n                )\r\n            }\r\n        </div>\r\n    )\r\n}\r\n\r\nexport default AdIcon;"],"mappings":"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","names":["init_esm_shims","init_esm_shims","useEffect","useState","axios","shallowEqual","jsx","AdTimer","previewAdDuration","setPreviewAdDuration","useState","dispatch","useAppDispatch","ads","useAppSelector","useEffect","id","prevState","uuidObj","getUUID","response","axios","error","setAdvertisement","e","videoTag","conditions","secondsToPersianHMS","adTimer_default","init_esm_shims","axios","Image","shallowEqual","jsx","jsxs","AdIcon","ads","useAppSelector","iconSrc","iconText","iconDestination","iconUrl","uuidObj","getUUID","response","axios","error","conditions","Image","adIcon1_default","useEffect","shallowEqual","dynamic","jsx","jsxs","SoundVolume","Advertisement","dispatch","useAppDispatch","play","useAppSelector","useEffect","setCurrentTime","setPlay","adTimer_default","adIcon1_default","conditions","advertisement_default"]}