108 lines
4.1 KiB
Python
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')
|