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}