feat(launcher): improve Events Presentation Launcher stability and data flow

- Standardized ID usage: Migrated multiple components from '_random' variants to standard 'id' properties to align with V3 backend and Dexie patterns.
- Electron Integration: Added global 'native_app' declaration and Window interface augmentation in app.d.ts to resolve TypeScript errors.
- Type Safety: Enhanced ae_EventSession interface with missing 'event_file_li' and added runtime null checks in session loading logic.
- UI/UX: Restored missing launcher components in location-specific pages and fixed LiveQuery filter logic for session lists.
- Bug Fixes: Resolved indexing errors in location list and corrected store update patterns in layout.
This commit is contained in:
Scott Idem
2026-01-16 13:59:51 -05:00
parent 5ee17c2925
commit 2db2aba6f9
13 changed files with 93 additions and 75 deletions

7
src/app.d.ts vendored
View File

@@ -14,4 +14,11 @@ declare global {
namespace App {
interface Platform {}
}
interface Window {
native_app: any;
}
// eslint-disable-next-line no-var
var native_app: any;
}

View File

@@ -121,7 +121,7 @@ const events_local_data_struct: key_val = {
qry_limit__sessions: 50,
hide__launcher_header: false,
hide__launcher_menu: true,
hide__launcher_menu: false,
hide__launcher_footer: false,
hide__modal_header_title: false,

View File

@@ -554,6 +554,7 @@ export interface ae_EventSession extends ae_BaseObj {
// Joined fields
event_presentation_li?: ae_EventPresentation[];
event_file_li?: ae_EventFile[];
}
/**

View File

@@ -197,7 +197,7 @@
let lq__event_event_file_obj_li = $derived(
liveQuery(async () => {
let results = await db_events.file
.where('for_id_random')
.where('for_id')
.equals($events_slct.event_id ?? '')
.sortBy('filename');
@@ -209,8 +209,8 @@
let lq__location_event_file_obj_li = $derived(
liveQuery(async () => {
let results = await db_events.file
// .where('event_location_id_random')
.where('for_id_random')
// .where('event_location_id')
.where('for_id')
.equals($events_slct.event_location_id ?? '')
.sortBy('filename');
@@ -249,7 +249,7 @@
// let lq__event_session_obj_li = $derived(liveQuery(async () => {
// let results = await db_events.session
// // .bulkGet(event_session_id_random_li);
// // .bulkGet(event_session_id_li);
// .where('event_location_id')
// .equals($events_slct.event_location_id)
// .sortBy('name');
@@ -303,15 +303,15 @@
// console.log(`LQ - Using $events_sess.session_li to get event sessions.`);
// }
// // $events_sess.session_li_trigger = false;
// let event_session_id_random_li = []; // This is to prevent the array from constantly updating and triggering the liveQuery.
// let event_session_id_li = []; // This is to prevent the array from constantly updating and triggering the liveQuery.
// for (let i = 0; i < $events_sess?.session_li.length; i++) {
// let event_session_obj = $events_sess?.session_li[i];
// let event_session_id_random = event_session_obj.event_session_id_random;
// event_session_id_random_li.push(event_session_id_random);
// let event_session_id = event_session_obj.event_session_id;
// event_session_id_li.push(event_session_id);
// }
// // let event_session_id_random_li = tmp_li;
// // let event_session_id_li = tmp_li;
// results = await db_events.session
// .bulkGet(event_session_id_random_li);
// .bulkGet(event_session_id_li);
// } else if ($lq__event_obj?.cfg_json?.session_group_sort === 'DESC') {
// if (log_lvl) {
// console.log(`LQ - Using DESC sort for Event Session list event_id: ${$events_slct?.event_id}`);
@@ -357,7 +357,7 @@
$events_slct.event_session_obj_li &&
JSON.stringify($events_slct.event_session_obj_li) !== JSON.stringify(results)
) {
$events_slct.event_session_obj_li = [...results];
$events_slct.event_session_obj_li = [...(results || [])];
if (log_lvl) {
console.log(
`Session slct li stored version has changed for ID = ${$events_slct.event_id}`,
@@ -537,7 +537,7 @@
$events_sess.launcher.modal__open_event_file_id = $events_slct.event_file_id;
// $events_sess.launcher.modal__event_file_obj = event_file_obj;
// $events_sess.launcher.modal__img_src = `/event/file/${event_file_obj.event_file_id_random}/download`;
// $events_sess.launcher.modal__img_src = `/event/file/${event_file_obj.event_file_id}/download`;
// $events_slct.event_file_obj = event_file_obj;
@@ -548,7 +548,7 @@
// NOTE: This is not finished yet.
// This should now trigger the Svelte component for the event launcher file container. Currently this does nothing. Need to bind to something or use the "events_sess.launcher" object?
// let as_modal_result = open_event_file_as_modal({event_file_id: event_file_obj.event_file_id_random, method: 'modal', filename: event_file_obj.filename, extension: event_file_obj.extension, modal_title: poster_title});
// let as_modal_result = open_event_file_as_modal({event_file_id: event_file_obj.event_file_id, method: 'modal', filename: event_file_obj.filename, extension: event_file_obj.extension, modal_title: poster_title});
// if (as_modal_result) {
// console.log($events_sess.launcher);
// console.log(event_file_obj);
@@ -666,7 +666,7 @@
async function handle_event_file_open() {
let event_file_obj;
if ($events_slct.event_file_obj && $events_slct.event_file_obj.event_file_id_random) {
if ($events_slct.event_file_obj && $events_slct.event_file_obj.event_file_id) {
console.log($events_slct.event_file_obj);
event_file_obj = $events_slct.event_file_obj;
} else {
@@ -678,7 +678,7 @@
}
// let as_modal_result = open_event_file_as_modal({
// event_file_id: event_file_obj.event_file_id_random,
// event_file_id: event_file_obj.event_file_id,
// filename: event_file_obj.filename,
// extension: event_file_obj.extension,
// modal_title: ae_util.shorten_filename(event_file_obj.filename, 75)
@@ -693,11 +693,14 @@
}
async function handle_event_file_close() {
let as_modal_result = close_event_file_as_modal({});
// let as_modal_result = close_event_file_as_modal({});
if (as_modal_result) {
events_sess.launcher.set({ ...$events_sess.launcher, ...as_modal_result });
}
// if (as_modal_result) {
// events_sess.update(n => {
// n.launcher = { ...n.launcher, ...as_modal_result };
// return n;
// });
// }
}
if (!$events_loc.launcher.idle_timer) {
@@ -765,7 +768,7 @@
Object.keys($events_loc.launcher.screen_saver_img_kv)[rand_index]
];
$events_slct.event_file_id = event_file_obj.event_file_id_random;
$events_slct.event_file_id = event_file_obj.event_file_id;
$events_slct.event_file_obj = event_file_obj;
// $slct_trigger = 'event_file';
// $events_loc.launcher.event_file_open.open_status = 'open';
@@ -779,7 +782,7 @@
$events_sess.launcher.modal__open_event_file_id =
$events_slct.event_file_id;
$events_sess.launcher.modal__event_file_obj = event_file_obj;
// $events_sess.launcher.modal__img_src = `/event/file/${event_file_obj.event_file_id_random}/download`;
// $events_sess.launcher.modal__img_src = `/event/file/${event_file_obj.event_file_id}/download`;
return true;
}
@@ -1411,7 +1414,7 @@
Close Remote Poster Display Only
</button>
<!-- Open: {$ae_api.base_url} {$events_sess.launcher.modal__open_event_file_id} -->
<!-- /event/file/{$events_slct.event_file_obj.event_file_id_random}/download?filename={$events_slct.event_file_obj.filename}&x_no_account_id_token=direct-download -->
<!-- /event/file/{$events_slct.event_file_obj.event_file_id}/download?filename={$events_slct.event_file_obj.filename}&x_no_account_id_token=direct-download -->
<!-- <span class="aspect-9/16 max-h-96"> -->
{#if $events_sess.launcher.modal__open_event_file_id}
<img

View File

@@ -36,7 +36,7 @@
events_trigger,
events_trig
} from '$lib/stores/ae_events_stores';
// import { events_func } from '$lib/ae_events_functions';
import { events_func } from '$lib/ae_events_functions';
import {
kill_processes,
@@ -138,8 +138,8 @@
// let bi_id_li__event_location: string[] = [];
// for (let i = 0; i < $events_slct.event_location_obj_li.length; i++) {
// let event_location_obj = $events_slct.event_location_obj_li[i];
// let event_location_id_random = event_location_obj.event_location_id_random;
// tmp_li.push(event_location_id_random);
// let event_location_id = event_location_obj.event_location_id;
// tmp_li.push(event_location_id);
// }
// bi_id_li__event_location = tmp_li;
// console.log(`bi_id_li__event_location:`, bi_id_li__event_location);
@@ -176,7 +176,7 @@
// // console.log('Native App Initial Config:', native_app_config);
// });
async function handle_get_device_info(event_device_id) {
async function handle_get_device_info(event_device_id: string) {
console.log('*** handle_get_device_info() ***');
// console.log(event_device_id);
@@ -186,7 +186,7 @@
get_device_info_promise.then(function (result) {
// console.log('GOT DEVICE INFO!!! GOT DEVICE INFO!!! GOT DEVICE INFO!!!');
console.log(get_device_info_promise);
let event_device_data = {};
let event_device_data: any = {};
event_device_data['other_json'] = JSON.stringify(result);
event_device_data['info_hostname'] = result.hostname;
@@ -200,7 +200,7 @@
for (let network_interface in result.networkInterfaces) {
// console.log(network_interface);
let ni_data = {};
let ni_data: any = {};
if (network_interface.startsWith('en')) {
console.log('Wired or wireless network interface found');
@@ -227,9 +227,10 @@
event_device_data['info_ip_list'] = ip_address_li.join('; ');
console.log(event_device_data['info_ip_list']);
event_device_obj_up_promise = update_event_device_obj({
let event_device_obj_up_promise = events_func.update_ae_obj__event_device({
api_cfg: $ae_api,
event_device_id: event_device_id,
data: event_device_data,
data_kv: event_device_data,
log_lvl: 0
})
.then(function (up_event_device_result) {
@@ -247,3 +248,7 @@
return get_device_info_promise;
}
</script>
<div class="hidden">
This is for forcing data loading.
</div>

View File

@@ -62,8 +62,8 @@ export async function load({ params, parent, url }) {
// for (let i = 0; i < load_event_session_obj_li.length; i++) {
// let event_session_obj = load_event_session_obj_li[i];
// let event_session_id_random = event_session_obj.event_session_id_random;
// tmp_li.push(event_session_id_random);
// let event_session_id = event_session_obj.event_session_id;
// tmp_li.push(event_session_id);
// }
// id_li__event_session = tmp_li;
// console.log(`id_li__event_session:`, id_li__event_session);

View File

@@ -106,7 +106,7 @@
// let temp_obj = Object.create(event_file_obj)
// $events_loc.launcher.screen_saver_img_kv[temp_obj.event_file_id_random] = Object.create(temp_obj);
// $events_loc.launcher.screen_saver_img_kv[temp_obj.event_file_id] = Object.create(temp_obj);
// $ae_event_launcher = $ae_event_launcher;
}
@@ -120,7 +120,7 @@
let temp_obj = Object.create(event_file_obj);
$events_loc.launcher.screen_saver_img_kv[temp_obj.event_file_id_random] =
$events_loc.launcher.screen_saver_img_kv[temp_obj.event_file_id] =
Object.create(temp_obj);
// $ae_event_launcher = $ae_event_launcher;
@@ -166,7 +166,7 @@
// "app" mode is for Electron and node.js.
// "onsite" mode is for Chrome or Firefox and downloading files with modified extensions and other slight changes.
if ($events_loc.launcher.app_mode == 'native' && native_app) {
if ($events_loc.launcher.app_mode == 'native' && window.native_app) {
console.log('* ** *** **** BEGIN TESTING **** *** ** *');
console.log(
'Process: Check local hash file cache, Download hash file to cache, and Open cached hash file after copying to temp directory'
@@ -178,7 +178,7 @@
open_file_status = 'checking_cache';
open_file_status_message = 'Checking local cache...';
let check_hash_file_cache_result = await native_app.check_hash_file_cache_v2({
let check_hash_file_cache_result = await window.native_app.check_hash_file_cache_v2({
local_file_cache_path: $events_loc.launcher.local_file_cache_path,
hash: event_file_obj.hash_sha256,
check_hash: true
@@ -192,7 +192,7 @@
open_file_status = 'downloading_file';
open_file_status_message = 'Downloading file...';
let download_hash_file_to_cache_result =
await native_app.download_hash_file_to_cache_v2({
await window.native_app.download_hash_file_to_cache_v2({
api_base_url: $events_loc.launcher.api.base_url,
api_base_url_backup: $events_loc.launcher.api.base_url_backup,
local_file_cache_path: $events_loc.launcher.local_file_cache_path,
@@ -260,7 +260,7 @@
}
console.log(`Opening ${filename}`);
let electron_open_hash_file_to_temp_result = await native_app.open_hash_file_to_temp_v2(
let electron_open_hash_file_to_temp_result = await window.native_app.open_hash_file_to_temp_v2(
{
local_file_cache_path: $events_loc.launcher.local_file_cache_path,
hash: event_file_obj.hash_sha256,
@@ -466,7 +466,7 @@
preset-tonal-primary border border-primary-500
min-w-96
"
title={`Open this file in a modal window:\n${event_file_obj.filename}\n[API] SHA256: ${event_file_obj.hash_sha256.slice(0, 10)}...\nHosted ID: ${event_file_obj.hosted_file_id_random} Event File ID: ${event_file_id}`}
title={`Open this file in a modal window:\n${event_file_obj.filename}\n[API] SHA256: ${event_file_obj.hash_sha256.slice(0, 10)}...\nHosted ID: ${event_file_obj.hosted_file_id} Event File ID: ${event_file_id}`}
>
{#if screen_saver_exts.includes(event_file_obj.extension)}
<span class="fas fa-chart-bar m-1" class:hidden={hide_launch_icon}></span>
@@ -535,7 +535,7 @@
// ae_promises[event_file_id]
ae_promises[event_file_id] = api.download_hosted_file({
api_cfg: $ae_api,
hosted_file_id: event_file_obj.hosted_file_id_random, // +'x'
hosted_file_id: event_file_obj.hosted_file_id, // +'x'
return_file: true,
filename: new_filename,
auto_download: true,
@@ -549,9 +549,9 @@
if ($events_loc.launcher.controller == 'local_push') {
console.log(
`Local Push Controller Command: ae_download:hosted_file=${event_file_obj.hosted_file_id_random}`
`Local Push Controller Command: ae_download:hosted_file=${event_file_obj.hosted_file_id}`
);
$events_sess.launcher.controller_cmd = `ae_download:hosted_file=${event_file_obj.hosted_file_id_random}:${new_filename}:${event_file_obj.extension}`;
$events_sess.launcher.controller_cmd = `ae_download:hosted_file=${event_file_obj.hosted_file_id}:${new_filename}:${event_file_obj.extension}`;
$events_sess.launcher.controller_trigger_send = true;
// tick();
}
@@ -563,7 +563,7 @@
min-w-full w-full max-w-96
preset-tonal-primary border border-primary-500
"
title={`Download this file:\n${event_file_obj.filename}\n[API] SHA256: ${event_file_obj.hash_sha256.slice(0, 10)}...\nHosted ID: ${event_file_obj.hosted_file_id_random} Event File ID: ${event_file_id}`}
title={`Download this file:\n${event_file_obj.filename}\n[API] SHA256: ${event_file_obj.hash_sha256.slice(0, 10)}...\nHosted ID: ${event_file_obj.hosted_file_id} Event File ID: ${event_file_id}`}
>
<span class="shrink text-xs border-r border-gray-400 pr-1">
{#await ae_promises[event_file_id]}
@@ -571,8 +571,8 @@
<span class="fas fa-spinner fa-spin mx-0.5"></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]
{#if $ae_sess.api_download_kv[event_file_obj.hosted_file_id]}
{$ae_sess.api_download_kv[event_file_obj.hosted_file_id]
.percent_completed}%
{/if}
</span>
@@ -641,7 +641,7 @@
// ae_promises[event_file_id]
ae_promises[event_file_id] = api.download_hosted_file({
api_cfg: $ae_api,
hosted_file_id: event_file_obj.hosted_file_id_random, // +'x'
hosted_file_id: event_file_obj.hosted_file_id, // +'x'
return_file: true,
filename: event_file_obj.filename,
auto_download: true,
@@ -681,7 +681,7 @@
events_func.load_ae_obj_id__event_file({
api_cfg: $ae_api,
event_file_id: event_file_obj?.event_file_id_random,
event_file_id: event_file_obj?.event_file_id,
log_lvl: log_lvl
});
}}

View File

@@ -138,7 +138,7 @@
</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_id={event_file_obj.event_file_id}
{event_file_obj}
hide_launch_icon={true}
hide_meta={true}
@@ -176,7 +176,7 @@
<div class="w-full flex flex-col gap-0.5">
{#each $lq__location_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_id={event_file_obj.event_file_id}
{event_file_obj}
hide_launch_icon={true}
hide_meta={true}

View File

@@ -42,8 +42,8 @@
let lq__event_file_obj_li = $derived(
liveQuery(async () => {
let results = await db_events.file
// .where('event_session_id_random')
.where('for_id_random')
// .where('event_session_id')
.where('for_id')
.equals(lq__event_presenter_obj?.event_presenter_id)
.reverse()
.sortBy('created_on');
@@ -93,7 +93,7 @@
event_file_obj.hide}
>
<Event_launcher_file_cont
event_file_id={event_file_obj.event_file_id_random}
event_file_id={event_file_obj.event_file_id}
{event_file_obj}
hide_created_on={false}
bind:hide_draft={$events_loc.launcher.hide_content__draft_files}

View File

@@ -43,8 +43,8 @@
let lq__event_file_obj_li = $derived(
liveQuery(async () => {
let results = await db_events.file
// .where('event_session_id_random')
.where('for_id_random')
// .where('event_session_id')
.where('for_id')
.equals(lq__event_presenter_obj?.event_presenter_id)
.reverse()
.sortBy('created_on');
@@ -92,7 +92,7 @@
event_file_obj.hide}
>
<Event_launcher_file_cont
event_file_id={event_file_obj.event_file_id_random}
event_file_id={event_file_obj.event_file_id}
{event_file_obj}
hide_created_on={false}
hide_meta={true}

View File

@@ -71,8 +71,8 @@
console.log(`lq__event_file_obj: event_file_id = ${$events_slct?.event_file_id}`);
}
let results = await db_events.file
// .where('event_session_id_random')
.where('for_id_random')
// .where('event_session_id')
.where('for_id')
.equals(slct__event_session_id)
.reverse() // Need reverse for created_on newest first.
.sortBy('created_on'); // or filename
@@ -128,7 +128,7 @@
sort_by = 'name';
}
let results = await db_events.presentation
.where('event_session_id_random')
.where('event_session_id')
.equals(slct__event_session_id)
.sortBy(sort_by);
// .sortBy('name')
@@ -233,8 +233,8 @@
// // for (let i = 0; i < load_results.length; i++) {
// // let event_presenter_obj = load_results[i];
// // let event_presenter_id_random = event_presenter_obj.event_presenter_id_random;
// // tmp_li.push(event_presenter_id_random);
// // let event_presenter_id = event_presenter_obj.event_presenter_id;
// // tmp_li.push(event_presenter_id);
// // }
// // event_presenter_id_li = tmp_li;
// // console.log(`event_presenter_id_li:`, event_presenter_id_li);
@@ -265,7 +265,7 @@
</span> -->
{/if}
{#if $lq__event_session_obj && $lq__event_session_obj.event_session_id_random}
{#if $lq__event_session_obj && $lq__event_session_obj.event_session_id}
<header
class="event_session_about text-center border-b-2 border-gray-400 flex flex-row flex-wrap gap-2 items-center justify-between"
>
@@ -323,7 +323,7 @@
>
<h2
class="shrink text-xl"
title={`Name: ${$lq__event_session_obj.name}\nType: ${$lq__event_session_obj.type_code} \nCode: ${$lq__event_session_obj.code} \nID: ${$lq__event_session_obj.event_session_id_random} \nStart Date/Time: ${ae_util.iso_datetime_formatter($lq__event_session_obj.start_datetime, 'week_long')} ${ae_util.iso_datetime_formatter($lq__event_session_obj.start_datetime, $events_loc.launcher.time_format)} \nEnd Date/Time: ${ae_util.iso_datetime_formatter($lq__event_session_obj.end_datetime, $events_loc.launcher.time_format)}`}
title={`Name: ${$lq__event_session_obj.name}\nType: ${$lq__event_session_obj.type_code} \nCode: ${$lq__event_session_obj.code} \nID: ${$lq__event_session_obj.event_session_id} \nStart Date/Time: ${ae_util.iso_datetime_formatter($lq__event_session_obj.start_datetime, 'week_long')} ${ae_util.iso_datetime_formatter($lq__event_session_obj.start_datetime, $events_loc.launcher.time_format)} \nEnd Date/Time: ${ae_util.iso_datetime_formatter($lq__event_session_obj.end_datetime, $events_loc.launcher.time_format)}`}
>
{$lq__event_session_obj?.name}
</h2>
@@ -370,7 +370,7 @@
<button on:click={async () => {
show_modal_upload_files = true;
link_to_type = 'event_session';
link_to_id = $lq__event_session_obj.event_session_id_random;
link_to_id = $lq__event_session_obj.event_session_id;
}}
type="button" class="ae_btn btn_outline_warning btn_xs" title="Upload updated or additional files"
>
@@ -386,7 +386,7 @@
event_file_obj.hide}
>
<Event_launcher_file_cont
event_file_id={event_file_obj.event_file_id_random}
event_file_id={event_file_obj.event_file_id}
{event_file_obj}
hide_created_on={true}
show_bak_download={$ae_loc.trusted_access && $ae_loc.edit_mode}
@@ -407,10 +407,10 @@
<!-- <Launcher_file_cont {event_file_obj} hide_created_on={false} show_bak_download={($ae_loc.trusted_access || $events_loc.launcher.trusted_access)} open_file_as={$lq__event_session_obj.type_code} poster_title={$lq__event_session_obj.title} /> -->
<!-- <a
href="{$ae_api.base_url}/event/file/{event_file_obj.event_file_id_random}/download?filename={event_file_obj.filename}&x_no_account_id_token=direct-download"
href="{$ae_api.base_url}/event/file/{event_file_obj.event_file_id}/download?filename={event_file_obj.filename}&x_no_account_id_token=direct-download"
class="btn btn-sm variant-soft-secondary m-0.5 *:hover:inline"
class:hidden={!ae_tmp.show__direct_download}
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}`}
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} Event File ID: ${event_file_obj.event_file_id}`}
>
<span class="fas fa-download mx-1"></span>
<div class="hidden">
@@ -472,7 +472,7 @@
<!-- Yes, this is kind of inefficient, but it works for now. -->
{#if $lq__event_presenter_obj_li && type_code == 'poster'}
{#each $lq__event_presenter_obj_li as event_presenter_obj, index}
{#if event_presenter_obj.event_presentation_id_random == event_presentation_obj.event_presentation_id_random}
{#if event_presenter_obj.event_presentation_id == event_presentation_obj.event_presentation_id}
<span
class="event_presentation_single_presenter italic text-sm text-gray-500"
>
@@ -497,7 +497,7 @@
{#if $lq__event_presenter_obj_li && $lq__event_presenter_obj_li.length}
<ul class="event_presentation_presenter_list">
{#each $lq__event_presenter_obj_li as event_presenter_obj, index}
{#if event_presenter_obj.event_presentation_id_random == event_presentation_obj.event_presentation_id_random}
{#if event_presenter_obj.event_presentation_id == event_presentation_obj.event_presentation_id}
<li
class="
border border-transparent

View File

@@ -99,8 +99,8 @@
for (let i = 0; i < load_results.length; i++) {
let event_session_obj = load_results[i];
let event_session_id_random = event_session_obj.event_session_id_random;
tmp_li.push(event_session_id_random);
let event_session_id = event_session_obj.event_session_id;
tmp_li.push(event_session_id);
}
event_session_id_li = tmp_li;
console.log(`event_session_id_li:`, event_session_id_li);
@@ -131,7 +131,7 @@
</span>
<!-- This should fade out once the data is loaded. -->
{#await ae_promises[slct_event_location_id]}
{#await ae_promises[slct_event_location_id ?? '']}
<span class="fas fa-spinner fa-spin text-blue-500"></span>
{:then result}
<span class="fas fa-check text-green-500/80"></span>

View File

@@ -131,10 +131,12 @@
.then(async (load_results) => {
console.log(`load_results = `, 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;
// $events_slct.event_presenter_obj_li = load_results.event_presenter_obj_li;
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 ?? [];
// $events_slct.event_presenter_obj_li = load_results.event_presenter_obj_li;
}
// let new_url = data_url.toString();
// console.log(new_url);