From a6abcd660337709b0f8a32983ace8a64c2b235b0 Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Wed, 17 Jun 2026 15:59:59 -0400 Subject: [PATCH] feat(data-stores): auto-load on mount, default sort updated_on DESC, fix sort toggle MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - $effect auto-searches once $ae_api is ready (no manual Search click needed) - Default sort: updated_on DESC (most recently changed first) - toggle_sort: remove searched guard — column headers always trigger search - Remove stale "press Search to begin" empty state (no longer relevant) Co-Authored-By: Claude Sonnet 4.6 --- src/routes/core/data_stores/+page.svelte | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/routes/core/data_stores/+page.svelte b/src/routes/core/data_stores/+page.svelte index 4e6d7f78..340ce4b5 100644 --- a/src/routes/core/data_stores/+page.svelte +++ b/src/routes/core/data_stores/+page.svelte @@ -40,8 +40,8 @@ let qry_for_id = $state(''); let qry_enabled = $state<'all' | 'enabled' | 'not_enabled'>('all'); let page_limit = $state(50); let page_offset = $state(0); -let sort_col = $state('code'); -let sort_dir = $state<'ASC' | 'DESC'>('ASC'); +let sort_col = $state('updated_on'); +let sort_dir = $state<'ASC' | 'DESC'>('DESC'); // ── Results ─────────────────────────────────────────────────────────────────── let results: ae_DataStore[] = $state([]); @@ -62,6 +62,12 @@ let rename_loading = $state(false); let rename_apply_status = $state<'idle' | 'applying' | 'done' | 'error'>('idle'); let rename_applied = $state(0); +// Auto-load on first render once the API config is available +$effect(() => { + if (!$ae_api?.base_url || searched || loading) return; + untrack(() => do_search()); +}); + // ── Search ──────────────────────────────────────────────────────────────────── async function do_search(reset = true) { if (reset) page_offset = 0; @@ -121,7 +127,7 @@ function toggle_sort(col: string) { sort_col = col; sort_dir = 'ASC'; } - if (searched) do_search(false); + do_search(false); } // ── Open edit / new ─────────────────────────────────────────────────────────── @@ -568,18 +574,12 @@ function content_preview(ds: ae_DataStore): string { - {:else if searched && !loading} + {:else if !loading}

No data stores found

Try different filters, or create one above.

- - {:else if !searched} -
- -

Enter filters and press Search, or just press Search to list all.

-
{/if}