MOON
Server: Apache
System: Linux vps.erhabenn.com.br 3.10.0-1160.119.1.el7.tuxcare.els2.x86_64 #1 SMP Mon Jul 15 12:09:18 UTC 2024 x86_64
User: machen (1008)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: /disk001/machen/public_html/WC/static/js/5.d0b58b88.chunk.js.map
{"version":3,"sources":["components/Dashboards/Widgets/TaskDoneBar_ENEVAAAA.jsx"],"names":["TaskDoneBar","props","db","reduxStore","getState","_useState","useState","index","showQuantity","number","finalIndex","dataStructure","_useState2","_slicedToArray","filter","setFilter","_useState3","_useState4","data","setData","_useState5","_useState6","table","setTable","keysLabel","useRef","label","color","filterRef","console","log","hashs","window","location","hash","split","replace","generateColor","name","i","length","charCodeAt","toString","slice","useEffect","Object","keys","tags","current","forEach","item","concat","_toConsumableArray","start","end","timeTasks","modalData","keysLabelArr","startDate","moment","startOf","endDate","endOf","weekStructure","format","planCards","fil","cards","deleted","planCard","_filter$users","_db$cards$planCard","_db$cards$planCard2","result","users","_users","values","user","filterUser","_id","_db$cards$planCard$co","dateCard","date","completed_at","low","_tags","isBetween","_filter$tags","_modalData$monthKey","monthKey","tagsByText","includes","toLowerCase","indexOf","_timeTasks$label","_modalData$label","_modalData$label2","startOfMonth","diff","weekKey","Math","floor","_objectSpread","_defineProperty","translate","updateTaskInfo","load","React","createElement","className","style","width","height","alignSelf","borderRadius","backgroundColor","display","flexFlow","overflow","Header","handleSetSelected","value","handleSetFilter","id","filterConfig","filterItems","tittle","icon","styles","datafilter","indicators","handleModal","handleDatagridTable","handleRemoveObject","edit","handleSetoption","borderBottom","position","flex","fontSize","fontWeight","justifyContent","flexDirection","ResponsiveBar","colors","datum","margin","top","right","bottom","left","innerRadius","padAngle","cornerRadius","activeOuterRadiusOffset","borderWidth","padding","axisLeft","tickSize","tickPadding","tickRotation","v","theme","legend","background","axis","fill","maxHeight","Modal","Legend","map","a","key"],"mappings":"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","file":"static/js/5.d0b58b88.chunk.js","sourcesContent":["import React, { useEffect, useState, useRef } from 'react'\n//COMPONENTS\nimport Legend from '../Legend';\nimport { ResponsiveBar } from '@nivo/bar'\nimport Header from 'components/Dashboards/Header'\nimport './Loader.css';\n\n//REDUX\nimport reduxStore from \"store/\"\nimport moment from \"moment-timezone\"\nimport { translate } from 'functions';\nimport Modal from './Modal';\n\n\n\nconst TaskDoneBar = (props) => {\n\n    const { db } = reduxStore.getState()\n    const [filter, setFilter] = useState({\n        index: 0,\n        showQuantity: 12,\n        number: 12,\n        finalIndex: 12,\n        dataStructure: 'month',\n    })\n    const [data, setData] = useState({\n        \"total\": {\n            \"value\": 0,\n            \"label\": \"Concluidas\",\n            \"color\": \"#5A7F71\",\n            \"id\": \"Concluidas\",\n        }\n    })\n    const [table, setTable] = useState({})\n    const keysLabel = useRef([{ label: 'Concluidas', color: '#5A7F71' }])\n    const filterRef = useRef([])\n    console.log(data)\n\n\n    let hashs = window.location.hash.split(\"/\")\n    hashs[0] = hashs[0].replace('#', '')\n\n    const generateColor = (name) => {\n        let hash = 0;\n        for (let i = 0; i < name.length; i++) {\n            hash += name.charCodeAt(i);\n        }\n        const hexColor = \"#\" + ((hash % 0xFFFFFF) + 0x1000000).toString(16).slice(1, 7);\n        return hexColor;\n    }\n\n    const checkWeekStructure = (start, end) => {\n        console.log(start, end)\n        if (start === end)\n            return true\n        else\n            return false\n\n    }\n\n    useEffect(() => {\n        if (Object.keys(props.filter).length > 0) {\n            setFilter(props.filter)\n        }\n    }, [props.filter]);\n\n    useEffect(() => {\n        console.log(filter)\n        if (filter.tags) {\n            filterRef.current = []\n            filter.tags.forEach((item) => {\n                filterRef.current = [...filterRef.current, item.label];\n            })\n        }\n    }, [filter]);\n\n\n    useEffect(() => {\n        let timeTasks = {};\n        let modalData = {}\n        let keysLabelArr = []\n        const startDate = filter.startDate ? moment(filter.startDate * 1000) : moment().startOf('year');\n        const endDate = filter.endDate ? moment(filter.endDate * 1000) : moment().endOf('year');\n        const weekStructure = checkWeekStructure(startDate.format('MMMM'), endDate.format('MMMM'))\n        console.log(weekStructure)\n\n        const updateTaskInfo = (dateCard, item) => {\n            const label = item.label\n            const monthKey = dateCard.date.format('MMMM');\n            const startOfMonth = moment(dateCard.date).startOf('month');\n            const diff = moment(dateCard.date).diff(startOfMonth, 'days');\n            const weekKey = Math.floor(diff / 7) + 1;\n\n            console.log(weekKey)\n            timeTasks = {\n                ...timeTasks,\n                [label]: {\n                    ...timeTasks[label] || {},\n                    \"id\": label,\n                    \"color\": item?.color || generateColor(label),\n                    \"label\": label,\n                    \"value\": (timeTasks[label]?.[\"value\"] || 0) + 1,\n                }\n            };\n            modalData = {\n                ...modalData,\n                [label]: {\n                    ...modalData[label] || {},\n                    \"value\": (modalData[label]?.[\"value\"] || 0) + 1,\n                    \"label\": label,\n                    [weekStructure ? translate(`$__Semana `) + weekKey : translate(`$__${monthKey}`)]: (modalData[label]?.[weekStructure ? translate(`$__Semana `) + weekKey : translate(`$__${monthKey}`)] || 0) + 1,\n                }\n            }\n            keysLabelArr = {\n                ...keysLabelArr,\n                [label]: {\n                    label: label,\n                    color: item?.color || generateColor(label)\n                }\n            }\n        };\n\n        if (props.planCards) {\n            Object.keys(props.planCards).filter((fil) => !db.cards[fil].deleted).forEach(planCard => {\n                let result = filter?.users?.length > 0 ? false : true\n                if (filter.users && Object.keys(db.cards[planCard]?._users).length > 0) {\n                    Object.values(db.cards[planCard]?._users).forEach((user) => {\n                        filter.users.forEach((filterUser) => {\n                            if (user._id === filterUser)\n                                result = true\n                        })\n                    })\n                }\n                if (result) {\n                    const dateCard = {\n                        date: moment(db.cards[planCard].completed_at?.low * 1000),\n                        tags: db.cards[planCard]._tags\n                    };\n\n                    if (dateCard.date.isBetween(startDate, endDate, null, '[]')) {\n                        const monthKey = dateCard.date.format('MMMM');\n                        if (filter?.tags?.length > 0 || filter.tagsByText) {\n                            dateCard.tags\n                                .filter(item =>\n                                    (\n                                        filter.tags\n                                        && filter.tags.length > 0\n                                        && item.label\n                                        && filterRef.current.includes(item.label)\n                                    )\n                                    ||\n                                    (\n                                        filter.tagsByText\n                                        && item.label\n                                        && item.label.toLowerCase().indexOf(filter.tagsByText.toLowerCase()) > -1\n                                    )\n                                )\n                                .forEach(item => {\n                                    updateTaskInfo(dateCard, item);\n                                });\n                            keysLabel.current = Object.values(keysLabelArr)\n                        } else {\n                            timeTasks = {\n                                ...timeTasks,\n                                \"total\": {\n                                    ...timeTasks[\"total\"] || {},\n                                    \"value\": timeTasks && timeTasks[\"total\"] && timeTasks[\"total\"][\"value\"] ? timeTasks[\"total\"][\"value\"] + 1 : 1,\n                                    \"label\": \"Concluidas\",\n                                    \"color\": \"#5A7F71\",\n                                    \"id\": \"Concluidas\",\n                                }\n                            }\n                            modalData = {\n                                ...modalData,\n                                [translate(\"$__monthKey\")]: {\n                                    ...modalData[\"total\"] || {},\n                                    \"value\": (modalData[monthKey]?.[\"value\"] || 0) + 1,\n                                    \"label\": \"Concluidas\",\n                                }\n                            }\n                            keysLabel.current = [{ label: 'Concluidas', color: '#5A7F71' }]\n                        }\n                    }\n                }\n            })\n\n\n            if (data !== timeTasks) {\n                setData(Object.values(timeTasks));\n                setTable(modalData)\n            }\n        }\n        // eslint-disable-next-line react-hooks/exhaustive-deps\n    }, [props.planCards, props.load, filter]);\n\n    const handleModal = (data) => {\n\n    }\n\n    return (\n        <div className='box' style={{ width: '100%', height: '100%', alignSelf: 'center', borderRadius: '5px', backgroundColor: 'transparent', display: 'flex', flexFlow: 'column', overflow: 'visible' }}>\n            <Header\n                handleSetSelected={(value) => {\n                    setFilter({ ...filter, ...value })\n                    props.handleSetFilter({ ...filter, ...value, id: props.id })\n                }}\n                filterConfig={{ filterItems: ['date', 'users', 'tags', 'tagsByText'] }}\n                tittle={translate(\"$__\" + props.tittle)}\n                icon={props.icon}\n                styles={props.styles}\n                datafilter={true}\n                indicators={filter ? filter : null}\n                handleModal={() => {\n                    handleModal(data)\n                    props.handleDatagridTable()\n                }}\n                table={true}\n                handleRemoveObject={() => props.handleRemoveObject(props.id)}\n                edit={props.edit}\n                handleSetoption={(value) => {\n                    setFilter({ ...value })\n                    props.handleSetFilter({ ...filter, ...value, id: props.id })\n                }}\n            />\n            <div style={{ borderBottom: '1px solid #D3D3D3', width: '100%' }}></div>\n            <div style={{}} >\n            </div>\n            <div style={{ position: 'relative', flex: '1 1 auto', fontSize: '16px' }}>\n                <div style={{ width: '100%', height: '100%', position: 'absolute', fontWeight: 'lighter', backgroundColor: '#f5f5f5' }}>\n                    {(!props.load) ?\n                        <div className='component' style={{ width: '100%', height: '100%', display: 'flex', flexDirection: 'column' }}>\n                            <div style={{ width: '100%', flex: 1, position: 'relative' }}>\n                                <div style={{ width: '100%', height: '100%', position: 'absolute' }}>\n                                    <ResponsiveBar\n                                        data={data}\n                                        colors={{ datum: 'data.color' }}\n                                        margin={{ top: 35, right: 40, bottom: 35, left: 40 }}\n                                        innerRadius={0}\n                                        padAngle={1.7}\n                                        cornerRadius={3}\n                                        activeOuterRadiusOffset={8}\n                                        borderWidth={1}\n                                        padding={data.length === 1 ? 0.35 : 0.1}\n                                        axisLeft={{\n                                            tickSize: 5,\n                                            tickPadding: 5,\n                                            tickRotation: 0,\n                                            format: (v) => v % 1 === 0 ? v : ''\n                                        }}\n                                        theme={{\n                                            fontSize: '16px',\n                                            fontWeight: 'bold',\n                                            legend: false,\n                                            background: 'transparent',\n                                            axis: {\n                                                \"ticks\": {\n                                                    \"text\": {\n                                                        fill: 'rgba(0, 0, 0, 0.50)',\n                                                        \"fontSize\": 14,\n                                                        //cor dos numeros\n                                                    },\n                                                }\n                                            },\n                                        }}\n                                    />\n                                </div>\n                            </div>\n                            {props.filter.table && <div style={{ maxHeight: '50%', overflow: 'scroll' }} >\n                                <Modal data={Object.values(table)} />\n                            </div>}\n                        </div> : <div style={{ width: '100%', height: '100%', display: 'flex', justifyContent: 'center' }}>\n                            <div style={{ alignSelf: 'center' }}>  <div className=\"loader\"></div></div>\n                        </div>}\n                </div>\n            </div>\n            <div style={{ height: '15%', maxHeight: '60px', display: 'flex', backgroundColor: 'white' }}>\n                <Legend\n                    legend={[...keysLabel.current.map((a, i) => {\n                        return {\n                            key: i,\n                            color: a.color,\n                            label: a.label\n                        }\n                    })]} />\n            </div>\n        </div >\n    )\n}\n\nexport default TaskDoneBar\n"],"sourceRoot":""}