From bb552a57d22460b671182c74ec0a800b27545ec9 Mon Sep 17 00:00:00 2001 From: janvi01 Date: Wed, 1 Nov 2023 16:17:48 +0530 Subject: [PATCH] Added confirmation for bulk deletion of rows --- src/components/TableToolbar/TableToolbar.tsx | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/components/TableToolbar/TableToolbar.tsx b/src/components/TableToolbar/TableToolbar.tsx index 77eb8749..2adb90f1 100644 --- a/src/components/TableToolbar/TableToolbar.tsx +++ b/src/components/TableToolbar/TableToolbar.tsx @@ -26,6 +26,8 @@ import { userRolesAtom, compatibleRowyRunVersionAtom, rowyRunModalAtom, + altPressAtom, + confirmDialogAtom, } from "@src/atoms/projectScope"; import { tableScope, @@ -91,6 +93,8 @@ function RowSelectedToolBar({ }) { const [serverDocCount] = useAtom(serverDocCountAtom, tableScope); const deleteRow = useSetAtom(deleteRowAtom, tableScope); + const [altPress] = useAtom(altPressAtom, projectScope); + const confirm = useSetAtom(confirmDialogAtom, projectScope); const handleDelete = async () => { await deleteRow({ path: Object.keys(selectedRows) }); @@ -107,7 +111,20 @@ function RowSelectedToolBar({ variant="outlined" startIcon={} color="error" - onClick={handleDelete} + onClick={ + altPress + ? handleDelete + : () => { + confirm({ + title: `Delete ${ + Object.values(selectedRows).length + } of ${serverDocCount} selected rows?`, + confirm: "Delete", + confirmColor: "error", + handleConfirm: handleDelete, + }); + } + } > Delete