diff --git a/src/app/perfil/[id]/components/ProfileResources.js b/src/app/perfil/[id]/components/ProfileResources.js index 5b4bcbd429e2e5c0478174b251b0174a3ee93d76..343fc4b6506bafb106e9d3bae6eb3c6d337ac9a9 100644 --- a/src/app/perfil/[id]/components/ProfileResources.js +++ b/src/app/perfil/[id]/components/ProfileResources.js @@ -15,6 +15,8 @@ import Loading from "@/app/components/Loading"; * */ export default function ProfileResources({ id, idLogin }) { + //Concateno tanto os arrays de recursos em homologação quanto aceitos + const [uniqueResources, setUniqueResources] = useState([]) const [resources, setResources] = useState([]) const [homologaResources, setHomologaResources] = useState([]) const token = getStoredValue("access_token") @@ -48,6 +50,7 @@ export default function ProfileResources({ id, idLogin }) { .catch((error) => { console.error(error); }); + }; const fetchSubmissions = async (id) => { @@ -73,7 +76,7 @@ export default function ProfileResources({ id, idLogin }) { fetchLearningObjects(id); //só aparece os recursos em homologação se o perfil acessado for o mesmo do logado - if (idLogin === id) fetchSubmissions(id); + if (idLogin === id) fetchSubmissions(id); }, [id, numberCards, token, client, uid, expiry, idLogin]); @@ -85,6 +88,20 @@ export default function ProfileResources({ id, idLogin }) { setTotalCount(resourcesCount + homologaCount) }, [resourcesCount, homologaCount]) + useEffect(() => { + // Remove os itens duplicados - Set é uma estrutura de dados + // que não aceita repetição + if (resources.length > 0 || homologaResources.length > 0) { + const unificado = [...resources, ...homologaResources]; + const remove_duplicates = [... new Set (unificado)] + setUniqueResources(remove_duplicates); + } + }, [resources, homologaResources]); + + + console.log ("Recursos: ", resources) + console.log ("Homologados: ", homologaResources) + console.log ("Unificado: ", uniqueResources) return ( <>