The Launcher works pretty well. Except for the native app...
This commit is contained in:
@@ -75,6 +75,7 @@ import { ae_snip, ae_loc, ae_sess, ae_api, ae_trig, slct, slct_trigger } from '$
|
||||
import { events_loc, events_sess, events_slct, events_trigger } from '$lib/ae_events_stores';
|
||||
import { events_func } from '$lib/ae_events_functions';
|
||||
|
||||
import Event_launcher_file_cont from './launcher_file_cont.svelte';
|
||||
import Menu_location_list_menu from './menu_location_list.svelte';
|
||||
import Menu_session_list_menu from './menu_session_list.svelte';
|
||||
|
||||
@@ -129,6 +130,27 @@ let ae_promises: key_val = $state({
|
||||
</strong>
|
||||
</div> -->
|
||||
{#each $lq__event_event_file_obj_li as event_file_obj, index}
|
||||
<Event_launcher_file_cont
|
||||
event_file_id={event_file_obj.event_file_id_random}
|
||||
event_file_obj={event_file_obj}
|
||||
hide_launch_icon={true}
|
||||
hide_meta={true}
|
||||
hide_created_on={true}
|
||||
hide_os={true}
|
||||
hide_size={true}
|
||||
show_bak_download={$ae_loc.trusted_access && $ae_loc.edit_mode}
|
||||
btn_size={'btn-sm'}
|
||||
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' ? '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}
|
||||
/>
|
||||
|
||||
<button
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
onclick={() => {
|
||||
@@ -194,49 +216,26 @@ let ae_promises: key_val = $state({
|
||||
{#if $lq__location_event_file_obj_li}
|
||||
<div class="w-full flex flex-col gap-0.5">
|
||||
{#each $lq__location_event_file_obj_li as event_file_obj, index}
|
||||
<button
|
||||
disabled={!$ae_loc.trusted_access}
|
||||
onclick={() => {
|
||||
// ae_promises[event_file_obj.event_file_id_random]
|
||||
ae_promises[event_file_obj?.event_file_id_random] = api.download_hosted_file({
|
||||
api_cfg: $ae_api,
|
||||
hosted_file_id: event_file_obj?.hosted_file_id_random,
|
||||
return_file: true,
|
||||
filename: event_file_obj?.filename,
|
||||
auto_download: true,
|
||||
log_lvl: 0
|
||||
});
|
||||
}}
|
||||
class="
|
||||
btn btn-sm
|
||||
text-xs w-full
|
||||
preset-tonal-primary
|
||||
hover:preset-tonal-success
|
||||
transition-all
|
||||
"
|
||||
title={`Download this file:\n${event_file_obj.filename}\n[API] SHA256: ${event_file_obj.hash_sha256.slice(0, 10)}... Hosted ID: ${event_file_obj.hosted_file_id_random} Event File ID: ${event_file_obj.event_file_id_random}`}
|
||||
>
|
||||
{#await ae_promises[event_file_obj.event_file_id_random]}
|
||||
<span class="fas fa-spinner fa-spin mx-1"></span>
|
||||
<span class="">
|
||||
Downloading
|
||||
{#if $ae_sess.api_download_kv[event_file_obj.hosted_file_id_random]}
|
||||
{$ae_sess.api_download_kv[event_file_obj.hosted_file_id_random].percent_completed}%
|
||||
{/if}
|
||||
:
|
||||
</span>
|
||||
{:then}
|
||||
<!-- <span class="fas fa-download mx-1"></span> -->
|
||||
<span class="fas fa-{ae_util.file_extension_icon(event_file_obj.extension)}"></span>
|
||||
<!-- <span class="text-sm">
|
||||
Download:
|
||||
</span> -->
|
||||
{/await}
|
||||
<Event_launcher_file_cont
|
||||
event_file_id={event_file_obj.event_file_id_random}
|
||||
event_file_obj={event_file_obj}
|
||||
hide_launch_icon={true}
|
||||
hide_meta={true}
|
||||
hide_created_on={true}
|
||||
hide_os={true}
|
||||
hide_size={true}
|
||||
show_bak_download={$ae_loc.trusted_access && $ae_loc.edit_mode}
|
||||
btn_size={'btn-sm'}
|
||||
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' ? 'modal' : null}
|
||||
modal_title={$lq__event_session_obj?.name}
|
||||
|
||||
<span class="grow">
|
||||
{ae_util.shorten_filename({filename: event_file_obj.filename, max_length: 30})}
|
||||
</span>
|
||||
</button>
|
||||
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}
|
||||
/>
|
||||
{/each}
|
||||
</div>
|
||||
{/if}
|
||||
@@ -262,7 +261,14 @@ let ae_promises: key_val = $state({
|
||||
>
|
||||
<button
|
||||
onclick={() => {
|
||||
$events_loc.launcher.show_content__hidden_files = !$events_loc.launcher.show_content__hidden_files;
|
||||
if ($events_loc.launcher.show_content__hidden_files) {
|
||||
$events_loc.launcher.show_content__hidden_files = false;
|
||||
$events_loc.launcher.hide_content__draft_files = true;
|
||||
} else {
|
||||
$events_loc.launcher.show_content__hidden_files = true;
|
||||
$events_loc.launcher.hide_content__draft_files = false;
|
||||
}
|
||||
|
||||
}}
|
||||
class="
|
||||
btn btn-sm
|
||||
@@ -272,6 +278,7 @@ let ae_promises: key_val = $state({
|
||||
hover:preset-tonal-success
|
||||
transition-all
|
||||
"
|
||||
title="Toggle showing hidden files. Including files marked as 'draft'."
|
||||
>
|
||||
{#if $events_loc.launcher.show_content__hidden_files}
|
||||
<span class="fas fa-eye-slash m-1 text-neutral-800/80"></span>
|
||||
|
||||
Reference in New Issue
Block a user