Make dynamic inputs work better

This commit is contained in:
StableLlama
2025-05-29 23:38:01 +02:00
parent d5ee9bc56b
commit 043efe8e10
7 changed files with 125 additions and 131 deletions
@@ -15,6 +15,8 @@ except:
ComfyNodeABC = object
ExecutionBlocker = lambda x: x
from ._dynamic_input import ContainsDynamicDict
class IfElse(ComfyNodeABC):
"""
@@ -70,11 +72,11 @@ class IfElifElse(ComfyNodeABC):
"if": (IO.BOOLEAN, {"forceInput": True}),
"then": (IO.ANY, {"lazy": True}),
},
"optional": {
"optional": ContainsDynamicDict({
"elif_0": (IO.BOOLEAN, {"forceInput": True, "lazy": True, "_dynamic": "number", "_dynamicGroup": 0}),
"then_0": (IO.ANY, {"lazy": True, "_dynamic": "number", "_dynamicGroup": 0}),
"else": (IO.ANY, {"lazy": True}),
}
})
}
RETURN_TYPES = (IO.ANY,)
@@ -152,10 +154,10 @@ class SwitchCase(ComfyNodeABC):
@classmethod
def INPUT_TYPES(cls):
return {
"required": {
"required": ContainsDynamicDict({
"selector": (IO.INT, {"default": 0, "min": 0}),
"case_0": (IO.ANY, {"lazy": True, "_dynamic": "number"}),
},
}),
"optional": {
"default": (IO.ANY, {"lazy": True}),
}