{ $events_loc.launcher.hide__launcher_menu = !$events_loc.launcher.hide__launcher_menu; }} title="Toggle Launcher menu" >
Æ Launcher
v3
{#if $lq__event_obj}
{$lq__event_obj.cfg_json?.short_name}
{ $ae_loc.edit_mode = !$ae_loc.edit_mode; }} title="Toggle Edit Mode to show location options and more" >
Location:
{$lq__event_location_obj?.name}
{:else}
Loading event...
{/if}
{#if !$events_slct.event_location_id}
Please select a location from the menu
{/if} {#if $events_slct.event_session_id}
{:else if $events_slct.event_location_id}
Select a session from the menu
{/if}
{@render children?.()}
($events_loc.launcher.hide_drawer__cfg = false)} class="btn btn-sm p-3 preset-tonal-error hover:preset-filled-error-500 transition-colors duration-300" class:opacity-25={!$ae_loc.trusted_access} class:hover:opacity-75={!$ae_loc.trusted_access} >
Launcher Config
($events_loc.launcher.hide_drawer__cfg = true)} class="bg-orange-50 dark:bg-slate-800 opacity-90 hover:opacity-97 transition-all duration-300 border border-gray-300 dark:border-gray-600 w-full md:w-96 lg:w-[32rem]" placement="left" {...{ transitionType: 'fly', transitionParams: { x: -520, duration: 200, easing: sineIn } }} bind:hidden={$events_loc.launcher.hide_drawer__cfg} id="sidebar1" >
e.stopPropagation()}>
Session Search
{#if $events_slct?.event_location_id}
View Selected Location
{/if} {#if $events_slct?.event_session_id}
View Selected Session
{/if}
Debug
($events_loc.launcher.hide_drawer__debug = true)} class="mb-4 dark:text-white" >
Close Debug Drawer
{JSON.stringify($events_loc.launcher, null, 2)}
{JSON.stringify($ae_api, null, 2)}
{#snippet header()}
{$events_sess.launcher?.modal__title ?? 'Digital Poster Display'}
{ $events_sess.launcher.modal__open_event_file_id = null; }} title="Close Modal" >
Close
{/snippet}
{#if $events_sess.launcher.modal__event_file_obj?.hosted_file_id}
{ modal_zoom_fit = !modal_zoom_fit; // Sync zoom state to the remote display when acting as controller. if ($events_loc.launcher.controller == 'local_push' && $events_sess.launcher.ws_connect_status == 'connected') { $events_sess.launcher.controller_cmd = `ae_zoom:${modal_zoom_fit ? 'fit' : 'zoom'}`; $events_sess.launcher.controller_trigger_send = true; } }} title="Double-tap to toggle zoom / fit" class="block transition-[max-height,max-width,width] duration-200" class:max-h-[85dvh]={modal_zoom_fit} class:max-w-full={modal_zoom_fit} class:w-auto={modal_zoom_fit} class:object-contain={modal_zoom_fit} class:cursor-zoom-in={modal_zoom_fit} class:cursor-zoom-out={!modal_zoom_fit} style="touch-action: pinch-zoom;" /> {:else}
No image selected
{/if}
{ modal_zoom_fit = !modal_zoom_fit; // Sync zoom state to the remote display when acting as controller. if ($events_loc.launcher.controller == 'local_push' && $events_sess.launcher.ws_connect_status == 'connected') { $events_sess.launcher.controller_cmd = `ae_zoom:${modal_zoom_fit ? 'fit' : 'zoom'}`; $events_sess.launcher.controller_trigger_send = true; } }} class="btn btn-sm preset-tonal-surface opacity-80 hover:opacity-100 transition-opacity" title={modal_zoom_fit ? 'Pan / Zoom mode — pinch or double-tap image to zoom' : 'Fit image to screen'} > {#if modal_zoom_fit}
Zoom
{:else}
Fit
{/if}
{ $events_sess.launcher.controller_cmd = `ae_close:event_file_modal`; $events_sess.launcher.controller_trigger_send = true; $events_sess.launcher.modal__title = ''; $events_sess.launcher.modal__open_event_file_id = null; $events_sess.launcher.modal__event_file_obj = null; }} class="btn btn-sm preset-tonal-error opacity-80 hover:opacity-100 transition-all" class:hidden={$events_loc.launcher.controller != 'local_push' || $events_sess.launcher.ws_connect_status != 'connected'} title="Close poster on this device and on the remote display (screensaver resumes)" >
Close Both
{ $events_sess.launcher.modal__title = ''; $events_sess.launcher.modal__open_event_file_id = null; $events_sess.launcher.modal__event_file_obj = null; }} class="btn btn-sm preset-tonal-surface border border-surface-400/50 opacity-80 hover:opacity-100 transition-all" class:hidden={!$ae_loc.trusted_access && ($events_loc.launcher.controller != 'local_push' || $events_sess.launcher.ws_connect_status != 'connected')} title="Close poster on this device only — remote display keeps showing" >
Back to List
{#if $events_loc.launcher.controller_group_code && $events_loc.launcher.ws_connect}
{/if}