From b76eb655b24b6fce9ffcaf558177225afc9564cb Mon Sep 17 00:00:00 2001 From: anovazzi1 Date: Thu, 8 Feb 2024 14:01:52 -0300 Subject: [PATCH] Refactor API functions and update global variables types --- src/frontend/src/controllers/API/index.ts | 62 ++++++++----------- .../types/zustand/globalVariables/index.ts | 8 ++- 2 files changed, 30 insertions(+), 40 deletions(-) diff --git a/src/frontend/src/controllers/API/index.ts b/src/frontend/src/controllers/API/index.ts index 970500efe..7b960547c 100644 --- a/src/frontend/src/controllers/API/index.ts +++ b/src/frontend/src/controllers/API/index.ts @@ -851,47 +851,35 @@ export async function requestLogout() { } } -export async function getGlobalVariables(): Promise<{ [key: string]: string }> { - // mocked for now but will eventually be a real API call - const globalVariables = window.sessionStorage.getItem("globalVariables"); - return globalVariables ? JSON.parse(globalVariables) : {}; +export async function getGlobalVariables(): Promise<{ + [key: string]: { id: string; provider: string }; +}> { + return (await api.get(`${BASE_URL_API}credentials/`)).data; } -export async function registerGlobalVariable(name: string, value: string) { - // mocked for now but will eventually be a real API call - const globalVariables = window.sessionStorage.getItem("globalVariables"); - const parsedGlobalVariables = globalVariables - ? JSON.parse(globalVariables) - : {}; - parsedGlobalVariables[name] = value; - window.sessionStorage.setItem( - "globalVariables", - JSON.stringify(parsedGlobalVariables) - ); +export async function registerGlobalVariable( + name: string, + value: string, + provider?: string +) { + return await api.post(`${BASE_URL_API}credentials/`, { + name, + value, + provider, + }); } -export async function deleteGlobalVariable(name: string) { - // mocked for now but will eventually be a real API call - const globalVariables = window.sessionStorage.getItem("globalVariables"); - const parsedGlobalVariables = globalVariables - ? JSON.parse(globalVariables) - : {}; - delete parsedGlobalVariables[name]; - window.sessionStorage.setItem( - "globalVariables", - JSON.stringify(parsedGlobalVariables) - ); +export async function deleteGlobalVariable(id: string) { + api.delete(`${BASE_URL_API}credentials/${id}`); } -export async function updateGlobalVariable(name: string, value: string) { - // mocked for now but will eventually be a real API call - const globalVariables = window.sessionStorage.getItem("globalVariables"); - const parsedGlobalVariables = globalVariables - ? JSON.parse(globalVariables) - : {}; - parsedGlobalVariables[name] = value; - window.sessionStorage.setItem( - "globalVariables", - JSON.stringify(parsedGlobalVariables) - ); +export async function updateGlobalVariable( + name: string, + value: string, + id: string +) { + api.patch(`${BASE_URL_API}credentials/${id}`, { + name, + value, + }); } diff --git a/src/frontend/src/types/zustand/globalVariables/index.ts b/src/frontend/src/types/zustand/globalVariables/index.ts index 5e8808d94..ed81caf1c 100644 --- a/src/frontend/src/types/zustand/globalVariables/index.ts +++ b/src/frontend/src/types/zustand/globalVariables/index.ts @@ -1,7 +1,9 @@ export type GlobalVariablesStore = { globalVariablesEntries: Array; - globalVariables: { [key: string]: string }; - setGlobalVariables: (variables: { [key: string]: string }) => void; - addGlobalVariable: (key: string, value: string) => void; + globalVariables: { [key: string]: { id: string; provider: string } }; + setGlobalVariables: (variables: { + [key: string]: { id: string; provider: string }; + }) => void; + addGlobalVariable: (key: string, value: string, provider?: string) => void; removeGlobalVariable: (key: string) => void; };