* 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>
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.
* 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>
* 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>
also delete useless actions yml for now
Signed-off-by: yihong0618 <zouzou0208@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
✨ (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
♻️ (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>
* 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.
* 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>
* Implemented logFirstMessage function to see if the outputName is the first message possible
* Only render outputs hidden if showHiddenOutputs is true
* Implemented open and setOpen on OutputModal
* Add open output inspection shortcut
* Added data-testid to output modal
* Added test for output shortcut
* fixed chatinputoutputuser test
* Fixed tests
* fixed tests
* fixed url test name
* Fixed loop test
* fixed similarity test
* fixed generalbugs
* fixed timeouts
* fix general bugs
* Fixed tests
* Fix timeouts
* Changed timeouts
* fix general bugs
* Fix decision flow
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
* refactor: Simplify parameter building in Vertex class using ParameterHandler
* feat: Add unit tests for ParameterHandler class and organize test structure
* refactor: rename openai.py to openai_chat_model.py to avoid overlapping names
- Introduced a new OpenAIModelComponent class to facilitate text generation using OpenAI's language models.
- Implemented various input fields including max_tokens, model_kwargs, json_mode, model_name, openai_api_base, api_key, temperature, and seed for enhanced configurability.
- Added methods for building the model and handling exceptions from OpenAI API calls.
- This component enhances the existing framework by integrating OpenAI's capabilities, allowing users to generate text with customizable parameters.
* refactor: update OpenAIModelComponent import paths to use openai_chat_model
- Changed import statements in model_input_constants.py, __init__.py, and test_tool_calling_agent.py to reflect the new OpenAIModelComponent location.
- This refactor improves code organization and clarity by ensuring consistent usage of the updated component structure.
* fix(param_handler): add error handling for invalid field types
- Introduced a ValueError exception for invalid field types in the ParameterHandler class.
- This change enhances robustness by ensuring that only valid field types are processed, improving error reporting for developers.
* feat: Support list-based file path handling in ParameterHandler
* test: Add comprehensive tests for ParameterHandler field processing
* feat: Enhance field skipping logic in ParameterHandler
Add support for skipping fields with type "other" in the parameter handling process
* refactor: Simplify storage service initialization and edge parameter processing
* refactor: Modernize parameter handling with pattern matching
Improve type handling and conversion in ParameterHandler by:
- Replacing conditional logic with pattern matching
- Simplifying type conversion for various field types
- Reducing nested conditionals
- Enhancing code readability and maintainability
* refactor: Update type hints for CycleEdge in parameter handling
---------
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
* fix: update loop component to use `data` instead of `item`
* [autofix.ci] apply automated fixes
* ✅ (loop-component.spec.ts): update test to expect two occurrences of "modified_value" in the output instead of one
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* 📝 (frontend): add IS_AUTO_LOGIN constant to handle auto login functionality
🔧 (frontend): update API calls to consider IS_AUTO_LOGIN constant for authentication errors
♻️ (frontend): refactor useGetAutoLogin to handle auto login retries and errors
♻️ (frontend): refactor usePostRefreshAccess to handle auto login retries
♻️ (frontend): refactor request processor to include retry logic with exponential backoff
🔧 (frontend): update Vite config to include LANGFLOW_AUTO_LOGIN environment variable
* 🐛 (constants.ts): fix logic in IS_AUTO_LOGIN constant to correctly evaluate the auto login condition based on the environment variable LANGFLOW_AUTO_LOGIN
* ✨ (index.tsx): Add support for testMockAutoLogin to simulate auto login for testing purposes
🔧 (constants.ts): Refactor IS_AUTO_LOGIN to handle optional chaining for process.env properties
✨ (auto-login-off.spec.ts): Add test cases to simulate auto login behavior for testing
🔧 (vite.config.mts): Update vite configuration to load environment variables from .env file and handle optional chaining for envLangflow properties
* made pasted component be selected
* Added bg when is custom component and component is not edited
* Added test to check if custom component button is pink
* Stop chatinput propagation
* fixed tests
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* ♻️ (index.tsx): remove unused ShortUniqueId import and uid variable to clean up the code
💡 (index.tsx): refactor useEffect dependency array to only include necessary dependencies for better performance and readability
♻️ (index.tsx): refactor PopoverContent component to use notificationRef instead of inline ref assignment for better code organization
* ✨ (loading.tsx): add data-testid attribute to loading icon for easier testing and identification in the UI
✅ (general-bugs-icons-fallback.spec.ts): add test to ensure that loading icon fallback is displayed correctly when the icon is not found
* 📝 (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
* 📝 (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
* [autofix.ci] apply automated fixes
* 📝 (frontend): Remove unused endpointName property from NodeInputField component
🔧 (frontend): Add useFlowStore import and use it to get currentFlow and endpointName in CopyFieldAreaComponent, TableNodeCellRender, TextAreaComponent, and WebhookFieldComponent components
🔧 (frontend): Refactor useGetBuildsMutation to handle multiple concurrent requests and prevent duplicate requests
* ✨ (webhookComponent.spec.ts): refactor test to improve readability and maintainability by removing redundant code and focusing on essential test steps
♻️ (userSettings.spec.ts): refactor test to improve readability and maintainability by removing redundant code and focusing on essential test steps
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* fix errors on console jsx
* ✨ (NodeOutputfield/index.tsx): Refactor InspectButton component to use forwardRef for better performance and maintainability
♻️ (NodeOutputfield/index.tsx): Refactor AlertDropdown component to use forwardRef for better performance and maintainability
* 📝 (dialog.tsx): Add VisuallyHidden component for accessibility and improve semantics in DialogContent component
🔧 (dialog.tsx): Update DialogContent component to conditionally include VisuallyHidden component for DialogTitle
🔧 (dialog.tsx): Export VisuallyHidden component from dialog.tsx
♻️ (textAnimation.tsx): Refactor TextEffectPerChar component to use TextEffect component with per="char" and as="span" properties for consistency
* ✨ (CustomEdges/index.tsx): Destructure props to extract specific properties and pass the rest as domSafeProps for cleaner code
♻️ (singleAlertComponent/index.tsx): Remove unnecessary aria-hidden attribute from IconComponent to improve accessibility and reduce redundancy
* ✨ (index.tsx): introduce ShortUniqueId library to generate unique keys for alert items in the dropdown list
* ✨ (frontend): add support for displaying a list of items in the NoticeAlert component
📝 (frontend): update NoticeAlertType interface to include a list property for displaying multiple items in the alert
* ✨ (styleUtils.ts): introduce new icon PencilRuler to the list of nodeIconsLucide for use in the frontend styling utilities.
* URL component improvement - JSON URL
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* ♻️ (url.py): refactor URLComponent class to simplify data_dict creation by using dictionary unpacking instead of manual key-value pairs
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* 📝 (url.py): improve formatting of info string for DropdownInput in URLComponent class
♻️ (url.py): refactor ensure_url method to simplify logic and improve readability
🐛 (url.py): fix error handling in URLComponent class for invalid JSON content
* [autofix.ci] apply automated fixes
* ✨ (url.py): Add BoolInput and StrInput to support new features in URLComponent
📝 (url.py): Update description in URLComponent to provide more detailed information about its functionality
♻️ (url.py): Refactor update_build_config method in URLComponent to dynamically update fields based on selected format
🐛 (url.py): Fix ensure_url method in URLComponent to ensure valid URLs are provided and handle exceptions properly
🐛 (url.py): Fix fetch_content method in URLComponent to handle cases where no valid URLs are provided and improve error handling
🐛 (url.py): Fix fetch_content_text method in URLComponent to correctly format and clean text output based on selected format and settings
🐛 (url.py): Fix as_dataframe method in URLComponent to return fetched content as a DataFrame object
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* ♻️ (url.py): remove unnecessary comments and improve code readability by removing redundant comments and adjusting code structure.
* [autofix.ci] apply automated fixes
* 📝 (url.py): improve readability by splitting long description and info strings into multiple lines
🐛 (url.py): handle cases where invalid URLs or JSON URLs are provided, and provide informative error messages
🐛 (url.py): handle cases where no valid URLs are provided and raise an error with a clear message
* 🔧 (Blog Writer.json, Custom Component Maker.json, Graph Vector Store RAG.json): resolve merge conflicts in JSON files related to the 'format' field options to ensure consistency across starter projects.
* [autofix.ci] apply automated fixes
* 🐛 (url.py): fix validation of JSON content from URLs to ensure correct handling of JSON data
✨ (url.py): introduce async validation of JSON content from URLs using aiohttp to improve performance and reliability
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* merge fix
* ✅ (test_audio_file.wav): update test_audio_file.wav to fix binary file differences in the test asset
* 🐛 (test_url_component.py): update error message format to improve clarity and consistency
* update templates
* 🐛 (test_database.py): fix error handling in test_read_flows_components_only_paginated to properly catch and log exceptions during test execution
* 📝 (backend): Add noqa comments to files to ignore specific linting rule A005
🔧 (test_database.py): Remove duplicate import statement for sqlalchemy
♻️ (test_database.py): Refactor test_read_flows_components_only_paginated function for better readability and maintainability
* 🐛 (test_database.py): fix test_read_flows_components_only_paginated to handle exceptions and provide more context in case of failure
* 📝 (test_database.py): remove unnecessary comment to improve code readability and maintainability
* 📝 (backend): Remove unnecessary noqa comments from __init__.py files
🔧 (test_database.py): Refactor test_read_flows_components_only_paginated function for better readability and maintainability
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>