This commit streamlines the LangflowFileService by removing direct HTTP client usage in favor of a centralized API client for handling requests. It enhances the upload and delete file methods to improve code organization and maintainability. Additionally, it updates logging practices for better error visibility, ensuring adherence to robust async coding standards and documentation practices.
🚀 (frontend): Implement support for process.env.PORT to run app on a configurable port
🔧 (frontend): Change port variable case from lowercase 'port' to uppercase 'PORT' for better semantics
📝 (frontend): Add comments to clarify the purpose of loading conversation data only when user explicitly selects a conversation
📝 (frontend): Add comments to explain the logic for loading conversation data based on certain conditions
📝 (frontend): Add comments to describe the purpose of handling new conversation creation and resetting messages
📝 (frontend): Add comments to explain the logic for loading conversation data when conversationData changes
📝 (frontend): Add comments to clarify the purpose of loading conversations from the backend
📝 (frontend): Add comments to describe the logic for silent refresh to update data without loading states
📝 (frontend): Add comments to explain the purpose of starting a new conversation and creating a placeholder conversation
📝 (frontend): Add comments to clarify the logic for forking from a response and starting a new conversation
📝 (frontend): Add comments to describe the purpose of adding a conversation document and clearing conversation documents
📝 (frontend): Add comments to explain the logic for using a timeout to debounce multiple rapid refresh calls
📝 (frontend): Add comments to clarify the purpose of cleaning up timeout on unmount
📝 (frontend): Add comments to describe the logic for handling new conversation creation and resetting state
📝 (frontend): Add comments to explain the logic for forking from a response and starting a new conversation
📝 (frontend): Add comments to clarify the purpose of using useMemo for optimizing performance in ChatProvider
📝 (frontend): Add comments to describe the logic for using useMemo in the ChatProvider component
📝 (frontend): Add comments to explain the purpose of the useChat custom hook
📝 (frontend): Add comments to clarify the error message when useChat is not used within a ChatProvider
📝 (services): Update ChatService to fetch Langflow history with flow_id parameter for better control
This commit refactors the LangflowFileService to include asynchronous API key retrieval and updates the file upload and deletion methods to use the new v2 endpoints. The flow ID constant has been renamed for clarity, and additional logging has been added for better debugging and error handling. The payload structure for the ingestion flow has also been modified to improve functionality and maintainability.
This commit enhances the TaskService class by reorganizing import statements, updating type hints to use `dict` instead of `Dict`, and improving the formatting of method definitions for better clarity. Additionally, minor adjustments were made to comments and error handling, contributing to a more robust and well-documented codebase.
🔧 (chat_service.py): Refactor conversation deduplication logic and source statistics calculation for better performance and accuracy
🔧 (langflow_history_service.py): Implement session ownership filtering for Google users and enhance session ownership tracking functionality
🔧 (session_ownership_service.py): Create SessionOwnershipService to track session ownership for proper message history separation
This commit introduces the LangflowFileService class, which provides methods for uploading user files, deleting user files, and triggering an ingestion flow using the Langflow Files API. The service is designed to handle asynchronous operations and includes error handling for API requests. Documentation for each method is included to ensure clarity on usage.