From c80ee236c99428b3756f424cc0de929652fc0121 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Mon, 11 Mar 2024 18:00:22 -0300 Subject: [PATCH] Fix components value handling in InputValueRequest --- src/backend/langflow/api/v1/schemas.py | 2 +- src/backend/langflow/graph/graph/base.py | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/backend/langflow/api/v1/schemas.py b/src/backend/langflow/api/v1/schemas.py index 9d8314d48..e28d9bca1 100644 --- a/src/backend/langflow/api/v1/schemas.py +++ b/src/backend/langflow/api/v1/schemas.py @@ -259,7 +259,7 @@ class VerticesBuiltResponse(BaseModel): class InputValueRequest(BaseModel): - components: Optional[List[str]] = None + components: Optional[List[str]] = [] input_value: Optional[str] = None # add an example diff --git a/src/backend/langflow/graph/graph/base.py b/src/backend/langflow/graph/graph/base.py index 96da64eda..07a403cfd 100644 --- a/src/backend/langflow/graph/graph/base.py +++ b/src/backend/langflow/graph/graph/base.py @@ -202,8 +202,10 @@ class Graph: for input_dict in inputs: components: Union[str, list[str]] = input_dict.get("components", []) - if not isinstance(components, list): - components = [components] + if components and not isinstance(components, list): + raise ValueError(f"Invalid components value: {components}. Expected list") + elif components is None: + components = [] if INPUT_FIELD_NAME not in input_dict: input_value = ""