o
    i                     @  sb   d dl mZ d dlmZmZ d dlmZ d dlmZ G dd dej	Z
G dd deZd	d
 ZdS )    )annotations)ComfyExtensionio)
CurveInput)overridec                   @  s(   e Zd Zedd Zedd	ddZdS )
CurveEditorc              	   C  s6   t jdddt jdt jjdddgt jdgdS )	Nr   zCurve Editorutilscurve	histogramT)optional)node_iddisplay_namecategoryinputsoutputs)r   SchemaCurveInput	HistogramOutput)cls r   6/mnt/c/Users/fbmor/ComfyUI/comfy_extras/nodes_curve.pydefine_schema	   s   

zCurveEditor.define_schemaNreturnio.NodeOutputc                 C  sL   t |}i }|d urt|tr|nt||d< |r!tj||dS t|S )Nr
   )ui)r   from_raw
isinstancelistr   
NodeOutput)r   r	   r
   resultr   r   r   r   execute   s
   
zCurveEditor.executeN)r   r   )__name__
__module____qualname__classmethodr   r"   r   r   r   r   r      s
    
r   c                   @  s   e Zd Zedd ZdS )CurveExtensionc                   s   t gS r#   )r   )selfr   r   r   get_node_list$   s   zCurveExtension.get_node_listN)r$   r%   r&   r   r*   r   r   r   r   r(   #   s    r(   c                     s   t  S r#   )r(   r   r   r   r   comfy_entrypoint)   s   r+   N)
__future__r   comfy_api.latestr   r   comfy_api.inputr   typing_extensionsr   	ComfyNoder   r(   r+   r   r   r   r   <module>   s    