feat(editor): Add dynamic credentials UI for ChatHub#25685
Merged
feat(editor): Add dynamic credentials UI for ChatHub#25685
Conversation
Implements user-facing UI for dynamic credentials in ChatHub: - New composable: useDynamicCredentialsStatus for credential state management and OAuth flow - New component: DynamicCredentialsDrawer for credential connection UI - Integration in ChatPrompt and ChatView with conditional rendering based on credential status - API functions to fetch execution status and authorize/revoke credentials - i18n support for all UI strings - Comprehensive unit tests for the composable Feature is gated behind useDynamicCredentials() feature flag and enterprise license check. Related: IAM-253 Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Bundle ReportChanges will increase total bundle size by 100.66kB (0.24%) ⬆️. This is within the configured threshold ✅ Detailed changes
Affected Assets, Files, and Routes:view changes for bundle: editor-ui-esmAssets Changed:
Files in
Files in
|
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This comment has been minimized.
This comment has been minimized.
…ds-ui-for-chat # Conflicts: # packages/frontend/editor-ui/src/features/ai/chatHub/chat.api.ts # packages/frontend/editor-ui/src/features/ai/chatHub/components/ChatPrompt.vue
- Add native-type="button" to Connect button to prevent form submission from swallowing the click event - Shrink resize wrapper width when drawer is open to prevent overflow clipping Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…nable n8n resolver The OAuth callback for dynamic credentials required a Bearer token in the CSRF state, which is empty when using cookie-based auth from Chat Hub. Now falls back to the credential context identity (session JWT) when no Authorization header is present, and carries auth metadata through the callback chain for the n8n resolver's identity resolution. Also registers the N8N credential resolver and adds a popup-closed polling fallback for the OAuth flow in dev environments where BroadcastChannel is cross-origin. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This comment has been minimized.
This comment has been minimized.
…loses Instead of fetching status once after the popup closes, poll up to 10 times (1s apart) until the credential becomes configured. This handles the race condition where the backend hasn't finished storing the OAuth token when the popup closes. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Update test assertions to match the new authMetadata parameter in saveDynamicCredential and the credential context metadata pass-through in the OAuth callback chain. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Fix dark mode: use --color--background--light-2 for drawer panel - Auto-close credentials drawer when all accounts are connected - Remove "connected" callout (redundant with auto-close behavior) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
guillaumejacquart
approved these changes
Feb 26, 2026
Contributor
guillaumejacquart
left a comment
There was a problem hiding this comment.
This looks good to me
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
afitzek
pushed a commit
that referenced
this pull request
Feb 27, 2026
Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
Merged
Tuukkaa
pushed a commit
that referenced
this pull request
Mar 2, 2026
Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
Contributor
|
Got released with |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Implements the complete user-facing dynamic credentials UI for ChatHub, allowing users to authenticate required OAuth credentials before running workflows that use dynamic credential resolution.
Key Features:
useDynamicCredentials()flagRelated Linear tickets, Github issues, and Community forum posts
https://linear.app/n8n/issue/IAM-253
Review / Merge checklist