From 51912a285df9145e6a56649c44b72cd1d9184ac2 Mon Sep 17 00:00:00 2001 From: Till-JS <101404291+Till-JS@users.noreply.github.com> Date: Fri, 12 Dec 2025 11:57:55 +0100 Subject: [PATCH] feat(calendar): add search highlighting to calendar views MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add searchStore for managing search state and event highlighting - Integrate InputBar search with calendar view highlighting - Dim non-matching events and highlight matching events during search - Add search-highlighted and search-dimmed CSS classes to all views - Adjust toolbar position for DateStrip component 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- .../calendar/CalendarToolbar.svelte | 2 +- .../lib/components/calendar/DayView.svelte | 47 +++++++++++++++++++ .../lib/components/calendar/MonthView.svelte | 19 ++++++++ .../components/calendar/MultiDayView.svelte | 47 +++++++++++++++++++ .../lib/components/calendar/WeekView.svelte | 47 +++++++++++++++++++ .../apps/web/src/lib/stores/search.svelte.ts | 45 ++++++++++++++++++ .../apps/web/src/routes/(app)/+layout.svelte | 32 ++++++------- 7 files changed, 221 insertions(+), 18 deletions(-) create mode 100644 apps/calendar/apps/web/src/lib/stores/search.svelte.ts diff --git a/apps/calendar/apps/web/src/lib/components/calendar/CalendarToolbar.svelte b/apps/calendar/apps/web/src/lib/components/calendar/CalendarToolbar.svelte index 42ab7806d..9c255b5b4 100644 --- a/apps/calendar/apps/web/src/lib/components/calendar/CalendarToolbar.svelte +++ b/apps/calendar/apps/web/src/lib/components/calendar/CalendarToolbar.svelte @@ -55,7 +55,7 @@ } - + diff --git a/apps/calendar/apps/web/src/lib/components/calendar/DayView.svelte b/apps/calendar/apps/web/src/lib/components/calendar/DayView.svelte index 2caf29af9..e5db2591c 100644 --- a/apps/calendar/apps/web/src/lib/components/calendar/DayView.svelte +++ b/apps/calendar/apps/web/src/lib/components/calendar/DayView.svelte @@ -3,6 +3,7 @@ import { eventsStore } from '$lib/stores/events.svelte'; import { calendarsStore } from '$lib/stores/calendars.svelte'; import { settingsStore } from '$lib/stores/settings.svelte'; + import { searchStore } from '$lib/stores/search.svelte'; import { todosStore, type Task } from '$lib/stores/todos.svelte'; import TaskBlock from './TaskBlock.svelte'; import { goto } from '$app/navigation'; @@ -677,6 +678,8 @@ {#each headerAllDayEvents as event}