Files
BlueprintCoding-ComfyUI_AID…/MultiIntNode.py
T
Blueprint Coding 88bd6837c4 First push
Currently only a multi int node.
2025-02-15 15:15:47 -07:00

45 lines
1.4 KiB
Python

class MultiInt:
@classmethod
def INPUT_TYPES(cls):
# In Python, just define the maximum possible inputs (20).
optional = {
f"value{i+1}": (
"INT",
{
"default": 0,
"min": -2147483648,
"max": 2147483647,
"step": 1,
"hide": True, # hidden by default, the JS can show them
"forceInput": True,
},
)
for i in range(20)
}
return {
"required": {},
"optional": optional,
}
# Return 20 int outputs, though the JS may remove or hide some
RETURN_TYPES = ("INT",) * 20
RETURN_NAMES = tuple(f"i{i+1}" for i in range(20))
FUNCTION = "process"
CATEGORY = "AIDocsClinicalTools"
UI = "MultiIntNode" # Must match the JS filename "MultiIntNode.js"
def process(self, **kwargs):
# The JS side might only have, say, 'sliderCount' = 5,
# but we still define all 20 in Python. We'll rely on
# the JS to remove extra outputs from the UI.
outputs = []
for i in range(20):
key = f"value{i+1}"
val = kwargs.get(key, 0)
outputs.append(int(val))
return tuple(outputs)
NODE_CLASS_MAPPINGS = {"MultiInt": MultiInt}
NODE_DISPLAY_NAME_MAPPINGS = {"MultiInt": "Multi Int"}