diff --git a/packages/web/src/appobj/DatabaseAppObject.svelte b/packages/web/src/appobj/DatabaseAppObject.svelte
index 978d8a5db..ba9c0a8dd 100644
--- a/packages/web/src/appobj/DatabaseAppObject.svelte
+++ b/packages/web/src/appobj/DatabaseAppObject.svelte
@@ -417,7 +417,7 @@
onUnpin={isPinned
? () =>
pinnedDatabases.update(list =>
- list.filter(x => x.name != data.name || x.connection?._id != data.connection?._id)
+ list.filter(x => x?.name != data?.name || x?.connection?._id != data?.connection?._id)
)
: null}
/>
diff --git a/packages/web/src/widgets/DatabaseWidget.svelte b/packages/web/src/widgets/DatabaseWidget.svelte
index c64b7ea5a..ad0df4845 100644
--- a/packages/web/src/widgets/DatabaseWidget.svelte
+++ b/packages/web/src/widgets/DatabaseWidget.svelte
@@ -13,6 +13,7 @@
import SqlObjectList from './SqlObjectList.svelte';
import DbKeysTree from './DbKeysTree.svelte';
import SingleConnectionDatabaseList from './SingleConnectionDatabaseList.svelte';
+ import _ from 'lodash';
export let hidden = false;
@@ -39,8 +40,8 @@
name="pinned"
height="15%"
storageName="pinnedItemsWidget"
- skip={!$pinnedDatabases?.length &&
- !$pinnedTables.some(x => x.conid == conid && x.database == $currentDatabase?.name)}
+ skip={!_.compact($pinnedDatabases).length &&
+ !$pinnedTables.some(x => x && x.conid == conid && x.database == $currentDatabase?.name)}
>
diff --git a/packages/web/src/widgets/PinnedObjectsList.svelte b/packages/web/src/widgets/PinnedObjectsList.svelte
index 965196b16..2c7c78f18 100644
--- a/packages/web/src/widgets/PinnedObjectsList.svelte
+++ b/packages/web/src/widgets/PinnedObjectsList.svelte
@@ -9,13 +9,13 @@
const connectionColorFactory = useConnectionColorFactory(3);
$: filteredTables = $pinnedTables.filter(
- x => x.conid == $currentDatabase?.connection?._id && x.database == $currentDatabase?.name
+ x => x?.conid == $currentDatabase?.connection?._id && x?.database == $currentDatabase?.name
);