Files
Superside-comfyui-superside…/__init__.py
T
Superside ComfyUI Nodes 6ebd0aa6cd Initial import: 28 fal.ai ComfyUI nodes with per-node API key input
Ported and curated from the internal fal-flux-nodes package: dropped
3 redundant nodes (Nano Banana v1, AnyVLM, SeedVR v1) that were fully
superseded by newer variants already in the set. Every node now takes
an explicit api_key STRING input instead of reading from a config file
or environment variable, so no key is ever baked into this repo.
2026-07-09 11:00:57 -04:00

136 lines
7.7 KiB
Python

try:
# Normal path when ComfyUI loads this as a proper package.
from .modules.any_llm_text_node import AnyLLMTextNode
from .modules.any_llm_vision_node import AnyLLMVisionNode
from .modules.bria_background_standardizer_node import BriaBackgroundStandardizerNode
from .modules.bria_replace_background_node import BriaReplaceBackgroundNode
from .modules.florence_2_caption_node import Florence2CaptionNode
from .modules.florence_2_region_selector_node import Florence2RegionSelectorNode
from .modules.flux_kontext_max_multi_node import FluxKontextMaxMultiImageNode
from .modules.gpt_image_2_edit_node import GPTImage2EditNode
from .modules.grok_imagine_image_quality_edit_node import GrokImagineImageQualityEditNode
from .modules.ideogram_upscale_node import IdeogramUpscaleNode
from .modules.juggernaut_flux_pro_img2img_node import JuggernautFluxProImg2ImgNode
from .modules.kling_21_image_to_video_node import Kling21ImageToVideoNode
from .modules.kling_25_turbo_pro_image_to_video_node import Kling25TurboProImageToVideoNode
from .modules.nano_banana_pro_node import NanoBananaProEditNode
from .modules.nano_banana_v2_edit_node import NanoBananaV2EditNode
from .modules.pasd_upscaler_node import PASDUpscalerNode
from .modules.prompt_box_node import PromptBoxNode
from .modules.prompt_splitter_node import PromptSplitterNode
from .modules.sam_3_region_selector_node import SAM3RegionSelectorNode
from .modules.seedance_lite_image_to_video_node import SeedanceLiteImageToVideoNode
from .modules.seedance_pro_image_to_video_node import SeedanceProImageToVideoNode
from .modules.seedream_v45_edit_node import SeedreamV45EditNode
from .modules.seedream_v5_pro_edit_node import SeedreamV5ProEditNode
from .modules.seedvr_2_upscale_image_node import SeedVR2UpscaleImageNode
from .modules.seedvr_upscale_video_node import SeedVRUpscaleVideoNode
from .modules.topaz_upscale_image_node import TopazUpscaleImageNode
from .modules.wan_25_image_to_image_node import Wan25ImageToImageNode
from .modules.wan_25_image_to_video_node import Wan25ImageToVideoNode
except ImportError:
# Fallback for environments where this hyphenated folder name doesn't get
# a normal package import context (e.g. running files directly).
import os
import sys
_this_dir = os.path.dirname(os.path.abspath(__file__))
if _this_dir not in sys.path:
sys.path.insert(0, _this_dir)
from modules.any_llm_text_node import AnyLLMTextNode
from modules.any_llm_vision_node import AnyLLMVisionNode
from modules.bria_background_standardizer_node import BriaBackgroundStandardizerNode
from modules.bria_replace_background_node import BriaReplaceBackgroundNode
from modules.florence_2_caption_node import Florence2CaptionNode
from modules.florence_2_region_selector_node import Florence2RegionSelectorNode
from modules.flux_kontext_max_multi_node import FluxKontextMaxMultiImageNode
from modules.gpt_image_2_edit_node import GPTImage2EditNode
from modules.grok_imagine_image_quality_edit_node import GrokImagineImageQualityEditNode
from modules.ideogram_upscale_node import IdeogramUpscaleNode
from modules.juggernaut_flux_pro_img2img_node import JuggernautFluxProImg2ImgNode
from modules.kling_21_image_to_video_node import Kling21ImageToVideoNode
from modules.kling_25_turbo_pro_image_to_video_node import Kling25TurboProImageToVideoNode
from modules.nano_banana_pro_node import NanoBananaProEditNode
from modules.nano_banana_v2_edit_node import NanoBananaV2EditNode
from modules.pasd_upscaler_node import PASDUpscalerNode
from modules.prompt_box_node import PromptBoxNode
from modules.prompt_splitter_node import PromptSplitterNode
from modules.sam_3_region_selector_node import SAM3RegionSelectorNode
from modules.seedance_lite_image_to_video_node import SeedanceLiteImageToVideoNode
from modules.seedance_pro_image_to_video_node import SeedanceProImageToVideoNode
from modules.seedream_v45_edit_node import SeedreamV45EditNode
from modules.seedream_v5_pro_edit_node import SeedreamV5ProEditNode
from modules.seedvr_2_upscale_image_node import SeedVR2UpscaleImageNode
from modules.seedvr_upscale_video_node import SeedVRUpscaleVideoNode
from modules.topaz_upscale_image_node import TopazUpscaleImageNode
from modules.wan_25_image_to_image_node import Wan25ImageToImageNode
from modules.wan_25_image_to_video_node import Wan25ImageToVideoNode
NODE_CLASS_MAPPINGS = {
"AnyLLMTextNode": AnyLLMTextNode,
"AnyLLMVisionNode": AnyLLMVisionNode,
"BriaBackgroundStandardizerNode": BriaBackgroundStandardizerNode,
"BriaReplaceBackgroundNode": BriaReplaceBackgroundNode,
"Florence2CaptionNode": Florence2CaptionNode,
"Florence2RegionSelectorNode": Florence2RegionSelectorNode,
"FluxKontextMaxMultiImageNode": FluxKontextMaxMultiImageNode,
"GPTImage2EditNode": GPTImage2EditNode,
"GrokImagineImageQualityEditNode": GrokImagineImageQualityEditNode,
"IdeogramUpscaleNode": IdeogramUpscaleNode,
"JuggernautFluxProImg2ImgNode": JuggernautFluxProImg2ImgNode,
"Kling21ImageToVideoNode": Kling21ImageToVideoNode,
"Kling25TurboProImageToVideoNode": Kling25TurboProImageToVideoNode,
"NanoBananaProEditNode": NanoBananaProEditNode,
"NanoBananaV2EditNode": NanoBananaV2EditNode,
"PASDUpscalerNode": PASDUpscalerNode,
"PromptBoxNode": PromptBoxNode,
"PromptSplitterNode": PromptSplitterNode,
"SAM3RegionSelectorNode": SAM3RegionSelectorNode,
"SeedanceLiteImageToVideoNode": SeedanceLiteImageToVideoNode,
"SeedanceProImageToVideoNode": SeedanceProImageToVideoNode,
"SeedreamV45EditNode": SeedreamV45EditNode,
"SeedreamV5ProEditNode": SeedreamV5ProEditNode,
"SeedVR2UpscaleImageNode": SeedVR2UpscaleImageNode,
"SeedVRUpscaleVideoNode": SeedVRUpscaleVideoNode,
"TopazUpscaleImageNode": TopazUpscaleImageNode,
"Wan25ImageToImageNode": Wan25ImageToImageNode,
"Wan25ImageToVideoNode": Wan25ImageToVideoNode,
}
NODE_DISPLAY_NAME_MAPPINGS = {
"AnyLLMTextNode": "Any LLM Text",
"AnyLLMVisionNode": "Any LLM Vision",
"BriaBackgroundStandardizerNode": "Bria Background Standardizer (Hex Color)",
"BriaReplaceBackgroundNode": "Bria Replace Background",
"Florence2CaptionNode": "Florence-2 Detailed Caption",
"Florence2RegionSelectorNode": "Florence-2 Smart Region Selector",
"FluxKontextMaxMultiImageNode": "Flux Kontext Max Multi-Image Node",
"GPTImage2EditNode": "GPT Image 2 Edit",
"GrokImagineImageQualityEditNode": "Grok Imagine Image Quality Edit",
"IdeogramUpscaleNode": "Ideogram Upscale",
"JuggernautFluxProImg2ImgNode": "Juggernaut Flux Pro Image-to-Image",
"Kling21ImageToVideoNode": "Kling 2.1 Image-to-Video",
"Kling25TurboProImageToVideoNode": "Kling 2.5 Turbo Pro Image-to-Video",
"NanoBananaProEditNode": "Nano Banana Pro Edit Node",
"NanoBananaV2EditNode": "Nano Banana V2 Edit Node",
"PASDUpscalerNode": "PASD Upscaler Node",
"PromptBoxNode": "Prompt Box",
"PromptSplitterNode": "Prompt Splitter",
"SAM3RegionSelectorNode": "SAM 3 Smart Region Selector",
"SeedanceLiteImageToVideoNode": "Seedance Lite Image-to-Video",
"SeedanceProImageToVideoNode": "Seedance Pro Image-to-Video",
"SeedreamV45EditNode": "Seedream V4.5 Edit",
"SeedreamV5ProEditNode": "Seedream V5 Pro Edit",
"SeedVR2UpscaleImageNode": "SeedVR2 Upscale Image",
"SeedVRUpscaleVideoNode": "SeedVR Upscale Video",
"TopazUpscaleImageNode": "Topaz Upscale Image",
"Wan25ImageToImageNode": "Wan 2.5 Image-to-Image",
"Wan25ImageToVideoNode": "Wan 2.5 Image-to-Video",
}
WEB_DIRECTORY = "web"
__all__ = ["NODE_CLASS_MAPPINGS", "NODE_DISPLAY_NAME_MAPPINGS", "WEB_DIRECTORY"]