@@ -7,6 +7,7 @@ import { useGetExecutionLogsQuery, useListExecutionsQuery } from '@/redux/servic
77import { Skeleton } from '@/components/ui/skeleton' ;
88import { Sheet , SheetContent , SheetHeader , SheetTitle } from '@/components/ui/sheet' ;
99import AceEditor from '@/components/ui/ace-editor' ;
10+ import { Badge } from '@/components/ui/badge' ;
1011
1112export default function ExecutionsTab ( ) {
1213 const { t } = useTranslation ( ) ;
@@ -72,14 +73,27 @@ export default function ExecutionsTab() {
7273 setOpen ( true ) ;
7374 } ;
7475
76+ const StatusBadge = ( { status } : { status : string } ) => {
77+ const s = ( status || '' ) . toLowerCase ( ) ;
78+ const cls =
79+ s === 'completed'
80+ ? 'bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-400'
81+ : s === 'failed'
82+ ? 'bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400'
83+ : 'bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400' ;
84+ return < Badge className = { cls } > { status } </ Badge > ;
85+ } ;
86+
7587 const ExecutionRow = useMemo ( ( ) => ( { e } : { e : any } ) => (
7688 < div
7789 key = { e . id }
7890 className = "grid grid-cols-12 px-3 py-3 text-sm items-center cursor-pointer hover:bg-muted/30"
7991 onClick = { ( ) => onOpenLogs ( e . id ) }
8092 >
8193 < div className = "col-span-4 truncate" > { e . id } </ div >
82- < div className = "col-span-2 text-muted-foreground capitalize" > { e . status } </ div >
94+ < div className = "col-span-2 capitalize" >
95+ < StatusBadge status = { e . status } />
96+ </ div >
8397 < div className = "col-span-3 text-muted-foreground" > { new Date ( e . started_at ) . toLocaleString ( ) } </ div >
8498 < div className = "col-span-3 text-muted-foreground" >
8599 { e . completed_at ? new Date ( e . completed_at ) . toLocaleString ( ) : '-' }
0 commit comments