Files
shadowcz007-comfyui-mixlab-…/__init__.py
T
2023-11-23 22:58:32 +08:00

64 lines
2.0 KiB
Python

#
import os
import subprocess
import importlib.util
import sys
python = sys.executable
def is_installed(package, package_overwrite=None):
try:
spec = importlib.util.find_spec(package)
except ModuleNotFoundError:
pass
package = package_overwrite or package
if spec is None:
print(f"Installing {package}...")
# 清华源 -i https://pypi.tuna.tsinghua.edu.cn/simple
command = f'"{python}" -m pip install {package}'
result = subprocess.run(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True, env=os.environ)
if result.returncode != 0:
print(f"Couldn't install\nCommand: {command}\nError code: {result.returncode}")
# 导入节点
from .PromptNode import RandomPrompt,RunWorkflow
from .ImageNode import TransparentImage,LoadImagesFromPath,SmoothMask,FeatheredMask,SplitLongMask,ImagesCrop
from .Vae import VAELoader,VAEDecode
from .ScreenShareNode import ScreenShareNode
# 要导出的所有节点及其名称的字典
# 注意:名称应全局唯一
NODE_CLASS_MAPPINGS = {
"RandomPrompt":RandomPrompt,
"TransparentImage":TransparentImage,
"LoadImagesFromPath":LoadImagesFromPath,
"SplitLongMask":SplitLongMask,
"FeatheredMask":FeatheredMask,
"SmoothMask":SmoothMask,
"ImagesCrop":ImagesCrop,
"VAELoaderConsistencyDecoder":VAELoader,
"VAEDecodeConsistencyDecoder":VAEDecode,
"ScreenShare":ScreenShareNode
# "KandinskyModelLoad":KandinskyModelLoad,
# "KandinskyModel":KandinskyModel
}
# 一个包含节点友好/可读的标题的字典
NODE_DISPLAY_NAME_MAPPINGS = {
"RandomPrompt": "Random Prompt #Example Node",
"SplitLongMask":"Splitting a long image into sections",
"VAELoaderConsistencyDecoder":"Consistency Decoder Loader",
"VAEDecodeConsistencyDecoder":"Consistency Decoder Decode"
}
# web ui的节点功能
WEB_DIRECTORY = "./web"
print('--------------')
print('\033[34mMixlab Custom Nodes: \033[92mLoaded\033[0m')
print('--------------')