Spaces:
Running
on
Zero
Running
on
Zero
| # Primitive nodes that are evaluated at backend. | |
| from __future__ import annotations | |
| from comfy.comfy_types.node_typing import ComfyNodeABC, InputTypeDict, IO | |
| class String(ComfyNodeABC): | |
| def INPUT_TYPES(cls) -> InputTypeDict: | |
| return { | |
| "required": {"value": (IO.STRING, {})}, | |
| } | |
| RETURN_TYPES = (IO.STRING,) | |
| FUNCTION = "execute" | |
| CATEGORY = "utils/primitive" | |
| def execute(self, value: str) -> tuple[str]: | |
| return (value,) | |
| class Int(ComfyNodeABC): | |
| def INPUT_TYPES(cls) -> InputTypeDict: | |
| return { | |
| "required": {"value": (IO.INT, {"control_after_generate": True})}, | |
| } | |
| RETURN_TYPES = (IO.INT,) | |
| FUNCTION = "execute" | |
| CATEGORY = "utils/primitive" | |
| def execute(self, value: int) -> tuple[int]: | |
| return (value,) | |
| class Float(ComfyNodeABC): | |
| def INPUT_TYPES(cls) -> InputTypeDict: | |
| return { | |
| "required": {"value": (IO.FLOAT, {})}, | |
| } | |
| RETURN_TYPES = (IO.FLOAT,) | |
| FUNCTION = "execute" | |
| CATEGORY = "utils/primitive" | |
| def execute(self, value: float) -> tuple[float]: | |
| return (value,) | |
| class Boolean(ComfyNodeABC): | |
| def INPUT_TYPES(cls) -> InputTypeDict: | |
| return { | |
| "required": {"value": (IO.BOOLEAN, {})}, | |
| } | |
| RETURN_TYPES = (IO.BOOLEAN,) | |
| FUNCTION = "execute" | |
| CATEGORY = "utils/primitive" | |
| def execute(self, value: bool) -> tuple[bool]: | |
| return (value,) | |
| NODE_CLASS_MAPPINGS = { | |
| "PrimitiveString": String, | |
| "PrimitiveInt": Int, | |
| "PrimitiveFloat": Float, | |
| "PrimitiveBoolean": Boolean, | |
| } | |
| NODE_DISPLAY_NAME_MAPPINGS = { | |
| "PrimitiveString": "String", | |
| "PrimitiveInt": "Int", | |
| "PrimitiveFloat": "Float", | |
| "PrimitiveBoolean": "Boolean", | |
| } | |