Update frontend template with values from raw

template
This commit is contained in:
Gabriel Luiz Freitas Almeida 2023-12-05 19:33:26 -03:00
commit 384d42fea4

View file

@ -1,6 +1,8 @@
from pathlib import Path
from typing import TYPE_CHECKING, List
from langflow.services.deps import get_settings_service
if TYPE_CHECKING:
from langflow.services.database.models.flow.model import Flow
@ -71,20 +73,25 @@ def update_frontend_node_with_template_values(frontend_node, raw_template_data):
return frontend_node
def is_valid_data(frontend_node, raw_template_data):
""" Check if the data is valid for processing. """
return frontend_node and "template" in frontend_node and raw_template_data and hasattr(raw_template_data, 'template')
"""Check if the data is valid for processing."""
return (
frontend_node and "template" in frontend_node and raw_template_data and hasattr(raw_template_data, "template")
)
def update_template_values(frontend_template, raw_template):
""" Updates the frontend template with values from the raw template. """
"""Updates the frontend template with values from the raw template."""
for key, value_dict in raw_template.items():
if key == "code" or not isinstance(value_dict, dict):
continue
update_template_field(frontend_template, key, value_dict)
def update_template_field(frontend_template, key, value_dict):
""" Updates a specific field in the frontend template. """
"""Updates a specific field in the frontend template."""
template_field = frontend_template.get(key)
if not template_field or template_field.get("type") != value_dict.get("type"):
return
@ -100,11 +107,11 @@ def update_template_field(frontend_template, key, value_dict):
template_field["file_path"] = file_path_value
def get_file_path_value(file_path):
""" Get the file path value if the file exists, else return empty string. """
return file_path if Path(file_path).exists() else ""
"""Get the file path value if the file exists, else return empty string."""
settings_service = get_settings_service()
return file_path if Path(file_path).exists() and settings_service.settings.CONFIG_DIR in file_path else ""
def validate_is_component(flows: List["Flow"]):