diff --git a/comfy_extras/nodes_color.py b/comfy_extras/nodes_color.py index 01a05035e..688254e4e 100644 --- a/comfy_extras/nodes_color.py +++ b/comfy_extras/nodes_color.py @@ -7,29 +7,29 @@ class ColorToRGBInt(io.ComfyNode): def define_schema(cls) -> io.Schema: return io.Schema( node_id="ColorToRGBInt", - display_name="Color to RGB Int", + display_name="Color Picker", category="utilities", - description="Convert a color to a RGB integer value.", + description="Return a color RGB integer value and hexadecimal representation.", inputs=[ io.Color.Input("color"), ], outputs=[ io.Int.Output(display_name="rgb_int"), + io.Color.Output(display_name="hex") ], ) @classmethod - def execute( - cls, - color: str, - ) -> io.NodeOutput: + def execute(cls, color: str) -> io.NodeOutput: # expect format #RRGGBB if len(color) != 7 or color[0] != "#": raise ValueError("Color must be in format #RRGGBB") r = int(color[1:3], 16) g = int(color[3:5], 16) b = int(color[5:7], 16) - return io.NodeOutput(r * 256 * 256 + g * 256 + b) + + rgb_int = r * 256 * 256 + g * 256 + b + return io.NodeOutput(rgb_int, color) class ColorExtension(ComfyExtension): diff --git a/comfy_extras/nodes_primitive.py b/comfy_extras/nodes_primitive.py index 559753fc1..c44b09098 100644 --- a/comfy_extras/nodes_primitive.py +++ b/comfy_extras/nodes_primitive.py @@ -97,24 +97,6 @@ class Boolean(io.ComfyNode): return io.NodeOutput(value) -class Color(io.ComfyNode): - @classmethod - def define_schema(cls): - return io.Schema( - node_id="PrimitiveColor", - display_name="Color", - category="utilities/primitive", - inputs=[ - io.Color.Input("value", default="#ffffff"), - ], - outputs=[io.Color.Output()], - ) - - @classmethod - def execute(cls, value: str) -> io.NodeOutput: - return io.NodeOutput(value) - - class PrimitivesExtension(ComfyExtension): @override async def get_node_list(self) -> list[type[io.ComfyNode]]: @@ -124,7 +106,6 @@ class PrimitivesExtension(ComfyExtension): Int, Float, Boolean, - Color, ] async def comfy_entrypoint() -> PrimitivesExtension: