a
    Ad|                     @   s2   d dl mZmZ d dlmZ G dd dejZdS )    )extra_networksshared)hypernetworkc                       s,   e Zd Z fddZdd Zdd Z  ZS )ExtraNetworkHypernetc                    s   t  d d S )Nhypernet)super__init__)self	__class__ G/var/www/html/stable-diffusion-webui/modules/extra_networks_hypernet.pyr      s    zExtraNetworkHypernet.__init__c                    s   t jj  dkrv t jv rvt fdd|D svd  dt jj dfdd|jD |_|tj	 t jjgd	 g }g }|D ]D}|j
sJ ||j
d
  |t|j
dkrt|j
d nd qt|| d S )NNonec                 3   s    | ]}|j d   kr|V  qdS )r   Nitems).0x)
additionalr   r   	<genexpr>       z0ExtraNetworkHypernet.activate.<locals>.<genexpr>z
<hypernet::>c                    s   g | ]}|   qS r   r   )r   prompt)hypernet_prompt_textr   r   
<listcomp>   r   z1ExtraNetworkHypernet.activate.<locals>.<listcomp>r   r      g      ?)r   optssd_hypernetworkhypernetworksany!extra_networks_default_multiplierall_promptsappendr   ExtraNetworkParamsr   lenfloatr   load_hypernetworks)r	   pparams_listnamesmultipliersparamsr   )r   r   r   activate	   s    (
(zExtraNetworkHypernet.activatec                 C   s   d S )Nr   )r	   r'   r   r   r   
deactivate   s    zExtraNetworkHypernet.deactivate)__name__
__module____qualname__r   r,   r-   __classcell__r   r   r
   r   r      s   r   N)modulesr   r   modules.hypernetworksr   ExtraNetworkr   r   r   r   r   <module>   s   