Ë
    ¹ûàgÚ,  ã                   ód   — d dl Z d dlZd dlmZ d dlmZ d dlmZ d dlm	Z	m
Z
 dZdZ G d„ d	«      Zy)
é    N)Úimport_module)ÚImproperlyConfigured)Úcached_property)Úimport_stringÚmodule_has_submoduleÚappsÚmodelsc                   ón   — e Zd ZdZd„ Zd„ Zed„ «       Zed„ «       Z	d„ Z
ed„ «       Zdd„Zdd	„Zd
„ Zd„ Zy)Ú	AppConfigz>Class representing a Django application and its configuration.c                 ó’  — || _         || _        d | _        t        | d«      s|j	                  d«      d   | _        | j
                  j                  «       st        d| j
                  z  «      ‚t        | d«      s| j
                  j                  «       | _	        t        | d«      s| j                  |«      | _        d | _        d | _        y )NÚlabelú.é   z4The app label '%s' is not a valid Python identifier.Úverbose_nameÚpath)ÚnameÚmoduler   ÚhasattrÚ
rpartitionr   Úisidentifierr   Útitler   Ú_path_from_moduler   Úmodels_moduler	   )ÚselfÚapp_nameÚ
app_modules      úP/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/django/apps/config.pyÚ__init__zAppConfig.__init__   s¹   € àˆŒ	ð !ˆŒð ˆŒ	ô �t˜WÔ%Ø!×,Ñ,¨SÓ1°!Ñ4ˆDŒJØ�z‰z×&Ñ&Ô(Ü&ØFÈÏÉÑSóð ô
 �t˜^Ô,Ø $§
¡
× 0Ñ 0Ó 2ˆDÔô �t˜VÔ$Ø×.Ñ.¨zÓ:ˆDŒIð
 "ˆÔð ˆ�ó    c                 óP   — d| j                   j                  ›d| j                  ›d�S )Nú<z: ú>)Ú	__class__Ú__name__r   ©r   s    r   Ú__repr__zAppConfig.__repr__:   s   � Ø!Ÿ^™^×4Ó4°d·j³jÐAÐAr   c                 ó&   — ddl m} |j                  S )Nr   )Úsettings)Údjango.confr(   ÚDEFAULT_AUTO_FIELD)r   r(   s     r   Údefault_auto_fieldzAppConfig.default_auto_field=   s   € å(à×*Ñ*Ð*r   c                 óN   — | j                   j                  t        j                  uS )N)r#   r+   r   r%   s    r   Ú!_is_default_auto_field_overriddenz+AppConfig._is_default_auto_field_overriddenC   s   € à�~‰~×0Ñ0¼	×8TÑ8TÐTÐTr   c                 ó<  — t        t        |dg «      «      }t        |«      dk7  rDt        |dd«      }|�!t        j                  j                  |«      g}nt        t        |«      «      }t        |«      dkD  rt        d|›d|›d�«      ‚|st        d|z  «      ‚|d	   S )
z;Attempt to determine app's filesystem path from its module.Ú__path__é   Ú__file__NzThe app module z$ has multiple filesystem locations (zX); you must configure this app with an AppConfig subclass with a 'path' class attribute.zƒThe app module %r has no filesystem location, you must configure this app with an AppConfig subclass with a 'path' class attribute.r   )ÚlistÚgetattrÚlenÚosr   ÚdirnameÚsetr   )r   r   ÚpathsÚfilenames       r   r   zAppConfig._path_from_moduleG   sª   € ô
 ”W˜V Z°Ó4Ó5ˆÜˆu‹:˜Š?Ü˜v z°4Ó8ˆHØÐ#ÜŸ™Ÿ™¨Ó2Ð3‘ô œS ›ZÓ(�Üˆu‹:˜Š>Ý&ò 5;ºEðCóð ñ
 Ü&ð1à39ñ:óð ð
 �Q‰xˆr   c           
      ó”  — d}d}d}	 t        |«      }t        |t        «      �r|›dt        ›�}t        |«      }t        j                  |t        j
                  «      D ��cg c]&  \  }}t        || «      r|| urt        |dd«      r||f‘Œ( }	}}t        |	«      dk(  r	|	d   d   }n„|	D ��cg c]  \  }}t        |dd«      r||f‘Œ }	}}t        |	«      dkD  r=|	D ��
