Files
FizzleDorf-ComfyUI_FizzNodes/__init__.py
T
2023-11-05 14:06:32 +01:00

108 lines
4.1 KiB
Python

# Made by Davemane42#0042 for ComfyUI
import os
import subprocess
import importlib.util
import sys
import filecmp
import shutil
import __main__
python = sys.executable
extentions_folder = os.path.join(os.path.dirname(os.path.realpath(__main__.__file__)),
"web" + os.sep + "extensions" + os.sep + "FizzleDorf")
javascript_folder = os.path.join(os.path.dirname(os.path.realpath(__file__)), "javascript")
if not os.path.exists(extentions_folder):
print('Making the "web\extensions\FizzleDorf" folder')
os.makedirs(extentions_folder)
result = filecmp.dircmp(javascript_folder, extentions_folder)
if result.left_only or result.diff_files:
print('Update to javascripts files detected')
file_list = list(result.left_only)
file_list.extend(x for x in result.diff_files if x not in file_list)
for file in file_list:
print(f'Copying {file} to extensions folder')
src_file = os.path.join(javascript_folder, file)
dst_file = os.path.join(extentions_folder, file)
if os.path.exists(dst_file):
os.remove(dst_file)
#print("disabled")
shutil.copy(src_file, dst_file)
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}...")
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 .WaveNodes import Lerp, SinWave, InvSinWave, CosWave, InvCosWave, SquareWave, SawtoothWave, TriangleWave, AbsCosWave, AbsSinWave
from .ScheduledNodes import (
ValueSchedule, PromptSchedule, PromptScheduleNodeFlow, PromptScheduleNodeFlowEnd, PromptScheduleEncodeSDXL,
StringSchedule, BatchPromptSchedule, BatchValueSchedule, BatchPromptScheduleEncodeSDXL, BatchStringSchedule,
BatchValueScheduleLatentInput, BatchPromptScheduleEncodeSDXLLatentInput, BatchPromptScheduleLatentInput
#, BatchPromptScheduleNodeFlowEnd #, BatchGLIGENSchedule
)
from .FrameNodes import FrameConcatenate, InitNodeFrame, NodeFrame, StringConcatenate
NODE_CLASS_MAPPINGS = {
"Lerp": Lerp,
"SinWave": SinWave,
"InvSinWave": InvSinWave,
"CosWave": CosWave,
"InvCosWave": InvCosWave,
"SquareWave":SquareWave,
"SawtoothWave": SawtoothWave,
"TriangleWave": TriangleWave,
"AbsCosWave": AbsCosWave,
"AbsSinWave": AbsSinWave,
"PromptSchedule": PromptSchedule,
"ValueSchedule": ValueSchedule,
"PromptScheduleNodeFlow": PromptScheduleNodeFlow,
"PromptScheduleNodeFlowEnd": PromptScheduleNodeFlowEnd,
"PromptScheduleEncodeSDXL":PromptScheduleEncodeSDXL,
"StringSchedule":StringSchedule,
"BatchPromptSchedule": BatchPromptSchedule,
"BatchValueSchedule": BatchValueSchedule,
"BatchPromptScheduleEncodeSDXL": BatchPromptScheduleEncodeSDXL,
"BatchStringSchedule": BatchStringSchedule,
"BatchValueScheduleLatentInput": BatchValueScheduleLatentInput,
"BatchPromptScheduleSDXLLatentInput":BatchPromptScheduleEncodeSDXLLatentInput,
"BatchPromptScheduleLatentInput":BatchPromptScheduleLatentInput,
#"BatchPromptScheduleNodeFlowEnd":BatchPromptScheduleNodeFlowEnd,
#"BatchGLIGENSchedule": BatchGLIGENSchedule,
"StringConcatenate":StringConcatenate,
"Init FizzFrame":InitNodeFrame,
"FizzFrame":NodeFrame,
"FizzFrameConcatenate":FrameConcatenate,
}
NODE_DISPLAY_NAME_MAPPINGS = {
"PromptScheduleEncodeSDXL": "PromptScheduleSDXL",
"BatchPromptScheduleEncodeSDXL": "BatchPromptScheduleSDXL",
"BatchStringSchedule": "BatchStringSchedule",
"BatchValueScheduleLatentInput": "BatchValueSchedule(LatentInput)",
"BatchPromptScheduleSDXLLatentInput": "BatchPromptScheduleSDXL(LatentInput)",
"BatchPromptScheduleLatentInput": "BatchPromptSchedule(LatentInput)",
}
print('\033[34mFizzleDorf Custom Nodes: \033[92mLoaded\033[0m')