代码拉取完成,页面将自动刷新
# 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,
ImageBatchFromValueSchedule
#, BatchPromptScheduleNodeFlowEnd #, BatchGLIGENSchedule
)
from .FrameNodes import FrameConcatenate, InitNodeFrame, NodeFrame, StringConcatenate
from .HelperNodes import ConcatStringSingle, convertKeyframeKeysToBatchKeys, CalculateFrameOffset
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,
"ImageBatchFromValueSchedule":ImageBatchFromValueSchedule,
#"BatchPromptScheduleNodeFlowEnd":BatchPromptScheduleNodeFlowEnd,
#"BatchGLIGENSchedule": BatchGLIGENSchedule,
"StringConcatenate":StringConcatenate,
"Init FizzFrame":InitNodeFrame,
"FizzFrame":NodeFrame,
"FizzFrameConcatenate":FrameConcatenate,
"ConcatStringSingle": ConcatStringSingle,
"convertKeyframeKeysToBatchKeys": convertKeyframeKeysToBatchKeys,
"CalculateFrameOffset":CalculateFrameOffset,
}
NODE_DISPLAY_NAME_MAPPINGS = {
"Lerp": "Lerp 📅🅕🅝",
"SinWave": "SinWave 📅🅕🅝",
"InvSinWave": "InvSinWave 📅🅕🅝",
"CosWave": "CosWave 📅🅕🅝",
"InvCosWave": "InvCosWave 📅🅕🅝",
"SquareWave":"SquareWave 📅🅕🅝",
"SawtoothWave": "SawtoothWave 📅🅕🅝",
"TriangleWave": "TriangleWave 📅🅕🅝",
"AbsCosWave": "AbsCosWave 📅🅕🅝",
"AbsSinWave": "AbsSinWave 📅🅕🅝",
"PromptSchedule": "Prompt Schedule 📅🅕🅝",
"ValueSchedule": "Value Schedule 📅🅕🅝",
"PromptScheduleNodeFlow": "Prompt Schedule NodeFlow 📅🅕🅝",
"PromptScheduleNodeFlowEnd": "Prompt Schedule NodeFlow End 📅🅕🅝",
"StringSchedule":"String Schedule 📅🅕🅝",
"StringConcatenate":"String Concatenate 📅🅕🅝",
"Init FizzFrame":"Init Node Frame 📅🅕🅝",
"FizzFrame":"Node Frame 📅🅕🅝",
"FizzFrameConcatenate":"Frame Concatenate 📅🅕🅝",
"BatchPromptSchedule": "Batch Prompt Schedule 📅🅕🅝",
"BatchValueSchedule": "Batch Value Schedule 📅🅕🅝",
"PromptScheduleEncodeSDXL": "Prompt Schedule SDXL 📅🅕🅝",
"BatchPromptScheduleEncodeSDXL": "Batch Prompt Schedule SDXL 📅🅕🅝",
"BatchStringSchedule": "Batch String Schedule 📅🅕🅝",
"BatchValueScheduleLatentInput": "Batch Value Schedule (Latent Input) 📅🅕🅝",
"BatchPromptScheduleSDXLLatentInput": "Batch Prompt Schedule SDXL (Latent Input) 📅🅕🅝",
"BatchPromptScheduleLatentInput": "Batch Prompt Schedule (Latent Input) 📅🅕🅝",
"ImageBatchFromValueSchedule":"Image Batch From Value Schedule 📅🅕🅝",
"ConcatStringSingle": "Concat String (Single) 📅🅕🅝",
"convertKeyframeKeysToBatchKeys":"Keyframe Keys To Batch Keys 📅🅕🅝",
"SelectFrameNumber":"Select Frame Number 📅🅕🅝",
"CalculateFrameOffset":"Calculate Frame Offset 📅🅕🅝",
}
print('\033[34mFizzleDorf Custom Nodes: \033[92mLoaded\033[0m')
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。