cg c]  \  }}
t        |«      ‘Œ }}}
t        |›dd	j                  |«      ›d�«      ‚t        |	«      dk(  r|	d   d   }|€| }|}	 |€	 t        |«      }|€¾|€¼|j                  d«      \  }}
}|rš|d   j                  «       r‡t        |«      }t        j                  |t        j
                  «      D ��cg c]   \  }}t        || «      r|| urt        |«      ‘Œ" }}}d
|›d|›d�}|r|dd	j                  |«      z  z  }t!        |«      ‚t        |«       t        |t"        «      st%        d|z  «      ‚|€	 |j&                  }	 t        |«      } |||«      S c c}}w c c}}w c c}
}w # t        $ r Y �Œ.w xY w# t        $ r Y �Œ0w xY wc c}}w # t(        $ r t%        d|z  «      ‚w xY w# t         $ r* t%        d|›d|j*                  ›d|j,                  ›d�«      ‚w xY w)zU
        Factory that creates an app config from an entry in INSTALLED_APPS.
        Nr   ÚdefaultTr0   r   Fz+ declares more than one default AppConfig: z, zModule 'z' does not contain a 'z' class.z Choices are: %s.z#'%s' isn't a subclass of AppConfig.z"'%s' must supply a name attribute.zCannot import 'z'. Check that 'z.name' is correct.)r   r   ÚAPPS_MODULE_NAMEÚinspectÚ
getmembersÚisclassÚ
issubclassr3   r4   ÚreprÚRuntimeErrorÚjoinÚ	Exceptionr   r   ÚisupperÚImportErrorr   r   r   ÚAttributeErrorÚ
__module__Ú__qualname__)ÚclsÚentryÚapp_config_classr   r   Úmod_pathÚmodr   Ú	candidateÚapp_configsÚ_Ú
candidatesÚcls_nameÚmsgs                 r   ÚcreatezAppConfig.createc   sC  € ð  ÐØˆØˆ
ð/	!Ü& uÓ-ˆJô $ JÔ0@ÕAÚ&+Õ-=Ð>�Ü# HÓ-�ô
 ,3×+=Ñ+=¸cÄ7Ç?Á?Ó+S÷á'˜˜iä" 9¨cÔ2Ø%¨SÑ0Ü# I¨y¸$Ô?ð ˜9Ò%ð�ñ ô �{Ó# qÒ(Ø'2°1¡~°aÑ'8Ñ$ð 0;÷#á+˜D )Ü" 9¨i¸Ô?ð ˜yÒ)ð#�Kñ #ô
 ˜;Ó'¨!Ò+Ø@K×%L±W°T¸1¤d¨4¥jÐ%L˜
