diff --git a/src/workbench/extensions/manager/components/manager/ManagerDialog.vue b/src/workbench/extensions/manager/components/manager/ManagerDialog.vue index 1dbc604509..ef5b5928d9 100644 --- a/src/workbench/extensions/manager/components/manager/ManagerDialog.vue +++ b/src/workbench/extensions/manager/components/manager/ManagerDialog.vue @@ -402,7 +402,7 @@ const isUnresolvedTab = computed( ) // Map of tab IDs to their empty state i18n key suffixes -const tabEmptyStateKeys: Partial> = { +const tabEmptyStateKeys: Record = { [ManagerTab.AllInstalled]: 'allInstalled', [ManagerTab.UpdateAvailable]: 'updateAvailable', [ManagerTab.Conflicting]: 'conflicting', @@ -410,12 +410,27 @@ const tabEmptyStateKeys: Partial> = { [ManagerTab.Missing]: 'missing' } +const managerApiDependentTabs = new Set([ + ManagerTab.AllInstalled, + ManagerTab.UpdateAvailable, + ManagerTab.Conflicting, + ManagerTab.NotInstalled, + ManagerTab.Missing +]) + +const isManagerErrorRelevant = computed(() => { + const tabId = selectedTab.value?.id + return ( + !!comfyManagerStore.error && !!tabId && managerApiDependentTabs.has(tabId) + ) +}) + // Empty state messages based on current tab and search state const emptyStateTitle = computed(() => { - if (comfyManagerStore.error) return t('manager.errorConnecting') + if (isManagerErrorRelevant.value) return t('manager.errorConnecting') if (searchQuery.value) return t('manager.noResultsFound') - const tabId = selectedTab.value?.id as ManagerTab | undefined + const tabId = selectedTab.value?.id const emptyStateKey = tabId ? tabEmptyStateKeys[tabId] : undefined return emptyStateKey @@ -424,7 +439,7 @@ const emptyStateTitle = computed(() => { }) const emptyStateMessage = computed(() => { - if (comfyManagerStore.error) return t('manager.tryAgainLater') + if (isManagerErrorRelevant.value) return t('manager.tryAgainLater') if (searchQuery.value) { const baseMessage = t('manager.tryDifferentSearch') if (isLegacyManagerSearch.value) { @@ -433,7 +448,7 @@ const emptyStateMessage = computed(() => { return baseMessage } - const tabId = selectedTab.value?.id as ManagerTab | undefined + const tabId = selectedTab.value?.id const emptyStateKey = tabId ? tabEmptyStateKeys[tabId] : undefined return emptyStateKey