diff --git a/src/backend/langflow/interface/custom/custom.py b/src/backend/langflow/interface/custom/custom.py index c47e67edd..8985945a9 100644 --- a/src/backend/langflow/interface/custom/custom.py +++ b/src/backend/langflow/interface/custom/custom.py @@ -46,6 +46,10 @@ class CustomComponent(BaseModel): if isinstance(target, ast.Name): # A simple variable # Add the attribute and its value to the dictionary attributes[target.id] = ast.unparse(inner_node.value) + elif isinstance(inner_node, ast.AnnAssign): # An annotated assignment + if isinstance(inner_node.target, ast.Name) and inner_node.value: + attributes[inner_node.target.id] = ast.unparse(inner_node.value) + elif isinstance(inner_node, ast.FunctionDef): self._handle_function(inner_node) @@ -134,6 +138,8 @@ class CustomComponent(BaseModel): template_config["display_name"] = ast.literal_eval( attributes["display_name"] ) + if "description" in attributes: + template_config["description"] = ast.literal_eval(attributes["description"]) return template_config def _class_template_validation(self, code: dict): diff --git a/src/backend/langflow/template/frontend_node/custom_components.py b/src/backend/langflow/template/frontend_node/custom_components.py index 6d360ce96..8a3474d24 100644 --- a/src/backend/langflow/template/frontend_node/custom_components.py +++ b/src/backend/langflow/template/frontend_node/custom_components.py @@ -1,7 +1,7 @@ from langflow.template.field.base import TemplateField from langflow.template.frontend_node.base import FrontendNode from langflow.template.template.base import Template -from langflow.utils.constants import DEFAULT_CUSTOM_COMPONENT_CODE +from langflow.interface.custom.constants import DEFAULT_CUSTOM_COMPONENT_CODE class CustomComponentFrontendNode(FrontendNode): diff --git a/src/backend/langflow/template/frontend_node/tools.py b/src/backend/langflow/template/frontend_node/tools.py index f2e77eb9f..07db16e3c 100644 --- a/src/backend/langflow/template/frontend_node/tools.py +++ b/src/backend/langflow/template/frontend_node/tools.py @@ -1,9 +1,9 @@ +from langflow.interface.custom.constants import DEFAULT_CUSTOM_COMPONENT_CODE from langflow.template.field.base import TemplateField from langflow.template.frontend_node.base import FrontendNode from langflow.template.template.base import Template from langflow.utils.constants import ( DEFAULT_PYTHON_FUNCTION, - DEFAULT_CUSTOM_COMPONENT_CODE, )