From debd55ffcf08e2c3211e0a3e1a68680975810d78 Mon Sep 17 00:00:00 2001 From: Till JS Date: Sat, 21 Mar 2026 11:19:37 +0100 Subject: [PATCH] =?UTF-8?q?feat(calendar):=20implement=20UnifiedBar=20?= =?UTF-8?q?=E2=80=94=20replace=20standalone=20bottom=20bars=20with=20layer?= =?UTF-8?q?ed=20system?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replaces individual QuickInputBar, DateStrip, DateStripFab, CalendarToolbar, and ViewsBar with a single UnifiedBar component. Layers stack via flexbox, child positioning overridden to relative. Overlay menu allows toggling layer visibility. View switcher integrated into toolbar layer. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../lib/components/calendar/UnifiedBar.svelte | 878 +++++++++--------- .../apps/web/src/routes/(app)/+layout.svelte | 171 +--- .../(app)/unified-bar-demo/+page.svelte | 224 +---- 3 files changed, 519 insertions(+), 754 deletions(-) diff --git a/apps/calendar/apps/web/src/lib/components/calendar/UnifiedBar.svelte b/apps/calendar/apps/web/src/lib/components/calendar/UnifiedBar.svelte index 4e5aa9dea..353939d38 100644 --- a/apps/calendar/apps/web/src/lib/components/calendar/UnifiedBar.svelte +++ b/apps/calendar/apps/web/src/lib/components/calendar/UnifiedBar.svelte @@ -1,114 +1,70 @@ -
- - {#if unifiedBarStore.showCalendarToolbar} +
+ + {#if showCalendarLayers && unifiedBarStore.showCalendarToolbar} - {/if} - - - {#if unifiedBarStore.showTagStrip} - - {/if} - - - {#if unifiedBarStore.showDateStrip} - - {/if} - - - {#if unifiedBarStore.showQuickInput} - {/if} - - {#if unifiedBarStore.isOverlayOpen} -