no results ui fix

This commit is contained in:
estevez.sebastian@gmail.com 2025-08-12 12:53:07 -04:00
parent 714378d903
commit d0f83aaf50

View file

@ -134,12 +134,22 @@ function SearchPage() {
console.error("Search failed:", result.error) console.error("Search failed:", result.error)
setResults([]) setResults([])
setFacets({}) setFacets({})
setSelectedFilters({
data_sources: [],
document_types: [],
owners: []
})
setSearchPerformed(true) setSearchPerformed(true)
} }
} catch (error) { } catch (error) {
console.error("Search error:", error) console.error("Search error:", error)
setResults([]) setResults([])
setFacets({}) setFacets({})
setSelectedFilters({
data_sources: [],
document_types: [],
owners: []
})
setSearchPerformed(true) setSearchPerformed(true)
} finally { } finally {
setLoading(false) setLoading(false)
@ -340,20 +350,21 @@ function SearchPage() {
{/* Search Results with Filters */} {/* Search Results with Filters */}
{searchPerformed && ( {searchPerformed && (
<div className="space-y-4"> <div className="space-y-4">
{/* Filter Toggle - Always visible when filters are available */} {/* Search Results Header - Always visible when search is performed */}
{(facets.data_sources?.length || facets.document_types?.length || facets.owners?.length) && ( <div className="flex justify-between items-center">
<div className="flex justify-between items-center"> <h2 className="text-2xl font-semibold flex items-center gap-2">
<h2 className="text-2xl font-semibold flex items-center gap-2"> <Zap className="h-6 w-6 text-yellow-400" />
<Zap className="h-6 w-6 text-yellow-400" /> Search Results
Search Results </h2>
</h2> <div className="flex items-center gap-4">
<div className="flex items-center gap-4"> <div className="flex items-center gap-2">
<div className="flex items-center gap-2"> <div className="h-2 w-2 bg-green-400 rounded-full animate-pulse"></div>
<div className="h-2 w-2 bg-green-400 rounded-full animate-pulse"></div> <span className="text-sm text-muted-foreground">
<span className="text-sm text-muted-foreground"> {results.length} result{results.length !== 1 ? 's' : ''} returned
{results.length} result{results.length !== 1 ? 's' : ''} returned </span>
</span> </div>
</div> {/* Filter Toggle - Only visible when filters are available */}
{((facets.data_sources?.length ?? 0) > 0 || (facets.document_types?.length ?? 0) > 0 || (facets.owners?.length ?? 0) > 0) && (
<Button <Button
variant="outline" variant="outline"
onClick={() => setSidebarOpen(!sidebarOpen)} onClick={() => setSidebarOpen(!sidebarOpen)}
@ -366,9 +377,9 @@ function SearchPage() {
</span> </span>
)} )}
</Button> </Button>
</div> )}
</div> </div>
)} </div>
<div className="flex gap-6"> <div className="flex gap-6">
{/* Main Content */} {/* Main Content */}
@ -469,7 +480,7 @@ function SearchPage() {
</div> </div>
{/* Right Sidebar - Filters */} {/* Right Sidebar - Filters */}
{(facets.data_sources?.length || facets.document_types?.length || facets.owners?.length) && sidebarOpen && ( {((facets.data_sources?.length ?? 0) > 0 || (facets.document_types?.length ?? 0) > 0 || (facets.owners?.length ?? 0) > 0) && sidebarOpen && (
<div className="w-64 space-y-6 flex-shrink-0"> <div className="w-64 space-y-6 flex-shrink-0">
<div className="flex items-center justify-between"> <div className="flex items-center justify-between">
<h2 className="text-lg font-semibold flex items-center gap-2"> <h2 className="text-lg font-semibold flex items-center gap-2">