diff --git a/src/app.css b/src/app.css index 4759b651..a09a3424 100644 --- a/src/app.css +++ b/src/app.css @@ -9,15 +9,18 @@ @import '@skeletonlabs/skeleton/themes/modern'; @import '@skeletonlabs/skeleton/themes/wintry'; -@source '../../node_modules/@skeletonlabs/skeleton-svelte/dist'; +@source '../node_modules/@skeletonlabs/skeleton-svelte/dist'; /* Add your theme import for your theme: "osit-custom-theme" here */ -@plugin '@tailwindcss/forms'; -@plugin '@tailwindcss/typography'; +/* @plugin '@tailwindcss/forms'; */ +/* @plugin '@tailwindcss/typography'; */ -@import "tailwindcss/preflight"; -@tailwind utilities; + +/* @import "tailwindcss/theme.css" layer(theme); */ +/* @import "tailwindcss/preflight"; */ +@import "tailwindcss/utilities.css" layer(utilities); +/*@tailwind utilities;*/ /* Register a Custom Themes */ diff --git a/src/lib/ae_events_stores.ts b/src/lib/ae_events_stores.ts index aa86931f..ca2029dc 100644 --- a/src/lib/ae_events_stores.ts +++ b/src/lib/ae_events_stores.ts @@ -462,6 +462,11 @@ let events_session_data_struct: key_val = { show_fields__presentation: true, show_fields__session: true, + + show_modal__presenter_agree: false, + show__session_poc_profile: false, + show_modal__session_poc_agree: false, + status_rpt: { recent_files: null, presenters_agree: null, diff --git a/src/lib/ae_stores.ts b/src/lib/ae_stores.ts index bff2937b..acba1441 100644 --- a/src/lib/ae_stores.ts +++ b/src/lib/ae_stores.ts @@ -371,6 +371,8 @@ let ae_app_session_data_defaults: key_val = { qry_limit__people: 99, }, + show__modal_change_password: false, + 'download': {}, // For API download and upload progress status per file. diff --git a/src/lib/components/shad-editor/editor.css b/src/lib/components/shad-editor/editor.css index 67a222af..c2568fe6 100644 --- a/src/lib/components/shad-editor/editor.css +++ b/src/lib/components/shad-editor/editor.css @@ -1,5 +1,18 @@ -@import "tailwindcss/preflight"; -@tailwind utilities; +@import 'tailwindcss'; + +@import "@skeletonlabs/skeleton"; +@import "@skeletonlabs/skeleton/optional/presets"; + +/* @import "tailwindcss/preflight"; */ +/* @tailwind utilities; */ + +@import '@skeletonlabs/skeleton/themes/cerberus'; +@import '@skeletonlabs/skeleton/themes/modern'; +@import '@skeletonlabs/skeleton/themes/wintry'; + +@source '../node_modules/@skeletonlabs/skeleton-svelte/dist'; + +@import "tailwindcss/utilities.css" layer(utilities); .tiptap :where(p):not(:where([class~='not-prose'], [class~='not-prose'] *)) { @@ -9,7 +22,7 @@ .tiptap code:not(pre code) { /* Remove the before and after pseudo elements */ - @apply rounded-sm border bg-muted/50 p-1 before:content-[''] after:content-['']; + @apply rounded-sm border bg-black/50 p-1 before:content-[''] after:content-['']; } .tiptap blockquote p { @@ -54,11 +67,12 @@ ul[data-type='taskList'] li label { } ul[data-type='taskList'] li[data-checked='true'] div { - @apply text-muted-foreground line-through; + @apply text-black/50 line-through; } input[type='checkbox'] { - @apply size-4 cursor-pointer rounded-sm !important; + @apply size-4 cursor-pointer rounded-sm; + /* This kills compiling !important */ } ul[data-type='taskList'] ul[data-type='taskList'] { @@ -71,7 +85,7 @@ ul[data-type='taskList'] ul[data-type='taskList'] { } .color::before { - @apply mb-[0.15rem] mr-[0.1rem] inline-block size-[1rem] rounded-sm border border-muted align-middle; + @apply mb-[0.15rem] mr-[0.1rem] inline-block size-[1rem] rounded-sm border border-black/50 align-middle; background-color: var(--color); content: ' '; } @@ -87,7 +101,7 @@ ul[data-type='taskList'] ul[data-type='taskList'] { .tiptap table td, .tiptap table th { - @apply border border-muted; + @apply border border-black/50; box-sizing: border-box; min-width: 1em; padding: 6px 8px; @@ -101,17 +115,20 @@ ul[data-type='taskList'] ul[data-type='taskList'] { } .tiptap table th { - @apply bg-muted/50 text-left font-bold; + @apply bg-black/50 text-left; + /* Kills compile: font-bold */ + font-weight: bold; + } .tiptap table .selectedCell:after { - @apply pointer-events-none absolute bottom-0 left-0 right-0 top-0 border-[2px] border-muted-foreground; + @apply pointer-events-none absolute bottom-0 left-0 right-0 top-0 border-[2px] border-black/50; content: ''; z-index: 2; } .tiptap table .column-resize-handle { - @apply pointer-events-none absolute -bottom-[2px] -right-[2px] top-0 w-1 bg-muted; + @apply pointer-events-none absolute -bottom-[2px] -right-[2px] top-0 w-1 bg-black/50; } .tiptap .tableWrapper { diff --git a/src/lib/components/shad-editor/onedark.css b/src/lib/components/shad-editor/onedark.css index 1a781818..50d368c3 100644 --- a/src/lib/components/shad-editor/onedark.css +++ b/src/lib/components/shad-editor/onedark.css @@ -63,7 +63,9 @@ } .hljs-strong { - @apply font-bold; + /* @apply font-bold; */ + /* Kills compile: font-bold */ + font-weight: bold; } /* Base styles */ diff --git a/src/lib/e_app_clipboard.svelte b/src/lib/e_app_clipboard.svelte new file mode 100644 index 00000000..452e57d3 --- /dev/null +++ b/src/lib/e_app_clipboard.svelte @@ -0,0 +1,64 @@ + + + + { + // Call the Clipboard API + navigator.clipboard + // Use the `writeText` method write content to the clipboard + .writeText(value) + // Handle confirmation + .then(() => { + if (log_lvl) { + console.log(`Clipboard write successful: ${value}`); + } + success = true; + }); + }} + class={btn_class} + title={btn_title} + > + {btn_text} + diff --git a/src/lib/e_app_debug_menu.svelte b/src/lib/e_app_debug_menu.svelte index 1c74269e..dc803f68 100644 --- a/src/lib/e_app_debug_menu.svelte +++ b/src/lib/e_app_debug_menu.svelte @@ -106,7 +106,7 @@ hover:opacity-100 --> $ae_loc.debug_mode = !$ae_loc?.debug_mode; }} class=" - btn btn-sm preset-tonal-surface border border-surface-500 hover:preset-tonal-warning border border-warning-500 + btn btn-sm preset-tonal-surface border-sm border-surface-500 hover:preset-tonal-warning transition-all *:hover:inline-block @@ -141,7 +141,7 @@ hover:opacity-100 --> $ae_loc.debug_menu = !$ae_loc?.debug_menu; }} class=" - btn btn-sm preset-tonal-surface border border-surface-500 hover:preset-tonal-warning border border-warning-500 + btn btn-sm preset-tonal-surface border-sm border-surface-500 hover:preset-tonal-warning transition-all *:hover:inline-block " title="Turn debug content and styles off and on" @@ -166,8 +166,8 @@ hover:opacity-100 --> id="AE-Quick-Debug" class=" btn btn-icon - preset-tonal-surface border border-surface-500 - hover:preset-tonal-warning border border-warning-500 + preset-tonal-surface border-sm border-surface-500 + hover:preset-tonal-warning transition-all fixed bottom-2 left-2 text-gray-400 hover:text-gray-800 @@ -182,5 +182,5 @@ hover:opacity-100 --> - diff --git a/src/lib/element_manage_event_file_li.svelte b/src/lib/element_manage_event_file_li.svelte index d7cbb3f9..89f484a2 100644 --- a/src/lib/element_manage_event_file_li.svelte +++ b/src/lib/element_manage_event_file_li.svelte @@ -1,7 +1,7 @@ @@ -46,7 +62,7 @@ onMount(() => { > { + onclick={() => { console.log('*** Refresh button clicked ***'); db_events.files.clear(); @@ -81,7 +97,7 @@ onMount(() => { { + onclick={() => { console.log('*** Show Alt Download button clicked ***'); ae_tmp.show__direct_download = !ae_tmp.show__direct_download; }} @@ -152,7 +168,7 @@ onMount(() => { { + 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, @@ -215,7 +231,7 @@ onMount(() => { Download - { Copy Link - + --> + + + {#if clipboard_success}Copied!{:else}Copy Link{/if} + @@ -242,7 +266,7 @@ onMount(() => { Renamed - { Copy Renamed - + --> + + {#if clipboard_success}Copied!{:else}Copy Renamed{/if} + @@ -269,7 +300,7 @@ onMount(() => { Renamed - { Copy Renamed - + --> + + {#if clipboard_success}Copied!{:else}Copy Renamed{/if} + @@ -301,7 +339,7 @@ onMount(() => { {#if $events_sess.pres_mgmt.tmp_val__filename_no_ext.trim() != event_file_obj.filename_no_ext} { + onclick={async () => { let new_filename = $events_sess.pres_mgmt.tmp_val__filename_no_ext.trim() // Remove possible double extension new_filename = new_filename.replace('.'+event_file_obj.extension, ''); @@ -353,7 +391,7 @@ onMount(() => { { + onclick={() => { if ($events_sess.pres_mgmt.show_field_edit__filename == event_file_obj.event_file_id_random) { $events_sess.pres_mgmt.tmp_val__filename_no_ext = ''; $events_sess.pres_mgmt.show_field_edit__filename = false; @@ -377,7 +415,7 @@ onMount(() => { { + onclick={async () => { let event_file_data = { hide: !event_file_obj.hide, }; @@ -433,7 +471,7 @@ onMount(() => { { + onclick={async () => { if (!confirm(`Are you sure you want to delete this file?\n${event_file_obj.filename} [${event_file_obj.event_file_id_random}]`)) {return false;} // ae_promises[event_file_obj.event_file_id_random] = handle_delete__event_file({event_file_id: event_file_obj.event_file_id_random}); @@ -487,7 +525,7 @@ onMount(() => { name="file_purpose" disabled={!allow_basic && !allow_moderator && !$ae_loc.trusted_access} value={event_file_obj.file_purpose} - on:change={e => { + onchange={e => { // ae_tmp[event_file_obj.event_file_id_random].file_purpose = e.target.value; console.log(`Selected file_purpose: ${e.target.value}`); diff --git a/src/routes/events/[event_id]/(launcher)/+layout.svelte b/src/routes/events/[event_id]/(launcher)/+layout.svelte index 0ec9ca1c..9d306426 100644 --- a/src/routes/events/[event_id]/(launcher)/+layout.svelte +++ b/src/routes/events/[event_id]/(launcher)/+layout.svelte @@ -689,8 +689,8 @@ $: { {#if $events_sess.launcher.ws_connect_status == 'connected'} @@ -708,8 +708,8 @@ $: { {#if $events_sess.launcher?.av_recording_status} @@ -745,6 +745,7 @@ $: { class:hover:opacity-75={!$ae_loc.trusted_access} > + Launcher Config @@ -824,8 +825,12 @@ $: { > Debug - ($events_loc.launcher.hide_drawer__debug = true)} class="mb-4 dark:text-white"> + ($events_loc.launcher.hide_drawer__debug = true)} + class="mb-4 dark:text-white" + > + Close Debug Drawer diff --git a/src/routes/events/[event_id]/event_page_menu.svelte b/src/routes/events/[event_id]/event_page_menu.svelte index d96a6ea0..37b955a2 100644 --- a/src/routes/events/[event_id]/event_page_menu.svelte +++ b/src/routes/events/[event_id]/event_page_menu.svelte @@ -149,8 +149,8 @@ export let lq__event_obj: any; $events_loc.pres_mgmt.save_search_text = !$events_loc.pres_mgmt.save_search_text; }} class="btn btn-sm" - class:preset-tonal-success border border-success-500={$events_loc.pres_mgmt.save_search_text} - class:preset-tonal-warning border border-warning-500={!$events_loc.pres_mgmt.save_search_text} + class:preset-tonal-success={$events_loc.pres_mgmt.save_search_text} + class:preset-tonal-warning={!$events_loc.pres_mgmt.save_search_text} title="Save the search text for this session search?" > {#if $events_loc.pres_mgmt.save_search_text} diff --git a/src/routes/events/[event_id]/locations/locations_page_menu.svelte b/src/routes/events/[event_id]/locations/locations_page_menu.svelte index 224bfc65..e504d59f 100644 --- a/src/routes/events/[event_id]/locations/locations_page_menu.svelte +++ b/src/routes/events/[event_id]/locations/locations_page_menu.svelte @@ -113,7 +113,7 @@ export let lq__event_obj: any; }} class="btn btn-sm" class:preset-tonal-success border border-success-500={$events_loc.pres_mgmt?.show_content__location_devices_sessions== 'sessions'} - class:preset-tonal-warning border border-warning-500={$events_loc.pres_mgmt?.show_content__location_devices_sessions== 'devices'} + class:preset-tonal-warning border-warning-500={$events_loc.pres_mgmt?.show_content__location_devices_sessions== 'devices'} title="Show the session list or device list." > {#if $events_loc.pres_mgmt.show_content__location_devices_sessions == 'sessions'} diff --git a/src/routes/events/[event_id]/presenter/[presenter_id]/presenter_page_menu.svelte b/src/routes/events/[event_id]/presenter/[presenter_id]/presenter_page_menu.svelte index 5384e241..77dba3cb 100644 --- a/src/routes/events/[event_id]/presenter/[presenter_id]/presenter_page_menu.svelte +++ b/src/routes/events/[event_id]/presenter/[presenter_id]/presenter_page_menu.svelte @@ -224,7 +224,7 @@ let ae_triggers: key_val = {}; }} class="btn btn-sm m-1 transition-all hover:transition-all *:hover:inline" class:preset-outlined-surface-500={!$lq__event_presenter_obj?.priority} - class:preset-tonal-success border border-success-500={$lq__event_presenter_obj?.priority} + class:preset-tonal-success={$lq__event_presenter_obj?.priority} > {#if $lq__event_presenter_obj?.priority} @@ -277,7 +277,7 @@ let ae_triggers: key_val = {}; ae_triggers.hide = true; }} class="btn btn-sm m-1 transition-all hover:transition-all *:hover:inline" - class:preset-tonal-success border border-success-500={!$lq__event_presenter_obj?.hide} + class:preset-tonal-success={!$lq__event_presenter_obj?.hide} class:preset-outlined-warning-500={$lq__event_presenter_obj?.hide} disabled={!$ae_loc.trusted_access} > @@ -333,7 +333,7 @@ let ae_triggers: key_val = {}; ae_triggers.enable = true; }} class="btn btn-sm" - class:preset-tonal-success border border-success-500={$lq__event_presenter_obj?.enable} + class:preset-tonal-success={$lq__event_presenter_obj?.enable} class:preset-outlined-warning-500={!$lq__event_presenter_obj?.enable} disabled={!$ae_loc.manager_access} > diff --git a/src/routes/events/[event_id]/session/[session_id]/+page.svelte b/src/routes/events/[event_id]/session/[session_id]/+page.svelte index 8d6e6301..9b5744b8 100644 --- a/src/routes/events/[event_id]/session/[session_id]/+page.svelte +++ b/src/routes/events/[event_id]/session/[session_id]/+page.svelte @@ -193,7 +193,7 @@ onMount(() => { } }} class="btn btn-md hover:preset-filled-primary-500" - class:preset-tonal-tertiary border border-tertiary-500={$events_loc.pres_mgmt.show_content__session_view == 'manage_files'} + class:preset-tonal-tertiary={$events_loc.pres_mgmt.show_content__session_view == 'manage_files'} class:preset-filled-tertiary-500={$events_loc.pres_mgmt.show_content__session_view != 'manage_files'} class:hidden={!$ae_loc.public_access} title="View session information or manage files for the session" @@ -389,7 +389,7 @@ onMount(() => { lq__event_presenter_obj={lq__event_presenter_obj} /> - + + - - - diff --git a/src/routes/events/[event_id]/session/[session_id]/ae_comp__event_session_poc_profile.svelte b/src/routes/events/[event_id]/session/[session_id]/ae_comp__event_session_poc_profile.svelte index b10114ba..8b04484f 100644 --- a/src/routes/events/[event_id]/session/[session_id]/ae_comp__event_session_poc_profile.svelte +++ b/src/routes/events/[event_id]/session/[session_id]/ae_comp__event_session_poc_profile.svelte @@ -1,9 +1,11 @@ @@ -57,7 +70,7 @@ $: if (browser && ae_tmp.biography === null && $lq__event_session_obj?.poc_kv_js - Copy Access Link - + --> + + + {#if clipboard_success}Copied!{:else}Copy Access Link{/if} + + {/if} @@ -85,7 +108,7 @@ $: if (browser && ae_tmp.biography === null && $lq__event_session_obj?.poc_kv_js > - Copy Biography Text - + --> + + + {#if clipboard_success}Copied!{:else}Copy Biography Text{/if} + @@ -127,7 +159,7 @@ $: if (browser && ae_tmp.biography === null && $lq__event_session_obj?.poc_kv_js type="button" class="btn btn-md preset-tonal-primary hover:preset-filled-primary-500" disabled={(ae_tmp.biography == $lq__event_session_obj.biography)} - on:click={() => { + onclick={() => { console.log('*** Save button clicked ***'); let event_session_data = {poc_kv_json: $lq__event_session_obj.poc_kv_json}; diff --git a/src/routes/events/[event_id]/session/[session_id]/session_view.svelte b/src/routes/events/[event_id]/session/[session_id]/session_view.svelte index 6de065e7..e7d3f9cb 100644 --- a/src/routes/events/[event_id]/session/[session_id]/session_view.svelte +++ b/src/routes/events/[event_id]/session/[session_id]/session_view.svelte @@ -1,5 +1,24 @@ @@ -231,7 +253,7 @@ $: if ($lq__event_session_obj) { & { + onclick={() => { if ($events_loc.pres_mgmt.time_hours == 12) { $events_loc.pres_mgmt.time_hours = 24; $events_loc.pres_mgmt.datetime_format = 'datetime_long'; @@ -384,7 +406,7 @@ $: if ($lq__event_session_obj) { { + onclick={() => { console.log('Cancel editing the location for the session.'); ae_tmp.event_location_id = null; @@ -399,7 +421,7 @@ $: if ($lq__event_session_obj) { {:else} { + onclick={() => { console.log('Edit the location for the session.'); let params = { @@ -474,7 +496,7 @@ $: if ($lq__event_session_obj) { ($events_sess.pres_mgmt.show__session_poc_profile = true)}> + onclick={() => ($events_sess.pres_mgmt.show__session_poc_profile = true)}> {$lq__event_session_obj?.poc_person_full_name}'s Profile @@ -493,21 +515,23 @@ $: if ($lq__event_session_obj) { lq__event_session_obj={lq__event_session_obj} /> - + {#snippet footer()} + { - console.log('Close modal session poc profile.'); - $events_sess.pres_mgmt.show__session_poc_profile = !$events_sess.pres_mgmt.show__session_poc_profile; - }} + onclick={() => { + console.log('Close modal session poc profile.'); + $events_sess.pres_mgmt.show__session_poc_profile = !$events_sess.pres_mgmt.show__session_poc_profile; + }} class="btn btn-sm preset-tonal-warning hover:preset-tonal-warning border border-warning-500" > Close - + + {/snippet} @@ -519,8 +543,8 @@ $: if ($lq__event_session_obj) { !$events_loc.auth__kv.session[$lq__event_session_obj?.event_session_id] === true} class="btn btn-sm hover:preset-filled-success-500" class:preset-tonal-success={$lq__event_session_obj?.poc_agree} - class:preset-tonal-warning border border-warning-500={!$lq__event_session_obj?.poc_agree} - on:click={() => ($events_sess.pres_mgmt.show_modal__session_poc_agree = true)}> + class:preset-tonal-warning={!$lq__event_session_obj?.poc_agree} + onclick={() => ($events_sess.pres_mgmt.show_modal__session_poc_agree = true)}> {#if !$lq__event_session_obj?.poc_agree} Not yet agreed @@ -541,20 +565,22 @@ $: if ($lq__event_session_obj) { lq__event_session_obj={lq__event_session_obj} /> - + {#snippet footer()} + { - $events_sess.pres_mgmt.show_modal__session_poc_agree = false; - }} + onclick={() => { + $events_sess.pres_mgmt.show_modal__session_poc_agree = false; + }} class="btn btn-sm preset-tonal-warning hover:preset-tonal-warning border border-warning-500" > Close - + + {/snippet} {/if} @@ -658,7 +684,7 @@ $: if ($lq__event_session_obj) { {#if ae_tmp.show__edit_poc_person} { + onclick={() => { console.log('Cancel the POC person for the session.'); ae_tmp.poc_person_id = null; @@ -672,7 +698,7 @@ $: if ($lq__event_session_obj) { {:else} { + onclick={async () => { console.log('Edit the POC person for the session.'); // let params = { @@ -728,12 +754,11 @@ $: if ($lq__event_session_obj) { {#if $events_loc.pres_mgmt?.require__session_agree && $events_loc?.pres_mgmt?.show__email_access_link && $lq__event_session_obj?.poc_person_primary_email - && ($ae_loc.trusted_access || !$events_loc.auth__kv.session[$lq__event_session_obj?.event_session_id]) - } + && ($ae_loc.trusted_access || !$events_loc.auth__kv.session[$lq__event_session_obj?.event_session_id])} { + onclick={() => { console.log('Email the access link'); if (!$lq__event_session_obj.poc_person_primary_email) { alert('No email address found for this point of contact (moderator/champion).'); @@ -773,7 +798,7 @@ $: if ($lq__event_session_obj) { && $ae_loc.trusted_access && $lq__event_session_obj.poc_person_id} - Copy Access Link - + --> + + + + + + + {/if} @@ -856,7 +900,7 @@ $: if ($lq__event_session_obj) { {#if $lq__event_session_obj.description} { + onclick={() => { console.log('Show/Hide Description'); $events_loc.pres_mgmt.show_content__session_description = !$events_loc.pres_mgmt.show_content__session_description; }}