{"version":3,"sources":["../ui/src/playerComponents/continuousPlayback/ContinuousPlayback.tsx","../ui/src/components/icon-components/infoIcon.tsx","../ui/src/playerComponents/continuousPlayback/hooks/useContinuousePlaybackTimer.tsx"],"sourcesContent":["import { useAppSelector } from \"redux-share/hooks\";\r\nimport ClockIcon from \"../../components/icon-components/clockIcon\";\r\nimport { shallowEqual } from 'react-redux'\r\nimport { conditions, secondsToHMS } from \"helpers\";\r\nimport InfoIcon from \"../../components/icon-components/infoIcon\";\r\nimport useContinuousePlaybackTimer from \"./hooks/useContinuousePlaybackTimer\";\r\nimport { ConditionName } from \"interfaces\";\r\nimport { handleGoToFirstVideo, handleShowContinuousVideo } from \"./continuousePlayback\";\r\n\r\nconst ContinuousPlayback = () => {\r\n\r\n    const { videoSettings } = useAppSelector(({ user: { videoSettings } }) => ({ videoSettings }), shallowEqual);\r\n    const timer = useContinuousePlaybackTimer();\r\n\r\n    return (\r\n        <div className=\"pl-w-full pl-h-full pl-flex pl-flex-col pl-justify-center pl-items-center pl-absolute pl-bg-white/[0.8] dark:pl-bg-dark-1/[0.8] pl-px-6\">\r\n            <div className={`pl-w-full pl-flex ${conditions(ConditionName.isComplexPortrait) ? \"pl-items-center pl-pb-3 pl-mb-[10px]\" : \"pl-flex-col pl-pb-6 pl-mb-[20px]\"} pl-justify-center pl-items-center pl-border-b pl-border-secondary dark:pl-border-z-secondary-600`}>\r\n                <ClockIcon className=\"pl-w-5 pl-h-5 pl-fill-z-secondary-600 dark:pl-fill-z-secondary-500\" />\r\n                <p className={`pl-text-gray-800 dark:pl-text-white pl-text-[20px] pl-font-bold ${conditions(ConditionName.isComplexPortrait) ? \"pl-order-3 pl-mr-auto\" : \"pl-mt-3 pl-mb-1\"}`}>{secondsToHMS(videoSettings.time)}</p>\r\n                <p className={`pl-font-normal pl-text-gray-800 ${conditions(ConditionName.isComplexPortrait) ? \"pl-mr-1 dark:pl-text-white pl-text-[16px]\" : \"dark:pl-text-secondary pl-text-[12px]\"}`}>زمان مشاهده قبلی</p>\r\n            </div>\r\n            <div className=\"pl-w-full pl-flex pl-gap-2 pl-items-start\">\r\n                <InfoIcon className=\"pl-fill-main dark:pl-fill-main-lightPurple\" />\r\n                <p className=\"pl-text-[14px] pl-font-medium pl-text-gray-800 dark:pl-text-white pl-flex-1\">ویدیو شما از زمان مشاهده قبلی پخش خواهد شد. در صورت تمایل به پخش ویدیو از ابتدا گزینه “تماشای ویدیو از ابتدا” را انتخاب کنید.</p>\r\n            </div>\r\n            <form className={`pl-flex pl-gap-2 pl-w-full ${conditions(ConditionName.isComplexPortrait) ? \"pl-mt-5\" : \"pl-mt-10\"} `}>\r\n                <button\r\n                    type=\"submit\"\r\n                    className=\"!pl-bg-main-light hover:!pl-bg-main-700 pl-transition-colors pl-duration-300 pl-rounded-[8px] pl-py-3 pl-text-white pl-text-[13px] pl-w-full\"\r\n                    onClick={handleShowContinuousVideo}\r\n                >\r\n                    تماشای ادامه ویدیو ({timer})\r\n                </button>\r\n                <button\r\n                    type=\"button\"\r\n                    className=\"pl-border-[1.5px] pl-border-secondary-400 pl-transition-colors pl-duration-300 pl-rounded-[8px] pl-py-3 pl-text-secondary-600 dark:pl-text-white pl-text-[13px] pl-w-full\"\r\n                    onClick={handleGoToFirstVideo}\r\n                >\r\n                    تماشای ویدیو از ابتدا\r\n                </button>\r\n            </form>\r\n        </div>\r\n    )\r\n}\r\n\r\nexport default ContinuousPlayback;","import { IInfoIcon } from \"interfaces\";\r\n\r\nconst InfoIcon = ({className}:IInfoIcon) => {\r\n    return (\r\n        <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" className={className}>\r\n            <path d=\"M8.00065 15.1668C4.04732 15.1668 0.833984 11.9535 0.833984 8.00016C0.833984 4.04683 4.04732 0.833496 8.00065 0.833496C11.954 0.833496 15.1673 4.04683 15.1673 8.00016C15.1673 11.9535 11.954 15.1668 8.00065 15.1668ZM8.00065 1.8335C4.60065 1.8335 1.83398 4.60016 1.83398 8.00016C1.83398 11.4002 4.60065 14.1668 8.00065 14.1668C11.4007 14.1668 14.1673 11.4002 14.1673 8.00016C14.1673 4.60016 11.4007 1.8335 8.00065 1.8335Z\" />\r\n            <path d=\"M8 9.16683C7.72667 9.16683 7.5 8.94016 7.5 8.66683V5.3335C7.5 5.06016 7.72667 4.8335 8 4.8335C8.27333 4.8335 8.5 5.06016 8.5 5.3335V8.66683C8.5 8.94016 8.27333 9.16683 8 9.16683Z\" />\r\n            <path d=\"M8.00065 11.3334C7.91398 11.3334 7.82732 11.3134 7.74732 11.2801C7.66732 11.2468 7.59398 11.2001 7.52732 11.1401C7.46732 11.0734 7.42065 11.0068 7.38732 10.9201C7.35398 10.8401 7.33398 10.7534 7.33398 10.6668C7.33398 10.5801 7.35398 10.4934 7.38732 10.4134C7.42065 10.3334 7.46732 10.2601 7.52732 10.1934C7.59398 10.1334 7.66732 10.0868 7.74732 10.0534C7.90732 9.98675 8.09398 9.98675 8.25398 10.0534C8.33398 10.0868 8.40732 10.1334 8.47398 10.1934C8.53398 10.2601 8.58065 10.3334 8.61398 10.4134C8.64732 10.4934 8.66732 10.5801 8.66732 10.6668C8.66732 10.7534 8.64732 10.8401 8.61398 10.9201C8.58065 11.0068 8.53398 11.0734 8.47398 11.1401C8.40732 11.2001 8.33398 11.2468 8.25398 11.2801C8.17398 11.3134 8.08732 11.3334 8.00065 11.3334Z\" />\r\n        </svg>\r\n    )\r\n}\r\n\r\nexport default InfoIcon;","import { useState, useEffect } from \"react\";\r\nimport { handleVideoTimeline } from \"redux-share\";\r\nimport { useAppDispatch } from \"redux-share/hooks\";\r\nimport { setShowContinuousePlayback } from \"redux-share/slices/userSlice\";\r\nimport store from \"redux-share/store\";\r\n\r\nconst useContinuousePlaybackTimer = () => {\r\n    const [timer, setTimer] = useState<number>(5);\r\n\r\n    const dispatch = useAppDispatch();\r\n\r\n    useEffect(() => {\r\n        let interval:any = undefined;\r\n        interval = setInterval(() => {\r\n            setTimer((prev: number) => {\r\n                if (prev === 0) {\r\n                    const { videoSettings } = store.getState().user;\r\n                    dispatch(setShowContinuousePlayback(false));\r\n                    handleVideoTimeline(videoSettings.time);\r\n                    clearInterval(interval);\r\n                    return 0;\r\n                }\r\n                else return prev - 1;\r\n            })\r\n        }, 1000);\r\n        \r\n        () => clearInterval(interval);\r\n    }, [])\r\n\r\n    return timer;\r\n}\r\n\r\nexport default useContinuousePlaybackTimer;"],"mappings":"4PAAAA,IAEA,OAAS,gBAAAC,MAAoB,cCF7BC,IAIQ,OACI,OAAAC,EADJ,QAAAC,MAAA,oBAFR,IAAMC,EAAW,CAAC,CAAC,UAAAC,CAAS,IAEpBF,EAAC,OAAI,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OAAO,MAAM,6BAA6B,UAAWE,EACtG,UAAAH,EAAC,QAAK,EAAE,qaAAqa,EAC7aA,EAAC,QAAK,EAAE,qLAAqL,EAC7LA,EAAC,QAAK,EAAE,ouBAAouB,GAChvB,EAIDI,EAAQF,ECZfG,IAAA,OAAS,YAAAC,EAAU,aAAAC,MAAiB,QAMpC,IAAMC,EAA8B,IAAM,CACtC,GAAM,CAACC,EAAOC,CAAQ,EAAIC,EAAiB,CAAC,EAEtCC,EAAWC,EAAe,EAEhC,OAAAC,EAAU,IAAM,CACZ,IAAIC,EACJA,EAAW,YAAY,IAAM,CACzBL,EAAUM,GAAiB,CACvB,GAAIA,IAAS,EAAG,CACZ,GAAM,CAAE,cAAAC,CAAc,EAAIC,EAAM,SAAS,EAAE,KAC3C,OAAAN,EAASO,EAA2B,EAAK,CAAC,EAC1CC,EAAoBH,EAAc,IAAI,EACtC,cAAcF,CAAQ,EACf,CACX,KACK,QAAOC,EAAO,CACvB,CAAC,CACL,EAAG,GAAI,CAGX,EAAG,CAAC,CAAC,EAEEP,CACX,EAEOY,EAAQb,EFhBH,OACI,OAAAc,EADJ,QAAAC,MAAA,oBAPZ,IAAMC,EAAqB,IAAM,CAE7B,GAAM,CAAE,cAAAC,CAAc,EAAIC,EAAe,CAAC,CAAE,KAAM,CAAE,cAAAD,CAAc,CAAE,KAAO,CAAE,cAAAA,CAAc,GAAIE,CAAY,EACrGC,EAAQC,EAA4B,EAE1C,OACIN,EAAC,OAAI,UAAU,0IACX,UAAAA,EAAC,OAAI,UAAW,qBAAqBO,qBAA0C,EAAI,uCAAyC,kCAAkC,oGAC1J,UAAAR,EAACS,EAAA,CAAU,UAAU,qEAAqE,EAC1FT,EAAC,KAAE,UAAW,mEAAmEQ,qBAA0C,EAAI,wBAA0B,iBAAiB,GAAK,SAAAE,EAAaP,EAAc,IAAI,EAAE,EAChNH,EAAC,KAAE,UAAW,mCAAmCQ,qBAA0C,EAAI,4CAA8C,uCAAuC,GAAI,kGAAgB,GAC5M,EACAP,EAAC,OAAI,UAAU,4CACX,UAAAD,EAACW,EAAA,CAAS,UAAU,6CAA6C,EACjEX,EAAC,KAAE,UAAU,8EAA8E,wnBAA6H,GAC5N,EACAC,EAAC,QAAK,UAAW,8BAA8BO,qBAA0C,EAAI,UAAY,UAAU,IAC/G,UAAAP,EAAC,UACG,KAAK,SACL,UAAU,+IACV,QAASW,EACZ,iHACwBN,EAAM,KAC/B,EACAN,EAAC,UACG,KAAK,SACL,UAAU,4KACV,QAASa,EACZ,2HAED,GACJ,GACJ,CAER,EAEOC,EAAQZ","names":["init_esm_shims","shallowEqual","init_esm_shims","jsx","jsxs","InfoIcon","className","infoIcon_default","init_esm_shims","useState","useEffect","useContinuousePlaybackTimer","timer","setTimer","useState","dispatch","useAppDispatch","useEffect","interval","prev","videoSettings","store_default","setShowContinuousePlayback","handleVideoTimeline","useContinuousePlaybackTimer_default","jsx","jsxs","ContinuousPlayback","videoSettings","useAppSelector","shallowEqual","timer","useContinuousePlaybackTimer_default","conditions","clockIcon_default","secondsToHMS","infoIcon_default","handleShowContinuousVideo","handleGoToFirstVideo","ContinuousPlayback_default"]}