@@ -253,7 +253,6 @@ export default function JobProgress({
253253 ) }
254254 { job ?. job_data ?. start_time && (
255255 < >
256- Started:{ ' ' }
257256 { dayjs
258257 . utc ( job . job_data . start_time )
259258 . local ( )
@@ -356,7 +355,6 @@ export default function JobProgress({
356355 ) }
357356 { job ?. job_data ?. start_time && (
358357 < >
359- Started:{ ' ' }
360358 { dayjs
361359 . utc ( job . job_data . start_time )
362360 . local ( )
@@ -378,7 +376,6 @@ export default function JobProgress({
378376 < >
379377 { job ?. job_data ?. start_time && (
380378 < >
381- Started:{ ' ' }
382379 { dayjs
383380 . utc ( job ?. job_data ?. start_time )
384381 . local ( )
@@ -388,7 +385,7 @@ export default function JobProgress({
388385 ) }
389386 { job ?. job_data ?. end_time && job ?. job_data ?. start_time && (
390387 < >
391- Completed in: { ' ' }
388+ { ' ' }
392389 { dayjs
393390 . duration (
394391 dayjs ( job ?. job_data ?. end_time ) . diff (
@@ -399,40 +396,58 @@ export default function JobProgress({
399396 < br />
400397 </ >
401398 ) }
402- { /* eslint-disable-next-line no-nested-ternary, prettier/prettier */ }
403- { job ?. status === 'COMPLETE' &&
404- ( job ?. job_data ?. completion_status ? (
405- job ?. job_data ?. completion_status === 'success' ? (
406- < Typography level = "body-sm" color = "success" >
407- Success: { job ?. job_data ?. completion_details }
408- </ Typography >
409- ) : (
410- < Typography level = "body-sm" color = "danger" >
411- Failure: { job ?. job_data ?. completion_details }
412- </ Typography >
413- )
414- ) : (
415- /* If we don't have a status, assume it failed */
416- < Typography level = "body-sm" color = "neutral" />
417- ) ) }
418- { job ?. status === 'FAILED' && job ?. job_data ?. error_msg && (
419- < Typography
420- level = "body-sm"
421- color = "danger"
422- sx = { {
423- maxWidth : 400 ,
424- maxHeight : 80 ,
425- overflow : 'auto' ,
426- whiteSpace : 'pre-wrap' ,
427- wordBreak : 'break-word' ,
428- } }
429- >
430- Error: { job . job_data . error_msg }
431- </ Typography >
432- ) }
433399 </ >
434400 </ Stack >
435401 ) }
436402 </ Stack >
437403 ) ;
438404}
405+
406+ interface JobCompletionDetailsProps {
407+ job : {
408+ status : string ;
409+ job_data ?: JobData ;
410+ placeholder ?: boolean ;
411+ } ;
412+ }
413+
414+ export function JobCompletionDetails ( { job } : JobCompletionDetailsProps ) {
415+ if ( job ?. placeholder ) return null ;
416+
417+ if ( job ?. status === 'COMPLETE' ) {
418+ if ( job ?. job_data ?. completion_status === 'success' ) {
419+ return (
420+ < Typography level = "body-sm" color = "success" >
421+ Success: { job ?. job_data ?. completion_details }
422+ </ Typography >
423+ ) ;
424+ }
425+ if ( job ?. job_data ?. completion_status ) {
426+ return (
427+ < Typography level = "body-sm" color = "danger" >
428+ Failure: { job ?. job_data ?. completion_details }
429+ </ Typography >
430+ ) ;
431+ }
432+ }
433+
434+ if ( job ?. status === 'FAILED' && job ?. job_data ?. error_msg ) {
435+ return (
436+ < Typography
437+ level = "body-sm"
438+ color = "danger"
439+ sx = { {
440+ maxWidth : 400 ,
441+ maxHeight : 80 ,
442+ overflow : 'auto' ,
443+ whiteSpace : 'pre-wrap' ,
444+ wordBreak : 'break-word' ,
445+ } }
446+ >
447+ Error: { job . job_data . error_msg }
448+ </ Typography >
449+ ) ;
450+ }
451+
452+ return null ;
453+ }
0 commit comments