From c3c3e1cbcb5b0473a9cfe1fa9dbda8a7d08cac81 Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Fri, 13 Mar 2026 15:31:21 -0400 Subject: [PATCH] feat(sys-menu): replace sys_menu with new e_app_sys_bar component MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit New compact bar + expandable panel design: - Compact strip (bottom-right): auth shield, font cycler, dark/light toggle, edit mode toggle (authenticated+), menu expand — icon-only by default, labels reveal on hover - Hover info strip shows person name + access level when logged in - Expanded panel: sign in/out, access/passcode, appearance (theme), admin (config + URL builder + debug trigger) — all gated same as before - Debug overlay trigger moved into admin section (edit mode only) - All business logic preserved via existing sub-components (unchanged) - e_app_sys_menu.svelte retained but no longer mounted (import commented out) Co-Authored-By: Claude Sonnet 4.6 --- src/lib/app_components/e_app_sys_bar.svelte | 427 ++++++++++++++++++++ src/routes/+layout.svelte | 5 +- 2 files changed, 430 insertions(+), 2 deletions(-) create mode 100644 src/lib/app_components/e_app_sys_bar.svelte diff --git a/src/lib/app_components/e_app_sys_bar.svelte b/src/lib/app_components/e_app_sys_bar.svelte new file mode 100644 index 00000000..26ed916a --- /dev/null +++ b/src/lib/app_components/e_app_sys_bar.svelte @@ -0,0 +1,427 @@ + + + +
+ + + {#if expand} +
+ +
+ +
+ {#if $ae_loc?.person_id} + + {person_display ?? '—'} + {/if} + {#if access_label} + + · {access_label} + + {/if} +
+ +
+ + + {#if $ae_loc?.app_cfg?.show_element__sign_in_out} +
+
+ {/if} + + + {#if !$ae_loc?.sys_menu?.hide_access_type && !$ae_loc?.iframe} +
+ +
+ {/if} + + +
+ +
+ + + {#if $ae_loc.edit_mode} +
+ +
+ +
+ +
+ {/if} + +
+ {/if} + + + + + +
+ + + {#if !expand && (person_display || access_label)} + + {/if} + + + + + + + + + + + + {#if $ae_loc?.authenticated_access} + {#if $ae_loc.edit_mode} + + {:else} + + {/if} + {/if} + + + + +
+ + +
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 9fb764ed..0aa82a2d 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -42,7 +42,8 @@ // import MyClipboard from '$lib/app_components/e_app_clipboard.svelte'; import E_app_debug_menu from '$lib/app_components/e_app_debug_menu.svelte'; - import E_app_sys_menu from '$lib/app_components/e_app_sys_menu.svelte'; + import E_app_sys_bar from '$lib/app_components/e_app_sys_bar.svelte'; + // import E_app_sys_menu from '$lib/app_components/e_app_sys_menu.svelte'; // replaced by E_app_sys_bar interface Props { data: any; @@ -329,7 +330,7 @@ {#if browser && (!$ae_loc?.iframe || $ae_loc?.trusted_access)}
- + {#if $ae_loc.edit_mode || $ae_loc.debug_menu.expand}