feat: add email authentication in help menu and added LLM APIs #588
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.
Pull Request
Description
This PR introduces the integration of OpenAI, Gemini, and Claude as an LLM model option in the project. It updates various parts of the code to include Claude in the LLM model selection, allowing users to choose and configure models. The changes include UI updates for model selection, event handling for checkbox changes, and conditional visibility of input fields based on the selected models.
Related Issues
Changes Made
Enhancements to LLM Settings:
Added support for additional LLM models (claude) alongside existing models (openai, gemini).
Introduced LLMModels object to handle multiple LLMs with a default setting of { openai: true }.
Menu and UI Adjustments:
Updated the menu to include checkboxes for selecting multiple LLM models, with a limit of two models.
Modified various UI elements to handle new authentication keys for claude and email.
Event Handlers and Validation:
Added event handlers for new checkboxes to show/hide corresponding authentication key inputs.
Implemented a verification system for email authentication.
Initialization and State Management:
Updated initialization logic to account for multiple selected LLM models.
Adjusted state management to store authentication keys and preferences for the new LLM models.
API Integration:
Integrated an email verification API call within the VerifyEmail function.
Screenshots (if applicable)
Checklist
ManualTestingProcess.md
, and all tests related to this pull request pass.Additional Notes