From 5ff75453bc272bf53fbbc44c8d8c662afb703642 Mon Sep 17 00:00:00 2001 From: Joakim Date: Sat, 14 Feb 2026 17:28:06 +0100 Subject: [PATCH] feat(web): add Header and ReportPicker components Header shows active report name (left) with dropdown chevron and gear icon linking to /settings (right). ReportPicker uses native Popover API with 11 reports grouped into Common, Time-based, Recurring, and Archive. Co-Authored-By: Claude Opus 4.6 --- opal-web/src/lib/components/Header.svelte | 125 +++++++++++++++ .../src/lib/components/ReportPicker.svelte | 145 ++++++++++++++++++ 2 files changed, 270 insertions(+) create mode 100644 opal-web/src/lib/components/Header.svelte create mode 100644 opal-web/src/lib/components/ReportPicker.svelte diff --git a/opal-web/src/lib/components/Header.svelte b/opal-web/src/lib/components/Header.svelte new file mode 100644 index 0000000..8c0ad96 --- /dev/null +++ b/opal-web/src/lib/components/Header.svelte @@ -0,0 +1,125 @@ + + +
+ + + + + + + + +
+ + + + diff --git a/opal-web/src/lib/components/ReportPicker.svelte b/opal-web/src/lib/components/ReportPicker.svelte new file mode 100644 index 0000000..314855c --- /dev/null +++ b/opal-web/src/lib/components/ReportPicker.svelte @@ -0,0 +1,145 @@ + + +
+ {#each groups as group} +
+
{group.label}
+ {#each group.reports as report} + + {/each} +
+ {/each} +
+ +