From f7343fd4fd64412ea2b223feda6422c2055a5a86 Mon Sep 17 00:00:00 2001
From: Lim Chee Aun
Date: Wed, 16 Aug 2023 16:39:22 +0800
Subject: [PATCH] Check for no shortcuts cases
---
src/components/shortcuts-settings.jsx | 33 ++++++++++++++++-----------
1 file changed, 20 insertions(+), 13 deletions(-)
diff --git a/src/components/shortcuts-settings.jsx b/src/components/shortcuts-settings.jsx
index e93f1437..efa06e38 100644
--- a/src/components/shortcuts-settings.jsx
+++ b/src/components/shortcuts-settings.jsx
@@ -680,11 +680,13 @@ function ShortcutForm({
}
function ImportExport({ shortcuts, onClose }) {
- const shortcutsStr = useMemo(
- () =>
- compressToEncodedURIComponent(JSON.stringify(shortcuts.filter(Boolean))),
- [shortcuts],
- );
+ const shortcutsStr = useMemo(() => {
+ if (!shortcuts) return '';
+ if (!shortcuts.filter(Boolean).length) return '';
+ return compressToEncodedURIComponent(
+ JSON.stringify(shortcuts.filter(Boolean)),
+ );
+ }, [shortcuts]);
const [importShortcutStr, setImportShortcutStr] = useState('');
const [importUIState, setImportUIState] = useState('default');
const parsedImportShortcutStr = useMemo(() => {
@@ -901,6 +903,7 @@ function ImportExport({ shortcuts, onClose }) {
value={shortcutsStr}
readOnly
onClick={(e) => {
+ if (!e.target.value) return;
e.target.select();
// Copy url to clipboard
try {
@@ -917,6 +920,7 @@ function ImportExport({ shortcuts, onClose }) {
-
-
- Raw Shortcuts JSON
-
-
-
+ {!!shortcutsStr && (
+
+
+ Raw Shortcuts JSON
+
+
+
+ )}