diff --git a/py/power_puter.py b/py/power_puter.py index 5e1f57c..838ef57 100644 --- a/py/power_puter.py +++ b/py/power_puter.py @@ -182,11 +182,15 @@ class RgthreePowerPuter: value = float(value) elif output == 'BOOL': value = bool(value) - elif isinstance(value, (dict, list)): - value = json.dumps(value, indent=2) - else: - value = str(value) - + elif output == 'STRING': + if isinstance(value, (dict, list)): + value = json.dumps(value, indent=2) + else: + value = str(value) + elif output == '*': + # Do nothing, the output will be passed as-is. This could be anything and it's up to the + # user to control the intended output, like passing through an input value, etc. + pass return (value,) diff --git a/pyproject.toml b/pyproject.toml index ad912bf..545821a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "rgthree-comfy" description = "Making ComfyUI more comfortable." -version = "1.0.2505241559" +version = "1.0.2505241617" license = { file = "LICENSE" } dependencies = [] diff --git a/src_web/comfyui/power_puter.ts b/src_web/comfyui/power_puter.ts index 7fee68a..dd87660 100644 --- a/src_web/comfyui/power_puter.ts +++ b/src_web/comfyui/power_puter.ts @@ -55,7 +55,7 @@ class RgthreePowerPuter extends RgthreeBaseServerNode { this.scheduleStabilize(); }, { - values: ["INT", "FLOAT", "STRING", "BOOL"], + values: ["INT", "FLOAT", "STRING", "BOOL", "*"], }, ); this.expressionWidget = ComfyWidgets["STRING"]( diff --git a/web/comfyui/power_puter.js b/web/comfyui/power_puter.js index 6377b87..b460666 100644 --- a/web/comfyui/power_puter.js +++ b/web/comfyui/power_puter.js @@ -33,7 +33,7 @@ class RgthreePowerPuter extends RgthreeBaseServerNode { this.outputTypeWidget = this.addWidget("combo", "output", "STRING", (...args) => { this.scheduleStabilize(); }, { - values: ["INT", "FLOAT", "STRING", "BOOL"], + values: ["INT", "FLOAT", "STRING", "BOOL", "*"], }); this.expressionWidget = ComfyWidgets["STRING"](this, "code", ["STRING", { multiline: true }], app).widget; }