From 91b916f01558dff92f4cb7e427af3fff9a3db1cc Mon Sep 17 00:00:00 2001 From: ajnart Date: Mon, 24 Aug 2026 02:36:55 +0200 Subject: [PATCH] fix: address command menu review --- .../modes/external/search-engines-search-group.tsx | 11 +++++++---- .../src/modes/home/home-search-engine-group.tsx | 4 +++- .../src/modes/media/media-fallback-group.tsx | 2 +- .../src/modes/media/media-request-search-group.tsx | 2 +- packages/translation/src/lang/en.json | 1 + 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/packages/spotlight/src/modes/external/search-engines-search-group.tsx b/packages/spotlight/src/modes/external/search-engines-search-group.tsx index 5f6add703..a116a177a 100644 --- a/packages/spotlight/src/modes/external/search-engines-search-group.tsx +++ b/packages/spotlight/src/modes/external/search-engines-search-group.tsx @@ -429,7 +429,9 @@ const createSearchEnginesSearchGroup = ({ minimumLength, showEmptyHint, source } ); const isLoading = enginesQuery.isLoading || ddgQuery.isLoading; - const isError = enginesQuery.isError || ddgQuery.isError; + const isError = + (enginesQuery.isError && remoteQuery.enabled) || + (ddgQuery.isError && remoteQuery.enabled && ddgBangs && remoteQuery.query.length >= 1); const engineOptions = (enginesQuery.data ?? []).map( (engine): ExternalOption => ({ @@ -454,9 +456,10 @@ const createSearchEnginesSearchGroup = ({ minimumLength, showEmptyHint, source } const matchedEngine = (enginesQuery.data ?? []).find((engine) => engine.short === bangToken); const matchedDdg = (ddgQuery.data ?? []).find((bang) => bang.t === bangToken); - const label = matchedEngine?.name ?? matchedDdg?.s; - const iconUrl = matchedEngine?.iconUrl; - const urlTemplate = matchedEngine?.type === "generic" ? matchedEngine.urlTemplate : matchedDdg?.u; + const genericEngine = matchedEngine?.type === "generic" ? matchedEngine : undefined; + const label = genericEngine?.name ?? matchedDdg?.s; + const iconUrl = genericEngine?.iconUrl; + const urlTemplate = genericEngine?.urlTemplate ?? matchedDdg?.u; if (label && urlTemplate) { if (searchText.trim().length > 0) { diff --git a/packages/spotlight/src/modes/home/home-search-engine-group.tsx b/packages/spotlight/src/modes/home/home-search-engine-group.tsx index f78239576..9f0e92e44 100644 --- a/packages/spotlight/src/modes/home/home-search-engine-group.tsx +++ b/packages/spotlight/src/modes/home/home-search-engine-group.tsx @@ -82,7 +82,9 @@ export const homeSearchEngineGroup = createGroup({ return { isLoading: defaultSearchEngineQuery.isLoading || (resultQuery.isLoading && fromIntegrationEnabled) || status === "loading", - isError: defaultSearchEngineQuery.isError || (resultQuery.isError && fromIntegrationEnabled), + isError: + (defaultSearchEngineQuery.isError && status !== "loading" && remoteQuery.enabled) || + (resultQuery.isError && fromIntegrationEnabled), data: remoteQuery.enabled ? createDefaultSearchEntries(defaultSearchEngine, results, session, query, t) : [], }; }, diff --git a/packages/spotlight/src/modes/media/media-fallback-group.tsx b/packages/spotlight/src/modes/media/media-fallback-group.tsx index fd7c56d25..4d96dd5bf 100644 --- a/packages/spotlight/src/modes/media/media-fallback-group.tsx +++ b/packages/spotlight/src/modes/media/media-fallback-group.tsx @@ -56,7 +56,7 @@ export const mediaFallbackGroup = createGroup({ { key: "media-fallback", label: t("search.modePicker.media.fallback", { query: remoteQuery.query }), - description: t("search.mode.media.action.search.disabled.noIntegration"), + description: t("search.mode.media.action.search.disabled.signInRequired"), query: remoteQuery.query, unavailable: true, }, diff --git a/packages/spotlight/src/modes/media/media-request-search-group.tsx b/packages/spotlight/src/modes/media/media-request-search-group.tsx index 13a2f15d9..f7cb7068a 100644 --- a/packages/spotlight/src/modes/media/media-request-search-group.tsx +++ b/packages/spotlight/src/modes/media/media-request-search-group.tsx @@ -142,7 +142,7 @@ export const mediaRequestSearchGroup = createGroup({ key: "disabled", kind: "disabled", label: tMedia("action.search.label"), - description: tMedia("action.search.disabled.noIntegration"), + description: tMedia("action.search.disabled.signInRequired"), unavailable: true, }, ], diff --git a/packages/translation/src/lang/en.json b/packages/translation/src/lang/en.json index 746560932..a4f08f284 100644 --- a/packages/translation/src/lang/en.json +++ b/packages/translation/src/lang/en.json @@ -7048,6 +7048,7 @@ "description": "Start typing to search your media request integrations", "disabled": { "noIntegration": "Add an Overseerr, Jellyseerr, or Seerr integration to enable media search.", + "signInRequired": "Sign in to search media request integrations.", "scoped": "This widget does not have an accessible media request integration." } }