From 83a125544829b5d061dccc1ee082e9f16afe4138 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Sat, 2 Dec 2023 14:00:33 -0300 Subject: [PATCH] Refactor custom component code --- .../frontend_node/custom_components.py | 40 ++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/src/backend/langflow/template/frontend_node/custom_components.py b/src/backend/langflow/template/frontend_node/custom_components.py index 60c3f0bc0..a0a5a9956 100644 --- a/src/backend/langflow/template/frontend_node/custom_components.py +++ b/src/backend/langflow/template/frontend_node/custom_components.py @@ -1,10 +1,48 @@ from typing import Optional -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 +DEFAULT_CUSTOM_COMPONENT_CODE = """from langflow import CustomComponent +from typing import Optional, List, Dict, Union +from langflow.field_typing import ( + AgentExecutor, + BaseChatMemory, + BaseLanguageModel, + BaseLLM, + BaseLoader, + BaseMemory, + BaseOutputParser, + BasePromptTemplate, + BaseRetriever, + Callable, + Chain, + ChatPromptTemplate, + Data, + Document, + Embeddings, + NestedDict, + Object, + PromptTemplate, + TextSplitter, + Tool, + VectorStore, +) + + +class Component(CustomComponent): + display_name: str = "Custom Component" + description: str = "Create any custom component you want!" + + def build_config(self): + return {"param": {"display_name": "Parameter"}} + + def build(self, param: Data) -> Data: + return param + +""" + class CustomComponentFrontendNode(FrontendNode): name: str = "CustomComponent"