From 75f45528634902e4ce00acc60c4556cbd4c6bd8d Mon Sep 17 00:00:00 2001 From: Ronan Hevenor Date: Thu, 17 Sep 2026 17:33:11 -0400 Subject: [PATCH] =?UTF-8?q?feat(search):=20filter=20polish=20=E2=80=94=20w?= =?UTF-8?q?ave=20colors,=20screen-pinned=20close,=20archive=20year?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Filter words catch the header wave's own colors (ThemeStyle now publishes waveColor1/2/3 as CSS variables), fading in and out half a second after the wave settles, and skipped entirely when only a filter changed - Picking an option no longer leaves the word stuck in the accent color - Close control pinned to the screen instead of the content column (it sat inside a transformed element), bigger X in #D6001C with an "esc" key hint; Escape still closes, background clicks no longer do - /api/search/archive-date returns 2001: the legacy Wagtail MIN(first_published_at) reports import dates (2018), not coverage Co-Authored-By: Claude Opus 5 --- app/(frontend)/layout.tsx | 2 +- app/api/search/archive-date/route.ts | 69 ++--------------- components/SearchOverlay.tsx | 107 +++++++++++++++++++-------- components/ThemeStyle.tsx | 22 +++++- 4 files changed, 103 insertions(+), 97 deletions(-) diff --git a/app/(frontend)/layout.tsx b/app/(frontend)/layout.tsx index 33683ba..986ef16 100644 --- a/app/(frontend)/layout.tsx +++ b/app/(frontend)/layout.tsx @@ -158,7 +158,7 @@ export default async function RootLayout({ return ( - + void; }) { const text = (options.find((option) => option.value === value) ?? options[0]).label; @@ -174,15 +174,19 @@ function InlineSelect({ {text}