From b911083f45fdc86853216f512cbb6203ec00f4a9 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 6 Apr 2026 17:44:26 -0400 Subject: [PATCH] fix: fix search for integrations [dev] [Marfuen] mariano/sale-31-search-in-integrations-page-not-working --- .../src/app/(app)/[orgId]/admin/integrations/page.tsx | 11 ++++------- .../integrations/components/PlatformIntegrations.tsx | 4 ++-- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/apps/app/src/app/(app)/[orgId]/admin/integrations/page.tsx b/apps/app/src/app/(app)/[orgId]/admin/integrations/page.tsx index 69f5a1b8ba..27814e18f7 100644 --- a/apps/app/src/app/(app)/[orgId]/admin/integrations/page.tsx +++ b/apps/app/src/app/(app)/[orgId]/admin/integrations/page.tsx @@ -64,13 +64,10 @@ export default function AdminIntegrationsPage() { }); const filteredIntegrations = integrations?.filter((i) => { - if (!searchQuery) return true; - const query = searchQuery.toLowerCase(); - return ( - i.name.toLowerCase().includes(query) || - i.description.toLowerCase().includes(query) || - i.category.toLowerCase().includes(query) - ); + if (!searchQuery.trim()) return true; + const terms = searchQuery.toLowerCase().trim().split(' ').filter(Boolean); + const searchText = `${i.name} ${i.description} ${i.category}`.toLowerCase(); + return terms.every((term) => searchText.includes(term)); }); const oauthIntegrations = filteredIntegrations?.filter((i) => i.authType === 'oauth2') || []; diff --git a/apps/app/src/app/(app)/[orgId]/integrations/components/PlatformIntegrations.tsx b/apps/app/src/app/(app)/[orgId]/integrations/components/PlatformIntegrations.tsx index 700704c3ea..752f6273d4 100644 --- a/apps/app/src/app/(app)/[orgId]/integrations/components/PlatformIntegrations.tsx +++ b/apps/app/src/app/(app)/[orgId]/integrations/components/PlatformIntegrations.tsx @@ -249,11 +249,11 @@ export function PlatformIntegrations({ className, taskTemplates }: PlatformInteg if (item.type === 'platform') { const searchText = `${item.provider.name} ${item.provider.description} ${item.provider.category}`.toLowerCase(); - return terms.some((term) => searchText.includes(term)); + return terms.every((term) => searchText.includes(term)); } const searchText = `${item.integration.name} ${item.integration.description} ${item.integration.category} ${item.integration.examplePrompts.join(' ')}`.toLowerCase(); - return terms.some((term) => searchText.includes(term)); + return terms.every((term) => searchText.includes(term)); }); }