🔍 refactor(base.py): refactor build_error_message function to improve readability and error message generation
The check_input_variables function now correctly handles empty variables and variables that start with a number. It removes invalid characters from the variables and adds them to the wrong_variables set. The build_error_message function has been refactored to generate a more informative error message, including details about invalid characters, wrong variables, empty variables, and duplicate variables. This improves the clarity of error messages when validating input variables.
🐛 fix(chatMessage): add max height and overflow to AccordionContent in ChatMessage component to prevent content overflow
🐛 fix(formModal): adjust width of left panel in FormModal component to improve layout
🐛 fix(formModal): fix flexbox alignment issue in right panel of FormModal component
- Refactored code to replace the deprecated is_valid property with the is_check_valid method.
- Added validation for the entrypoint function name and return type.
- Modified the error messages to provide more specific details.
This commit implements the necessary changes to refactor the CustomComponent class in the endpoints.py file. The is_valid property has been replaced with the is_check_valid method to check the validity of the custom component. Additionally, validation has been added to ensure the presence of a valid entrypoint function and a valid return type. If any of the validation checks fail, appropriate error messages are raised to provide detailed traceback information.
The representation of the built object in the Vertex class has been improved to provide more meaningful information. Instead of returning the actual object representation, it now returns "Built successfully" if the object has been built, or "Not built yet" if the object has not been built yet. This change enhances the clarity and readability of the code.
The code in the CustomComponent class has been refactored to improve readability and maintainability. The `_handle_function` method now handles function arguments correctly. Additionally, the `is_valid_class_template` method has been renamed to `_class_template_validation`, and it now raises an HTTPException with a detailed error message when the main class or the build function contains invalid information.
In the `build_langchain_template_custom_component` function, base classes are now retrieved from the `return_type` and added to the `template.base_classes` list. A try-except block is used to handle possible KeyError or AttributeError exceptions, and an HTTPException is raised with the corresponding error message and traceback if an error occurs.
These changes ensure more accurate validation and handle potential errors more gracefully.
The code now handles the case when the `artifacts` variable is empty by setting `input_keys_response` to an empty dictionary. This prevents potential errors that could occur when trying to build the `input_keys_response` object.
feat(baseModal): create a reusable BaseModal component to be used in different modals
fix(codeAreaModal): add missing imports and fix indentation in CodeAreaModal component
refactor(codeAreaModal): refactor handleClick function to handle dynamic and non-dynamic code validation and execution
refactor(codeAreaModal): refactor useEffect to update value prop when code state changes
fix(codeAreaModal/v2): set open prop to true in TwoColumnsModal component
fix(twoColumnsModal): add missing import statement for PopUpContext
refactor(twoColumnsModal): remove unused code and add logic to close modal and reset state when modal is closed
The code now checks if the `base_type` attribute is None before attempting to instantiate a class. If `base_type` is None, a ValueError is raised with a descriptive error message. This fix prevents potential errors when the `base_type` is not found for a given node.
📝 chore(base.py): update comments and remove unused imports
The code in the `Vertex` class has been refactored to improve readability and handle optional parameters more effectively. The code now checks if a parameter is of type "code", "str", or "prompt" and if it is not already set in the `params` dictionary, it sets it to the corresponding value from the `value` dictionary. Additionally, if a parameter is not required and not set in the `params` dictionary, it checks if a default value is provided and sets it to the default value if available, otherwise it removes the parameter from the `params` dictionary. This change improves the handling of optional parameters and makes the code more maintainable.
🐛 fix(schemas.py): change class name from "ExportedFlow" to "Exported flow from Langflow" for consistency
The word variable in __main__.py is changed from "LangFlow" to "Langflow" to maintain consistency in naming conventions. Similarly, the class name in schemas.py is changed from "ExportedFlow" to "Exported flow from Langflow" for consistency in naming conventions.
📝 docs(README.md): update project name to "Langflow" for consistency
📝 chore(frontend): update project name in HTML title tag to "Langflow" for consistency
The project name "LangFlow" has been updated to "Langflow" for consistency throughout the documentation and codebase. This change improves readability and maintains a consistent naming convention.
🐛 fix(tabsContext.tsx): fix typo in variable name from LangFlowState to LangflowState
🐛 fix(flow_constants.tsx): fix typo in description from LangFlow to Langflow
🐛 fix(chatModal/index.tsx): fix typo in chat modal title from LangFlow Chat to Langflow Chat
🐛 fix(importModal/index.tsx): fix typo in import modal title from LangFlow Examples to Langflow Examples
🐛 fix(CommunityPage/index.tsx): fix typo in community page text from LangFlow to Langflow
🐛 fix(FlowPage/index.tsx): fix typo in flow page text from LangFlow to Langflow
The changes were made to fix typos in various parts of the codebase where the name "LangFlow" was misspelled as "Langflow". This improves consistency and ensures that the correct name is used throughout the application.