Add instant-search overlay (products + blog posts)
Separate commit on purpose so this can be reverted independently if needed. Search icon in the Navbar (hidden below sm:, same reasoning as WishlistLink — Account+Cart are the only always-visible icons on true mobile) opens a debounced (250ms) overlay searching both collections at once via a new /api/search route. Plain Payload `where[...][contains]` queries (Postgres ILIKE), not a real search index (Meilisearch/Algolia) — matches the catalog's current small size, see [[project-ecommerce-sota-gaps]]'s own "search becomes necessary past ~20 products" note. Worth upgrading later without touching the overlay component itself. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -7,6 +7,7 @@ import { usePathname } from "next/navigation";
|
||||
import { AnimatePresence, motion } from "motion/react";
|
||||
import { useCartCount } from "../lib/cart";
|
||||
import { useWishlist } from "../lib/useWishlist";
|
||||
import { SearchButton } from "./SearchOverlay";
|
||||
import { AUTH_CHANGED_EVENT } from "../lib/auth";
|
||||
import { NewsletterModal } from "./NewsletterModal";
|
||||
import { useCartFly } from "./CartFly";
|
||||
@@ -544,6 +545,7 @@ export function Navbar({ singleActiveProduct, wishlistEnabled }: { singleActiveP
|
||||
built-in padding read as too much space on mobile, where
|
||||
these two icons are the only always-visible controls. */}
|
||||
<div className="flex items-center">
|
||||
<SearchButton />
|
||||
<AccountLink />
|
||||
{wishlistEnabled && <WishlistLink />}
|
||||
<CartLink />
|
||||
|
||||
Reference in New Issue
Block a user