From 62e5b8ae76fcb1cdec834413e86ec6194ba56b04 Mon Sep 17 00:00:00 2001 From: Vikhyath Mondreti Date: Sun, 15 Mar 2026 00:17:13 -0700 Subject: [PATCH 1/4] fix(notifications): credentials connection notifs showing up in right resource --- .../[workspaceId]/knowledge/[id]/base.tsx | 2 + .../add-connector-modal.tsx | 20 ++- .../connectors-section/connectors-section.tsx | 14 +- .../app/workspace/[workspaceId]/layout.tsx | 5 +- .../integrations/integrations-manager.tsx | 68 +++++++-- .../credential-selector.tsx | 5 +- .../[workspaceId]/w/[workflowId]/workflow.tsx | 64 +------- apps/sim/hooks/use-oauth-return.ts | 139 ++++++++++++++++++ apps/sim/lib/credentials/client-state.ts | 59 ++++++++ 9 files changed, 293 insertions(+), 83 deletions(-) create mode 100644 apps/sim/hooks/use-oauth-return.ts diff --git a/apps/sim/app/workspace/[workspaceId]/knowledge/[id]/base.tsx b/apps/sim/app/workspace/[workspaceId]/knowledge/[id]/base.tsx index 369b90bb2aa..b8131786122 100644 --- a/apps/sim/app/workspace/[workspaceId]/knowledge/[id]/base.tsx +++ b/apps/sim/app/workspace/[workspaceId]/knowledge/[id]/base.tsx @@ -72,6 +72,7 @@ import { useUpdateKnowledgeBase, } from '@/hooks/queries/kb/knowledge' import { useInlineRename } from '@/hooks/use-inline-rename' +import { useOAuthReturnForKBConnectors } from '@/hooks/use-oauth-return' const logger = createLogger('KnowledgeBase') @@ -189,6 +190,7 @@ export function KnowledgeBase({ }: KnowledgeBaseProps) { const params = useParams() const workspaceId = propWorkspaceId || (params.workspaceId as string) + useOAuthReturnForKBConnectors(id) const { removeKnowledgeBase } = useKnowledgeBasesList(workspaceId, { enabled: false }) const userPermissions = useUserPermissionsContext() diff --git a/apps/sim/app/workspace/[workspaceId]/knowledge/[id]/components/add-connector-modal/add-connector-modal.tsx b/apps/sim/app/workspace/[workspaceId]/knowledge/[id]/components/add-connector-modal/add-connector-modal.tsx index 5d3a7a9337b..7d1ec047619 100644 --- a/apps/sim/app/workspace/[workspaceId]/knowledge/[id]/components/add-connector-modal/add-connector-modal.tsx +++ b/apps/sim/app/workspace/[workspaceId]/knowledge/[id]/components/add-connector-modal/add-connector-modal.tsx @@ -20,6 +20,7 @@ import { Tooltip, } from '@/components/emcn' import { useSession } from '@/lib/auth/auth-client' +import { writeOAuthReturnContext } from '@/lib/credentials/client-state' import { getCanonicalScopesForProvider, getProviderIdFromServiceId, @@ -288,8 +289,25 @@ export function AddConnectorModal({ open, onOpenChange, knowledgeBaseId }: AddCo return } + writeOAuthReturnContext({ + origin: 'kb-connectors', + knowledgeBaseId, + displayName, + providerId: connectorProviderId, + preCount: credentials.length, + workspaceId, + requestedAt: Date.now(), + }) + setShowOAuthModal(true) - }, [connectorConfig, connectorProviderId, workspaceId, session?.user?.name]) + }, [ + connectorConfig, + connectorProviderId, + workspaceId, + session?.user?.name, + knowledgeBaseId, + credentials.length, + ]) const filteredEntries = useMemo(() => { const term = searchTerm.toLowerCase().trim() diff --git a/apps/sim/app/workspace/[workspaceId]/knowledge/[id]/components/connectors-section/connectors-section.tsx b/apps/sim/app/workspace/[workspaceId]/knowledge/[id]/components/connectors-section/connectors-section.tsx index 58884a0de3b..8c054c79578 100644 --- a/apps/sim/app/workspace/[workspaceId]/knowledge/[id]/components/connectors-section/connectors-section.tsx +++ b/apps/sim/app/workspace/[workspaceId]/knowledge/[id]/components/connectors-section/connectors-section.tsx @@ -27,6 +27,7 @@ import { Tooltip, } from '@/components/emcn' import { cn } from '@/lib/core/utils/cn' +import { writeOAuthReturnContext } from '@/lib/credentials/client-state' import { getCanonicalScopesForProvider, getProviderIdFromServiceId, @@ -444,7 +445,18 @@ function ConnectorCard({ {canEdit && (