feat: add status filter to ExtractionsHeader and update SchedulersHeader layout
Some checks failed
Frontend CI / lint (push) Failing after 22s
Frontend CI / build (push) Has been skipped

This commit is contained in:
JSC
2025-09-20 15:03:36 +02:00
parent f559a6aa73
commit 70131ecd2d
2 changed files with 39 additions and 33 deletions

View File

@@ -93,11 +93,28 @@ export function ExtractionsHeader({
</div>
<div className="flex gap-2">
<Select
value={statusFilter}
onValueChange={value => onStatusFilterChange(value as ExtractionStatus | 'all')}
>
<SelectTrigger className="w-[160px]">
<Filter className="h-4 w-4 mr-2" />
<SelectValue placeholder="Status" />
</SelectTrigger>
<SelectContent>
<SelectItem value="all">All Status</SelectItem>
<SelectItem value="pending">Pending</SelectItem>
<SelectItem value="processing">Processing</SelectItem>
<SelectItem value="completed">Completed</SelectItem>
<SelectItem value="failed">Failed</SelectItem>
</SelectContent>
</Select>
<Select
value={sortBy}
onValueChange={value => onSortByChange(value as ExtractionSortField)}
>
<SelectTrigger className="w-[180px]">
<SelectTrigger className="w-[150px]">
<SelectValue placeholder="Sort by" />
</SelectTrigger>
<SelectContent>
@@ -122,23 +139,6 @@ export function ExtractionsHeader({
)}
</Button>
<Select
value={statusFilter}
onValueChange={value => onStatusFilterChange(value as ExtractionStatus | 'all')}
>
<SelectTrigger className="w-[120px]">
<Filter className="h-4 w-4 mr-2" />
<SelectValue placeholder="Status" />
</SelectTrigger>
<SelectContent>
<SelectItem value="all">All Status</SelectItem>
<SelectItem value="pending">Pending</SelectItem>
<SelectItem value="processing">Processing</SelectItem>
<SelectItem value="completed">Completed</SelectItem>
<SelectItem value="failed">Failed</SelectItem>
</SelectContent>
</Select>
<Button
variant="outline"
size="icon"

View File

@@ -14,7 +14,8 @@ import {
getTaskTypeLabel,
} from '@/lib/api/services/schedulers'
import {
CalendarPlus,
Filter,
Plus,
RefreshCw,
Search,
} from 'lucide-react'
@@ -64,18 +65,9 @@ export function SchedulersHeader({
</p>
</div>
<div className="flex items-center gap-2">
<Button
variant="outline"
size="sm"
onClick={onRefresh}
disabled={loading}
>
<RefreshCw className={`h-4 w-4 ${loading ? 'animate-spin' : ''}`} />
Refresh
</Button>
<Button onClick={onCreateClick} size="sm">
<CalendarPlus className="h-4 w-4" />
Create Task
<Button onClick={onCreateClick}>
<Plus className="h-4 w-4 mr-2" />
Add Extraction
</Button>
</div>
</div>
@@ -96,7 +88,8 @@ export function SchedulersHeader({
value={statusFilter}
onValueChange={onStatusFilterChange}
>
<SelectTrigger className="w-[140px]">
<SelectTrigger className="w-[160px]">
<Filter className="h-4 w-4 mr-2" />
<SelectValue placeholder="All Status" />
</SelectTrigger>
<SelectContent>
@@ -113,7 +106,8 @@ export function SchedulersHeader({
value={taskTypeFilter}
onValueChange={onTaskTypeFilterChange}
>
<SelectTrigger className="w-[140px]">
<SelectTrigger className="w-[200px]">
<Filter className="h-4 w-4 mr-2" />
<SelectValue placeholder="All Types" />
</SelectTrigger>
<SelectContent>
@@ -125,6 +119,18 @@ export function SchedulersHeader({
))}
</SelectContent>
</Select>
<Button
variant="outline"
size="icon"
onClick={onRefresh}
disabled={loading}
title="Refresh extractions"
>
<RefreshCw
className={`h-4 w-4 ${loading ? 'animate-spin' : ''}`}
/>
</Button>
</div>
</div>