From ca50f8193c6ab8099962e15ac1e24f783471ff6f Mon Sep 17 00:00:00 2001 From: Mary Hipp Date: Mon, 17 Feb 2025 09:59:03 -0500 Subject: [PATCH] add AppFeature for retryQueueItem in case we want to easily disable --- invokeai/frontend/web/src/app/types/invokeai.ts | 3 ++- .../queue/components/QueueList/QueueItemComponent.tsx | 6 ++++-- .../features/queue/components/QueueList/QueueItemDetail.tsx | 6 ++++-- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/invokeai/frontend/web/src/app/types/invokeai.ts b/invokeai/frontend/web/src/app/types/invokeai.ts index 9ea267800b3..237d213ce55 100644 --- a/invokeai/frontend/web/src/app/types/invokeai.ts +++ b/invokeai/frontend/web/src/app/types/invokeai.ts @@ -26,7 +26,8 @@ export type AppFeature = | 'modelCache' | 'bulkDownload' | 'starterModels' - | 'hfToken'; + | 'hfToken' + | 'retryQueueItem'; /** * A disable-able Stable Diffusion feature */ diff --git a/invokeai/frontend/web/src/features/queue/components/QueueList/QueueItemComponent.tsx b/invokeai/frontend/web/src/features/queue/components/QueueList/QueueItemComponent.tsx index 81748b75159..35f6e801062 100644 --- a/invokeai/frontend/web/src/features/queue/components/QueueList/QueueItemComponent.tsx +++ b/invokeai/frontend/web/src/features/queue/components/QueueList/QueueItemComponent.tsx @@ -6,6 +6,7 @@ import { useOriginText } from 'features/queue/components/QueueList/useOriginText import { useCancelQueueItem } from 'features/queue/hooks/useCancelQueueItem'; import { useRetryQueueItem } from 'features/queue/hooks/useRetryQueueItem'; import { getSecondsFromTimestamps } from 'features/queue/util/getSecondsFromTimestamps'; +import { useFeatureStatus } from 'features/system/hooks/useFeatureStatus'; import type { MouseEvent } from 'react'; import { memo, useCallback, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; @@ -31,6 +32,7 @@ const sx: ChakraProps['sx'] = { const QueueItemComponent = ({ index, item, context }: InnerItemProps) => { const { t } = useTranslation(); + const isRetryEnabled = useFeatureStatus('retryQueueItem'); const handleToggle = useCallback(() => { context.toggleQueueItem(item.item_id); }, [context, item.item_id]); @@ -118,7 +120,7 @@ const QueueItemComponent = ({ index, item, context }: InnerItemProps) => { - {!isFailed && ( + {(!isFailed || !isRetryEnabled) && ( { icon={} /> )} - {isFailed && ( + {isFailed && isRetryEnabled && ( { const { session_id, batch_id, item_id, origin, destination } = queueItemDTO; const { t } = useTranslation(); + const isRetryEnabled = useFeatureStatus('retryQueueItem'); const { cancelBatch, isLoading: isLoadingCancelBatch, isCanceled: isBatchCanceled } = useCancelBatch(batch_id); const { cancelQueueItem, isLoading: isLoadingCancelQueueItem } = useCancelQueueItem(item_id); @@ -70,7 +72,7 @@ const QueueItemComponent = ({ queueItemDTO }: Props) => { - {!isFailed && ( + {(!isFailed || !isRetryEnabled) && ( )} - {isFailed && ( + {isFailed && isRetryEnabled && (