a
    Ad                     @   s2   d dl mZmZmZ G dd dejZdd ZdS )    )scriptsscripts_postprocessingsharedc                   @   s4   e Zd Zdd Zdd Zdd Zdd Zd	d
 ZdS )ScriptPostprocessingForMainUIc                 C   s   || _ d | _d S N)scriptpostprocessing_controls)selfZscript_postproc r
   K/var/www/html/stable-diffusion-webui/modules/scripts_auto_postprocessing.py__init__   s    z&ScriptPostprocessingForMainUI.__init__c                 C   s   | j jS r   )r   name)r	   r
   r
   r   title	   s    z#ScriptPostprocessingForMainUI.titlec                 C   s   t jS r   )r   AlwaysVisibler	   
is_img2imgr
   r
   r   show   s    z"ScriptPostprocessingForMainUI.showc                 C   s   | j  | _| j S r   )r   uir   valuesr   r
   r
   r   r      s    z ScriptPostprocessingForMainUI.uic                 G   sP   t t| j|}t|j}i |_| jj|fi | |j	
|j |j|_d S r   )dictzipr   r   PostprocessedImageimageinfor   processextra_generation_paramsupdate)r	   pZ	script_ppargs	args_dictppr
   r
   r   postprocess_image   s    z/ScriptPostprocessingForMainUI.postprocess_imageN)__name__
__module____qualname__r   r   r   r   r!   r
   r
   r
   r   r      s
   r   c               	      st   ddl m}  g }tjjD ]V tt fdd| jD d }|d u rDq|fdd}|| j	||j
|j|jd q|S )Nr   )r   c                    s   g | ]}|j j kr|qS r
   )script_classr   ).0xr   r
   r   
<listcomp>#       z9create_auto_preprocessing_script_data.<locals>.<listcomp>c                 S   s   t |  S r   )r   r%   )sr
   r
   r   <lambda>'   r*   z7create_auto_preprocessing_script_data.<locals>.<lambda>)r%   pathbasedirmodule)modulesr   r   opts postprocessing_enable_in_main_uinextiterpostprocessing_scripts_dataappendScriptClassDatar-   r.   r/   )r   resr   constructorr
   r(   r   %create_auto_preprocessing_script_data   s     r:   N)r0   r   r   r   Scriptr   r:   r
   r
   r
   r   <module>   s   