Ñ%LÜ*â%-¨t¯y©y¸Õ/DðFóð ô ˜[Ó)¨QÒ.Ø+6°q©>¸!Ñ+<Ð(ð  Ð'Ø#&Ð Ø ‘ð Ð#ðÜ#0°Ó#7Ð ð
 ÐÐ"2Ð":ð %*×$4Ñ$4°SÓ$9Ñ!ˆH�a˜Ù˜H Q™K×/Ñ/Ô1ô $ HÓ-�ô ,3×+=Ñ+=¸cÄ7Ç?Á?Ó+S÷á'˜˜iÜ! )¨SÔ1°iÀsÑ6Jô ˜•Jð�
ò ò Úð�ñ ØÐ.°·±¸:Ó1FÑFÑF�CÜ! #Ó&Ð&ô ˜eÔ$ô Ð*¬IÔ6Ü&Ð'LÈuÑ'TÓUÐUð ÐðYØ+×0Ñ0�ð

	Ü& xÓ0ˆJñ   ¨*Ó5Ð5ùóAùó#ùó &MøôE ò 	Úð	ûôf ò Úðüó øô4 "ò YÜ*Ð+OÐRWÑ+WÓXÐXðYûô ò 	Ý&ò Ø$×/Ó/Ø$×1Ó1ð	óð ð	úsS   ˆI Á!+IÂ+IÃIÄ4I# Æ%I3È I9 È-J É	I ÉI É#	I0É/I0É9JÊ3Kc                 óþ   — |r| j                   j                  «        n| j                   j                  «        	 | j                  |j	                  «          S # t
        $ r t        d| j                  ›d|›d�«      ‚w xY w)zŒ
        Return the model with the given case-insensitive model_name.

        Raise LookupError if no model exists with this name.
        zApp 'z' doesn't have a 'z' model.)r   Úcheck_models_readyÚcheck_apps_readyr	   ÚlowerÚKeyErrorÚLookupErrorr   )r   Ú
model_nameÚrequire_readys      r   Ú	get_modelzAppConfig.get_modelà   sl   € ñ Ø�I‰I×(Ñ(Õ*à�I‰I×&Ñ&Ô(ð	Ø—;‘;˜z×/Ñ/Ó1Ñ2Ð2øÜò 	ÝØ9=¿»ÂZÐPóð ð	ús   ¹A Á&A<c              #   óê   K  — | j                   j                  «        | j                  j                  «       D ]8  }|j                  j
                  r|sŒ|j                  j                  r|sŒ5|–— Œ: y­w)a—  
        Return an iterable of models.

        By default, the following models aren't included:

        - auto-created models for many-to-many relations without
          an explicit intermediate table,
        - models that have been swapped out.

        Set the corresponding keyword argument to True to include such models.
        Keyword arguments aren't documented; they're a private API.
        N)r   rW   r	   ÚvaluesÚ_metaÚauto_createdÚswapped)r   Úinclude_auto_createdÚinclude_swappedÚmodels       r   Ú
get_modelszAppConfig.get_modelsñ   s^   è ø€ ð 	�	‰	×$Ñ$Ô&Ø—[‘[×'Ñ'Ó)ò 	ˆEØ�{‰{×'Ò'Ñ0DØØ�{‰{×"Ò"©?ØØ‹Kñ	ùs   ‚A1A3c                 óÔ   — | j                   j                  | j                     | _        t	        | j
                  t        «      r&| j                  ›dt        ›�}t        |«      | _	        y y )Nr   )
r   Ú
all_modelsr   r	   r   r   ÚMODELS_MODULE_NAMEr   r   r   )r   Úmodels_module_names     r   Úimport_modelszAppConfig.import_models  sQ   € ð —i‘i×*Ñ*¨4¯:©:Ñ6ˆŒä §¡Ô-?Ô@Ø,0¯I«IÕ7IÐ!JÐÜ!.Ð/AÓ!BˆDÕð Ar   c                  ó   — y)zT
        Override this method in subclasses to run code when Django starts.
        N© r%   s    r   ÚreadyzAppConfig.ready  s   � r   N)T)FF)r$   rH   rI   Ú__doc__r   r&   r   r+   Úpropertyr-   r   ÚclassmethodrU   r^   rg   rl   ro   rn   r   r   r   r      sl   „ ÙHò(òTBð ñ+ó ð+ð
 ñUó ðUòð8 ñz6ó ðz6óxó"ò*Cór   r   )r=   r5   Ú	importlibr   Údjango.core.exceptionsr   Údjango.utils.functionalr   Údjango.utils.module_loadingr   r   r<   rj   r   rn   r   r   ú<module>rw      s/   ðÛ Û 	Ý #å 7Ý 3ß KàÐ ØÐ ÷Eò Er   