From 6f6f98f689b28b6661ea8a3df7625c401aa9dcc4 Mon Sep 17 00:00:00 2001 From: Nilesh Date: Wed, 15 Jan 2025 05:42:13 +0530 Subject: [PATCH] fix: incorrect copied state useClipboard (#6585) --- packages/volto/news/6585.bugfix | 1 + packages/volto/src/hooks/clipboard/useClipboard.js | 10 +++++++--- 2 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 packages/volto/news/6585.bugfix diff --git a/packages/volto/news/6585.bugfix b/packages/volto/news/6585.bugfix new file mode 100644 index 0000000000..5dbbf2f113 --- /dev/null +++ b/packages/volto/news/6585.bugfix @@ -0,0 +1 @@ +fix(useClipboard): Do not have a pending promise in a boolean state @nileshgulia1 \ No newline at end of file diff --git a/packages/volto/src/hooks/clipboard/useClipboard.js b/packages/volto/src/hooks/clipboard/useClipboard.js index eaabbf7a15..2d619fbe9b 100644 --- a/packages/volto/src/hooks/clipboard/useClipboard.js +++ b/packages/volto/src/hooks/clipboard/useClipboard.js @@ -13,9 +13,13 @@ export default function useClipboard(clipboardText = '') { } }; - const copyAction = useCallback(() => { - const copiedString = copyToClipboard(stringToCopy.current); - setCopied(copiedString); + const copyAction = useCallback(async () => { + try { + await copyToClipboard(stringToCopy.current); + setCopied(true); + } catch (error) { + setCopied(false); + } }, [stringToCopy]); useEffect(() => {