Files

118 lines
4.8 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# -*- coding: utf-8 -*-
# Filename: __init__.py
# Developer: jammyfu
import os
import locale
from .modules.text.i18n import I18n
# 获取当前文件所在目录
EXTENSION_FOLDER = os.path.dirname(os.path.realpath(__file__))
# 导入所有非测试节点类
from .modules.images.mask_preview import MaskPreview
from .modules.images.image_resolution_creator import ImageSizeCreator
from .modules.images.image_resolution_creator import ImageLatentCreator
from .modules.images.image_resolution_creator_plus import ImageSizeCreatorPlus
from .modules.images.image_resolution_creator_plus import ImageLatentCreatorPlus
from .modules.images.dynamic_image_input import DynamicImageCombiner
from .modules.images.dynamic_mask_input import DynamicMaskCombiner
from .modules.images.image_resolution_adjuster import ImageResolutionAdjuster
from .modules.text.text_combiner import TextCombiner
from .modules.text.show_text_plus import ShowTextPlus
from .modules.text.simple_text_input import SimpleTextInput
from .modules.text.multiline_text_input import MultilineTextInput
from .modules.text.remove_empty_lines import RemoveEmptyLinesAndLeadingSpaces
from .modules.switch.switch_node import TextSwitch
from .modules.switch.switch_node import ImageSwitch
from .modules.switch.switch_node import MaskSwitch
from .modules.switch.switch_node import LatentSwitch
from .modules.web.web_image_loader import WebImageLoader
from .modules.images.image_base64_converter import ImageToBase64
from .modules.utils.output_converter import OutputToTextConverter
# 节点类映射
NODE_CLASS_MAPPINGS = {
"PaintingCoder::DynamicImageCombiner": DynamicImageCombiner,
"PaintingCoder::ImageLatentCreator": ImageLatentCreator,
"PaintingCoder::ImageLatentCreatorPlus": ImageLatentCreatorPlus,
"PaintingCoder::ImageResolutionAdjuster": ImageResolutionAdjuster,
"PaintingCoder::ImageSizeCreator": ImageSizeCreator,
"PaintingCoder::ImageSizeCreatorPlus": ImageSizeCreatorPlus,
"PaintingCoder::ImageToBase64": ImageToBase64,
"PaintingCoder::DynamicMaskCombiner": DynamicMaskCombiner,
"PaintingCoder::MaskPreview": MaskPreview,
"PaintingCoder::ImageSwitch": ImageSwitch,
"PaintingCoder::LatentSwitch": LatentSwitch,
"PaintingCoder::MaskSwitch": MaskSwitch,
"PaintingCoder::TextSwitch": TextSwitch,
"PaintingCoder::MultilineTextInput": MultilineTextInput,
"PaintingCoder::OutputToTextConverter": OutputToTextConverter,
"PaintingCoder::RemoveEmptyLinesAndLeadingSpaces": RemoveEmptyLinesAndLeadingSpaces,
"PaintingCoder::ShowTextPlus": ShowTextPlus,
"PaintingCoder::SimpleTextInput": SimpleTextInput,
"PaintingCoder::TextCombiner": TextCombiner,
"PaintingCoder::WebImageLoader": WebImageLoader,
}
# 节点显示名称映射
NODE_DISPLAY_NAME_MAPPINGS = {
# Image Nodes
"PaintingCoder::DynamicImageCombiner": "Dynamic Image Input 🖼️",
"PaintingCoder::ImageLatentCreator": "Image Latent Creator 🎨",
"PaintingCoder::ImageLatentCreatorPlus": "Image Latent Creator Plus ✨",
"PaintingCoder::ImageResolutionAdjuster": "Image Resolution Adjuster 📐",
"PaintingCoder::ImageSizeCreator": "Image Size Creator 📏",
"PaintingCoder::ImageSizeCreatorPlus": "Image Size Creator Plus ✨",
"PaintingCoder::ImageToBase64": "Image To Base64 🎨",
# Mask Nodes
"PaintingCoder::DynamicMaskCombiner": "Dynamic Mask Input 🎭",
"PaintingCoder::MaskPreview": "Mask Preview 🎭",
# Switch Nodes
"PaintingCoder::ImageSwitch": "Image Switch 🔄",
"PaintingCoder::LatentSwitch": "Latent Switch 🔄",
"PaintingCoder::MaskSwitch": "Mask Switch 🔄",
"PaintingCoder::TextSwitch": "Text Switch 🔄",
# Text Nodes
"PaintingCoder::MultilineTextInput": "Multiline Text Input 📝",
"PaintingCoder::OutputToTextConverter": "Output To Text Converter 📝",
"PaintingCoder::RemoveEmptyLinesAndLeadingSpaces": "Remove Empty Lines And Leading Spaces 📝",
"PaintingCoder::ShowTextPlus": "Show Text Plus 📝",
"PaintingCoder::SimpleTextInput": "Simple Text Input 📝",
"PaintingCoder::TextCombiner": "Text Combiner ✍️",
# Web Nodes
"PaintingCoder::WebImageLoader": "Web Image Loader 🌐(URL Or Base64)",
}
# Web 目录配置
WEB_DIRECTORY = "./web"
print(f"Loading web directory from: {WEB_DIRECTORY}")
# 导出必要的变量
__all__ = ['NODE_CLASS_MAPPINGS', 'NODE_DISPLAY_NAME_MAPPINGS']
# 添加 Web 目录到 ComfyUI
def get_web_dirs():
return [WEB_DIRECTORY]
def init():
try:
# 获取系统语言设置
system_lang = locale.getdefaultlocale()[0]
if system_lang:
lang_code = system_lang.split('_')[0].lower()
I18n.set_language(lang_code)
except:
# 如果获取失败,默认使用英文
I18n.set_language('en')