From 9fb59855a36959e3c8621cb7e6f32681a51444a0 Mon Sep 17 00:00:00 2001 From: Christophe Bornet Date: Mon, 9 Dec 2024 12:09:17 +0100 Subject: [PATCH] fix: Fix to_frontend_node modifying input components (#5116) Fix to_frontend_node modifying input components --- .../base/langflow/template/frontend_node/base.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/backend/base/langflow/template/frontend_node/base.py b/src/backend/base/langflow/template/frontend_node/base.py index 43a3e4ce6..7e806f249 100644 --- a/src/backend/base/langflow/template/frontend_node/base.py +++ b/src/backend/base/langflow/template/frontend_node/base.py @@ -188,13 +188,17 @@ class FrontendNode(BaseModel): return cls(**kwargs) def set_field_value_in_template(self, field_name, value) -> None: - for field in self.template.fields: + for idx, field in enumerate(self.template.fields): if field.name == field_name: - field.value = value + new_field = field.model_copy() + new_field.value = value + self.template.fields[idx] = new_field break def set_field_load_from_db_in_template(self, field_name, value) -> None: - for field in self.template.fields: + for idx, field in enumerate(self.template.fields): if field.name == field_name and hasattr(field, "load_from_db"): - field.load_from_db = value + new_field = field.model_copy() + new_field.load_from_db = value + self.template.fields[idx] = new_field break