o
    þÞhV  ã                   @   s�   d dl mZ d dlmZ d dlmZ eƒ ZG dd„ deƒZedd�Zedd�Z	edd�Z
edd�Zedd�Zedd�Zedd�Zeƒ Zeƒ ZdS )	é    )Úpartial)Úmake_model_tuple)ÚSignalc                       s8   e Zd ZdZdd„ Zd
‡ fdd„	Zd‡ fdd	„	Z‡  ZS )ÚModelSignalzz
    Signal subclass that allows the sender to be lazily specified as a string
    of the `app_label.ModelName` form.
    c                 K   sN   ddl m} t||fi |¤Ž}t|tƒr#|p|j}| |t|ƒ¡ d S ||ƒS )Nr   )ÚOptions)Údjango.db.models.optionsr   r   Ú
isinstanceÚstrÚdefault_appsÚlazy_model_operationr   )ÚselfÚmethodÚappsÚreceiverÚsenderÚkwargsr   Úpartial_method© r   úX/var/www/html/premium_crap/venv/lib/python3.10/site-packages/django/db/models/signals.pyÚ_lazy_method   s   

zModelSignal._lazy_methodNTc                    s   | j tƒ j|||||d� d S )N)ÚweakÚdispatch_uid)r   ÚsuperÚconnect)r   r   r   r   r   r   ©Ú	__class__r   r   r      s   
úzModelSignal.connectc                    s   | j tƒ j||||d�S )N)r   )r   r   Ú
disconnect)r   r   r   r   r   r   r   r   r   $   s   ÿzModelSignal.disconnect)NTNN)NNNN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   Ú__classcell__r   r   r   r   r   	   s
    
r   T)Úuse_cachingN)Ú	functoolsr   Údjango.db.models.utilsr   Údjango.dispatchr   Úclass_preparedr   Úpre_initÚ	post_initÚpre_saveÚ	post_saveÚ
pre_deleteÚpost_deleteÚm2m_changedÚpre_migrateÚpost_migrater   r   r   r   Ú<module>   s    
!






