From c5bfc140afa3d91d924865b8803540ca7d3e99aa Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Tue, 10 Feb 2026 19:12:55 -0500 Subject: [PATCH] fix(launcher): resolve 'download' filename bug and refactor data_url to global page state - Updated 'handle_open_file' in launcher_file_cont.svelte to correctly pass filename to API. - Fixed WebSocket ae_download command in launcher layout to include filename. - Implemented a safety net in api_get_object.ts to extract filename from params if missing. - Added 'download' attribute to Hosted Files download button for direct links. - Refactored launcher menu components to use Svelte 5 global 'page' state instead of obsolete 'data_url' prop. --- src/lib/ae_api/api_get_object.ts | 4 ++++ .../ae_comp__hosted_files_download_button.svelte | 1 + .../events/[event_id]/(launcher)/+layout.svelte | 6 +++--- .../[event_id]/(launcher)/launcher/+layout.svelte | 1 + .../(launcher)/launcher_file_cont.svelte | 2 ++ .../[event_id]/(launcher)/launcher_menu.svelte | 6 ------ .../(launcher)/menu_location_list.svelte | 14 +++++++------- .../[event_id]/(launcher)/menu_session_list.svelte | 6 ++++-- 8 files changed, 22 insertions(+), 18 deletions(-) diff --git a/src/lib/ae_api/api_get_object.ts b/src/lib/ae_api/api_get_object.ts index 95d36a4d..7c925f74 100644 --- a/src/lib/ae_api/api_get_object.ts +++ b/src/lib/ae_api/api_get_object.ts @@ -57,6 +57,10 @@ export const get_object = async function get_object({ return false; } + if (!filename && params.filename) { + filename = params.filename; + } + const url = new URL(endpoint, api_cfg['base_url']); Object.keys(params).forEach((key) => url.searchParams.append(key, params[key])); diff --git a/src/lib/ae_core/ae_comp__hosted_files_download_button.svelte b/src/lib/ae_core/ae_comp__hosted_files_download_button.svelte index 2cf64539..f33a442c 100644 --- a/src/lib/ae_core/ae_comp__hosted_files_download_button.svelte +++ b/src/lib/ae_core/ae_comp__hosted_files_download_button.svelte @@ -280,6 +280,7 @@ {#if show_direct_download} diff --git a/src/routes/events/[event_id]/(launcher)/+layout.svelte b/src/routes/events/[event_id]/(launcher)/+layout.svelte index fab43c0f..8fcaab3d 100644 --- a/src/routes/events/[event_id]/(launcher)/+layout.svelte +++ b/src/routes/events/[event_id]/(launcher)/+layout.svelte @@ -4,8 +4,8 @@ * Root layout for the launcher area. * Ensures background sync runs globally regardless of active tab. */ - import { ae_loc } from '$lib/stores/ae_stores'; - import LauncherBackgroundSync from './launcher_background_sync.svelte'; + // import { ae_loc } from '$lib/stores/ae_stores'; + import Launcher_Background_Sync from './launcher_background_sync.svelte'; interface Props { children?: import('svelte').Snippet; @@ -15,7 +15,7 @@ - + {@render children?.()} diff --git a/src/routes/events/[event_id]/(launcher)/launcher/+layout.svelte b/src/routes/events/[event_id]/(launcher)/launcher/+layout.svelte index 06116508..6a7811d6 100644 --- a/src/routes/events/[event_id]/(launcher)/launcher/+layout.svelte +++ b/src/routes/events/[event_id]/(launcher)/launcher/+layout.svelte @@ -272,6 +272,7 @@ filename: obj_filename, key: $ae_api.account_id }, + filename: obj_filename, return_blob: true, auto_download: true, log_lvl: 1 diff --git a/src/routes/events/[event_id]/(launcher)/launcher_file_cont.svelte b/src/routes/events/[event_id]/(launcher)/launcher_file_cont.svelte index e4072e43..0e127cf1 100644 --- a/src/routes/events/[event_id]/(launcher)/launcher_file_cont.svelte +++ b/src/routes/events/[event_id]/(launcher)/launcher_file_cont.svelte @@ -178,6 +178,7 @@ filename: filename, x_no_account_id_token: 'direct-download' }, + filename: filename, return_blob: true, auto_download: true, log_lvl: 1 @@ -199,6 +200,7 @@ filename: event_file_obj.filename, x_no_account_id_token: 'direct-download' }, + filename: event_file_obj.filename, return_blob: true, auto_download: true, log_lvl: 1 diff --git a/src/routes/events/[event_id]/(launcher)/launcher_menu.svelte b/src/routes/events/[event_id]/(launcher)/launcher_menu.svelte index d8bb5dd3..1e342223 100644 --- a/src/routes/events/[event_id]/(launcher)/launcher_menu.svelte +++ b/src/routes/events/[event_id]/(launcher)/launcher_menu.svelte @@ -1,7 +1,5 @@