@@ -110,7 +110,7 @@ export const WorkspaceStats: FC<WorkspaceStatsProps> = ({
110
110
{ shouldDisplayScheduleLabel ( workspace ) && (
111
111
< StatsItem
112
112
css = { styles . statsItem }
113
- label = { getScheduleLabel ( workspace ) }
113
+ label = { scheduleLabel ( workspace ) }
114
114
value = {
115
115
< div css = { styles . scheduleValue } >
116
116
{ isWorkspaceOn ( workspace ) ? (
@@ -335,21 +335,25 @@ const ScheduleSettingsLink = forwardRef<HTMLAnchorElement, LinkProps>(
335
335
} ,
336
336
) ;
337
337
338
+ const hasDeadline = ( workspace : Workspace ) : boolean => {
339
+ return Boolean ( workspace . latest_build . deadline ) ;
340
+ } ;
341
+
342
+ const hasAutoStart = ( workspace : Workspace ) : boolean => {
343
+ return Boolean ( workspace . autostart_schedule ) ;
344
+ } ;
345
+
338
346
export const canEditDeadline = ( workspace : Workspace ) : boolean => {
339
- return isWorkspaceOn ( workspace ) && Boolean ( workspace . latest_build . deadline ) ;
347
+ return isWorkspaceOn ( workspace ) && hasDeadline ( workspace ) ;
340
348
} ;
341
349
342
350
export const shouldDisplayScheduleLabel = ( workspace : Workspace ) : boolean => {
343
- if ( canEditDeadline ( workspace ) ) {
344
- return true ;
345
- }
346
- if ( isWorkspaceOn ( workspace ) ) {
347
- return false ;
348
- }
349
- return Boolean ( workspace . autostart_schedule ) ;
351
+ const willAutoStop = isWorkspaceOn ( workspace ) && hasDeadline ( workspace ) ;
352
+ const willAutoStart = ! isWorkspaceOn ( workspace ) && hasAutoStart ( workspace ) ;
353
+ return willAutoStop || willAutoStart ;
350
354
} ;
351
355
352
- const getScheduleLabel = ( workspace : Workspace ) => {
356
+ const scheduleLabel = ( workspace : Workspace ) => {
353
357
return isWorkspaceOn ( workspace ) ? "Stops" : "Starts at" ;
354
358
} ;
355
359
0 commit comments