From 969e5610bb05ccb1e948ef8a73a0d38eace7821f Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Fri, 6 Feb 2026 14:48:44 -0500 Subject: [PATCH] refactor(launcher): standardize helper names and apply batch formatting - Renamed internal 'preventDefault' to 'prevent_default' in launcher files. - Fixed native 'event.preventDefault()' call in launcher_file_cont.svelte. - Applied batch formatting (printWidth: 80) across the (launcher) module. --- .../[event_id]/(launcher)/+layout.svelte | 2 +- .../events/[event_id]/(launcher)/README.md | 7 +- .../launcher_cfg_app_modes.svelte | 142 ++++++++---- .../launcher_cfg_controller.svelte | 76 +++++-- .../cfg_components/launcher_cfg_health.svelte | 110 ++++++--- .../launcher_cfg_local_actions.svelte | 85 +++++-- .../launcher_cfg_native_os.svelte | 215 +++++++++++++----- .../launcher_cfg_screen_saver.svelte | 52 +++-- .../launcher_cfg_section.svelte | 76 +++++-- .../launcher_cfg_sync_timers.svelte | 132 +++++++---- .../launcher_cfg_template.svelte | 173 +++++++++----- .../launcher_cfg_updates.svelte | 74 ++++-- .../(launcher)/launcher/+layout.svelte | 212 ++++++++++++----- .../[event_id]/(launcher)/launcher/+layout.ts | 13 +- .../launcher/[event_location_id]/+page.svelte | 37 +-- .../launcher/[event_location_id]/+page.ts | 12 +- .../launcher_background_sync.svelte | 172 ++++++++++---- .../[event_id]/(launcher)/launcher_cfg.svelte | 91 +++++--- .../(launcher)/launcher_file_cont.svelte | 172 ++++++++++---- .../(launcher)/launcher_menu.svelte | 46 ++-- .../launcher_presentation_view.svelte | 22 +- .../(launcher)/launcher_presenter_view.svelte | 18 +- .../launcher_presenter_view_posters.svelte | 14 +- .../(launcher)/launcher_session_view.svelte | 77 +++++-- .../(launcher)/menu_location_list.svelte | 27 ++- .../(launcher)/menu_session_list.svelte | 83 +++++-- 26 files changed, 1536 insertions(+), 604 deletions(-) diff --git a/src/routes/events/[event_id]/(launcher)/+layout.svelte b/src/routes/events/[event_id]/(launcher)/+layout.svelte index df860770..fab43c0f 100644 --- a/src/routes/events/[event_id]/(launcher)/+layout.svelte +++ b/src/routes/events/[event_id]/(launcher)/+layout.svelte @@ -1,7 +1,7 @@ -
-
- +
- - + - + + class:preset-filled-primary-500={$events_loc.launcher + .app_mode === 'onsite'} + class:opacity-40={$events_loc.launcher.app_mode !== + 'onsite'}>Onsite
-
- +
+
- {#if $ae_loc.edit_mode} -
- +
+
diff --git a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_controller.svelte b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_controller.svelte index 40e6b5a1..73e16d2d 100644 --- a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_controller.svelte +++ b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_controller.svelte @@ -8,35 +8,49 @@ } let { on_expand }: Props = $props(); - const ws_connected = $derived($events_sess.launcher.ws_connect_status === 'connected'); + const ws_connected = $derived( + $events_sess.launcher.ws_connect_status === 'connected' + ); -
- -
+
- WebSocket Link + WebSocket Link
{#if ws_connected} - Connected + Connected {:else} - Disconnected + Disconnected {/if}
- + $events_sess.launcher.controller_unlock_group_code = true} + readonly={!$events_sess.launcher + .controller_unlock_group_code} + ondblclick={() => + ($events_sess.launcher.controller_unlock_group_code = true)} /> -
-

Double-click input to unlock editing. Changing code triggers reconnect.

+

+ Double-click input to unlock editing. Changing code triggers + reconnect. +

