diff --git a/packages/web/src/widgets/DbKeysSubTree.svelte b/packages/web/src/widgets/DbKeysSubTree.svelte
index db4ca6c27..594501699 100644
--- a/packages/web/src/widgets/DbKeysSubTree.svelte
+++ b/packages/web/src/widgets/DbKeysSubTree.svelte
@@ -21,18 +21,41 @@
export let filter;
let reloadToken2 = 0;
-
let maxShowCount = SHOW_INCREMENT;
+ let loading = true;
+ let items = [];
- // $: items = useDatabaseKeys({ conid, database, root, reloadToken });
+ async function loadData() {
+ loading = true;
+ const result = await apiCall('database-connections/load-keys', {
+ conid,
+ database,
+ root,
+ filter,
+ reloadToken,
+ reloadToken2,
+ limit: maxShowCount + 1,
+ });
+ items = result;
+ loading = false;
+ }
+
+ $: {
+ conid;
+ database;
+ root;
+ filter;
+ reloadToken;
+ reloadToken2;
+ maxShowCount;
+ loadData();
+ }
-{#await apiCall( 'database-connections/load-keys', { conid, database, root, filter, reloadToken, reloadToken2, limit: maxShowCount + 1 } )}
+{#if loading && items.length == 0}
-{:then items}
- {@const itemsSorted = _.sortBy(items || [], 'text')}
-
- {#each itemsSorted.slice(0, maxShowCount) as item}
+{:else}
+ {#each items.slice(0, maxShowCount) as item}
{/each}
- {#if itemsSorted.length > maxShowCount}
+ {#if loading}
+
+ {:else if items.length > maxShowCount}
{/if}
-{/await}
+{/if}