From 5c2109d48cc171cd9567004bf31806b31f8ad479 Mon Sep 17 00:00:00 2001 From: Celia Amador Date: Thu, 6 Aug 2026 14:02:12 +0200 Subject: [PATCH] EDM-4999: Redefine which statuses allow start/stop actions Made-with: Cursor --- .../DetailsPage/Tables/ApplicationLifecycleActions.tsx | 4 +++- libs/ui-components/src/utils/applicationLifecycle.ts | 7 +++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/libs/ui-components/src/components/DetailsPage/Tables/ApplicationLifecycleActions.tsx b/libs/ui-components/src/components/DetailsPage/Tables/ApplicationLifecycleActions.tsx index 9c31b7e95..c7fa8fbd7 100644 --- a/libs/ui-components/src/components/DetailsPage/Tables/ApplicationLifecycleActions.tsx +++ b/libs/ui-components/src/components/DetailsPage/Tables/ApplicationLifecycleActions.tsx @@ -21,6 +21,7 @@ import { type ApplicationLifecycleAction, hasAplicationStatusMismatch, startableStatuses, + stoppableStatuses, transitionalStatuses, } from '../../../utils/applicationLifecycle'; import { @@ -107,6 +108,7 @@ const ApplicationLifecycleActions = ({ const isAppRunning = appStatus === ApplicationStatusType.ApplicationStatusRunning; const desiredStateIsStopped = desiredState === ApplicationDesiredState.ApplicationDesiredStateStopped; const canStart = startableStatuses.includes(appStatus); + const canStop = stoppableStatuses.includes(appStatus); const isTransitioning = transitionalStatuses.includes(appStatus); const hasStatusMismatch = hasAplicationStatusMismatch(appStatus, desiredState); const isUserInitiatedTransition = pendingAction != null; @@ -162,7 +164,7 @@ const ApplicationLifecycleActions = ({ {t('Start')} )} - {isAppRunning && ( + {canStop && ( handleAction('stop')}> {t('Stop')} diff --git a/libs/ui-components/src/utils/applicationLifecycle.ts b/libs/ui-components/src/utils/applicationLifecycle.ts index ff42f63fe..1ccadc337 100644 --- a/libs/ui-components/src/utils/applicationLifecycle.ts +++ b/libs/ui-components/src/utils/applicationLifecycle.ts @@ -29,6 +29,13 @@ export const startableStatuses = [ ApplicationStatusType.ApplicationStatusStopping, ApplicationStatusType.ApplicationStatusStopped, ApplicationStatusType.ApplicationStatusError, + ApplicationStatusType.ApplicationStatusUnknown, +]; + +export const stoppableStatuses = [ + ApplicationStatusType.ApplicationStatusRunning, + ApplicationStatusType.ApplicationStatusError, + ApplicationStatusType.ApplicationStatusUnknown, ]; export type ApplicationLifecycleAction = 'start' | 'stop' | 'restart';