feat: Migrate ESLint to flat config and resolve initial linting errors

Migrated the ESLint configuration to the new flat config format ()
and addressed several initial linting errors.

Key changes include:
- Updated ESLint configuration to treat  as warnings instead of errors.
- Fixed  errors in  by declaring  and .
- Corrected  error in  by using  instead of an out-of-scope .
- Resolved  error in  by replacing the undefined  directive with the  component.
- Addressed  errors in  by replacing  with  and  with .
- Fixed  errors in  by importing necessary modules (, , ) and adding missing props (, , , , ).
This commit is contained in:
Scott Idem
2025-11-17 18:46:54 -05:00
parent b99e85f1db
commit 7e1eaba3bc
374 changed files with 95654 additions and 93952 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -6,101 +6,98 @@ import type { key_val } from '$lib/stores/ae_stores';
import { offset } from '@floating-ui/dom';
// Set the version for the app data. Changing this should force a notification and ask the user to clear and reload the page.
let ver = '2024-08-21_1646';
let ver_idb = '2024-08-21_1645';
const ver = '2024-08-21_1646';
const ver_idb = '2024-08-21_1645';
/* *** BEGIN *** Initialize idaa_local_data_struct */
// Longer-term app data. This should be stored to *local* storage.
// Updated 2024-03-06
let idaa_local_data_struct: key_val = {
ver: ver,
ver_idb: ver_idb,
const idaa_local_data_struct: key_val = {
ver: ver,
ver_idb: ver_idb,
// Shared
name: 'Aether - IDAA (SvelteKit 2.x Svelte 4.x)',
title: `OSIT's Æ IDAA`, // - Dev SvelteKit`, // Æ
// Shared
name: 'Aether - IDAA (SvelteKit 2.x Svelte 4.x)',
title: `OSIT's Æ IDAA`, // - Dev SvelteKit`, // Æ
novi_uuid: null,
novi_email: null,
novi_full_name: null,
novi_admin_li: [
"2b078deb-b4e7-4203-99da-9f7cd62159a5"
],
novi_trusted_li: [
"c9ea07b5-06b0-4a43-a2d0-8d06558c8a82",
"58db22ee-4b0a-49a7-9f34-53d2ba85a84b",
],
novi_jitsi_mod_li: [
"5724aad7-6d89-47e7-8943-966fd22911bd",
],
novi_uuid: null,
novi_email: null,
novi_full_name: null,
novi_admin_li: ['2b078deb-b4e7-4203-99da-9f7cd62159a5'],
novi_trusted_li: ['c9ea07b5-06b0-4a43-a2d0-8d06558c8a82', '58db22ee-4b0a-49a7-9f34-53d2ba85a84b'],
novi_jitsi_mod_li: ['5724aad7-6d89-47e7-8943-966fd22911bd'],
novi_archives_base_url: "https://www.idaa.org/idaa-archives",
novi_bb_base_url: "https://www.idaa.org/idaa-bulletin-board",
novi_meetings_base_url: "https://www.idaa.org/idaa-meetings",
novi_archives_base_url: 'https://www.idaa.org/idaa-archives',
novi_bb_base_url: 'https://www.idaa.org/idaa-bulletin-board',
novi_meetings_base_url: 'https://www.idaa.org/idaa-meetings',
'ds': {},
ds: {},
'idaa_cfg_json': {},
idaa_cfg_json: {},
// all, disabled, enabled
'qry__enabled': 'enabled',
// all, hidden, not_hidden
'qry__hidden': 'not_hidden',
'qry__limit': 20,
'qry__offset': 0,
// all, disabled, enabled
qry__enabled: 'enabled',
// all, hidden, not_hidden
qry__hidden: 'not_hidden',
qry__limit: 20,
qry__offset: 0,
archives: {
enabled: 'enabled', // all, disabled, enabled
hidden: 'not_hidden', // all, hidden, not_hidden
limit: 150,
offset: 0,
archives: {
enabled: 'enabled', // all, disabled, enabled
hidden: 'not_hidden', // all, hidden, not_hidden
limit: 150,
offset: 0,
edit_kv: {}, // Used to track which archive objects are being edited
edit__archive_obj: null,
edit__archive_content_obj: null,
edit_kv: {}, // Used to track which archive objects are being edited
edit__archive_obj: null,
edit__archive_content_obj: null
// qry__order_by: 'updated_on', // For the IDB index query
// qry__order_by_li: {'priority': 'DESC', 'sort': 'DESC', 'updated_on': 'DESC', 'created_on': 'DESC', 'name': 'ASC'}, // For the SQL query
},
// qry__order_by: 'updated_on', // For the IDB index query
// qry__order_by_li: {'priority': 'DESC', 'sort': 'DESC', 'updated_on': 'DESC', 'created_on': 'DESC', 'name': 'ASC'}, // For the SQL query
},
bb: {
enabled: 'enabled', // all, disabled, enabled
hidden: 'not_hidden', // all, hidden, not_hidden
limit: 50,
offset: 0,
bb: {
enabled: 'enabled', // all, disabled, enabled
hidden: 'not_hidden', // all, hidden, not_hidden
limit: 50,
offset: 0,
edit_kv: {}, // Used to track which post objects are being edited
edit__post_obj: null,
edit__post_comment_obj: null,
edit_kv: {}, // Used to track which post objects are being edited
edit__post_obj: null,
edit__post_comment_obj: null,
show_list__post_obj_li: true,
show_list__post_obj_li: true,
qry__enabled: 'enabled', // all, disabled, enabled
qry__hidden: 'not_hidden', // all, hidden, not_hidden
qry__limit: 25,
qry__offset: 0,
qry__order_by: 'updated_on', // For the IDB index query
qry__order_by_li: {'updated_on': 'DESC', 'created_on': 'DESC'}, // For the SQL query
qry__enabled: 'enabled', // all, disabled, enabled
qry__hidden: 'not_hidden', // all, hidden, not_hidden
qry__limit: 25,
qry__offset: 0,
qry__order_by: 'updated_on', // For the IDB index query
qry__order_by_li: { updated_on: 'DESC', created_on: 'DESC' } // For the SQL query
},
recovery_meetings: {
edit_kv: {}, // Used to track which event objects are being edited
edit__event_obj: null,
},
qry__enabled: 'enabled', // all, disabled, enabled
qry__hidden: 'not_hidden', // all, hidden, not_hidden
qry__limit: 150,
qry__order_by: 'updated_on', // For the IDB index query; name, updated_on/created_on
qry__order_by_li: {
priority: 'DESC',
sort: 'DESC',
updated_on: 'DESC',
created_on: 'DESC',
name: 'ASC'
}, // For the SQL query
qry__offset: 0,
recovery_meetings: {
edit_kv: {}, // Used to track which event objects are being edited
edit__event_obj: null,
qry__enabled: 'enabled', // all, disabled, enabled
qry__hidden: 'not_hidden', // all, hidden, not_hidden
qry__limit: 150,
qry__order_by: 'updated_on', // For the IDB index query; name, updated_on/created_on
qry__order_by_li: {'priority': 'DESC', 'sort': 'DESC', 'updated_on': 'DESC', 'created_on': 'DESC', 'name': 'ASC'}, // For the SQL query
qry__offset: 0,
qry__fulltext_str: null,
qry__physical: null,
qry__type: null,
qry__virtual: null,
},
qry__fulltext_str: null,
qry__physical: null,
qry__type: null,
qry__virtual: null
}
};
// console.log(`AE Stores - App IDAA Local Storage Data:`, idaa_local_data_struct);
@@ -108,118 +105,113 @@ let idaa_local_data_struct: key_val = {
// export let ae_loc = writable(idaa_local_data_struct);
// This works and uses *local* storage:
export let idaa_loc: Writable<key_val> = persisted('ae_idaa_loc', idaa_local_data_struct);
export const idaa_loc: Writable<key_val> = persisted('ae_idaa_loc', idaa_local_data_struct);
// console.log(`AE Stores - App Local Storage Data:`, get(ae_loc));
/* *** BEGIN *** Initialize idaa_session_data_struct */
// Temporary app data. This should be stored to session storage.
// Updated 2024-03-06
let idaa_session_data_struct: key_val = {
ver: ver,
ver_idb: ver_idb,
log_lvl: 1,
const idaa_session_data_struct: key_val = {
ver: ver,
ver_idb: ver_idb,
log_lvl: 1,
archives: {
qry__status: null,
show__modal_edit__archive_id: null,
show__modal_view__archive_id: null,
show__modal_edit__archive_content_id: null,
show__modal_view__archive_content_id: null,
obj_changed: false, // Used to track if the archive object has been changed in the edit view
},
archives: {
qry__status: null,
show__modal_edit__archive_id: null,
show__modal_view__archive_id: null,
show__modal_edit__archive_content_id: null,
show__modal_view__archive_content_id: null,
obj_changed: false // Used to track if the archive object has been changed in the edit view
},
bb: {
qry__status: null,
bb: {
qry__status: null,
edit__post_obj: null,
edit__post_obj: null,
show__inline_edit__post_obj: null,
show__modal_edit__post_id: null,
show__modal_view__post_id: null,
obj_changed: false, // Used to track if the post object has been changed in the edit view
// edit_kv: {}, // Used to track which post objects are being edited
},
show__inline_edit__post_obj: null,
show__modal_edit__post_id: null,
show__modal_view__post_id: null,
obj_changed: false // Used to track if the post object has been changed in the edit view
// edit_kv: {}, // Used to track which post objects are being edited
},
recovery_meetings: {
qry__status: null,
qry__fulltext_str: null,
recovery_meetings: {
qry__status: null,
qry__fulltext_str: null,
edit__event_obj: null,
edit__event_obj: null,
status_qry__last_request_str: null,
status_qry__last_request_str: null,
show__modal_edit: false,
show__modal_view: false,
show__modal_edit__event_id: null,
show__modal_view__event_id: null,
obj_changed: false, // Used to track if the event object has been changed in the edit view
attend_platform: null, // 'Zoom', 'Google Meet', 'Microsoft Teams', etc.
},
show__modal_edit: false,
show__modal_view: false,
show__modal_edit__event_id: null,
show__modal_view__event_id: null,
obj_changed: false, // Used to track if the event object has been changed in the edit view
attend_platform: null // 'Zoom', 'Google Meet', 'Microsoft Teams', etc.
}
};
// console.log(`AE Stores - App IDAA Session Storage Data:`, idaa_session_data_struct);
export let idaa_sess = writable(idaa_session_data_struct);
export const idaa_sess = writable(idaa_session_data_struct);
/* *** BEGIN *** Initialize idaa_slct and idaa_trig */
/* The slct and slct_trigger variable should not be stored in local storage. Only use session storage because browser tabs can be open to different idaa, badges, exhibits, etc. */
// Intended for temporary session storage.
// Updated 2024-03-06
let idaa_slct_obj_template: key_val = {
// Top level
'event_id': null,
'event_obj': {},
'event_obj_li': [],
const idaa_slct_obj_template: key_val = {
// Top level
event_id: null,
event_obj: {},
event_obj_li: [],
'archive_id': null,
'archive_obj': {},
'archive_obj_li': [],
archive_id: null,
archive_obj: {},
archive_obj_li: [],
'archive_content_id': null,
'archive_content_obj': {},
'archive_content_obj_li': [],
archive_content_id: null,
archive_content_obj: {},
archive_content_obj_li: [],
'post_id': null,
'post_obj': {},
'post_obj_li': [],
post_id: null,
post_obj: {},
post_obj_li: [],
'post_comment_id': null,
'post_comment_obj': {},
'post_comment_obj_li': [],
post_comment_id: null,
post_comment_obj: {},
post_comment_obj_li: []
};
// console.log(`AE Stores - Selected IDAA Objects:`, idaa_slct_obj_template);
// This works, and uses *session* (not local) storage:
export let idaa_slct = writable(idaa_slct_obj_template);
export const idaa_slct = writable(idaa_slct_obj_template);
// This works and uses *local* storage:
// export let idaa_slct: Writable<key_val> = persisted('ae_idaa_slct', idaa_slct_obj_template);
/* *** BEGIN *** Initialize idaa_trig */
// Intended for temporary session storage.
// Updated 2024-11-19
let idaa_trig_template: key_val = {
archive_id: false,
archive_content_li: false,
event_id: false,
post_id: false,
const idaa_trig_template: key_val = {
archive_id: false,
archive_content_li: false,
event_id: false,
post_id: false
};
export let idaa_trig: any = writable(idaa_trig_template);
export const idaa_trig: any = writable(idaa_trig_template);
// console.log(`AE IDAA Stores - IDAA Trigger:`, idaa_trig);
/* *** BEGIN *** Initialize idaa_prom */
// Intended for temporary session storage.
// Updated 2024-11-19
let idaa_prom_template: key_val = {
archive_id: false,
archive_content_li: false,
event_id: false,
post_id: false,
const idaa_prom_template: key_val = {
archive_id: false,
archive_content_li: false,
event_id: false,
post_id: false
};
export let idaa_prom: any = writable(idaa_prom_template);
export const idaa_prom: any = writable(idaa_prom_template);
// console.log(`AE IDAA Stores - IDAA Trigger:`, idaa_prom);

View File

@@ -3,8 +3,21 @@ import { persisted } from 'svelte-persisted-store';
import { readable, writable } from 'svelte/store';
import type { Readable, Writable } from 'svelte/store';
import { PUBLIC_TESTING, PUBLIC_AE_API_PROTOCOL, PUBLIC_AE_API_SERVER, PUBLIC_AE_API_BAK_SERVER, PUBLIC_AE_API_PORT, PUBLIC_AE_API_PATH, PUBLIC_AE_API_SECRET_KEY, PUBLIC_AE_API_CRUD_SUPER_KEY, PUBLIC_AE_NO_ACCOUNT_ID, PUBLIC_AE_NO_ACCOUNT_ID_TOKEN, PUBLIC_AE_ACCOUNT_ID, PUBLIC_AE_EVENT_ID, PUBLIC_AE_SPONSORSHIP_CFG_ID } from '$env/static/public';
import {
PUBLIC_TESTING,
PUBLIC_AE_API_PROTOCOL,
PUBLIC_AE_API_SERVER,
PUBLIC_AE_API_BAK_SERVER,
PUBLIC_AE_API_PORT,
PUBLIC_AE_API_PATH,
PUBLIC_AE_API_SECRET_KEY,
PUBLIC_AE_API_CRUD_SUPER_KEY,
PUBLIC_AE_NO_ACCOUNT_ID,
PUBLIC_AE_NO_ACCOUNT_ID_TOKEN,
PUBLIC_AE_ACCOUNT_ID,
PUBLIC_AE_EVENT_ID,
PUBLIC_AE_SPONSORSHIP_CFG_ID
} from '$env/static/public';
console.log(`AE Stores - PUBLIC_TESTING:`, PUBLIC_TESTING);
const api_server_fqdn = PUBLIC_AE_API_SERVER; // 'api.oneskyit.com'
@@ -15,7 +28,7 @@ const api_secret_key = PUBLIC_AE_API_SECRET_KEY;
const api_crud_super_key = PUBLIC_AE_API_CRUD_SUPER_KEY;
// const ae_account_id = PUBLIC_AE_ACCOUNT_ID;
let ae_account_id: null|string = null;
const ae_account_id: null | string = null;
const ae_no_account_id = PUBLIC_AE_NO_ACCOUNT_ID;
const ae_no_account_id_token = PUBLIC_AE_NO_ACCOUNT_ID_TOKEN;
const ae_event_id = PUBLIC_AE_EVENT_ID;
@@ -28,18 +41,16 @@ const ae_sponsorship_cfg_id = PUBLIC_AE_SPONSORSHIP_CFG_ID;
// console.log(import.meta.env.MODE);
// console.log(import.meta.env.BASE_URL);
// Export the key_val type for use in other files.
export type key_val = {
[key: string]: any; // variable key
// name: string;
[key: string]: any; // variable key
// name: string;
};
// export type key_val = key_val;
// import { html__not_set, classes__events_pres_mgmt_menu } from './ae_string_snippets';
import {string_snippets} from '$lib/utils/ae_string_snippets';
export let ae_snip = string_snippets;
import { string_snippets } from '$lib/utils/ae_string_snippets';
export const ae_snip = string_snippets;
// export let ae_snip =
// {
@@ -48,250 +59,250 @@ export let ae_snip = string_snippets;
// };
// Set the version for the app data. Changing this should force a notification and ask the user to clear and reload the page.
let ver = '2025-05-01_1445'; // KEEP: 2025-05-01_1445
let ver_idb = '2025-05-01_1445'; // Not currently used
const ver = '2025-05-01_1445'; // KEEP: 2025-05-01_1445
const ver_idb = '2025-05-01_1445'; // Not currently used
// *** BEGIN *** Longer-term app data. This should be stored to local storage.
const ae_app_local_data_defaults: key_val = {
last_page_reload: null,
// last_idb_reload: null,
// last_cache_refresh: null, // Date.now()
last_cache_refresh: Date.now(),
cache_expired: false,
ver: ver, // ver, // '2025-04-18_1100',
ver_idb: ver_idb, // '2025-04-18_1100',
last_page_reload: null,
// last_idb_reload: null,
// last_cache_refresh: null, // Date.now()
last_cache_refresh: Date.now(),
cache_expired: false,
ver: ver, // ver, // '2025-04-18_1100',
ver_idb: ver_idb, // '2025-04-18_1100',
name: 'Aether - App Hub (SvelteKit 2.x Svelte 4.x)',
name: 'Aether - App Hub (SvelteKit 2.x Svelte 4.x)',
theme: 'light',
theme_mode: 'light',
theme_name: 'nouveau', // wintry
iframe: false,
theme: 'light',
theme_mode: 'light',
theme_name: 'nouveau', // wintry
iframe: false,
// disable_sys_header: false,
// disable_sys_nav: false,
// disable_sys_footer: false,
// disable_sys_header: false,
// disable_sys_nav: false,
// disable_sys_footer: false,
browser_type: null, // Safari needs help with scrolling correctly in iframes.
browser_type: null, // Safari needs help with scrolling correctly in iframes.
title: `OSIT's Æ`, // - Dev SvelteKit`, // &AElig;
title: `OSIT's Æ`, // - Dev SvelteKit`, // &AElig;
// debug_menu: false, // Flag show debug menu.
debug_mode: false, // Flag to know if we should be in debug mode and show show debug options.
edit_mode: false, // Flag to know if we should be in edit mode and show edit options.
adv_mode: false, // Flag to know if we should be in advanced mode and show advanced options.
// sys_menu: true, // Flag show system menu.
sync_local_config: true, // Flag to know if we should sync local config with the remote API server.
// debug_menu: false, // Flag show debug menu.
debug_mode: false, // Flag to know if we should be in debug mode and show show debug options.
edit_mode: false, // Flag to know if we should be in edit mode and show edit options.
adv_mode: false, // Flag to know if we should be in advanced mode and show advanced options.
// sys_menu: true, // Flag show system menu.
sync_local_config: true, // Flag to know if we should sync local config with the remote API server.
'account_id': ae_account_id, // OSIT Demo _XY7DXtc9MY
'account_code': 'not_set',
'account_name': 'Account Name Not Set',
'allow_access': true, // Set to key site key was used, otherwise set to true.
'site_domain': null, // https://example.com, https://dev.example.com, etc.
'site_access_key': null, // This is the general site access key
'site_domain_access_key': null, // This is specific to a (sub)domain.
'site_cfg_json': {
slct__event_id: null,
slct__event_badge_template_id: null,
slct__sponsorship_cfg_id: null,
header_image_path: null,
},
account_id: ae_account_id, // OSIT Demo _XY7DXtc9MY
account_code: 'not_set',
account_name: 'Account Name Not Set',
allow_access: true, // Set to key site key was used, otherwise set to true.
site_domain: null, // https://example.com, https://dev.example.com, etc.
site_access_key: null, // This is the general site access key
site_domain_access_key: null, // This is specific to a (sub)domain.
site_cfg_json: {
slct__event_id: null,
slct__event_badge_template_id: null,
slct__sponsorship_cfg_id: null,
header_image_path: null
},
// The site access codes can be pulled from the site records for an account.
'site_access_code_kv': {
// 'manager': '10240',
'administrator': null,
'trusted': null,
'public': 'public1980',
'authenticated': 'auth1980'
},
// 'manager_passcode': '10240',
// 'administrator_passcode': '11500',
// 'trusted_passcode': '19111',
// 'authenticated_passcode': 'auth2024',
// The site access codes can be pulled from the site records for an account.
site_access_code_kv: {
// 'manager': '10240',
administrator: null,
trusted: null,
public: 'public1980',
authenticated: 'auth1980'
},
// 'manager_passcode': '10240',
// 'administrator_passcode': '11500',
// 'trusted_passcode': '19111',
// 'authenticated_passcode': 'auth2024',
access_type: 'anonymous',
administrator_access: false,
trusted_access: false,
public_access: false,
authenticated_access: false,
anonymous_access: true,
access_type: 'anonymous',
administrator_access: false,
trusted_access: false,
public_access: false,
authenticated_access: false,
anonymous_access: true,
user_email: null, // Currently used with Sponsorships only?
user_access_type: null, // Used to revert back to the user's access type after quick access (temporarily escalate permissions) turned off.
user_email: null, // Currently used with Sponsorships only?
user_access_type: null, // Used to revert back to the user's access type after quick access (temporarily escalate permissions) turned off.
// Added 2025-04-04
person_id: null, // The current person_id of the logged-in user (if any)
person: {
// WARNING: We need to add some logic on sign in to only include needed fields. 2025-08-12
id: null, // The current person_id of the logged-in user
// profile_id: null, // The current person_profile_id of the logged-in user
// pronouns: null,
// informal_name: null,
given_name: null,
// family_name: null,
// professional_title: null,
full_name: null, // convenience
full_name_override: null, // was called display_name
// Added 2025-04-04
person_id: null, // The current person_id of the logged-in user (if any)
person: {
// WARNING: We need to add some logic on sign in to only include needed fields. 2025-08-12
id: null, // The current person_id of the logged-in user
// profile_id: null, // The current person_profile_id of the logged-in user
// pronouns: null,
// informal_name: null,
given_name: null,
// family_name: null,
// professional_title: null,
full_name: null, // convenience
full_name_override: null, // was called display_name
// affiliations: null,
primary_email: null, // The primary email of the logged-in person/user
user_id: null, // The user ID of the logged-in user
// affiliations: null,
primary_email: null, // The primary email of the logged-in person/user
user_id: null, // The user ID of the logged-in user
qry_limit__people: 150,
qry_limit__people: 150,
show_content__person_page_help: false,
},
show_content__person_page_help: false
},
// Added 2025-04-04
user_id: null, // The current user_id of the logged-in user (if any)
user: {
id: null, // The current user_id of the logged-in user
username: null,
name: null,
email: null, // The email of the logged-in user
allow_auth_key: null, // For sign in without password
super: false, // Is the user a super user
manager: false, // Is the user a global manager (can manage accounts and users)
administrator: false, // Is the user an account administrator
verified: false, // Is the user verified
public: false, // Is the user a public user (can view public content)
person_id: null, // The person ID of the logged-in user
access_type: null, // The access type of the logged-in user
// Added 2025-04-04
user_id: null, // The current user_id of the logged-in user (if any)
user: {
id: null, // The current user_id of the logged-in user
username: null,
name: null,
email: null, // The email of the logged-in user
allow_auth_key: null, // For sign in without password
super: false, // Is the user a super user
manager: false, // Is the user a global manager (can manage accounts and users)
administrator: false, // Is the user an account administrator
verified: false, // Is the user verified
public: false, // Is the user a public user (can view public content)
person_id: null, // The person ID of the logged-in user
access_type: null, // The access type of the logged-in user
qry_limit__users: 100,
},
qry_limit__users: 100
},
'qry__enabled': 'enabled', // all, disabled, enabled
'qry__hidden': 'not_hidden', // all, hidden, not_hidden
'qry__limit': 20,
'qry__offset': 0,
qry__enabled: 'enabled', // all, disabled, enabled
qry__hidden: 'not_hidden', // all, hidden, not_hidden
qry__limit: 20,
qry__offset: 0,
qr_scanner_version: 'one',
qr_scanner_version: 'one',
'admin': {
show_element__sql_qry: false,
show_element__sql_qry_results: false,
},
admin: {
show_element__sql_qry: false,
show_element__sql_qry_results: false
},
sys_menu: {
hide: false,
expand: false,
hide_access_type: false,
expand_access_type: false,
hide_edit_mode: false,
expand_edit_mode: false,
hide_user: false,
expand_user: false,
hide_theme: false,
expand_theme: false,
hide_app_cfg: false,
expand_app_cfg: false,
},
debug_menu: {
hide: false,
expand: false,
// hide_quick_info: true
},
sys_menu: {
hide: false,
expand: false,
hide_access_type: false,
expand_access_type: false,
hide_edit_mode: false,
expand_edit_mode: false,
hide_user: false,
expand_user: false,
hide_theme: false,
expand_theme: false,
hide_app_cfg: false,
expand_app_cfg: false
},
debug_menu: {
hide: false,
expand: false
// hide_quick_info: true
},
app_cfg: {
show_element__header: false,
show_element__footer: false,
show_element__menu: false,
show_element__menu_btn: true,
app_cfg: {
show_element__header: false,
show_element__footer: false,
show_element__menu: false,
show_element__menu_btn: true,
show_element__access_type: true,
show_element__passcode_input: true,
show_element__cfg: true,
show_element__cfg_detail: false,
show_element__sign_in_out: true, // Show the sign-in/out button in the UI
show_opt__debug: true,
show_opt__permissions: true,
show_opt__reset: true,
show_opt__sync: true,
show_opt__theme: true,
show_opt__utilities: true,
},
show_element__access_type: true,
show_element__passcode_input: true,
show_element__cfg: true,
show_element__cfg_detail: false,
show_element__sign_in_out: true, // Show the sign-in/out button in the UI
show_opt__debug: true,
show_opt__permissions: true,
show_opt__reset: true,
show_opt__sync: true,
show_opt__theme: true,
show_opt__utilities: true
},
files: {
processed_file_kv: {},
uploaded_file_kv: {},
video_clip_file_kv: {},
add_to_use_files_method: 'upload', // upload, select
},
files: {
processed_file_kv: {},
uploaded_file_kv: {},
video_clip_file_kv: {},
add_to_use_files_method: 'upload' // upload, select
},
'ds': {},
'hub': {
'show_element__cfg': true,
'show_element__cfg_detail': false,
'show_element__access_type': true,
'theme_mode': 'light',
'theme_name': 'wintry', // wintry
ds: {},
hub: {
show_element__cfg: true,
show_element__cfg_detail: false,
show_element__access_type: true,
theme_mode: 'light',
theme_name: 'wintry', // wintry
'classes__form': 'border border-surface-200 p-4 space-y-4 rounded-container',
classes__form: 'border border-surface-200 p-4 space-y-4 rounded-container',
'qr': {},
},
'mod': {
'archives': {},
qr: {}
},
mod: {
archives: {},
'events': {
'event_id': null,
events: {
event_id: null,
show_edit__event_presenter_obj: false,
show_list__event_presenter_obj_li: true,
show_view__event_presenter_obj: false,
show_edit__event_presenter_obj: false,
show_list__event_presenter_obj_li: true,
show_view__event_presenter_obj: false,
submit_status: null, // 'saving', 'created', 'updated'
submit_status: null, // 'saving', 'created', 'updated'
// Badge Printing
// Badge Printing
// Lead Retrievals
// Lead Retrievals
// Presentation Management
// Presentation Management
// Speakers Management
'default_session_id': null, // Assign to presenters by default
// Speakers Management
default_session_id: null // Assign to presenters by default
// other
},
// other
},
'journals': {},
journals: {},
'posts': {},
posts: {},
'sponsorships': {
'cfg_id': ae_sponsorship_cfg_id,
sponsorships: {
cfg_id: ae_sponsorship_cfg_id,
for_type: null,
for_id: null,
for_type: null,
for_id: null,
level_guest_max_li: {
0: 0,
1: 4, // CHOW 2024 - Friend
2: 8, // CHOW 2024 - Supporter
3: 8, // CHOW 2024 - Advocate
4: 8, // CHOW 2024 - Champion
5: 8, // CHOW 2024 - Presenting Partner
6: 16, // CHOW 2024 - Signature Partner
7: 16, // CHOW 2024 - Premier Partner
},
level_guest_max_li: {
0: 0,
1: 4, // CHOW 2024 - Friend
2: 8, // CHOW 2024 - Supporter
3: 8, // CHOW 2024 - Advocate
4: 8, // CHOW 2024 - Champion
5: 8, // CHOW 2024 - Presenting Partner
6: 16, // CHOW 2024 - Signature Partner
7: 16 // CHOW 2024 - Premier Partner
},
show_edit__sponsorship_obj: false,
show_list__sponsorship_obj_li: true,
show_view__sponsorship_obj: false,
show_edit__sponsorship_obj: false,
show_list__sponsorship_obj_li: true,
show_view__sponsorship_obj: false,
show_question__accommodations: false,
show_question__accommodations: false,
submit_status: null, // 'saving', 'created', 'updated'
},
submit_status: null // 'saving', 'created', 'updated'
}
// testing: {},
},
// testing: {},
}
// testing: true,
// ver_testing: true,
}
// testing: true,
// ver_testing: true,
};
// let ae_app_local_data_struct: key_val = {
// ...ae_app_local_data_defaults,
@@ -331,205 +342,194 @@ const ae_app_local_data_defaults: key_val = {
// export let ae_loc = writable(ae_app_local_data_struct);
// This works and uses local storage:
export let ae_loc: Writable<key_val> = persisted('ae_loc', ae_app_local_data_defaults);
export const ae_loc: Writable<key_val> = persisted('ae_loc', ae_app_local_data_defaults);
// console.log(`AE Stores - App Local Storage Data:`, get(ae_loc));
// *** BEGIN *** Temporary app data. This should be stored to session storage.
let ae_app_session_data_defaults: key_val = {
// ver: '2025-04-18_1335', // ver, // '2025-04-18_1100',
ver: ver,
ver_idb: ver_idb,
log_lvl: 0,
const ae_app_session_data_defaults: key_val = {
// ver: '2025-04-18_1335', // ver, // '2025-04-18_1100',
ver: ver,
ver_idb: ver_idb,
log_lvl: 0,
disable_sys_header: false,
disable_sys_nav: false,
disable_sys_footer: false,
disable_sys_header: false,
disable_sys_nav: false,
disable_sys_footer: false,
sys_menu: {
expand: false,
focus_passcode_input: false,
},
sys_menu: {
expand: false,
focus_passcode_input: false
},
debug_menu: {
hide_quick_info: true
},
debug_menu: {
hide_quick_info: true
},
app_cfg: {
show_element__passcode_input: true,
},
app_cfg: {
show_element__passcode_input: true
},
'ds': {
'submit_status': null,
},
'ds_loaded': {
},
ds: {
submit_status: null
},
ds_loaded: {},
'files': {
disable_submit__hosted_file_obj: false,
processed_file_kv: {},
uploaded_file_kv: {},
video_clip_file_kv: {},
processed_file_list: [],
// uploaded_file_list: [],
video_clip_file_list: [],
submit_status: null, // 'saving', 'created', 'updated', 'saved'
clip_complete: null,
},
files: {
disable_submit__hosted_file_obj: false,
processed_file_kv: {},
uploaded_file_kv: {},
video_clip_file_kv: {},
processed_file_list: [],
// uploaded_file_list: [],
video_clip_file_list: [],
submit_status: null, // 'saving', 'created', 'updated', 'saved'
clip_complete: null
},
'hub': {
'show_xyz': null,
'account_id_qry_status': null,
'event_badge_id_status_qry__search': null,
'event_presenter_id_qry_status': null,
'site_domain_id_qry_status': null,
'sponsorship_id_qry_status': null,
'sponsorship_cfg_id_qry_status': null,
hub: {
show_xyz: null,
account_id_qry_status: null,
event_badge_id_status_qry__search: null,
event_presenter_id_qry_status: null,
site_domain_id_qry_status: null,
sponsorship_id_qry_status: null,
sponsorship_cfg_id_qry_status: null,
'qr': {},
},
'mod': {
'archives': {},
'events': {
// Badge Printing
qr: {}
},
mod: {
archives: {},
events: {
// Badge Printing
// Lead Retrievals
// Presentation Management
// Speakers Management
// other
},
journals: {},
posts: {},
sponsorships: {
disable_submit__sponsorship_obj: false,
slct__level_num: 0,
show_question__accommodations: false,
submit_status: null // 'saving', 'created', 'updated', 'saved'
},
testing: {}
},
// Lead Retrievals
person: {
show_report__person_li: false,
// Presentation Management
qry_limit__people: 100
},
// Speakers Management
show__modal_change_password: false,
// other
},
'journals': {},
'posts': {},
'sponsorships': {
disable_submit__sponsorship_obj: false,
slct__level_num: 0,
show_question__accommodations: false,
submit_status: null, // 'saving', 'created', 'updated', 'saved'
},
'testing': {},
},
download: {},
// For API download and upload progress status per file.
api_download_kv: {},
// Example: {example_file_id: {status: 'downloading', endpoint: '/event/file/abc123/download', filename: 'example_file_name.ext', size_total: 0, size_loaded: 0, percent_completed: 0}}
api_upload_kv: {}, // {example_temp_id: {status: 'uploading', endpoint: '/event/file/abc123/upload', filename: 'example_file_name.ext', size_total: 0, size_loaded: 0, percent_completed: 0}}
'person': {
show_report__person_li: false,
qry_limit__people: 100,
},
show__modal_change_password: false,
'download': {},
// For API download and upload progress status per file.
'api_download_kv': {},
// Example: {example_file_id: {status: 'downloading', endpoint: '/event/file/abc123/download', filename: 'example_file_name.ext', size_total: 0, size_loaded: 0, percent_completed: 0}}
'api_upload_kv': {}, // {example_temp_id: {status: 'uploading', endpoint: '/event/file/abc123/upload', filename: 'example_file_name.ext', size_total: 0, size_loaded: 0, percent_completed: 0}}
test: true,
test: true
};
// console.log(`AE Stores - App Session Storage Data:`, ae_app_session_data_defaults);
export let ae_sess = writable(ae_app_session_data_defaults);
export const ae_sess = writable(ae_app_session_data_defaults);
// *** BEGIN *** Temporary API data. This should be stored to session storage.
export let ae_api_data_struct: key_val = {
'ver': '2024-08-11_11',
'fqdn': api_server_fqdn,
'base_url': api_base_url,
'base_url_bak': api_base_url_bak,
'api_secret_key': api_secret_key, // 'YOUR_API_SECRET_KEY',
'api_secret_key_bak': api_secret_key, // 'YOUR_API_SECRET_KEY',
'api_crud_super_key': api_crud_super_key, // 'YOUR_SUPER_KEY' 'zp5PtX4zUsI'
'headers': {},
'account_id': ae_account_id,
export const ae_api_data_struct: key_val = {
ver: '2024-08-11_11',
fqdn: api_server_fqdn,
base_url: api_base_url,
base_url_bak: api_base_url_bak,
api_secret_key: api_secret_key, // 'YOUR_API_SECRET_KEY',
api_secret_key_bak: api_secret_key, // 'YOUR_API_SECRET_KEY',
api_crud_super_key: api_crud_super_key, // 'YOUR_SUPER_KEY' 'zp5PtX4zUsI'
headers: {},
account_id: ae_account_id
};
let ae_api_headers: key_val = {};
const ae_api_headers: key_val = {};
ae_api_headers['Access-Control-Allow-Origin'] = '*';
ae_api_headers['Content-Yype'] = 'application/json';
ae_api_headers['x-aether-api-key'] = ae_api_data_struct.api_secret_key;
ae_api_headers['x-aether-api-token'] = 'fake-temp-token';
ae_api_headers['x-aether-api-expire-on'] = '';
if (ae_account_id) {
ae_api_headers['x-account-id'] = ae_account_id;
ae_api_headers['x-account-id'] = ae_account_id;
} else {
// ae_api_headers['x-account-id'] = ;
// ae_api_headers['x-account-id'] = ;
}
if (ae_no_account_id) {
ae_api_headers['x-no-account-id'] = ae_no_account_id;
ae_api_headers['x-no-account-id'] = ae_no_account_id;
}
ae_api_data_struct['headers'] = ae_api_headers;
// console.log(`AE Stores - API Data:`, ae_api_data_struct);
export let ae_api = writable(ae_api_data_struct);
export const ae_api = writable(ae_api_data_struct);
// *** BEGIN *** Trigger to update the slct variables and other things.
let ae_trig_template: key_val = {};
export let ae_trig = writable(ae_trig_template);
const ae_trig_template: key_val = {};
export const ae_trig = writable(ae_trig_template);
/* *** BEGIN *** Initialize slct and slct_trigger */
/* The slct and slct_trigger variable should not be stored in local storage. Only use session storage because browser tabs can be open to different accounts, events, sponsorships, etc. */
// Intended for temporary session storage.
// Updated 2024-03-15
let slct_obj_template: key_val = {
'account_id': ae_account_id,
'account_obj': {},
'event_id': null,
'event_obj': {},
'event_obj_li': [],
// 'event_exhibit_id': null,
// 'event_exhibit_obj': {},
// 'event_exhibit_obj_li': [],
'event_presentation_id': null,
'event_presentation_obj': {},
'event_presentation_obj_li': [],
'event_presenter_id': null,
'event_presenter_obj': {},
'event_presenter_obj_li': [],
'event_session_id': null,
'event_session_obj': {},
'event_session_obj_li': [],
'sponsorship_id': null,
'sponsorship_obj': {},
'sponsorship_obj_li': [],
'sponsorship_cfg_id': ae_sponsorship_cfg_id,
'sponsorship_cfg_obj': {},
'sponsorship_cfg_obj_li': [],
'post_id': null,
'post_obj': {},
'post_obj_li': [],
'post_comment_id': null,
'post_comment_obj': {},
'post_comment_obj_li': []
const slct_obj_template: key_val = {
account_id: ae_account_id,
account_obj: {},
event_id: null,
event_obj: {},
event_obj_li: [],
// 'event_exhibit_id': null,
// 'event_exhibit_obj': {},
// 'event_exhibit_obj_li': [],
event_presentation_id: null,
event_presentation_obj: {},
event_presentation_obj_li: [],
event_presenter_id: null,
event_presenter_obj: {},
event_presenter_obj_li: [],
event_session_id: null,
event_session_obj: {},
event_session_obj_li: [],
sponsorship_id: null,
sponsorship_obj: {},
sponsorship_obj_li: [],
sponsorship_cfg_id: ae_sponsorship_cfg_id,
sponsorship_cfg_obj: {},
sponsorship_cfg_obj_li: [],
post_id: null,
post_obj: {},
post_obj_li: [],
post_comment_id: null,
post_comment_obj: {},
post_comment_obj_li: []
};
// console.log(`AE Stores - Selected Objects:`, slct_obj_template);
// This works, and uses *session* (not local) storage:
export let slct = writable(slct_obj_template);
export const slct = writable(slct_obj_template);
// This works and uses *local* storage:
// export let slct: Writable<key_val> = persisted('ae_slct', slct_obj_template);
/* *** BEGIN *** Initialize slct_trigger */
// Intended for temporary session storage.
// Updated 2024-02-27
export let slct_trigger: any = writable(null);
export const slct_trigger: any = writable(null);
// console.log(`AE Stores - Selected Trigger:`, slct_trigger);
/* *** BEGIN *** Create time variable */
// Updated 2020
export const time = readable(new Date(), function start(set) {
const interval = setInterval(() => {
set(new Date());
}, 1000);
const interval = setInterval(() => {
set(new Date());
}, 1000);
return function stop() {
clearInterval(interval);
};
return function stop() {
clearInterval(interval);
};
});