From 214e07ba19fbd76810d1e67700d0342f4491e32e Mon Sep 17 00:00:00 2001 From: ethanfel Date: Fri, 2 Jan 2026 19:14:33 +0100 Subject: [PATCH] Update utils.py --- utils.py | 56 -------------------------------------------------------- 1 file changed, 56 deletions(-) diff --git a/utils.py b/utils.py index 27a9d9b..1ec9096 100644 --- a/utils.py +++ b/utils.py @@ -2,7 +2,6 @@ import json import time from pathlib import Path import streamlit as st -import requests # <--- NEW DEPENDENCY # Default structure for new files DEFAULTS = { @@ -105,58 +104,3 @@ def generate_templates(current_dir): batch_data = {"batch_data": [DEFAULTS.copy(), DEFAULTS.copy()]} save_json(current_dir / "template_batch.json", batch_data) - -# --- NEW: COMFY METADATA FETCHER --- -def fetch_comfy_metadata(base_url): - """Queries ComfyUI for available Models, VAEs, and LoRAs.""" - url = base_url.rstrip("/") - meta = {"checkpoints": [], "loras": [], "vaes": []} - - try: - # Get Node Info to find input lists - res = requests.get(f"{url}/object_info", timeout=2) - if res.status_code == 200: - data = res.json() - - # Checkpoints - if "CheckpointLoaderSimple" in data: - meta["checkpoints"] = data["CheckpointLoaderSimple"]["input"]["required"]["ckpt_name"][0] - - # LoRAs - if "LoraLoader" in data: - meta["loras"] = data["LoraLoader"]["input"]["required"]["lora_name"][0] - - # VAEs - if "VAELoader" in data: - meta["vaes"] = data["VAELoader"]["input"]["required"]["vae_name"][0] - - return meta - except Exception: - # Fail silently so the app still works offline - return meta - -# --- NEW: SMART INPUT WIDGET --- -def render_smart_input(label, key, value, options, help_text=None): - """ - Renders a Selectbox if options are available, otherwise a Text Input. - Handles the case where the current 'value' might not be in the 'options' list. - """ - if options and len(options) > 0: - # If current value is not in the list (e.g. new file added), add it temporarily - safe_options = options.copy() - if value and value not in safe_options: - safe_options.insert(0, value) - elif not value and safe_options: - # Default to first if empty - value = safe_options[0] - - # Try to find index - try: - idx = safe_options.index(value) - except ValueError: - idx = 0 - - return st.selectbox(label, safe_options, index=idx, key=key, help=help_text) - else: - # Fallback to text input if Comfy is offline or list empty - return st.text_input(label, value=value, key=key, help=help_text)