| |
| from __future__ import annotations |
|
|
| from comfy.comfy_types.node_typing import ComfyNodeABC, InputTypeDict, IO |
|
|
|
|
| class String(ComfyNodeABC): |
| @classmethod |
| 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): |
| @classmethod |
| 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): |
| @classmethod |
| 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): |
| @classmethod |
| 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", |
| } |
|
|