Commit graph

756 commits

Author SHA1 Message Date
Pedro Pacheco
ce07fb5cc2
fix: updated version of lanchain-astradb to 0.5.3 (#7189)
Updated langchain-astradb to version 0.5.3

Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
2025-03-20 16:56:08 +00:00
Sebastián Estévez
5493ac7b0b
feat: voice mode (#4642)
* WIP

* works

* stereo

* ui v0

* unnecessary import

* update steps in voice ws

* [autofix.ci] apply automated fixes

* unused

* merge

* [autofix.ci] apply automated fixes

* cleanly handle missing OPENAI key

* ruff

* [autofix.ci] apply automated fixes

* fix genericIconComponent path

* update for recent async fixes

* accidentally commited html file

* better prompt and threading

* client barge-in detection

* fmt

* error handling

* fixed VAD with 24 to 16Hz resampling

* comment out debug file

* better_vad

* lock

* router

* [autofix.ci] apply automated fixes

* mcp fixes

* timeout fix

* global variable exception handling

* don't close the websocket

* fix double send bug

* fix double send bug

* response.output_item event type typo

* voice_mode logging

* 📝 (constants.py): Add "copy_field" attribute to FIELD_FORMAT_ATTRIBUTES list
📝 (webhook.py): Add "copy_field" attribute to MultilineInput component
📝 (input_mixin.py): Add "copy_field" attribute to BaseInputMixin class
📝 (inputs.py): Add "copy_field" attribute to StrInput class
📝 (template/field/base.py): Add "copy_field" attribute to Input class
🚀 (NodeDescription/index.tsx): Remove default placeholder text for emptyPlaceholder prop
 (copyFieldAreaComponent/index.tsx): Add new component for handling copy field functionality
♻️ (strRenderComponent/index.tsx): Refactor component to include CopyFieldAreaComponent when copy_field attribute is present in template data

*  (NodeDescription/index.tsx): refactor renderedDescription useMemo to improve readability and maintainability
♻️ (GenericNode/index.tsx): refactor code to improve readability and maintainability, and optimize rendering logic

* 📝 (webhook.py): Add cURL field to WebhookComponent for better integration with external systems
📝 (graph/base.py): Add logging of vertex build information in Graph class for debugging purposes
📝 (NodeInputField/index.tsx): Add nodeInformationMetadata to NodeInputField for better tracking of node information
📝 (copyFieldAreaComponent/index.tsx): Refactor CopyFieldAreaComponent to handle different types of values, including webhooks
📝 (strRenderComponent/index.tsx): Add WebhookFieldComponent to handle webhook type in StrRenderComponent
📝 (tableNodeCellRender/index.tsx): Add nodeInformationMetadata to TableNodeCellRender for better tracking of node information
📝 (textAreaComponent/index.tsx): Add support for webhook format in TextAreaComponent for better integration with webhooks
📝 (webhookFieldComponent/index.tsx): Add WebhookFieldComponent to handle webhook type in ParameterRenderComponent
📝 (custom-parameter.tsx): Add nodeInformationMetadata to CustomParameterComponent for better tracking of node information
📝 (get-curl-code.tsx): Add support for different formats in getCurlWebhookCode for generating cURL commands
📝 (textAreaModal/index.tsx): Add onCloseModal callback to ComponentTextModal for better handling of modal closing
📝 (index.ts): Add type field to APIClassType for better typing of API classes

*  (index.tsx): Add a button to generate a token in the WebhookFieldComponent for improved user experience and functionality. Update the structure of the component to include the new button and styling adjustments.

* [autofix.ci] apply automated fixes

*  (generate-token-dialog.tsx): add GenerateTokenDialog component to handle token generation in webhookFieldComponent
📝 (index.tsx): import and use GenerateTokenDialog component in WebhookFieldComponent for token generation functionality

*  (frontend): introduce new feature to create API keys with customizable modal properties
🔧 (frontend): add modalProps object to customize modal title, description, input label, input placeholder, button text, generated key message, and show icon flag

* add pool interval variable and tests

* 📝 (NodeOutputfield): Remove unused ScanEyeIcon component
 (validate-webhook.ts): Add function to validate webhook data before processing
♻️ (use-get-builds-pooling-mutation): Refactor to set flow pool based on current flow
🔧 (content-render.tsx): Add data-testid attribute to api key input element
🔧 (webhookComponent.spec.ts): Refactor test to use waitForRequest for monitoring build requests

* [autofix.ci] apply automated fixes

* 🔧 (backend): rename webhook_pooling_interval to webhook_polling_interval for consistency
🔧 (frontend): update references to webhook_pooling_interval to webhook_polling_interval for consistency

* vad + dummy check

* 📝 (frontend): Update import paths and remove unused imports for better code organization and maintainability
🔧 (frontend): Refactor background styles in components to use constants for consistency and easier theming
🚀 (frontend): Add custom SecretKeyModalButton component for better modularity and reusability

* 📝 (use-get-api-keys.ts): add a TODO comment to request API key from DSLF endpoint for future implementation.

* 📝 (input_mixin.py): Remove copy_field attribute from BaseInputMixin as it is no longer needed
♻️ (inputs.py): Remove copy_field attribute from StrInput class as it is no longer needed
♻️ (inputs.py): Set copy_field attribute to False in MultilineInput class to ensure consistency
♻️ (template/field/base.py): Remove copy_field attribute from Input class as it is no longer needed
📝 (textAreaComponent/index.tsx): Replace hardcoded value "CURL_WEBHOOK" with constant WEBHOOK_VALUE for better readability and maintainability

* 🐛 (base.py): fix issue where flow_id could be None by defaulting to an empty string if flow_id is None

* 🔧 (secret-key-modal.tsx): Remove unused SecretKeyModalButton component
🔧 (get-modal-props.tsx): Remove unused getModalPropsApiKey function and related imports and constants

* 📝 (langflow): add noqa comments to suppress linting rule A005 for specific files in the io, logging, and socket modules

*  (frontend): Add voice assistant feature to chat input component
🔧 (frontend): Refactor import path for VoiceAssistant component
🔧 (frontend): Refactor class name for button in upload-file-button component
🔧 (frontend): Refactor class name for button in voice-button component
🔧 (frontend): Refactor class name for button in applies.css
🔧 (frontend): Refactor class name for button in styleUtils.ts

*  (api-key-popup.tsx): Add a new component ApiKeyPopup to enable users to enter their OpenAI API key for voice transcription
♻️ (index.tsx): Refactor VoiceAssistant component to check for the presence of OpenAI API key before starting voice transcription and show ApiKeyPopup component if key is missing
🔧 (apiKeyModal/index.tsx): Remove the obsolete APIKeyModal component as it is no longer needed after implementing ApiKeyPopup in the voice assistant feature

* merge fix

*  (Voice Assistant): Introduce voice transcription feature powered by OpenAI. Add components and hooks for handling audio recording, processing, and WebSocket communication. Implement functionality to start, stop recording, play audio chunks, handle WebSocket messages, and initialize audio context. Add support for entering API key for OpenAI.

*  (voice-assistant.tsx): Add voice assistant feature to the chat input component for recording and processing audio input
🔧 (use-post-voice.tsx): Remove unused file use-post-voice.tsx from the project
♻️ (use-handle-websocket-message.ts): Refactor useHandleWebsocketMessage function to improve readability and remove unnecessary console logs
♻️ (use-initialize-audio.ts): Refactor useInitializeAudio function to handle audio context creation and resume more efficiently
 (use-interrupt-playback.ts): Add useInterruptPlayback function to handle interrupting audio playback
 (use-start-conversation.ts): Add useStartConversation function to initiate a conversation using a WebSocket connection
📝 (chat-input.tsx): Update import path for VoiceAssistant component to match the new file structure

* ♻️ (use-interrupt-playback.ts): refactor useInterruptPlayback hook to clear audio queue, stop playback, and send stop message to audio processor if it exists

* 🔧 (gitattributes): add *.raw file extension as binary to prevent git from modifying the file contents

* lazy load components

* TRACE logging

* new voice_mode ws endpoint and elevenlabs mode

* unique voice

* text modality

* stream elevenlabs

* ws and sentence chunking

* offload tts to new thread

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* add eleven labs changes on FE

* 🐛 (use-handle-websocket-message.ts): Fix logic to handle error messages and show API key modal when api_key_missing error occurs
♻️ (use-handle-websocket-message.ts): Refactor error handling logic to improve readability and maintainability
📝 (voice-assistant.tsx): Add console log for showApiKeyModal variable to debug an issue

* api_key_missing error includes key_name

*  (use-handle-websocket-message.ts): update status message when API key is missing to provide more context
🔧 (voice-assistant.tsx): add support for saving and handling API key using new API endpoints and alert messages
🔧 (voice-assistant.tsx): update logic to check for existing API key and handle saving new API key with appropriate error handling

* 🔧 (gitignore): remove unnecessary whitespace at the end of the file
🔧 (output_audio.raw): delete output_audio.raw file as it is no longer needed

* 🐛 (use-handle-websocket-message.ts): Fix logic to show API key modal only if hasOpenAIAPIKey is false
🐛 (voice-assistant.tsx): Fix missing hasOpenAIAPIKey parameter in VoiceAssistant component to prevent runtime errors

* [autofix.ci] apply automated fixes

* modalities

* send all openai events and homogenize eleven_client name

* 🔧 (voice_mode.py): Refactor get_or_create_elevenlabs_client function to accept user_id and session parameters for better flexibility and reusability
🔧 (voice-assistant.tsx): Add local storage utility functions to handle saving and retrieving audio settings for voice assistant
🔧 (voiceStore.ts): Create a new store to manage voice-related data such as available voices and providers
🔧 (audio-settings-dialog.tsx): Introduce a new component to manage audio settings for the voice assistant, including provider and voice selection
🔧 (settings-voice-button.tsx): Implement a button component to open the audio settings modal for the voice assistant

* unnecessary barge in queue and elif fix

* queue_service, remove old ws endpoint, and vad tweaks

* traceback and better system prompt

* [autofix.ci] apply automated fixes

* merge

* build_flow fix

* fix flow_and_stream args

* mcp flow_and_stream

* build_flow_and_stream

* retry prompt and conversation_id

* [autofix.ci] apply automated fixes

* prompt

* switch to openai and elevenlabs & add token based auth

* 📝 (voice_mode.py): Add import statements for new modules and classes
📝 (voice_mode.py): Add WebSocket endpoint parameter for session_id
📝 (voice_mode.py): Add logic to save message to database in WebSocket endpoint
 (use-get-messages-mutation.ts): Add function to fetch messages data from API
♻️ (use-start-conversation.ts): Update WebSocket URL to include session_id
♻️ (use-start-recording.ts): Add function to handle fetching messages after recording
♻️ (streamProcessor.ts): Add error handling for already registered processor
♻️ (voice-assistant.tsx): Add function to trigger fetching messages after recording
📝 (new-modal.tsx): Set and update current session ID in modal
📝 (utilityStore.ts): Add currentSessionId state and setter function
📝 (index.ts): Add type definition for currentSessionId in utility store

* [autofix.ci] apply automated fixes

*  (voice_mode.py): add functionality to save user input messages to the database during a conversation in the voice mode feature. This allows for better tracking and analysis of user interactions.

* [autofix.ci] apply automated fixes

* continue to support ws without session_id

* intercept and replace response.done when elevenlabs. and better logging

* 🐛 (voice_mode.py): Fix issue where message was not being saved to the database in certain cases
🐛 (use-start-recording.ts): Fix bug where handleGetMessagesMutation was not being called in all scenarios

* close openai ws when client ws closes

* [autofix.ci] apply automated fixes

* rename elevenlabs event type

* move session to global, improve event error logging

* [autofix.ci] apply automated fixes

* session update merging

* key check fix

* fix session update forwarding to openai

* [autofix.ci] apply automated fixes

* 📝 (chat-view.tsx): Add chat history display functionality to show messages in the chat view component and handle file uploads and drag and drop functionality.

*  (inputGlobalComponent): Add GeneralDeleteConfirmationModal and GeneralGlobalVariableModal components for reusability and better code organization
📝 (audio-settings-dialog.tsx): Add userElevenLabsApiKey prop to SettingsVoiceModal component for ElevenLabs API key configuration
🔧 (delete-confirmation-modal.tsx): Create GeneralDeleteConfirmationModal component for reusability in delete confirmation modals
🔧 (global-variable-modal.tsx): Create GeneralGlobalVariableModal component for reusability in global variable modals

* 🐛 (voice_mode.py): Fix error saving message to database and add transcript extraction function
🔧 (constants.ts): Update calculation for LANGFLOW_ACCESS_TOKEN_EXPIRE_SECONDS to use environment variable with fallback value
♻️ (audio-settings-dialog.tsx): Refactor imports and remove unused code, improve logic for setting voice provider and voice selection
🔧 (vite.config.mts): Add dotenv package for loading environment variables, update configuration to use environment variables for BACKEND_URL, ACCESS_TOKEN_EXPIRE_SECONDS, CI, and ELEVENLABS_API_KEY

* [autofix.ci] apply automated fixes

* handle BrokenResourceError

* handle BrokenResourceError

* voice UI/UX improvements

*  (voice-assistant.spec.ts): add test for voice assistant feature to ensure it is visible and interactive on the page

*  (frontend): add feature flag for enabling voice assistant functionality
📝 (input-wrapper.tsx): conditionally render VoiceButton based on ENABLE_VOICE_ASSISTANT flag to control visibility of voice assistant feature

*  (button.tsx): Add new button variant 'outlineAmber' for better visual consistency
🔧 (feature-flags.ts): Enable voice assistant feature by setting ENABLE_VOICE_ASSISTANT to true
🔧 (voice-assistant.tsx): Update logic to initialize audio only if hasOpenAIAPIKey is true
🔧 (voice-assistant.tsx): Update styling for voice assistant container and recording indicator
🔧 (voice-assistant.tsx): Update button variant to 'outlineAmber' for settings icon
📝 (index.css): Add new CSS variables for accent-amber and red-foreground colors for better theming
📝 (tailwind.config.mjs): Add 'red-foreground' color variable to Tailwind CSS config for consistency

* 🐛 (feature-flags.ts): fix ENABLE_VOICE_ASSISTANT flag to be set to false instead of true

* 🔧 (voice_mode.py): add global dictionary to store queues for each session and track active message processing tasks
🔧 (voice_mode.py): add message processing queue to ensure ordered processing of messages in the database

*  (frontend): enable voice assistant feature flag
♻️ (frontend): refactor code to use functional update pattern in useBarControls hook
🐛 (frontend): fix logic in VoiceAssistant component to properly handle recording and initialization of audio assistant

* [autofix.ci] apply automated fixes

*  (audio-settings-dialog.tsx): add LanguageSelect component to allow users to select preferred language for speech recognition
📝 (audio-settings-dialog.tsx): add documentation for ALL_LANGUAGES constant and SettingsVoiceModalProps interface
🔧 (language-select.tsx): create LanguageSelect component for selecting preferred language for speech recognition
🔧 (use-start-recording.ts): add autoGainControl and sampleRate options for better audio recording quality
🔧 (use-start-recording.ts): set fftSize property on analyserRef for improved audio analysis
🔧 (use-start-recording.ts): pass preferredLanguage to input_audio_buffer.append event for language identification
🔧 (voice-assistant.tsx): add support for setting and saving preferred language for speech recognition

* UI adjustments

* Small fixes for client/LF session update merges

* [autofix.ci] apply automated fixes

* 🔧 (use-bar-controls.ts): Add useRef import to fix missing dependency in useBarControls hook
🔧 (use-bar-controls.ts): Add animationFrameRef and timeDataRef to manage animation and sound detection
🔧 (use-bar-controls.ts): Add support for sound detection using analyserRef and setSoundDetected
🔧 (use-bar-controls.ts): Update useEffect dependencies for better performance
🔧 (voice-assistant.tsx): Add soundDetected state to manage sound detection in VoiceAssistant component
🔧 (voice-assistant.tsx): Pass analyserRef and setSoundDetected to useBarControls hook in VoiceAssistant component
🔧 (chat-message.tsx): Update className logic to handle isAudioMessage condition in ChatMessage component

* 🔧 (use-bar-controls.ts): refactor useBarControls hook to improve readability and maintainability by introducing useRef for baseHeights, lastRandomizeTime, and minHeight, and optimizing the sound detection logic.

*  (use-get-messages-polling.ts): Add new file for handling messages polling functionality
♻️ (use-bar-controls.ts): Refactor useBarControls hook to make setSoundDetected optional
♻️ (use-start-recording.ts): Remove handleGetMessagesMutation function call
♻️ (voice-assistant.tsx): Refactor VoiceAssistant component to use useGetMessagesPollingMutation instead of useGetMessagesMutation and manage soundDetected state using useVoiceStore
📝 (chat-message.tsx): Remove unused import and type ChatMessageType
🔧 (voiceStore.ts): Add soundDetected state and setSoundDetected function to voiceStore
🔧 (voice.types.ts): Add soundDetected boolean type and setSoundDetected function to VoiceStoreType

* 🔧 (frontend): add Button component import to improve code organization
🔧 (frontend): add support for saving OpenAI API key in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponentType interface for flexibility
🔧 (frontend): add commandWidth prop to InputComponent in InputComponent index file
🔧 (frontend): add commandWidth prop to CustomInputPopover in popover index file
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in SettingsVoiceModal component
🔧 (frontend): add commandWidth prop to InputComponent in Settings

* Update session instructions with more clear categories. Change how default LF session and client sessions are merged.

*  (chat-view.tsx): Add support for sound detection in chat view component to enhance user experience and interaction with the application.

* [autofix.ci] apply automated fixes

*  (audio-settings-dialog.tsx): Add debounce functionality to handleOpenAIKeyChange to improve performance and reduce API calls
🔧 (audio-worklet-processor.js): Add audio worklet processor for voice activity detection to enhance voice assistant functionality
♻️ (use-start-recording.ts): Refactor useStartRecording hook to only send non-silent audio data to the server for processing
🔧 (voice-assistant.tsx): Remove unnecessary import and setShowSettingsModal call in handleClickSaveOpenAIApiKey to clean up code

* 🐛 (audio-worklet-processor.js): Adjust noise and activation thresholds for better sensitivity and accuracy in speech detection
🐛 (audio-worklet-processor.js): Scale RMS volume to match use-bar-controls.ts scale for consistent threshold comparison
🐛 (use-bar-controls.ts): Update threshold for sound detection to align with scaled volume values for accurate detection

* 🔧 (use-start-recording.ts): refactor useStartRecording hook to simplify audio data handling and sending process to WebSocket server

* 🐛 (use-bar-controls.ts): adjust sound detection threshold to improve accuracy and responsiveness

* [autofix.ci] apply automated fixes

* 🐛 (voice-assistant.tsx): Update condition to initialize audio only if not recording, has API key, and settings modal is not shown
🐛 (chat-view.tsx): Fix syntax error in rendering new chat section in ChatView component

* ♻️ (chat-view.tsx): remove unnecessary parentheses in ChatView component to improve code readability

* 🐛 (voice-assistant.tsx): fix useEffect dependency array to include showSettingsModal to prevent unnecessary re-renders
♻️ (voice-assistant.tsx): remove duplicate onClick handler for showSettingsModal to improve code readability and maintainability

* 🐛 (voice-assistant.tsx): fix voice assistant settings button not closing audio input when clicked

* 🔧 (audio-settings-dialog.tsx): Remove unused 'open' prop from SettingsVoiceModal component
♻️ (voice-assistant.tsx): Refactor logic to handle audio recording and settings modal visibility
🔧 (voice-assistant.tsx): Replace AudioSettingsDialog component with SettingsVoiceModal component in VoiceAssistant component

* 🐛 (audio-settings-dialog.tsx): reduce debounce timeout from 2000ms to 1000ms for faster response to user input
🐛 (audio-settings-dialog.tsx): adjust alignOffset value in DropdownMenuContent component to -54 for better alignment on the UI

*  (button.tsx): add medium size variant to button component
🔧 (audio-settings-dialog.tsx): add isEditingOpenAIKey boolean prop and setIsEditingOpenAIKey function prop to SettingsVoiceModal component
🔧 (voice-assistant.tsx): add isEditingOpenAIKey state and setIsEditingOpenAIKey function to VoiceAssistant component, update handleSaveApiKey function to handle editing OpenAI API key

* 🐛 (audio-settings-dialog.tsx): Fix issue where the "Save" button text was not updating correctly based on editing state
📝 (voice-assistant.tsx): Add missing semicolon to the code to prevent syntax error

* 🐛 (audio-settings-dialog.tsx): Fix issue with setIsEditingOpenAIKey function call
♻️ (use-bar-controls.ts): Refactor code to properly initialize and handle audio analyzer
 (voice-assistant.tsx): Introduce logic to properly initialize audio and start recording when voice assistant is activated

* 🐛 (audio-settings-dialog.tsx): fix typo in setIsEditingOpenAIKey function call to properly close the editing of OpenAI key when modal is closed

* 🔧 (audio-settings-dialog.tsx): change onClick handler function name from setOpen to onOpenChangeDropdownMenu for clarity and consistency

* lint fixes

* ruff fixes

* [autofix.ci] apply automated fixes

*  (test_voice_mode.py): import pathlib module for improved file path handling
♻️ (test_voice_mode.py): refactor code to use newer numpy random Generator for better random number generation
📝 (test_voice_mode.py): update comments for clarity and consistency in test functions

* 🔧 (components.py): refactor global variables to use a class for managing component cache
🔧 (components.py): replace os module with pathlib for file path operations
🔧 (components.py): refactor global variables to use a class for managing fully loaded components
🔧 (components.py): refactor function to write audio bytes to file using a helper function

* 🔧 Refactor voice_utils.py: Improve error handling in write_audio_to_file function

*  (voice-select.tsx): add unique key prop to SelectItem component to avoid React warning and improve performance

* [autofix.ci] apply automated fixes

*  (audio-settings-dialog.tsx): Update onClick function to setIsEditingOpenAIKey instead of onOpenChangeDropdownMenu for better clarity
📝 (microphone-select.tsx): Update text from "Input" to "Audio Input" for better user understanding
♻️ (voice-assistant.tsx): Refactor handleSaveApiKey function to handle both OpenAI and ElevenLabs API keys, improving code readability and maintainability. Remove unnecessary checks for already saved API keys.

* 📝 (voice_utils.py): add docstring to resample_24k_to_16k function for clarity and documentation purposes
📝 (voice_utils.py): add input validation to ensure frame_24k_bytes is exactly 960 bytes before resampling
📝 (test_voice_mode.py): refactor test_webrtcvad_with_real_data to generate synthetic audio data for testing instead of reading from a file
📝 (test_voice_mode.py): update comments and assertions for clarity and accuracy in speech detection testing

* [autofix.ci] apply automated fixes

* 🐛 (feature-flags.ts): fix duplicate declaration of ENABLE_VOICE_ASSISTANT variable

* cache config by session_id

* [autofix.ci] apply automated fixes

*  (audio-settings-dialog.tsx): Add conditional rendering for MicrophoneSelect component based on the presence of microphones array to prevent rendering when no microphones are available
🐛 (microphone-select.tsx): Add optional chaining to navigator.mediaDevices calls to prevent errors when navigator or mediaDevices are null or undefined
🐛 (use-start-recording.ts): Add optional chaining to navigator.mediaDevices calls to prevent errors when navigator or mediaDevices are null or undefined

* ♻️ (voice_mode.py): refactor openai_realtime_session attribute to explicitly define its type as a dictionary with string keys and any values for better code clarity and type safety

* 📝 (voice_mode.py): add Optional import from typing module to improve type hinting
♻️ (voice_mode.py): make ElevenLabs package optional to avoid errors if not installed and provide a fallback mechanism

* [autofix.ci] apply automated fixes

* ♻️ (voice_mode.py): refactor ElevenLabs and ApiError classes to include type ignore comments to suppress redefinition warnings

* [autofix.ci] apply automated fixes

* merge

* event logger to debug

* 🐛 (language-select.tsx): Fix potential null reference error when accessing lang object properties
🐛 (voice-select.tsx): Fix potential null reference error when accessing voice object properties
🐛 (stringManipulation.ts): Fix potential null reference error when calling toLowerCase and toUpperCase functions

* fix openai voices

* error handling

* frontend socket state

* [autofix.ci] apply automated fixes

* add session to event logging

* add elevenlabs to base package

* 🐛 (audio-settings-dialog.tsx): Fix rendering issue with MicrophoneSelect component
🐛 (microphone-select.tsx): Fix potential null pointer exception in rendering microphone label
🐛 (voice-assistant.tsx): Fix issue with toggling recording functionality to properly handle microphone stream and tracks

* 🐛 (voice-assistant.tsx): fix optional chaining for microphoneRef to prevent potential null pointer errors

* [autofix.ci] apply automated fixes

* 🐛 (use-start-conversation.ts): fix variable name from sessionId to currentSessionId for clarity and consistency
🔧 (use-start-conversation.ts): refactor WebSocket connection URL to use current host, port, and protocol for better flexibility and compatibility

* alternating messages

* mypy

* [autofix.ci] apply automated fixes

*  (userSettings.spec.ts): add additional wait times to improve stability and reliability of tests

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: nfreybler <nfreybler@nvidia.com>
2025-03-20 00:05:55 +00:00
Pedro Pacheco
b5a93b4c55
Feat: introducing Graph RAG component (#7056)
* GraphRAG retriever componet, unit test, module confiugration and extra dependencies (faker for testing and langchain-graph-retriever

* [autofix.ci] apply automated fixes

* 🔧 (test_graph_rag_component.py): Fix linting issues by adding noqa comments to ignore S311 rule for lines with random.choice and random.randint functions.

* [autofix.ci] apply automated fixes

* Updated graph retriever version and added graph component to the same branch

* Removed uv.lock from branch

* Re-added uv.lock

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Eric Hare <ericrhare@gmail.com>
2025-03-18 18:55:49 +00:00
Lucas Oliveira
093cc42f38
feat: adds file management feature under feature flag, adds file dialog, adds files page (#6134)
* Create file management feature flag

* Added file manager modal

* Open file manager modal on clicking button

* Added file dragger

* Changed drag files component to be like the design

* Optimize code

* Implemented Import Files component

* Implemented Recent Files component

* Added Import Files and Recent Files into File Manager modal and added necessary icons

* Added file rendering to be used on component

* Added rendering of files selected on component

* Added icons for Dropbox, GoogleDrive and Onedrive

* Added dropdown menu for selecting import source

* Added button to navigate to My Files

* Added Files page, with Import button and search

* Added files table

* Updated uv and package lock

* Added tooltip for file types

* Added cursor pointer to file dragger

* Added file options dropdown

* Added files context menu to files page

* Changed side of dropdown

* Implemented search on modal

* Added Inverted AWS icon

* Added Import Button as morphed button

* Modularized Morphing Menu

* Updated Files Renderer height

* Added File endpoint and types

* Added Download File mutation

* Added Get Files query

* Added Rename File mutation

* Added Upload File mutation

* Added Use Upload File hook

* Added drop of files on dragFilesComponent

* Changed upload and rename to refetch get

* Added delete endpoint

* Changed get files to return correctly

* Make FilesRendererComponent render with correct file type

* Get files from correct endpoint

* Exported sort by date

* Added file_path to input file component

* Added file_path to File Component Type

* Implement showing correct files in FIle component and removing and adding selected files

* Removed open

* Changed selected files to handle ID

* Handled sorting of recent results

* Added sort By Boolean aux function

* Updated to use path for selected files, and to not update the selected values when Files change

* Change delete to handle id on params

* Change upload file to return files IDs

* Added duplicate file

* Added void to download files without params

* Select uploaded files

* Added onUpload to select uploaded files

* Added context menu options

* Changed to handle selected files with path

* Changed recentFiles to handle selected files with path

* Changed FilesContextMenu params

* Turned updatedAt optional

* Added files to the Files Page

* Changed file icons

* used size as number and get type from path

* Added correct CardsWrapComponent to home page

* Fixed flows and components drop in home and empty pages

* Fixed files drop in files management

* Implemented types validation when uploading via modal

* Fixed types for files page(allow all)

* Filter files on modal by file types

* Implemented multiple files handling when list parameter is true on FileInput

* Hidden unused import feature

* Added value correction if component values are incongruent

* Fixed size validator

* Add new size validator to use-upload-file

* Changed icon for rename

* removed replace function

* Implemented renaming file

* Added v2 api support

* Added v2 api on file_management

* Changed duplicate and download to include file type

* Implemented renaming on clicking rename option on files page

* Implemented rename on modal

* Implemented empty state for search and no files

* Changed text of empty state

* Added variants to morphing menu

* Fixed design of import from button and file search

* Implemented modal height changes to keep initial height

* Replace rename icon

* Removed duplicate from modal

* Added min height

* Fixed height

* Delete unused state

* Fixed size of import from button

* Added successful upload toast

* Implement plus button when files are selected

* implemented progress on uploads

* Added error handling to uploaded file

* Added delete confirmation

* Added maxFIleSizeUpload to the dialog

* Implement file upload retry

* Readded import from to files

* Added empty state to file browser

* Added list on base file

* [autofix.ci] apply automated fixes

* Try to fix crash

* Add check on files page

* Added DragWrapComponent with dragging area and opacity

* Added DragWrapComponent to files page

* [autofix.ci] apply automated fixes

* Added test ids for making tests for files page

* Added example files for tests

* Added boolean on await bootstrap to not open modal

* Added files page tests

* Added the extension on the file names

* Added datatestid and made context menu close on delete

* Added search with types

* Add type to filetype

* Added datatestid

* Changed formatFileSize to show B instead of bytes

* Updated files page test to use random names

* Changed file upload test to test file management functionality

* Modularized generate filename

* Fixed files page test

* Added ignore to pyproject

* Dont retry and dont clear

* Enable file management feature flag

* Remove import from button

* Refetch files on open of dialog

* Added upload failed state to my files

* Made not upload extensionless files

* Add toast on delete file

* removed standalone upload button

* Increased padding

* Updated row hover color

* Update padding of component

* Fixed dash lines

* Fixed api routes on vite config

* added api v2 endpoints to docker compose

* Adds router v2 and v1 to parent router

* Adds trailing slash to file management endpoint

* Fixed dash array

* Readded px-5

* Refactor dispatch methods and cleanup code for improved readability in middleware and app setup

* [autofix.ci] apply automated fixes

* Feat: add a support for OpenSearch and AstraDB components to yield the langchain vector_store connection object (#6998)

* Added decorator, decorator test, and modified supported vector stores

* Renamed module file name to reflect that this is for generic use, not use for graph rag

* Updated docsstring

* Improved documentation and modification to UT to support graph rag

* Remove extra file from PR

* rollback vector store template

* [autofix.ci] apply automated fixes

---------

Co-authored-by: Nadir J <31660040+NadirJ@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* chore: Bump frontend package version and enhance test reliability (#7049)

* chore: bump frontend package version from 0.1.2 to 1.2.0 in package-lock.json

* test: enhance error message wait condition in generalBugs-shard-6.spec.ts

Updated the test to wait for the error message to appear with a minimum length of 20 characters, improving reliability in detecting error states. This change replaces the previous fixed timeout with a dynamic check, enhancing the robustness of the test.

* fix: Disable retries in usePostValidateComponentCode mutation (#7044)

♻️ (use-post-validate-component-code.ts): refactor usePostValidateComponentCode function to include retry and retryDelay options for better control over mutation behavior

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* feat: Add updateHiddenOutputs helper function to manage output visibility (#6932)

 (update-hidden-outputs.ts): add a new helper function to update hidden outputs in the frontend CustomNodes module
♻️ (use-update-all-nodes.ts): refactor useUpdateAllNodes hook to update hidden outputs for all nodes in the frontend CustomNodes module
♻️ (use-update-node-code.ts): refactor useUpdateNodeCode hook to update hidden outputs for a specific node's code in the frontend CustomNodes module
♻️ (index.ts): refactor types in the flow module to include OutputFieldType for better type checking and consistency

* docs: fix syntax errors at build (#7047)

* docs-fix-linking-errors

* docs-fix-codehike-errors

* add-mit-license-field-to-package-json

* add-tailwind-config-file

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* chore: update test durations (#6975)

Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>

* docs: revised README (#7052)

* revised README

* fixed links

* Update README.md

Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>

* Update README.md

Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>

* reverting

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>

* test: Parameterize DeepSeek model component test correctly (#7019)

test: Parameterize DeepSeek model component test with temperature and max tokens

* fix: docker test trigger for poetry is wrong now is uv (#6743)

also delete useless actions yml for now

Signed-off-by: yihong0618 <zouzou0208@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* docs: Pull request draft workflow (#7046)

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* feat: Sync flows from FS to DB if flow has fs_path (#7043)

* feat: Sync flows from FS to DB if flow has fs_path

* Changes following review

* Simplify flow_mtimes handling

* Move sync_flows_from_fs to setup.py

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* ci: fix false positive on ci sucess status (#6868)

ci: fix ci EXIT_CODE

* docs: api build and run examples update (#6904)

* run-endpoint-parameters

* docs: Update build flow API documentation with detailed examples and parameters

* table-cleanup

* cleanup

* Apply suggestions from code review

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>

* Apply suggestions from code review

* comments-from-code-review

* Update docs/docs/API-Reference/api-reference-api-examples.md

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

---------

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* build(deps): bump @babel/runtime-corejs3 from 7.26.9 to 7.26.10 in /docs (#7051)

Bumps [@babel/runtime-corejs3](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime-corejs3) from 7.26.9 to 7.26.10.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.10/packages/babel-runtime-corejs3)

---
updated-dependencies:
- dependency-name: "@babel/runtime-corejs3"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: add a unified language model component. (#6994)

* add a unified language model component with a few providers

* [autofix.ci] apply automated fixes

* fix errors and add tests

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>

* fix: Rename AgentQL components and add prompt parameter (#6834)

* renamed components

* add prompt parameter

* [autofix.ci] apply automated fixes

* prevent both query and prompt

* ruff checks

* [autofix.ci] apply automated fixes

* amend conditional check

* change error message

* update templates

* [autofix.ci] apply automated fixes

* fix tags

* fix tags in news aggregator

---------

Co-authored-by: huwenjie912 <huwenjie912@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>

* ref: Refactor tracing service (#7011)

* Refactor tracing service

* Remove start, flush and stop

* fix: pass props to SvgAnthropicBox component (#7057)

* fix: pass props to SvgAnthropicBox component

* fix: pass props to SvgAnthropicBox component in light mode

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>

* fix: check if component is in tool mode as well to display Tool Mode switch (#7042)

feat: Enhance checkHasToolMode function to include tool mode detection

Updated the checkHasToolMode function to account for an additional condition where the template is considered to be in tool mode if it contains exactly three fields: _type, code, and tools_metadata. This improves the function's ability to accurately determine the tool mode status of a template.

* Fix: Text split issues related to separator (#6993)

* fixes text split issues related to separator

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* format error fix

* Update Vector Store RAG.json

* [autofix.ci] apply automated fixes

* 📝 (freeze.spec.ts): update test description to match the actual element being tested for better clarity and maintainability

*  (stop-building.spec.ts): update test description to improve clarity and maintainability
 (stop-button-playground.spec.ts): add wait time before filling search input to ensure proper loading and interaction with the element

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>

* docs: mcp integration (#6986)

* docs: Add MCP (Model Context Protocol) integration documentation

* docs: Update Astra DB MCP integration documentation

* docs: Update Astra DB MCP integration documentation with Cursor connection section

* docs: Update MCP integration guide with Datastax Astra DB connection details and prerequisites

* Apply suggestions from code review

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>

* docs-peer-reviews

* remove-cursor-integration

* code-review

* Apply suggestions from code review

Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>

* docs: update MCP integration guide for clarity and consistency

---------

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>

* feat: add regex pattern extractor component (#6015)

* feat: add regex pattern extractor component

* [autofix.ci] apply automated fixes

* fix: consistent schema and cleaner code style

* fix: type annotation in regex.py

* [autofix.ci] apply automated fixes

* Fix: regex component unit tests to match implementation behavior

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>

* docs: Add workflow to automate updates to docs/openapi.json (#7072)

Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>

* docs: test and update google oauth integration (#6949)

* update-template

* update-integration-doc

* document-id

* Apply suggestions from code review

Co-authored-by: brian-f <brian.fisher@datastax.com>

---------

Co-authored-by: brian-f <brian.fisher@datastax.com>

* feat: add pokedex agent template (#6885)

* add-pokedex-agent-json

* update with the latest agent component

* Update Pokédex Agent.json

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>

* feat: apify starter template (#6784)

* add social media agent apify template

* example default values, update starter template

* revert package-lock.json

* format

* note-cleanup

* [autofix.ci] apply automated fixes

* updates to the components

* update the agent component

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* feat: Needle Search Tool With Template (#6648)

* feat: Needle Search Tool With Templte

* lint

* lint

* lint

* lint

* refactor: Use Langflow Agent instead of CrewAI Agent

* techdebt: adjust Needle component to use tool mode and remove tool component

* lint

* lint

* Update Invoice Summarizer.json

* Update Invoice Summarizer.json

* update to the component

* refactor: Use Needle icon svg

* make format

* component updates

* update with latest agent component

* updated a missing connection when updating the agent component

* update template

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>

* feat: New parser component with multiple input types and stringify add on (#6652)

* update to parser

* error handling

* solve lint error and added tests

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* Update parser.py

* fix format errors

* [autofix.ci] apply automated fixes

* refactor: Remove hardcoded name attribute from ParserComponent

* Update src/backend/base/langflow/components/processing/parser.py

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* error fix

* [autofix.ci] apply automated fixes

* feat: mark ParserComponent as beta

Added a beta flag to the ParserComponent to indicate its experimental status.

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
Co-authored-by: Rodrigo <rodrigosilvanader@gmail.com>

* [autofix.ci] apply automated fixes

* format

* remove console log

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* add space in docker compose

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* [autofix.ci] apply automated fixes

* Update package lock

* Removed unused file

* Fixed naming on handleChangeFiles

* Update src/frontend/src/pages/MainPage/pages/filesPage/index.tsx

Co-authored-by: Mike Fortman <michael.fortman@datastax.com>

* Used format file size

* updated file browser to My Files

* Updated cursor

* Added error on selecting no files

* Updated base FileInput name to Files

* Added truncate and tooltip to files

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* merge fix

* Update src/frontend/src/components/core/parameterRenderComponent/components/inputFileComponent/index.tsx

* Update src/frontend/src/modals/fileManagerModal/components/filesContextMenuComponent/index.tsx

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* Fixed files not maintaining state

* Update info position

* adjusted getCustomParameterTitle

* removed console.log

* updated utils.py

* Added upload file util

* Added check on upload-file to use old one if unavailable

* Use new upload file function in Document QA

* uploaded tests to use new UploadFile util

* updated general bugs to use new uploadFile

* updated upload-file

* Update file mixin to have temp file

* Update file component to not enable file management if temp file is true

* Put temp file as true for chat input

* Update starter projects

* Updated starter templates

* added tempFile condition on useEffect

* Fixed invalid size alert

* Fixed limit file test

* Fixed backend test

---------

Signed-off-by: yihong0618 <zouzou0208@gmail.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: Pedro Pacheco <3083335+pedrocassalpacheco@users.noreply.github.com>
Co-authored-by: Nadir J <31660040+NadirJ@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Carter Rabasa <carter.rabasa@gmail.com>
Co-authored-by: yihong <zouzou0208@gmail.com>
Co-authored-by: Ronnie Miller <ronnie.miller@datastax.com>
Co-authored-by: Christophe Bornet <cbornet@hotmail.com>
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: wjwjtf <wenjie@tinyfish.io>
Co-authored-by: huwenjie912 <huwenjie912@gmail.com>
Co-authored-by: Eddie Ho <62191480+noodleslove@users.noreply.github.com>
Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>
Co-authored-by: Raphael Valdetaro <79842132+raphaelchristi@users.noreply.github.com>
Co-authored-by: brian-f <brian.fisher@datastax.com>
Co-authored-by: Jakub Kopecký <me@kopecky.io>
Co-authored-by: Jan Heimes <45521680+JANHMS@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Mike Fortman <michael.fortman@datastax.com>
2025-03-18 02:32:55 +00:00
Sebastián Estévez
a67a5a849c
chore: update astra-assistants to v2.2.11 (#7104)
assistants v2.2.11
2025-03-17 15:14:51 +00:00
Sebastián Estévez
0f53d4c99d
fix: bump assistants version to fix module not found error (#7093)
assistants version
2025-03-17 14:50:32 +00:00
Pedro Pacheco
92d4fd0d52
feat: implement S3 bucket uploader component and unit test (#6146)
* S3 Bucket Uploader, unit test and module init

* [autofix.ci] apply automated fixes

* Updated UT as per feedback

* Added version control fixture

* [autofix.ci] apply automated fixes

* Style changes requested by reviewer

* Really, 1 extra character?

* Ruf styling

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-03-05 13:34:55 +00:00
Gabriel Luiz Freitas Almeida
84aa1d63b3
fix: update sqlalchemy dependencies in pyproject.toml (#6854) 2025-02-26 19:27:19 -03:00
Christophe Bornet
d9b8211a18
build: Bump ruff version to 0.9.7 (#6614)
* Bump ruff version to 0.9.7

* [autofix.ci] apply automated fixes

* refactor: Update Gmail Agent starter project to Langflow 1.2.0

This commit updates the Gmail Agent starter project with new node IDs and configuration reflecting Langflow version 1.2.0. Changes include:
- Updated node identifiers for Agent, ChatInput, ChatOutput, and ComposioAPI
- Refreshed project metadata and version information
- Minor adjustments to node configurations and viewport settings

* [autofix.ci] apply automated fixes

* fix: Revert Gmail Agent name to original

* fix: Remove trailing comma in Gmail Agent JSON

* feat: Add tags to Gmail Agent starter project

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-26 20:36:36 +00:00
Gabriel Luiz Freitas Almeida
85b2818ea0
ci: Add pytest-rerunfailures for improved test reliability (#6852)
* chore: Add pytest-rerunfailures plugin for test reliability

* ci: Update unit tests workflow with pytest-rerunfailures
2025-02-26 19:34:55 +00:00
Gabriel Luiz Freitas Almeida
5c81cf4b8c
fix: Update pywin32 dependency to version 307 (#6793)
* fix: update pywin32 dependency version to 307

* update syntax

Co-authored-by: Christophe Bornet <cbornet@hotmail.com>

---------

Co-authored-by: Christophe Bornet <cbornet@hotmail.com>
2025-02-25 15:43:46 +00:00
Gabriel Luiz Freitas Almeida
46be362387
chore: Update langflow and langflow-base package versions to 1.2.0 and 0.2.0 (#6759)
fix: Update package versions for langflow and langflow-base to 1.2.0 and 0.2.0 respectively
2025-02-24 20:33:17 +00:00
Christophe Bornet
0886bdad16
feat: Use pyproject standardized dependency-groups (#6689)
* Use pyproject standardized dependency-groups

* fix: update Python version requirement to support up to 3.14

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-20 20:19:45 +00:00
Jordan Frazier
400572342f
feat: add nvidia ingest component (#6333)
* initial

* cleanup

* [autofix.ci] apply automated fixes

* ruff

* add else

* update deps

* uv lock

* Make nv-ingest an optional dep

* revert change to validate

* rebase fixes

* [autofix.ci] apply automated fixes

* Update language

* add extra args to make target

* [autofix.ci] apply automated fixes

* update error language

* lockfile update

* rebase lockfile:

* [autofix.ci] apply automated fixes

* Adds nv-ingest by default to -ep docker image

* caps fixes

* update uv lock

* revert ruff upgrade

* ruff

* Fix lint

* [autofix.ci] apply automated fixes

* No code changes made.

* fix: update ruff configuration to ignore additional linting rule and allow built-in modules

* fix: update ruff command to ignore linting rule A005 during autofix

* fix: update Ruff check command to ignore linting rule A005

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-20 19:26:03 +00:00
Christophe Bornet
41edba73c9
feat: Add support for Python 3.13 (#6685) 2025-02-20 18:13:21 +00:00
Jakub Kopecký
b43bf8f783
feat: add apify actors integration (#5862)
* initial apify actor component version

* clean code mess

* add apify integrations docs page, manual tests protocol, remove temp scripts

* fix lint type issue

* fix lint and format issues

* rename run_actor.py to apify_actor.py

* actor -> Actor

* update component description and docs link

* add wcc link

* refactor _get_actor_input_schema_from_build

* actor_input -> run_input

* refactor - make suitable methods static

* static methods remove _ before name, docs actor_input -> run_input

* update docs image

* improve docs

* fix typos, rename test .md to run_actor.md

* remove the actor link, that is not clickable

* rename ApifyRunActor -> ApifyActors, improve docs

* code refactor, added concrete examples

* take input_schema arg instead of build

* fix typo

* add custom user-agent

* remove beta label

* Update docs/docs/Integrations/Apify/integrations-apify.md

Co-authored-by: Jiří Spilka <jiri.spilka@apify.com>

* toolify_actor_id_str -> actor_id_to_tool_name

* add simple flow example withtou an agent, removed actor list, added simple how to

* fix typos

* improve how-to section

* remove usege from the component section

* improve example flows section

* remove unnecessary sentence

* format

* fix submodel serialization

* LCToolComponent -> Component

* flatten output remove question mark

* add actor run logs to component logs

* fix grammar, typos and docstrings

* [autofix.ci] apply automated fixes

---------

Co-authored-by: Jiří Spilka <jiri.spilka@apify.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2025-02-19 19:10:26 +00:00
Gabriel Luiz Freitas Almeida
e1fb90074c
chore: Enhance Locust load testing and optimize database settings (#6265)
* feat: Enhance Locust load testing for Langflow run endpoint

Refactor locustfile to provide more robust and configurable load testing:
- Add dynamic configuration via environment variables
- Improve error handling and logging
- Implement realistic flow run simulation
- Add connection and timeout handling
- Support API key authentication
- Enhance stats tracking and error reporting

* fix: Improve transaction logging error handling and performance

- Add `no_autoflush` context to prevent unnecessary database operations
- Change transaction logging error from exception to error level logging
- Simplify error handling in log_transaction function

* chore: Add Locust to development dependencies

Update project dependencies by adding Locust (version 2.32.9) to the development requirements, supporting load testing capabilities

* feat: Optimize database connection settings for improved performance and scalability

- Increase default pool_size from 10 to 20 for better connection handling
- Adjust max_overflow to 40 to support higher concurrent connections
- Extend db_connect_timeout from 20 to 30 seconds
- Add pool_recycle and echo settings to db_connection_settings
- Enhance documentation for database connection settings, highlighting SQLite limitations

* feat: Add Locust load testing configuration to Makefile

- Introduce comprehensive Locust load testing target with configurable parameters
- Support flexible testing scenarios with customizable users, spawn rate, and host
- Enable headless and interactive testing modes
- Add environment variable support for API key, flow ID, and other testing parameters
- Provide sensible default values for load testing configuration

* refactor: Remove unused retry configuration in Locust load testing

- Remove RETRY_DELAY and MAX_RETRIES environment variables
- Simplify FlowRunUser configuration by eliminating unused retry settings
- Maintain existing wait time configuration for load testing

* feat: Enforce FLOW_ID requirement for Locust load testing

- Add mandatory validation for FLOW_ID environment variable
- Raise a clear ValueError if FLOW_ID is not provided
- Remove default flow ID to ensure explicit configuration
- Improve load testing configuration robustness

* feat: Add configurable request timeout for Locust load testing

- Introduce `locust_request_timeout` parameter in Makefile
- Update locustfile to use configurable request timeout from environment variable
- Set dynamic connection and network timeout based on REQUEST_TIMEOUT
- Improve request handling with flexible timeout configuration

* revert change to database connection retry
2025-02-17 14:26:36 +00:00
Gabriel Luiz Freitas Almeida
70e8650813
feat: Update dependencies to add smolagents package (#6030)
* chore: Update Pillow and Pandas dependencies to latest patch versions

* chore: Update NVIDIA AI Endpoints and Pillow dependencies

* feat: Add smolagents dependency to project requirements

* feat: Add HuggingFace model bridge for LangChain integration

Implement a model bridge that allows seamless conversion between LangChain and HuggingFace model interfaces, supporting message and tool call translations

* docs: Update usage example in LangChainHFModel to improve clarity

* fix: update smolagents dependency version to 1.8.0

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2025-02-13 12:37:13 +00:00
Marco Vinciguerra
898775c36d
feat: ScrapeGraph AI component updates and add new component ScrapgraphSearch API (#6305)
* feat: add search

* Update __init__.py

* Update pyproject.toml

* feat: update scraegraph components

* Update scrapegraph_smart_scraper_api.py

* Update scrapegraph_smart_scraper_api.py

* removed required

* Update scrapegraph_smart_scraper_api.py

* formatting
2025-02-12 17:55:26 +00:00
Christophe Bornet
ffbc97bfc9
feat: Use Alembic with async driver (#6258)
Use Alembic with async driver
2025-02-11 23:11:55 +00:00
Gabriel Luiz Freitas Almeida
b73b3a09d8
chore: Bump version to 1.1.5 for langflow and 0.1.5 for langflow-base (#6241) 2025-02-10 15:27:10 -03:00
Gabriel Luiz Freitas Almeida
f9b2ce18a4
fix: Improve variable decryption error handling (#6199)
* fix: Improve variable decryption error handling in DatabaseVariableService

Add robust error handling for variable decryption, logging decryption failures and falling back to the original value for generic type variables

* chore: Bump version to 1.1.4.post1 for langflow and 0.1.4.post1 for langflow-base
2025-02-07 18:34:13 +00:00
Jorge Piedrahita Ortiz
414797f3f8
feat: add sambanova-langchain package (#5923)
* add new sambanova available models

* feat: add sambanova-langchain package

add sambanova package
minor improvements in sambanova component
add sambanova in agent examples

* [autofix.ci] apply automated fixes

* fmt

* [autofix.ci] apply automated fixes

* minor changes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2025-02-07 11:55:24 +00:00
Abhishek Patil
a0474dcc1c
feat: composio-core & composio-langchain version bump (#6187) 2025-02-07 11:11:54 +00:00
Edwin Jose
e89edc3c1c
feat: update Cohere embedding model to use langchain_cohere, added support to dynamically load latest embedding models, improved error handling (#6034)
* update cohere model

* Update src/backend/base/langflow/components/embeddings/cohere.py

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-06 17:43:38 +00:00
anovazzi1
6cb7fa313f
chore: Bump version to 1.1.4 for langflow and 0.1.4 for langflow-base (#6119) 2025-02-04 18:23:44 -03:00
Abhishek Patil
dcc63712fb
fix: Composio component (#5834)
* fix: Update Component to display only OAuth-based authentication method apps

* feat: composio-core & composio-langchain version bump (0.6.13 -> 0.6.16)

* test: Update test selectors in frontend regression tests (#5835)

* fix: add default models to Anthropic and make sure template is updated (#5839)

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* refactor: update component test method and Agent component test for be asynchronous (#5841)

* fix: make sure tests run async  (#5842)

* feat: loop components handle ui and logic (#5744)

* Added backend to allow loop on output

* Added custom edge for looping components

* Added allows_loop to output type

* Added output_types to target handle if its a loop

* Fixed valid_connection to allow loops

* Added the loop handle to the outputs

* Added infinity icon

* Fixed clean edges to not delete loop edge

* Implement loop checking before build.

* Implemented looping indicator

* Fixed belzier path

* [autofix.ci] apply automated fixes

* 🔧 (reactflowUtils.ts): refactor cleanEdges and detectBrokenEdges functions to improve code readability and maintainability by extracting repeated logic into variables and reducing code duplication.

* [autofix.ci] apply automated fixes

* Add from_loop_target_handle method to TargetHandle class and update type field

* Enhance Edge class to handle loop target handles and validate loop edges

* Add output_names attribute and get_value_from_output_names method to Vertex class

* Add overlap check for input and output names in Component class

* Fix default value assignment in ComponentVertex to handle output names correctly

* Clarify error message for missing attributes in Component class

* Added backend to allow loop on output

* Added custom edge for looping components

* Added allows_loop to output type

* Added output_types to target handle if its a loop

* Fixed valid_connection to allow loops

* Added the loop handle to the outputs

* Added infinity icon

* Fixed clean edges to not delete loop edge

* Implement loop checking before build.

* Implemented looping indicator

* Fixed belzier path

* [autofix.ci] apply automated fixes

* 🔧 (reactflowUtils.ts): refactor cleanEdges and detectBrokenEdges functions to improve code readability and maintainability by extracting repeated logic into variables and reducing code duplication.

* [autofix.ci] apply automated fixes

* Add from_loop_target_handle method to TargetHandle class and update type field

* Enhance Edge class to handle loop target handles and validate loop edges

* Add output_names attribute and get_value_from_output_names method to Vertex class

* Add overlap check for input and output names in Component class

* Fix default value assignment in ComponentVertex to handle output names correctly

* Clarify error message for missing attributes in Component class

* feat: add loop component 🎁🎄 (#5429)

* add loop component 🎁🎄

* [autofix.ci] apply automated fixes

* fix: add loop component to init

* [autofix.ci] apply automated fixes

* refactor(loop): rename loop input variable and improve code quality

- Renamed 'loop' input to 'loop_input' for clarity.
- Simplified logic for checking loop input and aggregating results.
- Enhanced type hints for better code readability and maintainability.

* refactor(loop): add type hint to initialize_data method for improved clarity

* fix: mypy error incompatible return value type

* feat: adds test cases for loop component compatibility with the APIs, Loop component updates to support API (#5615)

* add loop component 🎁🎄

* [autofix.ci] apply automated fixes

* fix: add loop component to init

* [autofix.ci] apply automated fixes

* refactor(loop): rename loop input variable and improve code quality

- Renamed 'loop' input to 'loop_input' for clarity.
- Simplified logic for checking loop input and aggregating results.
- Enhanced type hints for better code readability and maintainability.

* refactor(loop): add type hint to initialize_data method for improved clarity

* adding test

* test cases added

* Update test_loop.py

* adding test

* test cases added

* Update test_loop.py

* update with the new test case method!

* Update test_loop.py

* tests  updates

* Update loop.py

* update fix

* issues loop issues

* reverting debug mode params

* solves lint errors and fix the tests

* fix: mypy error incompatible return value type

* [autofix.ci] apply automated fixes

---------

Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>

* feat: improve model input fields for Cohere component (#5712)

feat: improve model input fields for cohere component

1. Make api_key field required
2. Convert temperature to SliderInput with range 0-2
3. Add info description to temperature slider

* refactor: improve naming consistency in DataCombiner component (#5471)

* refactor: improve naming consistency in DataCombiner component

- Rename MergeOperation to DataOperation
- Rename component to DataCombinerComponent
- Convert operation enum values to uppercase
- Update method names for consistency

* [autofix.ci] apply automated fixes

* fix: resolved linting errors in __init__.py

* [autofix.ci] apply automated fixes

* Changed operation names to capitalize only first letter

* refactor: rename DataCombinerComponent to MergeDataComponent for better clarity and backwards compatibility

* [autofix.ci] apply automated fixes

* fix: Translate Portuguese text to English in merge_data.py

* feat: add required to data_inputs in MergeDataComponent

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>

* refactor: Refactor Wikipedia API component (#5432)

* refactor(wikipedia): Refactor Wikipedia API component

* test: add unit tests for WikipediaAPIComponent

* [autofix.ci] apply automated fixes

* refactor: improve WikipediaAPIComponent tests and fix lint issues

* [autofix.ci] apply automated fixes

* fix: resolve lint issues in WikipediaAPIComponent tests

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>

* fix: pass slider input values correctly, add test (#5735)

*  (base.py): Update field validation to include "slider" type in addition to "float" type for better parameter handling
📝 (constants.py): Add "slider" type to the list of DIRECT_TYPES for consistency and completeness

*  (test_inputs.py): add unit test for SliderInput class to ensure it initializes with correct value

* 🐛 (base.py): fix comparison of field type with a list by changing it to a set to ensure correct condition evaluation

* [autofix.ci] apply automated fixes

* fix format

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* feat: make AWS credentials required in bedrock component (#5710)

1. Make aws_access_key_id field required
2. Make aws_secret_access_key field required

* chore: update test durations (#5736)

Co-authored-by: ogabrielluiz <24829397+ogabrielluiz@users.noreply.github.com>

* feat: add truncation to ResultDataResponse (#5704)

* chore: Update dependencies and improve platform markers in configuration files

- Added 'hypothesis' version 6.123.17 to dev-dependencies in pyproject.toml.
- Updated platform markers from 'sys_platform' to 'platform_system' for better compatibility in uv.lock, affecting multiple packages including 'jinxed', 'colorama', and 'appnope'.
- Ensured consistency in platform checks across various dependencies to enhance cross-platform support.

This update improves the project's dependency management and ensures better compatibility across different operating systems.

* feat: Enhance ResultDataResponse serialization with truncation support

- Introduced a new method `_serialize_and_truncate` to handle serialization and truncation of various data types, including strings, bytes, datetime, Decimal, UUID, and BaseModel instances.
- Updated the `serialize_results` method to utilize the new truncation logic for both individual results and dictionary outputs.
- Enhanced the `serialize_model` method to ensure all relevant fields are serialized and truncated according to the defined maximum text length.

This update improves the handling of large data outputs, ensuring that responses remain concise and manageable.

* fix: Reduce MAX_TEXT_LENGTH in constants.py from 99999 to 20000

This change lowers the maximum text length limit to improve data handling and ensure more manageable output sizes across the application.

* test: Add comprehensive unit tests for ResultDataResponse and VertexBuildResponse

- Introduced a new test suite in `test_api_schemas.py` to validate the serialization and truncation behavior of `ResultDataResponse` and `VertexBuildResponse`.
- Implemented tests for handling long strings, special data types, nested structures, and combined fields, ensuring proper serialization and truncation.
- Enhanced coverage for logging and output handling, verifying that all fields are correctly processed and truncated as per the defined maximum text length.
- Utilized Hypothesis for property-based testing to ensure robustness and reliability of the serialization logic.

This update significantly improves the test coverage for the API response schemas, ensuring better data handling and output management.

* feat: Add function to validate models with tool calling function and related fixes in agent component (#5720)

* Update nvidia.py

* update agent experience with improving model selection

update agent experience with improving model selection  and making only the tool calling models available.

* variable clean up

* [autofix.ci] apply automated fixes

* Update src/backend/base/langflow/base/models/model_input_constants.py

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* Update src/backend/base/langflow/base/models/model_input_constants.py

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* added default models

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* format errors solved

* [autofix.ci] apply automated fixes

* Update model.py

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* feat: assistants agent improvements (#5581)

* assistants agent improvements

* remove alembic init file

* vector store / file upload support

* use sync file object (required by sdk)

* steps

* self.tools initialization

* improvements for edwin

* add name and switch to MultilineInput

* ci fixes

* refactor: enhance flow type safety and clean up unused code (#5669)

* 📝 (use-save-flow.ts): add AllNodeType and EdgeType imports to improve type safety in useSaveFlow hook
📝 (index.tsx): remove unused setNoticeData function to clean up code and improve readability

* refactor: Remove unused code in GeneralPage component

* refactor: Remove unused code in cardComponent/index.tsx

---------

Co-authored-by: anovazzi1 <otavio2204@gmail.com>

* feat: Add `required=True` to essential inputs across Langflow components (#5739)

* fix: add required validation to input fields

Ensures mandatory fields are properly marked as required across components.

* fix: add required validation to input fields

Ensures mandatory fields are properly marked as required across components.

* fix: add required validation to input fields

field: model_name

* fix: add required validation to input fields

field: model and base_url

* fix: add required validation to input fields
input: mistral_api_key

* fix: add required validation to input fields

inputs: model, base_url, nvidia_api_key

* fix: add required validation to input fields
inputs: model, base_url

* fix: add required validation to input fields

input: openai_api_key

* fix: add required validation to input fields
inputs: message, embedding_model

* fix: add required validation to input fields
inputs: model_name, credentials

* fix: add required validation to input fields
inputs: aws_secret_access_key, aws_access_key_id

* fix: add required validation to input fields
inputs: input_text, match_text

* fix: add required validation to input fields
inputs: input_message

* fix: add required validation to input fields
inputs: input_value

* fix: add required validation to input fields
input: data_input

* fix: add required validation to input fields
inputs: input_value

* fix: add required validation to input fields
input: data_input

* fix: add required validation to input fields
input: data_input

* fix: add required validation to input fields
input: data_input

* fix: add required validation to input fields
input: data_input

* fix: add required validation to input fields

inputs: data_inputs, embeddings

* fix: add required validation to input fields
inputs: api_key, input_value

* fix: add required validation to input fields
inputs: password, username, openai_api_key, prompt

* fix: add required validation to input fields
inputs: api_key, transcription_result

* fix: add required validation to input fields
inputs: api_key, transcription_result, prompt

* fix: add required validation to input fields
input: prompt

* fix: add required validation to input fields
input: api_key

* fix: add required validation to input fields
inputs: api_key, transcript_id

* fix: add required validation to input fields
inputs: audio_file, api_key

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* feat: make YouTube Transcripts URL field required (#5686)

feat: Enhance YouTube Transcripts component by adding required field validation to URL input

This change ensures that users provide a video URL before using the YouTube Transcripts component, preventing potential runtime errors due to missing video source.

* fix: Fix memory leak when creating components (#5733)

Fix memory leak when creating components

* test: Update API key requirements and test configurations for frontend tests (#5752)

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: Vinícios Batista da Silva <vinicios.batsi@gmail.com>
Co-authored-by: Raphael Valdetaro <79842132+raphaelchristi@users.noreply.github.com>
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: ogabrielluiz <24829397+ogabrielluiz@users.noreply.github.com>
Co-authored-by: Sebastián Estévez <estevezsebastian@gmail.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: VICTOR CORREA GOMES <112295415+Vigtu@users.noreply.github.com>
Co-authored-by: Christophe Bornet <cbornet@hotmail.com>
Co-authored-by: Lucas Oliveira <62335616+lucaseduoli@users.noreply.github.com>

* Updated loop.py component

* [autofix.ci] apply automated fixes

* update test file

* fix: handle None values in input names and improve type hints

* [autofix.ci] apply automated fixes

* Added loop component test

* Added comments

* test: add 'allow_loop' field to Output dictionary in test_output_to_dict method

* fix: correct key name in Output dictionary from 'allow_loop' to 'allows_loop' in test_output_to_dict method

* Updated frontend loop test

* Updated examples

* 🐛 (generalBugs-shard-9.spec.ts): Fix incorrect test selector for chat memory output element
🐛 (loop-component.spec.ts): Fix incorrect test selector for chat output element
🐛 (generalBugs-shard-3.spec.ts): Fix incorrect test selector for open AI model output element

* [autofix.ci] apply automated fixes

* refactor: update return type in AgentComponent to use dotdict for build_config

This change modifies the return statement in the AgentComponent class to utilize a dotdict for the build_config, enhancing the structure and accessibility of the returned configuration data.

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: Vinícios Batista da Silva <vinicios.batsi@gmail.com>
Co-authored-by: Raphael Valdetaro <79842132+raphaelchristi@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: ogabrielluiz <24829397+ogabrielluiz@users.noreply.github.com>
Co-authored-by: Sebastián Estévez <estevezsebastian@gmail.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: VICTOR CORREA GOMES <112295415+Vigtu@users.noreply.github.com>
Co-authored-by: Christophe Bornet <cbornet@hotmail.com>

* chore: Upgrade langflow-embedded-chat to v1.0.7 (#5843)

chore(deps): Upgrade langflow-embedded-chat to v1.0.7

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* fix: artifact repr assignment (#5829)

Co-authored-by: xuyingjie <xuyingjie@unipus.cn>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>

* feat: add dialog support to dropdown components and enhance AstraDB (#5349)

* feat: add dialog support to dropdown components and enhance AstraDB integration

- Introduced a new NodeDialog component for improved user interaction when connecting to Astra DB.
- Updated AstraDBVectorStoreComponent to include a dialog option for creating new collections.
- Enhanced dropdown components to support dialog functionality, allowing users to create new options directly from the dropdown.
- Added `hasDialog` property to relevant component types to manage dialog visibility.
- Refactored utility functions to support new naming conventions and improve code clarity.

* [autofix.ci] apply automated fixes

* Remove creation parameters, add new inputs for dialog

* Update astradb.py

* [autofix.ci] apply automated fixes

* Update the mixins for dialog_inputs

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* refactor: standardize JSON formatting and clean up input types in Vector Store RAG configuration

- Reformatted JSON structure for better readability, ensuring consistent indentation and line breaks.
- Updated input types across various components to use array notation for clarity.
- Removed extraneous entries in package-lock.json to streamline dependencies.
- Enhanced overall maintainability of the configuration files.

* Add new options_metadata field to dropdown mixin

* Update test_astra_component.py

* Properly set dictionary mapping

* Update astradb.py

* Fix collection loading

* [autofix.ci] apply automated fixes

* Update astradb.py

* Update astradb.py

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Enhance AstraDB integration and update dropdown components

- Updated the AstraDBVectorStoreComponent to include new input fields for database and collection creation, with default options for selection.
- Refactored dropdown components to support dynamic dialog inputs, improving user interaction for creating new options and refreshing lists.
- Updated package-lock.json to reflect dependency upgrades, including Rollup and SWC packages.

This commit improves the functionality and usability of the AstraDB integration and dropdown components, ensuring a smoother user experience.

* Update astradb.py

* Fix autodetection

* Enhance dropdown components to support options metadata

- Added `optionsMetaData` prop to Dropdown and DropdownComponent for improved data handling.
- Updated rendering logic in Dropdown to display metadata alongside options, enhancing user experience.
- Modified type definitions to include `optionsMetaData` in relevant components.

These changes improve the flexibility and usability of dropdown components, allowing for richer data presentation.

* Refactor and enhance AstraDB integration and dropdown components

- Updated the `Vector Store RAG.json` configuration for improved formatting and consistency in output and input types.
- Enhanced the `NodeDialogComponent` to accept `dialogInputs` as a prop, allowing for more dynamic content rendering.
- Modified the `Dropdown` component to use `onSelect` instead of `onClick` for better accessibility and user interaction.
- Improved rendering logic in the `Dropdown` component to conditionally display icon options based on the presence of `dialogInputs`.

These changes enhance the usability and flexibility of the AstraDB integration and dropdown components, providing a more intuitive user experience.

* Don't inherit from dict input in new inputs

* [autofix.ci] apply automated fixes

* Update astradb.py

* update logic for dropdown

* Fix the number of records per collection

* Update astradb.py

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* feat: Enhance Dropdown and Parameter Render Components

- Updated Dropdown component to integrate post template value handling and refresh functionality.
- Refactored ParameterRenderComponent to conditionally render based on dialog inputs.
- Improved DropdownComponent to accept additional props for better flexibility.

These changes improve the overall functionality and usability of the dropdown components within the application.

* Set unknown to none to hide unavailable fields

* Update astradb.py

* Refactor Dropdown Component for Enhanced Usability

- Removed unnecessary state initialization and improved code readability.
- Updated button elements within the dropdown to enhance user interaction.
- Added loading state indication for the refresh button.
- Filtered out null values from options metadata for cleaner rendering.

These changes streamline the dropdown functionality and improve the user experience.

* Refactor NodeDialog, Dropdown, and ParameterRender Components

- Commented out debug logs in NodeDialogComponent to clean up console output.
- Enhanced Dropdown component to conditionally render icon options based on dialog inputs.
- Updated ParameterRenderComponent to check for the length of dialog inputs before rendering.

These changes improve code readability and ensure components behave correctly based on input conditions.

* [autofix.ci] apply automated fixes

* Cleanup some tests

* Fix ruff style issue

* [autofix.ci] apply automated fixes

* Fix environment specification

* [autofix.ci] apply automated fixes

* Update starter project template

* Update astradb.py

* Remove backwards compatibility features

* [autofix.ci] apply automated fixes

* Small tweak to autodetect

* [autofix.ci] apply automated fixes

* Refactor NodeDialogComponent to Dynamically Render Inputs

- Replaced static content in NodeDialogComponent with dynamic rendering based on dialogInputs.
- Introduced NodeInputField and RenderInputParameters components for better modularity.
- Enhanced footer with Cancel and Save buttons, improving user interaction.

These changes enhance the flexibility and usability of the NodeDialogComponent, allowing it to adapt to varying input configurations.

* Refactor NodeDialogComponent: Remove Unused Imports

- Commented out unused imports in NodeDialogComponent to clean up the code.
- This change enhances code readability and prepares the component for future updates.

No functional changes were made; the focus was on improving code quality.

* Refactor Dropdown and ParameterRender Components for Improved Readability and Functionality

- Renamed functions in Dropdown component for clarity: `renderOptionsList` and `renderCreateOptionDialog` to `oldRenderOptionsList` and `renderCustomOptionDialog`, respectively.
- Enhanced the rendering logic in Dropdown to streamline the display of options and metadata.
- Simplified the return structure in ParameterRenderComponent to always render the RefreshParameterComponent, improving code consistency.
- Updated RefreshParameterComponent to conditionally display the refresh button based on the presence of dialog inputs.

These changes improve code readability and maintainability while ensuring consistent behavior across components.

* [autofix.ci] apply automated fixes

* Add the new naming conventions to deletion fields

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* Add new cloud provider options for database creation

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Make dialog inputs a dictionary of inputs

* [autofix.ci] apply automated fixes

* Update astradb.py

* Update astradb.py

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Update astradb.py

* [autofix.ci] apply automated fixes

* added mock data for testing

* Clean up the reactive flow

* [autofix.ci] apply automated fixes

* Fix the dialog inputs

* Update Vector Store RAG.json

* Update Vector Store RAG.json

* Update astradb.py

* Update astradb.py

* [autofix.ci] apply automated fixes

* Update astradb.py

* Update astradb.py

* Switch dialog inputs from list to dictionary

* Update astradb.py

* Refactor NodeDialogComponent to utilize useDialogSubmit hook for handling dialog submissions and streamline input rendering. Remove unused props and mock data, enhancing clarity and maintainability. Update DropdownComponent to remove unnecessary content prop. Introduce useDialogSubmit hook for improved API interaction and loading state management.

* New structure for dialog inputs

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* No need for the input type on token

* Flip order of ingest and search

* [autofix.ci] apply automated fixes

* Remove id field from factory

* Remove other id field

* [autofix.ci] apply automated fixes

* Refactor directory_reader.py to simplify file filtering logic

* Refactor flowSidebarComponent to filter out bundles and custom components in CategoryGroup

* [autofix.ci] apply automated fixes

* Refactor NodeDialogComponent to utilize dialogInputs directly, removing mock data and enhancing parameter rendering. Update Dropdown and ParameterRenderComponent types to accept single dialogInputs object. Remove unused useDialogSubmit hook.

*  (NodeDialogComponent/index.tsx): Introduce handleNewValue function to handle updating node template values based on user input
🔧 (NodeDialogComponent/index.tsx): Add support for process.env.PORT environment variable to be able to run app on a configurable port
🔧 (dropdownComponent/index.tsx): Add nodeId prop to Dropdown component to pass node id for better context
🔧 (parameterRenderComponent/index.tsx): Update handleOnNewValue prop to accept key parameter for better handling of new values
🔧 (parameterRenderComponent/types.ts): Add nodeId property to BaseInputProps type for better context and consistency

* Don't load the new collection names from db

* Update astradb.py

* Temporary disabling of dialog inputs functionality

* Update directory_reader.py

* Fix problematic uv.lock line

* Update uv.lock

* Update Vector Store RAG.json

* Update Vector Store RAG.json

* refactor: enhance dropdown and refresh button logic for better user experience

- Updated the dropdown component to disable the trigger button when there are no options available or when certain conditions are met.
- Removed the old render options list to streamline the dropdown rendering process.
- Improved the loading state handling in the dropdown to provide clearer feedback to users.
- Refactored the refresh button logic to ensure it only displays when appropriate conditions are met, enhancing the component's responsiveness.

* [autofix.ci] apply automated fixes

* Allow combobox specification of api endpoint

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* Update Vector Store RAG.json

* Add back api_endpoint option for compatibility

* Update Vector Store RAG.json

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Eric Hare <ericrhare@gmail.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>

* feat: Update basic examples (#5846)

* fix examples - simple agent

* update templates

* formatting

* docs: Adds documentation for Opensearch vector store component (#5681)

Adds documentation for Opensearch vector store component

Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>

* feat: add arxiv component (#5634)

* feat: add arxiv component

* [autofix.ci] apply automated fixes

* test: add initial test suite for arxiv component

* fix: correct test formatting for ArXiv component

* fix: implement tests for ArXivComponent following TestBatchRunComponent pattern

* fix: ArXivComponent test formatting

* [autofix.ci] apply automated fixes

* refactor: update imports and skip version tests for new component

* fix: fix line breaks in test file

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* chore(deps): bump katex from 0.16.18 to 0.16.21 in /src/frontend (#5771)

Bumps [katex](https://github.com/KaTeX/KaTeX) from 0.16.18 to 0.16.21.
- [Release notes](https://github.com/KaTeX/KaTeX/releases)
- [Changelog](https://github.com/KaTeX/KaTeX/blob/main/CHANGELOG.md)
- [Commits](https://github.com/KaTeX/KaTeX/compare/v0.16.18...v0.16.21)

---
updated-dependencies:
- dependency-name: katex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: Improve TracingService initialization logic around `deactivated` (#5847)

* fix: improve TracingService initialization logic

- Updated the `start` method to remove the check for `self.deactivated`, allowing the service to start even if deactivated.
- Added a check in `initialize_tracers` to return early if the service is deactivated, preventing unnecessary initialization calls.

These changes streamline the service's startup process and ensure that tracer initialization respects the deactivated state.

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* feat: add retry on database connection (#5772)

* Add retry to database connection

* [autofix.ci] apply automated fixes

* fix comments

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* test: update data-testid attributes for chat memory and OpenAI model elements (#5823)

* 🐛 (generalBugs-shard-9.spec.ts): fix incorrect test selector for elementChatMemoryOutput to match updated element ID
🐛 (generalBugs-shard-3.spec.ts): fix incorrect test selector for elementsOpenAiOutput to match updated element ID

* 📝 (refreshButton.tsx): add data-testid attribute to RefreshButton component for testing purposes
🐛 (Vector Store.spec.ts): fix import statement to include 'expect' in Playwright test file
🐛 (Vector Store.spec.ts): remove unnecessary test.skip block for ASTRA_DB_API_ENDPOINT
🐛 (Vector Store.spec.ts): fix selectors and interactions for refresh buttons and dropdown options in Playwright test file

*  (freeze-path.spec.ts): refactor test cases to use a new helper function moveSlider for interacting with slider elements in a more efficient and readable way

* chore(deps-dev): bump vite from 5.4.11 to 5.4.14 in /src/frontend (#5851)

Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.11 to 5.4.14.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.14/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.14/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: update YouTube icon name in sidebar bundles (#5817)

refactor: Correct capitalization of YouTube icon name in sidebar bundles

Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>

* docs: Fix duplicate numbering in "Run Langflow" section (#5844)

Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>

* Revert "fix: change border color on chat input when active" (#5838)

Revert "fix: change border color on chat input when active (#5814)"

This reverts commit d4b9a3f15b.

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* feat: add google generative ai models to agent component (#5853)

* add google generative ai to agents

* [autofix.ci] apply automated fixes

* format error fixed

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* chore: update test durations (#5827)

Co-authored-by: ogabrielluiz <24829397+ogabrielluiz@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* chore(deps): bump undici from 6.21.0 to 6.21.1 in /src/frontend (#5855)

Bumps [undici](https://github.com/nodejs/undici) from 6.21.0 to 6.21.1.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v6.21.0...v6.21.1)

---
updated-dependencies:
- dependency-name: undici
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: removed auto height to fix glitch on Edit Tools (#5815)

Removed auto height from table node component

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* fix: Update memoization logic in ChatView component to prevent scroll bug (#5764)

refactor: Update memoization logic in ChatView component

Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>

* feat: Update and reorganize starter templates (#5856)

* update openAI templates

* update components

* update templates

* Update starter projects with OPENAI_API_KEY value

* add notes to graph rag

---------

Co-authored-by: anovazzi1 <otavio2204@gmail.com>

* refactor(components): Rename Parse Data component to Data to Message (#5547)

* refactor(components): Rename Parse Data component to Data to Message

* Refactor: enhance Data to Message description

* Refactor: enhance Data to Message description

* feat: add required to template and data inputs

* [autofix.ci] apply automated fixes

* fix: Update element selectors in freeze.spec.ts

* [autofix.ci] apply automated fixes

* refactor: rename test IDs for processing data in frontend tests

Updated test IDs from "processingParse Data" to "processingData to Message" across multiple test files to improve clarity and consistency in the test suite. This change enhances the readability of the tests related to data processing components.

* refactor: update ParseDataComponent to improve clarity and consistency

- Renamed the display name and description of the ParseDataComponent from "Data to Message" to "Parse Data" to better reflect its functionality.
- Changed the icon from "message-square" to "braces" for a more appropriate visual representation.
- Updated input fields to make 'required' status consistent across multiple starter projects, changing 'required' from true to false for 'data' and 'template' inputs.
- Enhanced code readability by modifying the structure and comments within the component's implementation across various JSON files.

* refactor: update ParseDataComponent across multiple starter projects

- Changed the display name and description of the ParseDataComponent from "Parse Data" to "Data to Message" for better clarity.
- Updated the icon from "braces" to "message-square" to better represent the component's functionality.
- Made input fields 'data' and 'template' required across all affected JSON files to ensure proper data handling.
- Enhanced code readability and consistency in the implementation of the ParseDataComponent across various starter projects.

*  (freeze.spec.ts): Update test descriptions and selectors to match changes in the application functionality related to data processing and messaging
 (stop-building.spec.ts): Update test description and selector to match changes in the application functionality related to data processing and messaging
 (fileUploadComponent.spec.ts): Update test description and selector to match changes in the application functionality related to data processing and messaging
 (loop-component.spec.ts): Update test description and selector to match changes in the application functionality related to data processing and messaging

* fix broken tests

---------

Co-authored-by: Eric Hare <ericrhare@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>

* ci: Automatically close existing PRs for test duration updates (#5852)

ci: add step to close existing PRs before creating a new one for test duration updates

- Introduced a new step in the GitHub Actions workflow to automatically close any open pull requests titled "chore: update test durations" before creating a new pull request.
- This change ensures that only one pull request for updating test durations is active at a time, streamlining the workflow and reducing potential merge conflicts.

* refactor: adjust SliderComponent spacing and typography (#5836)

🐛 (sliderComponent/index.tsx): adjust styling to fix alignment issue with input element in SliderComponent

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* fix: add the git binary to the final step of the container images (#5863)

Add the git binary to the runtime images

* fix: make sure graph build errors bubble up to the frontend (#5864)

fix: Add handling for None value in validate_source method to return default Source instance

* chore: update test durations (#5857)

Co-authored-by: ogabrielluiz <24829397+ogabrielluiz@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* feat(openai): make api_key field required on OpenAI Model (#5854)

* feat(openai): make api_key field required

- Add required=True to api_key field in OpenAI model component
- Ensure proper authentication by making API key mandatory

Co-authored-by: Vinícios Batista da Silva <vinicios.batsi@gmail.com>

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* fix: loop error condition and edge design (#5869)

* Changed math to show better edge when loop source is on the left side of the target

* Added logic to only allow loops if it comes from a loop edge

* Removed unused console log

* docs: Fix incorrect article form in French text Update README.FR.md (#5858)

* feat: adds Wikipedia Component and deprecates the wikipedia API tool component (#5871)

* update

* Update test_wikipedia_api.py

* [autofix.ci] apply automated fixes

* Update src/backend/base/langflow/components/tools/wikipedia.py

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* Update test_wikipedia_api.py

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* feat: add WikiData Component and depeciates the WikiData API tool component  (#5872)

* update

* [autofix.ci] apply automated fixes

* Update test_wikidata_api.py

* [autofix.ci] apply automated fixes

* Update wikidata.py

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: make `with_session` rollback only on SQLAlchemy errors (#5865)

* fix: remove unnecessary session commit in DatabaseService

* fix: improve error logging in DatabaseService session management

* fix: enhance error handling in DatabaseService session management by specifying SQLAlchemyError

* fix: fixes model refresh issues conflicting with build config updates, setting real time fresh false to persist model selection (#5868)

* add combobox and set realtime refresh to false

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: fixes date time issue, which was blocking run flow execution of agent flows (#5866)

* fixes PydanticSerializationError

fixes:
    PydanticSerializationError: Error calling function `serialize_model`: TypeError: tz_convert() takes exactly 2 positional arguments (1 given)

* format

* [autofix.ci] apply automated fixes

* Update src/backend/base/langflow/api/v1/schemas.py

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* feat: integration of scrapegraph apis (#5551)

* feat: integration of scrapegraph apis

* feat: refactoring of descriptions

* udpate uv lock

* [autofix.ci] apply automated fixes

* pyproject update

* did make format_backend

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* fix: session list overflow when there are many list items. (#5832)

Co-authored-by: xuyingjie <xuyingjie@unipus.cn>

* Fix: update initial graph sort for disconnected graph (#5867)

* refactor: add test for sorting vertices in unconnected graph

Add a new test case to the `test_get_sorted_vertices_with_unconnected_graph` function in the `test_utils.py` file. This test verifies the correct sorting of vertices in an unconnected graph. The test defines a graph structure and checks that the first layer contains the input vertices and the remaining layers contain the rest of the vertices in the correct order.

Refactor the code to improve test coverage and ensure the correctness of the sorting algorithm.

* refactor: improve handling of unconnected vertices in graph sorting

* [autofix.ci] apply automated fixes

* Refactor: Update start_component_id in test_get_sorted_vertices_with_unconnected_graph

The start_component_id parameter in the test_get_sorted_vertices_with_unconnected_graph function was updated to "A" to improve the handling of unconnected vertices in graph sorting.

* Refactor: Improve handling of unconnected vertices in graph sorting

* [autofix.ci] apply automated fixes

* Refactor: Add test_filter_vertices_from_vertex function to test_utils.py

* Refactor: Add error handling for missing graph information in filter_vertices_up_to_vertex and filter_vertices_from_vertex functions

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* Fix: Ensure compatibility with DSLF Overlays in Astra DB Component (#5876)

* fix: address DSLF issues with Astra DB component

* Update Vector Store RAG.json

* [autofix.ci] apply automated fixes

* Update astradb.py

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: Allow specification of api endpoint as fallback when token lacks permissions (#5879)

* fix: Allow direct specification of api_endpoint on oss

* Update astradb.py

* Update Vector Store RAG.json

* Add vector store rag template updates

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: Incorporate DEFAULT_IMPORT_STRING for dynamic class creation and clean up unused function (#5882)

* fix: make sure tool mode is not lost on component validation (#5875)

* fix: ensure string timestamps are converted to UTC in MessageTable model (#5881)

* fix: Fix tool mode retrieval in frontend node template update (#5884)

* fix: errors exhibition and printing (#5892)

* Added onBuildError to error case on buildVertices

* add onBuildError just if there's no source

* refactor: Update markdown rendering in alert components

* Fixed list on error

* Fixed md exibition of error

* Fixed exibition for component erorrs

* Made errors be generated with the correct map

* Removed markdown from unused places

* Update src/frontend/src/utils/buildUtils.ts

Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>

* Update src/frontend/src/utils/buildUtils.ts

Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>

---------

Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>

* fix: Update 'advanced' flag for concurrency multithreading and data input in FileComponent (#5901)

* fix: Update 'advanced' flag for concurrency multithreading and data input in file components

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: Expose API Endpoint when no DB list access in Astra (#5886)

* fix: Expose API Endpoint when no DB list access in Astra

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Update starter template

* [autofix.ci] apply automated fixes

* Update Vector Store RAG.json

* Update astradb.py

* [autofix.ci] apply automated fixes

* Update astradb.py

* [autofix.ci] apply automated fixes

* Update astradb.py

* [autofix.ci] apply automated fixes

* Small update to dropdown for OSS

* [autofix.ci] apply automated fixes

* fix: Don't delete value when refreshing db list

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: improve task management in _log_transaction_async to avoid database locks (#5896)

* refactor: Update _log_transaction_async to be asynchronous and improve task management

- Changed _log_transaction_async method from synchronous to asynchronous to allow proper handling of transaction logging.
- Added error handling for task cancellation and ensured that pending tasks are managed correctly.
- Updated calls to _log_transaction_async in the ComponentVertex class to await the asynchronous method, ensuring proper flow execution and error handling.

* refactor: Simplify _log_transaction_async method by removing redundant error handling

- Streamlined the _log_transaction_async method to enhance readability and maintainability.
- Removed unnecessary try-except blocks for task cancellation, as the async context already handles task management effectively.
- Ensured that completed tasks are awaited and cleared properly, improving overall task management.

* fix: Correctly handle vertex build response in asynchronous flow construction

- Moved the retrieval of the vertex build response to occur after awaiting the build task, ensuring proper handling of task completion.
- Improved error handling by maintaining the cancellation logic while ensuring the response is only accessed after the task is completed.
- This change enhances the reliability of the flow construction process in the chat API.

* fix: Improve task management in Vertex class by refining log transaction handling

- Updated the log transaction handling in the Vertex class to await a single task instead of gathering all tasks, enhancing efficiency.
- Removed the clearing of the task list, ensuring that only the most recent task is processed, which simplifies the task management logic.
- This change aims to improve the reliability and performance of asynchronous logging in the flow execution.

* refactor: Comment out log transaction handling in Vertex class for future review

* chore: Update Docusaurus and OpenAPI dependencies to latest versions (#5905)

* feat: Add ScrapeGraph icon component (#5903)

* feat: Add ScrapeGraph icon component

This commit adds a new icon component called ScrapeGraph. It is a forwardRef component that renders the ScrapeGraphAI icon. The component is added to the list of sidebar bundles and can be used to display the ScrapeGraph icon in the UI.

* refactor: Update ScrapeGraph bundle name

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* fix: improve modal z-index and keyboard event handling (#5898)

📝 (NodeOutputfield/index.tsx): Add styleClasses property with value "z-40" to improve styling
📝 (outputModal/index.tsx): Add className property with value "z-50" to improve styling
📝 (textModal/index.tsx): Add handleEscapeKeyDown function to handle escape key event and close modal

* fix: remove lock from log transaction handling in Vertex (#5906)

* ci: Update Python version defaults in CI workflows (#5911)

* chore: bump langflow and langflow-base (#5912)

* chore: bump langflow-base in langflow (#5913)

* chore: update test durations (#5909)

Co-authored-by: ogabrielluiz <24829397+ogabrielluiz@users.noreply.github.com>

* chore(deps): bump undici from 6.21.0 to 6.21.1 in /docs (#5907)

Bumps [undici](https://github.com/nodejs/undici) from 6.21.0 to 6.21.1.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v6.21.0...v6.21.1)

---
updated-dependencies:
- dependency-name: undici
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* docs: v1.1.2 (#5850)

* docs:add-changelog-to-nav

* docs: add OpenRouter component documentation with detailed inputs and outputs

* docs: add Outputs section to components-models documentation for Cohere and Ollama

* docs: update references from configuration-objects to concepts-objects across multiple components and documentation files

* feat: Add DataFrame operations section to components-processing documentation

* title-case-in-nav

* fix-memories-tab-in-chat-memory

* tool-calling-agent-update

* feat: enhance documentation with icon imports and improved instructions for OpenAI component

* material-icon

* fix: update documentation for tool mode input connection in agent component

* add-loop-component

* add-img-for-loop-summary

* feat: add documentation for using logic components in a flow with examples

* fix: enhance documentation for Loop component with detailed data flow explanation

* redirect-for-config-objects-page

* fix: improve error handling in data processing module

* fix: update documentation for Data objects in Loop component and add import statement in memory chatbot tutorial

* quickstart-screenshots

* docs: update starter flow images

* update-agent-screenshots

* move-repl-agent

* docs: enhance global variables documentation and clarify prerequisites for vector store RAG flow

* docs: update Simple Agent to use URL component

* docs: enhance memory chatbot tutorial with example conversation and clarify session ID terminology

* docs: update visibility icon description in concepts-components.md

* Apply suggestions from code review

Co-authored-by: brian-f <brian.fisher@datastax.com>

* correct-playground-sequence-and-typo

---------

Co-authored-by: brian-f <brian.fisher@datastax.com>

* feat: composio-core & composio-langchain version bump (0.6.13 -> 0.6.16)

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Lucas Oliveira <62335616+lucaseduoli@users.noreply.github.com>
Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: Vinícios Batista da Silva <vinicios.batsi@gmail.com>
Co-authored-by: Raphael Valdetaro <79842132+raphaelchristi@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: ogabrielluiz <24829397+ogabrielluiz@users.noreply.github.com>
Co-authored-by: Sebastián Estévez <estevezsebastian@gmail.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: VICTOR CORREA GOMES <112295415+Vigtu@users.noreply.github.com>
Co-authored-by: Christophe Bornet <cbornet@hotmail.com>
Co-authored-by: xuyingjie <xuyingjie@users.noreply.github.com>
Co-authored-by: xuyingjie <xuyingjie@unipus.cn>
Co-authored-by: Deon Sanchez <69873175+deon-sanchez@users.noreply.github.com>
Co-authored-by: Eric Hare <ericrhare@gmail.com>
Co-authored-by: Tejas Shah <shatejas@amazon.com>
Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jordan Frazier <122494242+jordanrfrazier@users.noreply.github.com>
Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
Co-authored-by: Dmitry <98899785+mdqst@users.noreply.github.com>
Co-authored-by: Mattias Michaux <mattias.michaux@gmail.com>
Co-authored-by: Marco Vinciguerra <88108002+VinciGit00@users.noreply.github.com>
Co-authored-by: brian-f <brian.fisher@datastax.com>
2025-01-29 00:25:11 +00:00
Gabriel Luiz Freitas Almeida
f49feef92b
chore: Bump langflow and langflow-base versions (#5972)
chore: bump langflow and langflow-base to version 1.1.3
2025-01-28 14:02:23 +00:00
Gabriel Luiz Freitas Almeida
d459fc1827
chore(deps): upgrade litellm from 1.54.1 to 1.59.8 (#5952) 2025-01-27 12:32:44 +00:00
Gabriel Luiz Freitas Almeida
76a3a2a461
chore: bump langflow-base in langflow (#5913) 2025-01-24 04:17:50 -08:00
Gabriel Luiz Freitas Almeida
4580685a1c
chore: bump langflow and langflow-base (#5912) 2025-01-24 03:52:27 -08:00
Marco Vinciguerra
dc8e40cb2d
feat: integration of scrapegraph apis (#5551)
* feat: integration of scrapegraph apis

* feat: refactoring of descriptions

* udpate uv lock

* [autofix.ci] apply automated fixes

* pyproject update

* did make format_backend

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-01-22 20:16:58 +00:00
Cristhian Zanforlin Lousa
160452673c
feat: update duckduckgo search component version (#5818)
⬆️ (pyproject.toml): upgrade duckduckgo_search dependency from version 6.3.7 to 7.2.1 for bug fixes and new features
♻️ (duck_duck_go_search_run.py): refactor DuckDuckGoSearchComponent by removing unnecessary 'required' attribute from MessageTextInput
2025-01-20 20:06:12 +00:00
Sebastián Estévez
2acd434e09
feat: assistants agent improvements (#5581)
* assistants agent improvements

* remove alembic init file

* vector store / file upload support

* use sync file object (required by sdk)

* steps

* self.tools initialization

* improvements for edwin

* add name and switch to MultilineInput

* ci fixes
2025-01-16 20:54:34 +00:00
Gabriel Luiz Freitas Almeida
99f2ef6115
feat: add truncation to ResultDataResponse (#5704)
* chore: Update dependencies and improve platform markers in configuration files

- Added 'hypothesis' version 6.123.17 to dev-dependencies in pyproject.toml.
- Updated platform markers from 'sys_platform' to 'platform_system' for better compatibility in uv.lock, affecting multiple packages including 'jinxed', 'colorama', and 'appnope'.
- Ensured consistency in platform checks across various dependencies to enhance cross-platform support.

This update improves the project's dependency management and ensures better compatibility across different operating systems.

* feat: Enhance ResultDataResponse serialization with truncation support

- Introduced a new method `_serialize_and_truncate` to handle serialization and truncation of various data types, including strings, bytes, datetime, Decimal, UUID, and BaseModel instances.
- Updated the `serialize_results` method to utilize the new truncation logic for both individual results and dictionary outputs.
- Enhanced the `serialize_model` method to ensure all relevant fields are serialized and truncated according to the defined maximum text length.

This update improves the handling of large data outputs, ensuring that responses remain concise and manageable.

* fix: Reduce MAX_TEXT_LENGTH in constants.py from 99999 to 20000

This change lowers the maximum text length limit to improve data handling and ensure more manageable output sizes across the application.

* test: Add comprehensive unit tests for ResultDataResponse and VertexBuildResponse

- Introduced a new test suite in `test_api_schemas.py` to validate the serialization and truncation behavior of `ResultDataResponse` and `VertexBuildResponse`.
- Implemented tests for handling long strings, special data types, nested structures, and combined fields, ensuring proper serialization and truncation.
- Enhanced coverage for logging and output handling, verifying that all fields are correctly processed and truncated as per the defined maximum text length.
- Utilized Hypothesis for property-based testing to ensure robustness and reliability of the serialization logic.

This update significantly improves the test coverage for the API response schemas, ensuring better data handling and output management.
2025-01-16 18:39:34 +00:00
Christophe Bornet
da83dbbcb5
feat: Bump ruff version to 0.9 (#5666)
* Bump ruff version to 0.9

* Rename some modules for A005 ruff rule
2025-01-15 15:14:43 +00:00
Abhishek Patil
48847ba3d2
feat: bump composio libraries to version 0.6.13 (#5633) 2025-01-13 15:48:19 +00:00
Sebastián Estévez
63d649b0f4
feat: add anthropic mcp endpoint (#5148)
* mcp WIP

* [autofix.ci] apply automated fixes

* logging and flow user check

* mcp stdio client component

* handle disconnect better

* initialization

* session fix and type fix

* [autofix.ci] apply automated fixes

* defensive against mcp server bugs

* [autofix.ci] apply automated fixes

* notifications and sse component

* enabled flags and resource support

* remove unneeded print

* extract json schema util

* [autofix.ci] apply automated fixes

* ruff

* fix tools [] bug and db asysnc session api change

* Tool instead of StructuredTool

* ruff fixes

* ruff

* validation optimization

* fix frontend test

* another playwright fix

* Update src/frontend/tests/extended/features/notifications.spec.ts

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* mcp component descriptions

* mypy fixes

* fix setup_database_url test

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-01-03 04:45:54 +00:00
Christophe Bornet
e91bcc2520
ref: Some ruff fixes from preview (#5420)
* Some ruff fixes from preview

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-12-28 21:25:35 +00:00
Christophe Bornet
70b4719def
fix: Bump blockbuster version to 1.5.8 (#5418)
Bump blockbuster version to 1.5.8

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2024-12-28 00:18:23 +00:00
tushar-composio
c4de1da4d4
fix: fetch composio apps list dynamically (#5427)
* fix: fetch composio apps list dynamically

* Ensure apps only get loaded once API key is entered

* Add comment

* typo fix

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2024-12-28 00:08:18 +00:00
Christophe Bornet
b1536d3cb4
feat: Bump blockbuster version to 1.5.7 (#5406)
Bump blockbuster version to 1.5.7
2024-12-23 15:57:41 +00:00
Christophe Bornet
4b0c42e520
feat: Bump blockbuster version to 1.5.5 (#5382)
Bump blockbuster version to 1.5.5
2024-12-20 13:45:06 +00:00
Abhishek Patil
fb9825ee65
fix: Resolve Auth field issue in Composio component and bump Composio (#5357)
* fix: replace single quotes with double quotes

* feat: update Composio component fields
2024-12-20 11:42:29 +00:00
Saurabh Misra
a30ccc4302
feat: Install Codeflash optimizer github action (#5350)
* Install Codeflash optimizer github action

* try

* install the right dev

* try

* try

* try

* try

* try

* Python 3.12

* temp run

* test optimizing bubble sort

* try

* try

* finalize setup
2024-12-19 16:36:57 +00:00
Christophe Bornet
8f6241be91
feat: Bump blockbuster version to 1.5.2 (#5331)
Bump blockbuster version to 1.5.2
2024-12-18 14:43:31 +00:00
Christophe Bornet
c3f36b69a2
feat: Bump blockbuster version to 1.5.0 (#5292)
* Bump blockbuster version to 1.5.0

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-12-17 23:26:18 +01:00
Gabriel Luiz Freitas Almeida
c97450dcf2
feat: add pydantic-ai and update dependencies to support it (#5297)
* chore: update weaviate-client version and add pydantic-ai dependency in pyproject.toml

- Updated weaviate-client from version 4.9.6 to 4.10.2.
- Added pydantic-ai dependency with a minimum version of 0.0.12.

* chore: update pydantic version in pyproject.toml from 2.7.0 to 2.10.0

* chore: update package versions and add new dependencies

- Added eval-type-backport version 0.2.0.
- Added griffe version 1.5.1 with colorama as a dependency.
- Updated grpcio-health-checking and grpcio-tools from version 1.62.3 to 1.68.1.
- Updated pydantic_core from version 2.18.4 to 2.27.1.
- Updated weaviate-client from version 4.9.6 to 4.10.2.

* chore: update pydantic version in dependency files

- Updated pydantic version from 2.10.0 to 2.10.1 in both uv.lock and pyproject.toml to ensure compatibility with the latest features and fixes.
2024-12-17 05:41:06 -08:00
Jan Heimes
e8667009b7
feat: add needle as custom component (#4657)
* init: add needle as custom component

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* stage changes

* upgrate: langchain-community

* lint

* [autofix.ci] apply automated fixes

* techdebt: package-lock.json

* [autofix.ci] apply automated fixes

* techdebt: lint with working needle

* techdebt: use Component class and Integrate with other components

* techdebt: adjust needle component

* [autofix.ci] apply automated fixes

* lint

* fix: package json & lock not in sync

* chore: remove outdated dependencies from pyproject.toml

* Removed pyautogen and several langchain-related packages to streamline dependencies and reduce potential conflicts.

* [autofix.ci] apply automated fixes

* refactor: simplify needle component API key handling and clean up imports

* Streamlined API key retrieval by removing unnecessary SecretStr usage, defaulting to empty strings if keys are not provided.
* Consolidated import statements for better readability and organization.

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2024-12-16 15:11:31 +00:00
Gabriel Luiz Freitas Almeida
c6b1eaba60
feat: add support for Python 3.13 (#5238)
* chore: update Python version requirement and remove deprecated dependencies in pyproject.toml files

* Updated Python version requirement to allow up to 3.14 in both main and base pyproject.toml files.
* Removed deprecated dependencies: cohere and pyautogen from the main dependencies list.

* chore: update Python version requirements and add support for Python 3.13 in uv.lock

* Updated the required Python version to allow up to 3.14.
* Adjusted resolution markers for Python versions to include 3.13.
* Added markers for the 'typing-extensions' dependency to restrict it for Python versions below 3.13.
* Included additional wheel files for various packages to support Python 3.13 compatibility.

* Update Python version requirements in README files to support Python 3.13

* Update Python version in GitHub Actions workflow to 3.13

* Update Python version in GitHub Actions workflows to include 3.13

* Update installation documentation to support Python 3.13 and clarify troubleshooting steps

* revert changes to docs until we release

* chore: add ag2 dependency and update uv.lock for Python 3.13 compatibility

* Added ag2 version 0.3.2 and 0.5.2 to pyproject.toml and uv.lock with appropriate resolution markers for Python versions.
* Included flaml version 2.3.2 in uv.lock to ensure compatibility with the new ag2 dependency.
* Updated dependency specifications to support Python 3.13 and above.
2024-12-12 12:24:43 -08:00