Files
kanryu-ComfyUI-Text-Driven-…/__init__.py
T

65 lines
2.2 KiB
Python

import logging
import sys
from comfy_api.latest import ComfyExtension
# Setup logging for the entire package
log = logging.getLogger("ComfyUI-Text-Driven-Workflows")
if not log.handlers:
h = logging.StreamHandler(sys.stdout)
h.setFormatter(logging.Formatter("[TextDrivenWorkflows] %(levelname)s: %(message)s"))
log.addHandler(h)
log.setLevel(logging.INFO)
_NODES = []
WEB_DIRECTORY = "web"
# Import individual node modules (Snake Case naming convention)
try:
# Import Join Strings node
from .nodes import text_nodes_join_strings
_NODES.append(text_nodes_join_strings.JoinStrings)
# Import Math (Int) node
from .nodes import math_nodes_int
_NODES.append(math_nodes_int.MathInt)
# Import Multi Prompts node
from .nodes import text_nodes_multi_prompts
_NODES.append(text_nodes_multi_prompts.MultiPromptsTextDriven)
# Import Prompt Line node
from .nodes import text_nodes_prompt_line
_NODES.append(text_nodes_prompt_line.PromptLine)
# Import Prompt Token Counter node
from .nodes import text_nodes_token_counter
_NODES.append(text_nodes_token_counter.PromptTokenCounterTextDriven)
# Import Resolution Selector node
from .nodes import text_nodes_resolution_selector
_NODES.append(text_nodes_resolution_selector.ResolutionSelector)
# Import Single Prompt node
from .nodes import text_nodes_single_prompt
_NODES.append(text_nodes_single_prompt.SinglePrompt)
# Import Text Line Prompt node
from .nodes import text_nodes_text_line_prompt
_NODES.append(text_nodes_text_line_prompt.TextLinePromptTextDriven)
# Import Text Line Selector node
from .nodes import text_nodes_text_line_selector
_NODES.append(text_nodes_text_line_selector.TextLineSelector)
log.info(f"Successfully loaded {len(_NODES)} nodes.")
except Exception as e:
log.error(f"Failed to load nodes: {e}")
class TextDrivenWorkflowsExtension(ComfyExtension):
"""
Unified extension class for ComfyUI Text-Driven Workflows.
"""
async def get_node_list(self) -> list:
return _NODES
async def comfy_entrypoint():
return TextDrivenWorkflowsExtension()