From 7742228eca1ce3e0bd157c4bacfe9e7b785b436c Mon Sep 17 00:00:00 2001 From: sara-pervana Date: Mon, 29 Jan 2024 19:28:40 +0100 Subject: [PATCH] added a bit of time delay for register/deregister and also a confirm button for delete --- pkgs/clan-cli/clan_cli/emulate_fastapi.py | 4 ++ pkgs/ui/src/app/client/client.tsx | 17 +----- .../src/components/entity_actions/index.tsx | 53 ++++++++++++++++++- 3 files changed, 56 insertions(+), 18 deletions(-) diff --git a/pkgs/clan-cli/clan_cli/emulate_fastapi.py b/pkgs/clan-cli/clan_cli/emulate_fastapi.py index ae50081..ba3da48 100644 --- a/pkgs/clan-cli/clan_cli/emulate_fastapi.py +++ b/pkgs/clan-cli/clan_cli/emulate_fastapi.py @@ -106,11 +106,13 @@ async def consume_service_from_other_entity_c1() -> HTMLResponse: @app_c1.get("/v1/print_daemon1/register", response_class=JSONResponse) async def register_c1() -> JSONResponse: + time.sleep(2) return JSONResponse(content={"status": "registered"}, status_code=200) @app_c1.get("/v1/print_daemon1/deregister", response_class=JSONResponse) async def deregister_c1() -> JSONResponse: + time.sleep(2) return JSONResponse(content={"status": "deregistered"}, status_code=200) @@ -130,11 +132,13 @@ async def consume_service_from_other_entity_c2() -> HTMLResponse: @app_c2.get("/v1/print_daemon2/register", response_class=JSONResponse) async def register_c2() -> JSONResponse: + time.sleep(2) return JSONResponse(content={"status": "registered"}, status_code=200) @app_c2.get("/v1/print_daemon2/deregister", response_class=JSONResponse) async def deregister_c2() -> JSONResponse: + time.sleep(2) return JSONResponse(content={"status": "deregistered"}, status_code=200) diff --git a/pkgs/ui/src/app/client/client.tsx b/pkgs/ui/src/app/client/client.tsx index 57e9a97..a3f2d9c 100644 --- a/pkgs/ui/src/app/client/client.tsx +++ b/pkgs/ui/src/app/client/client.tsx @@ -190,7 +190,7 @@ export default function Client() { ], }} /> -
+

Service Consumer View

); } - -const ClientTable = () => { - return ( -
- {/*

Client View

- */} -
- ); -}; diff --git a/pkgs/ui/src/components/entity_actions/index.tsx b/pkgs/ui/src/components/entity_actions/index.tsx index 719da6f..c7bfeb7 100644 --- a/pkgs/ui/src/components/entity_actions/index.tsx +++ b/pkgs/ui/src/components/entity_actions/index.tsx @@ -5,6 +5,11 @@ import { Alert, AlertColor, CircularProgress, + Dialog, + DialogTitle, + DialogContent, + DialogContentText, + DialogActions, } from "@mui/material"; import { useState } from "react"; import { deleteEntity } from "@/api/entities/entities"; @@ -37,6 +42,7 @@ const EntityActions = ({ endpointData, rowData }: Props) => { const [loadingDeRegister, setLoadingDeRegister] = useState(false); const [loadingDelete, setLoadingDelete] = useState(false); + const [confirmDelete, setConfirmDelete] = useState(false); if (registerData) console.log("Register Data in state", registerData); if (registerError) console.error("Register Error in state", registerError); @@ -66,6 +72,7 @@ const EntityActions = ({ endpointData, rowData }: Props) => { }); } finally { setLoadingDelete(false); + closeDeleteConfirmation(); } }; @@ -89,10 +96,20 @@ const EntityActions = ({ endpointData, rowData }: Props) => { .then((response) => { setRegisterData(response.data); console.log("I got the data from register: ", response.data); + setSnackbar({ + open: true, + message: "Registered successfully!", + severity: "success", + }); }) .catch((error) => { console.error("Error happened during register: ", error); setRegisterError(error); + setSnackbar({ + open: true, + message: error, + severity: "error", + }); }) .finally(() => { setLoadingRegister(false); @@ -114,10 +131,20 @@ const EntityActions = ({ endpointData, rowData }: Props) => { .then((response) => { setDeRegisterData(response.data); console.log("I got the data from deregister: ", response.data); + setSnackbar({ + open: true, + message: "De-Registered successfully!", + severity: "success", + }); }) .catch((error) => { console.error("Error happened during deregister: ", error); setDeRegisterError(error); + setSnackbar({ + open: true, + message: error, + severity: "error", + }); }) .finally(() => { setLoadingDeRegister(false); @@ -128,6 +155,14 @@ const EntityActions = ({ endpointData, rowData }: Props) => { setSnackbar(SNACKBAR_DEFAULT); }; + const openDeleteConfirmation = () => { + setConfirmDelete(true); + }; + + const closeDeleteConfirmation = () => { + setConfirmDelete(false); + }; + return ( <>
@@ -154,13 +189,27 @@ const EntityActions = ({ endpointData, rowData }: Props) => { )}
+ + Delete Entity Confirmation + + + Are you sure you want to delete this entity? + + + + + + +