{"version":3,"sources":["../ui/src/components/player-components/poll/poll.tsx","../ui/src/components/player-components/poll/pollOption.tsx"],"sourcesContent":["import Image from \"next/image\";\r\nimport { useEffect, useRef, useState } from \"react\";\r\nimport PollOption from \"./pollOption\";\r\nimport { useAppDispatch, useAppSelector } from \"redux-share/hooks\";\r\nimport { conditions, handleSumVotes, isVoted, livePoll, seenPoll } from \"helpers\";\r\nimport { ConditionName, zIndex } from \"interfaces\";\r\nimport { setClearPopoversSlice } from \"redux-share/slices/popoversSlice\";\r\nimport { setSelectedOptionId } from \"redux-share/slices/videoDataSlice\";\r\nimport { pollModalCloseLog, sendFluentLog } from \"../../../../../logs\";\r\nimport IMAGES from \"../../../../../images/importImages\";\r\nimport { shallowEqual } from 'react-redux';\r\nimport dynamic from \"next/dynamic\";\r\n\r\nconst MessageIcon = dynamic(() => import(\"../../icon-components/MessageIcon\"));\r\nconst CloseIcon = dynamic(() => import(\"../../icon-components/closeIcon\"));\r\n\r\nconst Poll = () => {\r\n\r\n    const { question, params, details } = useAppSelector(({ videoData: { question, params, details, isComplexPortrait } }) => ({ question, params, details, isComplexPortrait }), shallowEqual);\r\n\r\n    const [sumVotes, setSumVotes] = useState<number>(handleSumVotes(question));\r\n    const [pollsSlideArrow, setPollsSlideArrow] = useState<boolean>(false);\r\n    const [pollSlideScrollLeft, setPollSlideScrollLeft] = useState<number>(0);\r\n    const [showPollPopover, setShowPollPopover] = useState<boolean>(false)\r\n\r\n    const pollsContainerRef = useRef<any>();\r\n\r\n    const dispatch = useAppDispatch();\r\n\r\n    useEffect(() => {\r\n        if (conditions(ConditionName.hasPoll)) {\r\n            setSumVotes(handleSumVotes(question));\r\n            if (!seenPoll() || (seenPoll() && +seenPoll() !== question.id)) {\r\n                if (conditions(ConditionName.isComplexPortrait)) dispatch(setClearPopoversSlice());\r\n                setShowPollPopover(true);\r\n            }\r\n        } else {\r\n            if (conditions(ConditionName.isComplexPortrait)) dispatch(setClearPopoversSlice());\r\n            setShowPollPopover(true);\r\n        }\r\n    }, [question])\r\n\r\n\r\n    const handleClickOption = (id: number, vote: number) => {\r\n        dispatch(setSelectedOptionId(id));\r\n        // State 2\r\n        if (question || question.active) {\r\n            if ((!!livePoll() && livePoll().liveId !== params.id) || !livePoll()) {\r\n                localStorage.setItem(\"live-poll\", JSON.stringify({\r\n                    liveId: params.id,\r\n                    polls: [{ qid: question.id, oid: id, sumOptionVotes: vote + 1 }]\r\n                }));\r\n            } else {\r\n                if (livePoll().polls.filter((poll: any) => poll.qid === question.id).length === 0 && question.can_vote) {\r\n                    localStorage.setItem(\"live-poll\", JSON.stringify({\r\n                        liveId: params.id,\r\n                        polls: [...livePoll().polls, { qid: question.id, oid: id, sumOptionVotes: vote + 1 }]\r\n                    }));\r\n                }\r\n            }\r\n        }\r\n    }\r\n\r\n    const handleNextPoll = (e: any) => {\r\n        e.preventDefault();\r\n        e.stopPropagation();\r\n        pollsContainerRef.current.scrollLeft -= pollsContainerRef.current.clientWidth;\r\n    }\r\n\r\n    const handlePrevPoll = (e: any) => {\r\n        e.preventDefault();\r\n        e.stopPropagation();\r\n        pollsContainerRef.current.scrollLeft += pollsContainerRef.current.clientWidth;\r\n    }\r\n\r\n    useEffect(() => {\r\n        if (pollsContainerRef.current) {\r\n            const clientWidth = pollsContainerRef.current.clientWidth;\r\n            const scrollWidth = pollsContainerRef.current.scrollWidth;\r\n            setPollsSlideArrow(scrollWidth > clientWidth);\r\n            setPollSlideScrollLeft(pollsContainerRef.current.scrollLeft);\r\n            pollsContainerRef.current.addEventListener('scroll', (e: any) => setPollSlideScrollLeft(e.target.scrollLeft));\r\n        }\r\n        return () => pollsContainerRef.current && pollsContainerRef.current.removeEventListener('scroll', () => true);\r\n\r\n    }, [pollsContainerRef.current, question]);\r\n\r\n    const handleClose = () => {\r\n        setShowPollPopover(false);\r\n        localStorage.setItem(\"seen-poll\", question.id);\r\n        sendFluentLog(pollModalCloseLog(params, details, question.id));\r\n    }\r\n\r\n    return (\r\n        <>\r\n            {question && Object.keys(question).length > 0 && question.active && showPollPopover && (\r\n                <div className={`pl-w-full pl-mx-auto pl-flex pl-flex-col pl-absolute ${conditions(ConditionName.isTouchScreenPortrait) ? \"pl-top-12\" : \"pl-top-3\"} animate__animated ${showPollPopover && \"animate__fadeInDown\"} pl-opacity-100`} style={{ zIndex: zIndex.poll }}>\r\n                    <div className={`pl-mx-auto ${conditions(ConditionName.isTouchScreenLandscape) && \"pl-w-[65vw]\"} ${conditions(ConditionName.isTouchScreenPortrait) && \"pl-w-[92vw] !pl-mx-0\"} lg:pl-w-[40%] pl-bg-white dark:pl-bg-gray-800/[0.7] pl-px-[17px] pl-py-[14px] pl-rounded-[12px] pl-relative`}>\r\n                        <div className=\"pl-flex pl-gap-2 pl-items-center pl-mb-2\">\r\n                            <MessageIcon className=\"pl-stroke-gray-800 dark:pl-stroke-dark-5\" />\r\n                            <p className={`pl-text-[12px] pl-break-all pl-font-normal pl-text-gray-800 dark:pl-text-white pl-flex-1`}>{question.text}</p>\r\n                            <CloseIcon className=\"pl-cursor-pointer pl-w-4 pl-h-4 pl-stroke-gray-800 dark:pl-stroke-dark-5\" onClick={handleClose} />\r\n                        </div>\r\n                        {question.options && question.options.length > 0 && (\r\n                            <>\r\n                                <div className=\"pl-max-h-[200px] pl-overflow-auto no-scrollbar\" ref={pollsContainerRef}>\r\n\r\n                                    {\r\n                                        pollsSlideArrow && !conditions(ConditionName.isTouchScreen) && (\r\n                                            <>\r\n                                                {\r\n                                                    pollSlideScrollLeft < 0 && (\r\n                                                        <div className={`pl-flex pl-items-center pl-justify-center pl-cursor-pointer pl-transition hover:pl-scale-[1.2] pl-drop-shadow-lg pl-absolute pl-rounded-full ${isVoted(question.id) ? \"pl-mt-[15px]\" : \"pl-mt-[13px]\"}`} onClick={handlePrevPoll}>\r\n                                                            <Image src={IMAGES.chevronCircleRight} width={18} height={18} alt=\"chevronCircleRight-icon\" />\r\n                                                        </div>\r\n                                                    )\r\n                                                }\r\n                                                {\r\n                                                    Math.abs(pollSlideScrollLeft - pollsContainerRef.current.clientWidth) !== pollsContainerRef.current.scrollWidth - 1 && (\r\n                                                        <div className={`pl-flex pl-items-center pl-justify-center pl-cursor-pointer pl-transition hover:pl-scale-[1.2] -pl-rotate-180 pl-drop-shadow-lg pl-absolute pl-left-2 pl-rounded-full ${isVoted(question.id) ? \"pl-mt-[15px]\" : \"pl-mt-[13px]\"}`} onClick={handleNextPoll}>\r\n                                                            <Image src={IMAGES.chevronCircleRight} width={18} height={18} alt=\"chevronCircleRight-icon\" />\r\n                                                        </div>\r\n                                                    )\r\n                                                }\r\n                                            </>\r\n                                        )\r\n                                    }\r\n\r\n                                    <div className=\"pl-flex pl-gap-2\">\r\n                                        {question.options.map((option: any) => (\r\n                                            <PollOption\r\n                                                option={option}\r\n                                                key={option.id}\r\n                                                lastOptionId={question.options.find((item: any) => item.vote === Math.max(...question.options.map((o: any) => o.vote))).id}\r\n                                                sumVotes={sumVotes}\r\n                                                onClick={() => (question.can_vote && !isVoted(question.id)) && handleClickOption(option.id, option.vote)}\r\n                                            />\r\n                                        ))}\r\n                                    </div>\r\n                                </div>\r\n                                {isVoted(question.id) && (\r\n                                    <p className=\"pl-flex pl-gap-1 pl-text-[11px] pl-mt-1\">\r\n                                        <span>تعداد کل آرا:</span>\r\n                                        <span>{handleSumVotes(question)} نفر</span>\r\n                                    </p>\r\n                                )}\r\n                            </>\r\n\r\n                        )}\r\n                    </div>\r\n                </div>\r\n            )}\r\n        </>\r\n    )\r\n}\r\n\r\nexport default Poll;","import { useState, useEffect, memo } from \"react\";\r\nimport { CountUp } from 'use-count-up'\r\nimport { useAppSelector } from \"redux-share/hooks\";\r\nimport { handleSumVotes, isSelectedOption, isVoted, livePoll } from \"helpers\";\r\nimport { IPollOptionProps } from \"interfaces\";\r\nimport { shallowEqual } from 'react-redux';\r\n\r\nconst PollOption = ({ option, lastOptionId, sumVotes, onClick }: IPollOptionProps) => {\r\n\r\n    const [previousVoteWidth, setPreviousVoteWidth] = useState<number>(0);\r\n    const [voteWidth, setVoteWidth] = useState<number>(0);\r\n\r\n    const { question, selectedOptionId } = useAppSelector(({ videoData: { question, selectedOptionId } }) => ({ question, selectedOptionId }), shallowEqual);\r\n\r\n    const handleVoteWidth = (vote: number, id: number) => {\r\n        let notUpdateVote = [];\r\n        let sumPercent = 0;\r\n        let sumVotes = handleSumVotes(question);\r\n        if (livePoll()) notUpdateVote = livePoll().polls.filter((poll: any) => poll.qid === question.id && poll.oid === id && poll.sumOptionVotes === vote + 1);\r\n        if (option.id === lastOptionId) {\r\n            if (vote === 0 && notUpdateVote.length === 0) return 0;\r\n            let otherUpdatedVote: any = [];\r\n            question.options.forEach((option: any) => {\r\n                if (option.id !== lastOptionId) {\r\n                    if (livePoll()) otherUpdatedVote = livePoll().polls.filter((poll: any) => poll.qid === question.id && poll.oid === option.id && poll.sumOptionVotes === option.vote + 1);\r\n                    sumPercent = sumPercent + Math.floor(sumVotes ? ((otherUpdatedVote.length > 0 ? option.vote + 1 : option.vote) * 100) / sumVotes : 0);\r\n                    otherUpdatedVote = [];\r\n                }\r\n            });\r\n            return 100 - sumPercent\r\n        } else {\r\n            return sumVotes ? ((notUpdateVote.length > 0 ? vote + 1 : vote) * 100) / sumVotes : 0;\r\n        }\r\n    }\r\n\r\n    useEffect(() => setVoteWidth(handleVoteWidth(option.vote, option.id)), [option.vote, selectedOptionId, sumVotes])\r\n\r\n    return (\r\n        <p\r\n            key={option.id}\r\n            className={`pl-bg-dark-6 dark:pl-bg-dark-2/[0.9] pl-w-full pl-flex pl-flex-col pl-justify-center pl-items-center pl-text-[13px] pl-px-3 pl-h-[45px] pl-rounded-[12px] ${(isVoted(question.id) || !question.can_vote) ? \"pl-cursor-default\" : \"pl-cursor-pointer\"} ${isSelectedOption(question.id, option.id) && \"!pl-bg-purple-light dark:!pl-bg-main-light/[0.7]\"}`}\r\n            onClick={onClick}\r\n        >\r\n            <span className=\"pl-text-[13px] pl-font-medium pl-text-gray-800 dark:pl-text-white\">{option.text}</span>\r\n            {(isVoted(question.id) || !question.can_vote) && <span><CountUp isCounting={true} duration={4} key={voteWidth} start={+Math.floor(previousVoteWidth).toFixed(0)} end={+Math.floor(voteWidth).toFixed(0)} onComplete={() => setPreviousVoteWidth(voteWidth)}/>%</span>}\r\n        </p>\r\n    )\r\n}\r\n\r\nexport default memo(PollOption);"],"mappings":"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","names":["init_esm_shims","Image","useEffect","useRef","useState","init_esm_shims","useState","useEffect","memo","CountUp","shallowEqual","jsx","jsxs","PollOption","option","lastOptionId","sumVotes","onClick","previousVoteWidth","setPreviousVoteWidth","useState","voteWidth","setVoteWidth","question","selectedOptionId","useAppSelector","handleVoteWidth","vote","id","notUpdateVote","sumPercent","handleSumVotes","livePoll","poll","otherUpdatedVote","useEffect","isVoted","isSelectedOption","CountUp","pollOption_default","memo","shallowEqual","dynamic","Fragment","jsx","jsxs","MessageIcon","CloseIcon","Poll","question","params","details","useAppSelector","isComplexPortrait","sumVotes","setSumVotes","useState","handleSumVotes","pollsSlideArrow","setPollsSlideArrow","pollSlideScrollLeft","setPollSlideScrollLeft","showPollPopover","setShowPollPopover","pollsContainerRef","useRef","dispatch","useAppDispatch","useEffect","conditions","seenPoll","setClearPopoversSlice","handleClickOption","id","vote","setSelectedOptionId","livePoll","poll","handleNextPoll","e","handlePrevPoll","clientWidth","scrollWidth","handleClose","sendFluentLog","pollModalCloseLog","isVoted","Image","importImages_default","option","pollOption_default","item","o","poll_default"]}