"use client"; import { useState, useRef, useEffect } from "react"; import { Search } from "lucide-react"; import { getProducts } from "@/content/products"; import Link from "next/link"; import Image from "next/image"; import { formatCurrency } from "@/lib/utils"; export function GlobalSearch() { const [query, setQuery] = useState(""); const [isOpen, setIsOpen] = useState(false); const products = getProducts(); const results = query.length > 1 ? products.filter(p => p.name.toLowerCase().includes(query.toLowerCase()) || p.brand.toLowerCase().includes(query.toLowerCase()) || p.category.toLowerCase().includes(query.toLowerCase())) : []; return ( <>
setQuery(e.target.value)} />
{query.length > 1 ? (
{results.length > 0 ? (
{results.map((product) => ( setIsOpen(false)} className="flex items-center gap-4 p-3 hover:bg-slate-50 rounded-lg transition-colors group border border-transparent hover:border-border" >
{product.name}
{product.brand} {product.name} {product.power} kW • {product.category}
{formatCurrency(product.price)}
))}
) : (
Brak wyników dla "{query}"
)}
) : (
Wpisz co najmniej 2 znaki, aby rozpocząć wyszukiwanie w sklepie
)}
); }