diff --git a/app/page.tsx b/app/page.tsx index 8e66e24..e333e48 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -20,7 +20,7 @@ export default async function Page({ searchParams }: PageProps) { const resolvedParams = await searchParams; const events = await getAllEvents({ - query: resolvedParams.query, + query: resolvedParams.query?.trim() || undefined, mode: resolvedParams.mode, tag: resolvedParams.tag, sortBy: resolvedParams.sortBy, diff --git a/components/SearchFilters.tsx b/components/SearchFilters.tsx index fd99e6e..9664aad 100644 --- a/components/SearchFilters.tsx +++ b/components/SearchFilters.tsx @@ -24,14 +24,15 @@ export default function SearchFilters() { const [search, setSearch] = useState(searchParams.get("query") || ""); const handleFilterChange = useCallback((key: string, value: string) => { + const trimmedValue = value.trim(); const params = new URLSearchParams(searchParams.toString()); - if (value && value !== "All") params.set(key, value); + if (trimmedValue && trimmedValue !== "All") params.set(key, trimmedValue); else params.delete(key); if (key !== "page") params.delete("page"); const queryString = params.toString(); router.push(queryString ? `${pathname}?${queryString}` : pathname, { scroll: false }); - captureEvent(POSTHOG_EVENTS.EVENT_FILTER_CHANGED, { filter: key, value }); + captureEvent(POSTHOG_EVENTS.EVENT_FILTER_CHANGED, { filter: key, value: trimmedValue }); }, [pathname, router, searchParams]); const handleClearFilters = useCallback(() => { @@ -52,7 +53,7 @@ export default function SearchFilters() { const activeMode = searchParams.get("mode") || "All"; const activeTag = searchParams.get("tag") || "All"; const activeSort = searchParams.get("sortBy") || ""; - const hasActiveFilters = Boolean(search || (activeMode !== "All") || (activeTag !== "All") || activeSort); + const hasActiveFilters = Boolean(search.trim() || activeMode !== "All" || activeTag !== "All" || activeSort); const selectClass = "rounded-lg border border-border bg-card px-3 py-1.5 text-sm text-foreground transition cursor-pointer focus:outline-none focus:ring-2 focus:ring-ring"; @@ -76,6 +77,7 @@ export default function SearchFilters() { {hasActiveFilters && (