diff --git a/src/routes/events/[event_id]/(launcher)/menu_session_list.svelte b/src/routes/events/[event_id]/(launcher)/menu_session_list.svelte index 756346ff..69af46dc 100644 --- a/src/routes/events/[event_id]/(launcher)/menu_session_list.svelte +++ b/src/routes/events/[event_id]/(launcher)/menu_session_list.svelte @@ -79,7 +79,6 @@ import { ae_snip, ae_loc, ae_sess, - ae_api, ae_trig, slct, slct_trigger @@ -90,7 +89,6 @@ import { events_slct, events_trigger } from '$lib/stores/ae_events_stores'; -import { events_func } from '$lib/ae_events/ae_events_functions'; import { CalendarCheck, CalendarDays, @@ -142,26 +140,26 @@ $effect(() => { slct__event_session_id = event_session_id; } - // 3. Background Data Fetch - handle_load_ae_obj_id__event_session(event_session_id); - - // 4. Remote Control Sync + // 3. Remote Control Sync if ($events_loc.launcher.controller == 'local_push') { $events_sess.launcher.controller_cmd = `ae_load:event_session=${event_session_id}`; $events_sess.launcher.controller_trigger_send = true; } - // 5. URL Navigation + // 4. URL Navigation — the single load fires from +page.ts when the URL updates. + // Assigning the goto promise to ae_promises drives the #await spinner in the template. + loading__session_id_status = 'loading'; let new_url_obj = new URL(page.url); new_url_obj.searchParams.set('session_id', event_session_id); if (log_lvl) console.log(`[UI Trace] Initiating SvelteKit goto...`); - goto(new_url_obj.toString(), { + ae_promises.slct__event_session_id = goto(new_url_obj.toString(), { replaceState: false, noScroll: true, keepFocus: true }).then(() => { + loading__session_id_status = false; if (log_lvl) console.log( `🏁 [Trace] Navigation Roundtrip: ${(performance.now() - start).toFixed(2)}ms` @@ -170,45 +168,6 @@ $effect(() => { }); } }); - -function handle_load_ae_obj_id__event_session(event_session_id: any) { - const start = performance.now(); - if (log_lvl) { - console.log( - `[UI Trace] handle_load_ae_obj_id__event_session: Calling library for id=${event_session_id}` - ); - } - - loading__session_id_status = 'loading'; - - ae_promises.slct__event_session_id = events_func - .load_ae_obj_id__event_session({ - api_cfg: $ae_api, - event_session_id: event_session_id, - inc_file_li: true, - inc_all_file_li: true, - inc_presentation_li: true, - inc_presenter_li: true, - log_lvl: log_lvl - }) - .then(async (load_results) => { - if (log_lvl) - console.log( - `[UI Trace] handle_load_ae_obj_id: Library returned results in ${(performance.now() - start).toFixed(2)}ms.` - ); - - if (load_results) { - $events_slct.event_session_obj = load_results; - $events_slct.event_file_obj_li = - load_results.event_file_li ?? []; - $events_slct.event_presentation_obj_li = - load_results.event_presentation_li ?? []; - } - }) - .finally(() => { - loading__session_id_status = false; - }); -}