Add files via upload

This commit is contained in:
mittimi
2026-02-07 21:06:04 +09:00
committed by GitHub
parent 47a89d2719
commit db7e0e1de8
+130
View File
@@ -3,9 +3,74 @@ import comfy.sd
from comfy.cli_args import args
import folder_paths
import os
import re
import toml
import json
my_directory_path = os.path.dirname((os.path.abspath(__file__)))
presets_path_wh = os.path.join(my_directory_path, "presets/width_height/presets.toml")
preset_data_wh = ""
with open(presets_path_wh, 'r') as f:
preset_data_wh = toml.load(f)
wh_list = re.findall(r"\b\d+x\d+\b", preset_data_wh['wh'])
# ###################################################################
# Input
# ###################################################################
class WidthHeightMittimi:
@classmethod
def INPUT_TYPES(s):
return {"required": {
"Width": ("INT", {"default": 512, "min": 1, "max": 2147483647} ),
"Height": ("INT", {"default": 512, "min": 1, "max": 2147483647} ),
},
"optional": {
"preset": (wh_list, ),
},
"hidden": {"node_id": "UNIQUE_ID" }
}
RETURN_TYPES = ("INT", "INT", )
RETURN_NAMES = ("width", "height", )
FUNCTION = "widthHeightMittimi"
CATEGORY = "mittimiTools"
def widthHeightMittimi(self, Width, Height, node_id, preset=[], ):
return(Width, Height, )
class DaisyChainStringMittimi:
@classmethod
def INPUT_TYPES(s):
return {
"required": {
"add_first": ("STRING", ),
"text": ("STRING", {"multiline": True}),
},
"optional": {
"add_last": ("STRING", ),
},
}
RETURN_TYPES = ("STRING", )
RETURN_NAMES = ("text", )
FUNCTION = "daisyChainStringMittimi"
CATEGORY = "mittimiTools"
def daisyChainStringMittimi(self, text, add_first="", add_last="", ):
return(add_first + text + add_last, )
# ###################################################################
# IO
# ###################################################################
class SaveLatentToInputFolderMittimi:
SEARCH_ALIASES = ["export latent"]
@@ -62,13 +127,78 @@ class SaveLatentToInputFolderMittimi:
return { "ui": { "latents": results } }
# ###################################################################
# Logic
# ###################################################################
class AnyType(str):
def __ne__(self, __value: object) -> bool:
return False
anytype = AnyType("*")
class AllowPassMittimi:
@classmethod
def INPUT_TYPES(cls):
return {
"required": {
"Pass": ("BOOLEAN", {"default": True}),
"AnyData": (anytype,),
},
}
RETURN_TYPES = (anytype,)
RETURN_NAMES = ("AnyData",)
FUNCTION = "allowPassMittimi"
CATEGORY = "mittimiTools"
def allowPassMittimi(self, Pass, AnyData):
return_data = None
if Pass:
return_data = AnyData
return (return_data, )
class CompareLengthsMittimi:
@classmethod
def INPUT_TYPES(s):
return {"required": {
"Width": ("INT", {"default": 512, "min": 1, "max": 2147483647} ),
"Height": ("INT", {"default": 512, "min": 1, "max": 2147483647} ),
},
}
RETURN_TYPES = ("INT", "INT", )
RETURN_NAMES = ("long", "short", )
FUNCTION = "compareLengthsMittimi"
CATEGORY = "mittimiTools"
def compareLengthsMittimi(self, Width, Height, ):
longlength = Width
shortlength = Height
if (Height > Width):
longlength = Height
shortlength = Width
return(longlength, shortlength, )
NODE_CLASS_MAPPINGS = {
"WidthHeightMittimi": WidthHeightMittimi,
"DaisyChainStringMittimi": DaisyChainStringMittimi,
"SaveLatentToInputFolderMittimi": SaveLatentToInputFolderMittimi,
"AllowPassMittimi": AllowPassMittimi,
"CompareLengthsMittimi": CompareLengthsMittimi,
}
NODE_DISPLAY_NAME_MAPPINGS = {
"WidthHeightMittimi": "WidthHeight",
"DaisyChainStringMittimi": "DaisyChainString",
"SaveLatentToInputFolderMittimi": "SaveLatentToInputFolder",
"AllowPassMittimi": "AllowPass",
"CompareLengthsMittimi": "CompareLengths",
}