{/if}
diff --git a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_health.svelte b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_health.svelte index 535cb25f..c0f6e431 100644 --- a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_health.svelte +++ b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_health.svelte @@ -12,12 +12,12 @@ let ram_usage_pct = $derived.by(() => { const meta = $ae_loc.native_device?.meta_json; if (!meta?.total_mem || !meta?.free_mem) return 0; - + // Parse "16384MB" strings const total = parseInt(meta.total_mem); const free = parseInt(meta.free_mem); if (isNaN(total) || isNaN(free)) return 0; - + return Math.round(((total - free) / total) * 100); }); @@ -29,39 +29,61 @@ } - -
- +
-
- CPU Architecture: {$ae_loc.native_device?.meta_json?.arch || '...'} +
+ CPU Architecture: {$ae_loc.native_device?.meta_json + ?.arch || '...'} Load: Healthy
-
-
+
+
-
+
Memory (RAM) {ram_usage_pct}% Used
-
-
+
+
- Free: {$ae_loc.native_device?.meta_json?.free_mem || '...'} / {$ae_loc.native_device?.meta_json?.total_mem || '...'} + Free: {$ae_loc.native_device?.meta_json?.free_mem || '...'} / {$ae_loc + .native_device?.meta_json?.total_mem || '...'}
@@ -69,26 +91,45 @@
- Last Heartbeat - - {$events_sess.launcher.heartbeat_info.last_timestamp || 'Pending...'} + Last Heartbeat + + {$events_sess.launcher.heartbeat_info.last_timestamp || + 'Pending...'}
- +
- Local File Cache + Local File Cache - {$events_sess.launcher.sync_stats.cached} / {$events_sess.launcher.sync_stats.total} + {$events_sess.launcher.sync_stats.cached} / {$events_sess + .launcher.sync_stats.total}
{#if $events_sess.launcher.sync_stats.currently_syncing} -
+
- Syncing File... - {$events_sess.launcher.sync_stats.currently_syncing} + Syncing File... + {$events_sess.launcher.sync_stats + .currently_syncing}
@@ -97,18 +138,27 @@ {#if $ae_loc.edit_mode} -
+
Hostname: - {$ae_loc.native_device.info_hostname || '...'} + {$ae_loc.native_device.info_hostname || '...'}
IP Addresses: - {$ae_loc.native_device.info_ip_list || '...'} + {$ae_loc.native_device.info_ip_list || '...'}
- -
+                
+                
                     {JSON.stringify($ae_loc.native_device, null, 2)}
                 
diff --git a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_local_actions.svelte b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_local_actions.svelte index db3af833..0dec5e8d 100644 --- a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_local_actions.svelte +++ b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_local_actions.svelte @@ -12,21 +12,33 @@ function handle_reset_action(val: string) { if (!val) return; - + if (val == 'delete_idbs') { - if (confirm('Are you sure you want to delete ALL IndexedDB databases?')) { + if ( + confirm( + 'Are you sure you want to delete ALL IndexedDB databases?' + ) + ) { indexedDB.deleteDatabase('ae_archives_db'); indexedDB.deleteDatabase('ae_core_db'); indexedDB.deleteDatabase('ae_events_db'); indexedDB.deleteDatabase('ae_journals_db'); indexedDB.deleteDatabase('ae_posts_db'); indexedDB.deleteDatabase('ae_sponsorships_db'); - alert('All IndexedDB databases deleted. Please reload the app.'); + alert( + 'All IndexedDB databases deleted. Please reload the app.' + ); } } else if (val == 'delete_idbs_events') { - if (confirm('Are you sure you want to delete ONLY the Events IndexedDB database?')) { + if ( + confirm( + 'Are you sure you want to delete ONLY the Events IndexedDB database?' + ) + ) { indexedDB.deleteDatabase('ae_events_db'); - alert('Events IndexedDB database deleted. Please reload the app.'); + alert( + 'Events IndexedDB database deleted. Please reload the app.' + ); } } else if (val == 'delete_local') { if (confirm('Are you sure you want to delete ALL local config?')) { @@ -37,7 +49,11 @@ location.reload(); } } else if (val == 'delete_local_events') { - if (confirm('Are you sure you want to delete ONLY the Events local config?')) { + if ( + confirm( + 'Are you sure you want to delete ONLY the Events local config?' + ) + ) { localStorage.removeItem('ae_events_loc'); location.reload(); } @@ -46,28 +62,34 @@ } -
-
- + * Destructive actions require browser confirmation. @@ -76,31 +98,48 @@
- -
{#if $ae_loc.edit_mode} -
- -
- Endpoint: {$ae_api.base_url}
+
+ +
+ Endpoint: {$ae_api.base_url}
Account: {$ae_loc.account_id}
diff --git a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_native_os.svelte b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_native_os.svelte index c2a9f7b1..2241028e 100644 --- a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_native_os.svelte +++ b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_native_os.svelte @@ -14,15 +14,20 @@ let remote_status = $state(''); let system_status = $state(''); - async function handle_remote_control(action: 'next' | 'prev' | 'start' | 'stop') { + async function handle_remote_control( + action: 'next' | 'prev' | 'start' | 'stop' + ) { remote_status = `Sending ${action}...`; - const res = await native.control_presentation({ app: remote_app, action }); + const res = await native.control_presentation({ + app: remote_app, + action + }); if (res.success) { remote_status = `Success: ${action}`; } else { remote_status = `Error: ${res.error}`; } - setTimeout(() => remote_status = '', 3000); + setTimeout(() => (remote_status = ''), 3000); } async function handle_system_action(promise: Promise, label: string) { @@ -33,51 +38,67 @@ } else { system_status = `Error: ${res.error || 'Unknown error'}`; } - setTimeout(() => system_status = '', 3000); + setTimeout(() => (system_status = ''), 3000); } // Modal state for dangerous actions - let show_power_confirm = $state<{ action: string, label: string } | null>(null); + let show_power_confirm = $state<{ action: string; label: string } | null>( + null + ); - {#if system_status} -
+
{system_status}
{/if}
- +
- - - - - - -
{#if remote_status} -
{remote_status}
+
+ {remote_status} +
{/if}
{#if $ae_loc.edit_mode} -
+
- +
- -
- +
- -
- +
- - + >Run
{#if test_cmd_result} -
{test_cmd_result}
+
{test_cmd_result}
{/if}
@@ -183,20 +275,37 @@ {#if show_power_confirm} -
-
-

Confirm System Action

+
+
+

+ Confirm System Action +

- Are you sure you want to {show_power_confirm.action} this host machine? + Are you sure you want to {show_power_confirm.action} this host machine?

- - + - @@ -82,19 +116,29 @@ {#if is_open} -
+
{#if $ae_loc.edit_mode}
- + Technical Mode {#if state === 'pinned'} - Pinned + Pinned {/if}
{/if} - -
+ +
{@render children?.()}
diff --git a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_sync_timers.svelte b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_sync_timers.svelte index 44681f72..ab2a91ff 100644 --- a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_sync_timers.svelte +++ b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_sync_timers.svelte @@ -9,63 +9,92 @@ let { on_expand }: Props = $props(); - {#if $ae_loc.native_device}
- {#if $ae_loc.edit_mode}
- +
- Event Data - Event Data +
- Device Config - Device Config +
- Room/Location - Room/Location +
- Session Loop - Session Loop +
-
- +
+
Hash Prefix Length -
-

* Prefix change requires a full app reload to take effect.

+

+ * Prefix change requires a full app reload to take + effect. +

{:else} -
-
+
+
Event Sync: - {($ae_loc.native_device.check_event_loop_period / 1000).toFixed(1)}s + {( + $ae_loc.native_device.check_event_loop_period / + 1000 + ).toFixed(1)}s
-
+
Room Monitor: - {($ae_loc.native_device.check_event_location_loop_period / 1000).toFixed(1)}s + {( + $ae_loc.native_device + .check_event_location_loop_period / 1000 + ).toFixed(1)}s
-
+
Prefix Sharding: - {$ae_loc.native_device.hash_prefix_length || 2} chars + {$ae_loc.native_device.hash_prefix_length || 2} chars
-

Enable Edit Mode to adjust polling intervals.

+

+ Enable Edit Mode to adjust polling intervals. +

{/if}
diff --git a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_template.svelte b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_template.svelte index 23f35a07..5225fe7d 100644 --- a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_template.svelte +++ b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_template.svelte @@ -25,46 +25,52 @@ async function handle_test_action(label: string) { is_loading = true; action_status = `Executing ${label}...`; - + // Simulate async work - await new Promise(r => setTimeout(r, 1500)); - + await new Promise((r) => setTimeout(r, 1500)); + is_loading = false; action_status = `Finished: ${label}`; - setTimeout(() => action_status = '', 3000); + setTimeout(() => (action_status = ''), 3000); } // Modal state for destructive actions let show_confirm = $state(false); - {#if action_status} -
+
{action_status}
{/if}
- - + +
- -
- - -
+ + +
Engine Health - Stable + Stable
- +
-
+
Processing Load 45%
-
-
+
+
-
- -
@@ -142,35 +189,46 @@
- +
- -
- +
- Threshold (ms) - Threshold (ms) +
- -
+                
+                
 [LOG] System Initialized
 [INFO] Store synced with IndexedDB
 [DEBUG] active_tab: template
@@ -183,16 +241,29 @@
 
 
 {#if show_confirm}
-    
-
+
+

Confirm Action

- Are you sure you want to perform this test operation? This demonstrate the standard confirmation pattern. + Are you sure you want to perform this test operation? This + demonstrate the standard confirmation pattern.

- - + {#if $lq__event_obj} -

-

- {/snippet} -
{/if} - - +
+
+ NATIVE SYNC MONITOR +
Room Status: - {sync_stats.cached} / {sync_stats.total} Files + {sync_stats.cached} / {sync_stats.total} Files Prefix Len: - {$ae_loc.native_device?.hash_prefix_length || 2} chars + {$ae_loc.native_device?.hash_prefix_length || 2} chars Heartbeat: - + {last_heartbeat || 'Pending...'}
- Event Loop: + Event Loop: {loop_info.event / 1000}s
- Device Loop: + Device Loop: {loop_info.device / 1000}s
- Location Loop: + Location Loop: {loop_info.location / 1000}s
- Session Loop: + Session Loop: {loop_info.session / 1000}s
@@ -286,27 +365,34 @@ {/if} {#if currently_syncing} - {:else} - {/if} -
\ No newline at end of file +
diff --git a/src/routes/events/[event_id]/(launcher)/launcher_cfg.svelte b/src/routes/events/[event_id]/(launcher)/launcher_cfg.svelte index af132990..033883ca 100644 --- a/src/routes/events/[event_id]/(launcher)/launcher_cfg.svelte +++ b/src/routes/events/[event_id]/(launcher)/launcher_cfg.svelte @@ -43,8 +43,11 @@ */ function handle_section_expand(current_key: string) { const launcher = $events_loc.launcher; - Object.keys(launcher).forEach(key => { - if (key.startsWith('section_state__') && key !== `section_state__${current_key}`) { + Object.keys(launcher).forEach((key) => { + if ( + key.startsWith('section_state__') && + key !== `section_state__${current_key}` + ) { if (launcher[key] === 'auto') { launcher[key] = 'collapsed'; } @@ -60,13 +63,18 @@ flex flex-col gap-4 items-center justify-start " > -
-

+
+

Launcher Configuration

- - - -
- -

+ +

Aether Platform • Events Launcher v3.0

-
\ No newline at end of file +
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 83f4da54..b6f4a6e3 100644 --- a/src/routes/events/[event_id]/(launcher)/launcher_file_cont.svelte +++ b/src/routes/events/[event_id]/(launcher)/launcher_file_cont.svelte @@ -57,12 +57,16 @@ import { api } from '$lib/api/api'; import { ae_loc, ae_api, ae_sess, slct } from '$lib/stores/ae_stores'; import { core_func } from '$lib/ae_core/ae_core_functions'; - import { events_loc, events_sess, events_slct } from '$lib/stores/ae_events_stores'; + import { + events_loc, + events_sess, + events_slct + } from '$lib/stores/ae_events_stores'; import { events_func } from '$lib/ae_events_functions'; import AE_Comp_Hosted_Files_Download_Button from '$lib/ae_core/ae_comp__hosted_files_download_button.svelte'; import Element_ae_crud from '$lib/elements/element_ae_crud.svelte'; - + // Import the relay import * as native from '$lib/electron/electron_relay'; @@ -78,14 +82,17 @@ onMount(() => { if (screen_saver_exts.includes(event_file_obj.extension)) { - if (!$events_loc.launcher.screen_saver_img_kv) $events_loc.launcher.screen_saver_img_kv = {}; - $events_loc.launcher.screen_saver_img_kv[event_file_id] = { ...event_file_obj }; + if (!$events_loc.launcher.screen_saver_img_kv) + $events_loc.launcher.screen_saver_img_kv = {}; + $events_loc.launcher.screen_saver_img_kv[event_file_id] = { + ...event_file_obj + }; } }); async function handle_open_file() { if (log_lvl) console.log('*** handle_open_file() ***'); - + $events_slct.event_file_id = event_file_id; $events_slct.event_file_obj = event_file_obj; @@ -98,15 +105,18 @@ open_file_status = 'checking_cache'; open_file_status_message = 'Checking local cache...'; - const exists = await native.check_hash_file_cache({ cache_root, hash: event_file_obj.hash_sha256 }); + const exists = await native.check_hash_file_cache({ + cache_root, + hash: event_file_obj.hash_sha256 + }); if (!exists) { open_file_status = 'downloading_file'; open_file_status_message = 'Downloading file to cache...'; - + // Use the PROVEN endpoint path from api.ts that is known to work in Default Mode. const url = `${$ae_api.base_url}/v3/action/hosted_file/${event_file_obj.hosted_file_id}/download?return_file=true&filename=${encodeURIComponent(event_file_obj.filename)}&key=${$ae_api.account_id}`; - + const dl_result = await native.download_to_cache({ url, cache_root, @@ -118,7 +128,7 @@ if (!dl_result.success) { open_file_status = 'error'; open_file_status_message = `Download failed: ${dl_result.error}`; - setTimeout(() => open_file_clicked = false, 5000); + setTimeout(() => (open_file_clicked = false), 5000); return false; } } @@ -127,7 +137,7 @@ open_file_status_message = 'Opening Application'; // Phase 2/5: Use the atomic copy-and-launch operation. - // The main process handler (file_handlers.ts) now handles the + // The main process handler (file_handlers.ts) now handles the // specialized LibreOffice/AppleScript logic internally after copying. const launch_result = await native.launch_from_cache({ cache_root, @@ -141,9 +151,9 @@ open_file_status_message = `Failed to open: ${launch_result.error}`; } - setTimeout(() => open_file_clicked = false, 5000); + setTimeout(() => (open_file_clicked = false), 5000); return launch_result.success; - } + } // 2. ONSITE MODE (Browser with Modified Extensions) else if ($events_loc.launcher.app_mode === 'onsite') { open_file_clicked = true; @@ -151,7 +161,11 @@ open_file_status_message = 'Downloading (Onsite Mode)...'; let filename = event_file_obj.filename; - if ((event_file_obj.extension === 'ppt' || event_file_obj.extension === 'pptx') && event_file_obj.open_in_os === 'win') { + if ( + (event_file_obj.extension === 'ppt' || + event_file_obj.extension === 'pptx') && + event_file_obj.open_in_os === 'win' + ) { filename = event_file_obj.filename + 'win'; } @@ -167,7 +181,7 @@ log_lvl: 1 }); - setTimeout(() => open_file_clicked = false, 5000); + setTimeout(() => (open_file_clicked = false), 5000); return dl_promise; } // 3. DEFAULT MODE (Standard Browser) @@ -175,7 +189,7 @@ open_file_clicked = true; open_file_status = 'downloading_default'; open_file_status_message = 'Downloading...'; - + const dl_promise = api.get_object({ api_cfg: $ae_api, endpoint: `/v3/action/hosted_file/${event_file_obj.hosted_file_id}/download`, @@ -193,14 +207,14 @@ $events_sess.launcher.controller_trigger_send = true; } - setTimeout(() => open_file_clicked = false, 5000); + setTimeout(() => (open_file_clicked = false), 5000); return dl_promise; } } function prevent_default(fn: (event: T) => void) { return function (event: T) { - event.prevent_default(); + event.preventDefault(); fn(event); }; } @@ -209,21 +223,34 @@
{#if open_file_clicked} -
+
- *** {open_file_status_message || 'Please wait while this file downloads...'} *** + *** {open_file_status_message || + 'Please wait while this file downloads...'} ***

Most files will automatically be opened full screen.

-

PowerPoint or KeyNote will attempt to display in presenter view.

+

+ PowerPoint or KeyNote will attempt to display in presenter view. +

Please close the file when finished.

{/if} - + {#if session_type == 'poster' || open_method == 'modal'} {#snippet label()} {#if screen_saver_exts.includes(event_file_obj.extension)} - Open Poster + Open Poster {:else} - - {ae_util.shorten_filename({ filename: event_file_obj.filename, max_length: max_filename_length })} + + {ae_util.shorten_filename({ + filename: event_file_obj.filename, + max_length: max_filename_length + })} {/if} {/snippet} @@ -260,27 +296,48 @@ {#if $ae_sess.api_download_kv[file_id]} - {$ae_sess.api_download_kv[file_id].percent_completed}% + {$ae_sess.api_download_kv[file_id] + .percent_completed}% {:else} ... {/if} {:then result} - + {event_file_obj.extension} {#if result === null || result === false} - Failed! + Failed! {/if} {:catch error} - Error! + Error! {/await} - - {ae_util.shorten_string({ string: event_file_obj.filename_no_ext, begin_length: 45, max_length: 65 })} + + {ae_util.shorten_string({ + string: event_file_obj.filename_no_ext, + begin_length: 45, + max_length: 65 + })} - + {event_file_obj.file_purpose} {/snippet} @@ -288,7 +345,10 @@ {/if} - + { - events_func.load_ae_obj_id__event_file({ api_cfg: $ae_api, event_file_id: event_file_obj?.event_file_id, log_lvl }); + events_func.load_ae_obj_id__event_file({ + api_cfg: $ae_api, + event_file_id: event_file_obj?.event_file_id, + log_lvl + }); }} > - - + - {ae_util.iso_datetime_formatter(event_file_obj.created_on, 'date_short')} + {ae_util.iso_datetime_formatter( + event_file_obj.created_on, + 'date_short' + )} - + - {#if event_file_obj.file_size}{ae_util.format_bytes(event_file_obj.file_size)}{/if} + {#if event_file_obj.file_size}{ae_util.format_bytes( + event_file_obj.file_size + )}{/if} -
\ No newline at end of file +
diff --git a/src/routes/events/[event_id]/(launcher)/launcher_menu.svelte b/src/routes/events/[event_id]/(launcher)/launcher_menu.svelte index 294e12a3..d8bb5dd3 100644 --- a/src/routes/events/[event_id]/(launcher)/launcher_menu.svelte +++ b/src/routes/events/[event_id]/(launcher)/launcher_menu.svelte @@ -141,19 +141,26 @@ hide_created_on={true} hide_os={true} hide_size={true} - show_bak_download={$ae_loc.trusted_access && $ae_loc.edit_mode} + show_bak_download={$ae_loc.trusted_access && + $ae_loc.edit_mode} btn_size={'btn-sm'} btn_text_align={'text-center'} text_size={'text-xs'} text_size_md={'text-xs'} - session_type={event_file_obj?.event_session_type_code ?? 'oral'} - open_method={event_file_obj?.event_session_type_code == 'poster' + session_type={event_file_obj?.event_session_type_code ?? + 'oral'} + open_method={event_file_obj?.event_session_type_code == + 'poster' ? 'modal' : null} modal_title={$lq__event_session_obj?.name} bind:modal__title={$events_sess.launcher.modal__title} - bind:modal__open_event_file_id={$events_sess.launcher.modal__open_event_file_id} - bind:modal__event_file_obj={$events_sess.launcher.modal__event_file_obj} + bind:modal__open_event_file_id={ + $events_sess.launcher.modal__open_event_file_id + } + bind:modal__event_file_obj={ + $events_sess.launcher.modal__event_file_obj + } /> {/each}
@@ -179,19 +186,26 @@ hide_created_on={true} hide_os={true} hide_size={true} - show_bak_download={$ae_loc.trusted_access && $ae_loc.edit_mode} + show_bak_download={$ae_loc.trusted_access && + $ae_loc.edit_mode} btn_size={'btn-sm'} btn_text_align={'text-center'} text_size={'text-xs'} text_size_md={'text-xs'} - session_type={event_file_obj?.event_session_type_code ?? 'oral'} - open_method={event_file_obj?.event_session_type_code == 'poster' + session_type={event_file_obj?.event_session_type_code ?? + 'oral'} + open_method={event_file_obj?.event_session_type_code == + 'poster' ? 'modal' : null} modal_title={$lq__event_session_obj?.name} bind:modal__title={$events_sess.launcher.modal__title} - bind:modal__open_event_file_id={$events_sess.launcher.modal__open_event_file_id} - bind:modal__event_file_obj={$events_sess.launcher.modal__event_file_obj} + bind:modal__open_event_file_id={ + $events_sess.launcher.modal__open_event_file_id + } + bind:modal__event_file_obj={ + $events_sess.launcher.modal__event_file_obj + } /> {/each}
@@ -214,7 +228,8 @@ flex flex-row gap-1 items-center justify-center " > - -
\ No newline at end of file +