-
Notifications
You must be signed in to change notification settings - Fork 137
feat(ui): add temporary ui for connectors #1702
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Summary of ChangesHello @PetrBulanek, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request introduces a temporary user interface for managing connectors within the application. The primary goal is to provide better clarity and functionality for connector interactions until a final design is implemented. This involves creating new UI components for listing, adding, and managing connector states, along with refactoring existing table views to support search and action buttons. The changes also include updates to the underlying API interactions and state management for connectors. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
Signed-off-by: Petr Bulánek <[email protected]>
Signed-off-by: Petr Bulánek <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request introduces a new TableViewWithSearch component to standardize table displays with search functionality across the application, replacing manual table implementations in ConnectorsView, ProvidersView, and VariablesView. It refactors connector-related API calls and hooks for improved type safety and state management, including adding a new AddConnectorModal and dedicated action buttons for connectors. The PR also updates various import paths, particularly for secret management components, and introduces Zod schemas for form validation. Review comments highlight a critical security vulnerability in [email protected] and a deprecated mintlify package, recommending immediate upgrades. Additionally, feedback suggests aligning @hookform/resolvers major version with react-hook-form v7, considering a more flexible generic constraint for TableViewWithSearch, making the redirect_url in connector API calls potentially dynamic, ensuring all queries are updated for the connectorKeys.all change, and improving the handling of OAuth popup closures.
apps/agentstack-ui/src/modules/connectors/hooks/useConnectors.ts
Outdated
Show resolved
Hide resolved
Signed-off-by: Petr Bulánek <[email protected]>
9d35bb8 to
4b4d892
Compare
Signed-off-by: Petr Bulánek <[email protected]>
Signed-off-by: Petr Bulánek <[email protected]>
| state: 'disconnected'; | ||
| } | ||
| export async function deleteConnector(path: DeleteConnectorPath) { | ||
| const response = await api.DELETE('/api/v1/connectors/{connector_id}', { params: { path } }); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we want to implement all api calls in the SDK and use them from there from now on. But we can leave that for #1692 .
| authorizeOauth(result.auth_request.authorization_endpoint, handleAuthorizeCallback); | ||
| const result = await connectConnector({ connector_id: connectorId }); | ||
|
|
||
| if (result && result.auth_request) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if (result?.auth_request)
| <IconButton | ||
| label="Delete" | ||
| kind="ghost" | ||
| size="sm" | ||
| onClick={() => |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe we could create a DeleteButton abstraction (not necessarily in this PR 😊 )
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🙌
Signed-off-by: Petr Bulánek <[email protected]>
Summary
Adds temporary UI for connectors for better clarity until the final design is ready.
Linked Issues
Refs: #1442
Documentation