From 1c3ec66342a76e12c2cfee132479a69f5c6514e0 Mon Sep 17 00:00:00 2001 From: cv <34649812+cpvalente@users.noreply.github.com> Date: Mon, 10 May 2021 22:10:55 +0200 Subject: [PATCH] imrprovement: debounce delete --- .../src/common/components/buttons/DeleteIconBtn.jsx | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/client/src/common/components/buttons/DeleteIconBtn.jsx b/client/src/common/components/buttons/DeleteIconBtn.jsx index eb4fea6b4..193c77a5e 100644 --- a/client/src/common/components/buttons/DeleteIconBtn.jsx +++ b/client/src/common/components/buttons/DeleteIconBtn.jsx @@ -1,15 +1,25 @@ import { IconButton } from '@chakra-ui/button'; +import { useState } from 'react'; import { FiMinus } from 'react-icons/fi'; export default function DeleteIconBtn(props) { const { actionHandler, ...rest } = props; + const [loading, setLoading] = useState(false); + + const handleClick = () => { + setLoading(true); + actionHandler('delete'); + }; + return ( } colorScheme='red' - onClick={() => actionHandler('delete')} + onClick={handleClick} _focus={{ boxShadow: 'none' }} + disabled={loading} + isLoading={loading} {...rest} /> );