From 7eeb6ea78a1b497def20a83480c8ce966f0d5500 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Thu, 20 Jun 2024 21:57:57 -0300 Subject: [PATCH] refactor: Update instantiate_class function to support CustomComponent and Component inheritance --- .../base/langflow/interface/initialize/loading.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/backend/base/langflow/interface/initialize/loading.py b/src/backend/base/langflow/interface/initialize/loading.py index 293c337ec..08b02cbcc 100644 --- a/src/backend/base/langflow/interface/initialize/loading.py +++ b/src/backend/base/langflow/interface/initialize/loading.py @@ -2,7 +2,7 @@ import inspect import json import os import warnings -from typing import TYPE_CHECKING, Any, Type +from typing import TYPE_CHECKING, Any import orjson from loguru import logger @@ -36,8 +36,8 @@ async def instantiate_class( params_copy = params.copy() # Remove code from params - class_object: Type["CustomComponent"] = eval_custom_component_code(params_copy.pop("code")) - custom_component: "CustomComponent" | "Component" = class_object( + class_object = eval_custom_component_code(params_copy.pop("code")) + custom_component = class_object( user_id=user_id, parameters=params_copy, vertex=vertex, @@ -47,9 +47,9 @@ async def instantiate_class( ) with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=PydanticDeprecatedSince20) - if issubclass(class_object, Component): + if isinstance(custom_component, Component): return await build_component(params=params_copy, custom_component=custom_component, vertex=vertex) - elif issubclass(class_object, CustomComponent): + elif isinstance(custom_component, CustomComponent): return await build_custom_component(params=params_copy, custom_component=custom_component) else: raise ValueError(f"Base type {base_type} not found.")