From 51bb2b2a1ed47149e2a68a1736e022c18b1ae726 Mon Sep 17 00:00:00 2001 From: Francisco Pessano Date: Wed, 26 Oct 2022 20:02:26 -0300 Subject: [PATCH] refactor of the solution --- .../ClockifyTaskForm/ClockifyTaskForm.jsx | 27 +++++++------------ 1 file changed, 9 insertions(+), 18 deletions(-) diff --git a/src/pages/Main/ClockifyTaskForm/ClockifyTaskForm.jsx b/src/pages/Main/ClockifyTaskForm/ClockifyTaskForm.jsx index 114943e..cdb8eb5 100644 --- a/src/pages/Main/ClockifyTaskForm/ClockifyTaskForm.jsx +++ b/src/pages/Main/ClockifyTaskForm/ClockifyTaskForm.jsx @@ -102,9 +102,7 @@ const ClockifyTaskForm = ({timerOn, setTimerOn, signedIn, apiKey, setApiKey, tas changeClockifyData({workspaces: workspaces}) } } - const getProjects = async (e) => { - try { const request = { method: "GET", @@ -115,28 +113,22 @@ const ClockifyTaskForm = ({timerOn, setTimerOn, signedIn, apiKey, setApiKey, tas } const response = await fetch(`https://api.clockify.me/api/v1/workspaces/${e}/projects`, request) const data = await response.json() - - data.forEach((project, index) => { - if (project.clientName !== "" && !project.archived) { - if (!data.clients) { - data.clients = {[project.clientName]: [project]} - } else { - if (!data.clients[project.clientName]) { - data.clients[project.clientName] = [] - } - data.clients[project.clientName].push(project) + data.clients = {} + data.forEach((project) => { + if (project.clientName.length && !project.archived) { + const isClientDefined = !!data.clients[project.clientName] + if (!isClientDefined) { + data.clients[project.clientName] = [] } - project.archived = true + data.clients[project.clientName].push(project) + project.hide = true } }) - changeClockifyData({projects: data}) - } catch (error) { console.log(error); } } - async function getTasks(projectID) { if (projectID === "0") { @@ -228,9 +220,8 @@ const ClockifyTaskForm = ({timerOn, setTimerOn, signedIn, apiKey, setApiKey, tas { clockifyData.projects && clockifyData.projects.map((project) => ( - !project.archived ? + !project.archived && !project.hide && - : null )) } {