
    hu)                     f    d dl Z d dlmZ  G d d      Z G d de      Z G d de      Z e       Zy)	    N)settingsc                       e Zd Zy)BaseSettingsN)__name__
__module____qualname__     D/home/dcms/DCMS/lib/python3.12/site-packages/easy_thumbnails/conf.pyr   r      s    r
   r   c                   X     e Zd ZdZddZd Zd Z eee      Zd Z	 fdZ
 fdZ xZS )	AppSettingsa
  
    A holder for app-specific settings.

    When :attr:`isolated` is ``False`` (the default) the holder returns
    attributes from the project's setting module, falling back to the default
    attributes provided in this module if the attribute wasn't found.
    c                 .    || _         i | _        g | _        y N)isolated_changed_added)selfr   argskwargss       r   __init__zAppSettings.__init__   s     r
   c                     | j                   S r   )	_isolated)r   s    r   get_isolatedzAppSettings.get_isolated   s    ~~r
   c                 4    |rt               | _        || _        y r   )r   _isolated_overridesr   )r   values     r   set_isolatedzAppSettings.set_isolated   s    '3~D$r
   c                     | j                   j                         D ]  \  }}t        t        ||        | j                  D ]  }t        t        |        i | _         g | _        | j                  rt               | _        yy)z6
        Revert any changes made to settings.
        N)	r   itemssetattrdjango_settingsr   delattrr   r   r   )r   attrr   s      r   revertzAppSettings.revert!   sq      ==..0 	2KD%OT51	2KK 	+DOT*	+=='3~D$ r
   c                 F   ||j                         k(  r4| j                  r	 t        | j                  |      S 	 t        t
        |      S 	 t        |   |      S # t        $ r Y w xY w# t        $ r Y *w xY w# t        $ r  | j                  s t        t
        |      cY S w xY wr   )upperr   getattrr   AttributeErrorr!   super__getattribute__)r   r#   	__class__s     r   r*   zAppSettings.__getattribute__.   s    4::<}}"4#;#;TBB"?D99	27+D11 & 
 &   	2==?D11	2s4   A A( 
A7 	A%$A%(	A43A47&B B c                    ||j                         k(  r}| j                  r'	 t        |   |       t	        | j
                  ||      S || j                  vr+	 | j                  j                  |t        t        |             t	        t        ||      S t        | 5  ||      S # t        $ r Y ew xY w# t        $ r | j                  j                  |       Y Vw xY wr   )r&   r   r)   r*   r    r   r(   r   r   
setdefaultr'   r!   append__setattr__)r   r#   r   r+   s      r   r/   zAppSettings.__setattr__A   s    4::<}}JG,T2 #4#;#;T5II 4;;&-MM,,got<> ?D%88w"4// &  & -KK&&t,-s#   B" *B1 "	B.-B.1$CC)F)r   r   r   __doc__r   r   r   propertyr   r$   r*   r/   __classcell__)r+   s   @r   r   r   	   s9    

 l3H62&0 0r
   r   c                       e Zd ZdZdZ	 dZ	 dZ	 dZ	 dZ	 dZ		 dZ
	 dZ	 dZ	 dZ	 dZ	 d	Z	 d
Z	 dZ	 dZ	 dZ	 dZ	 d	Z	 d	Z	 dZ	 ddiZ	 ddiddidZy	)Settingsz
    These default settings for easy-thumbnails can be specified in your Django
    project's settings module to alter the behaviour of easy-thumbnails.
    Fz2easy_thumbnails.storage.ThumbnailFileSystemStorageeasy_thumbnails U   d   jpgNpngzeasy_thumbnails.namers.default)z%easy_thumbnails.processors.colorspacez#easy_thumbnails.processors.autocropz)easy_thumbnails.processors.scale_and_cropz"easy_thumbnails.processors.filtersz%easy_thumbnails.processors.background)z+easy_thumbnails.source_generators.pil_imagez+easy_thumbnails.source_generators.vil_imagesize)P   r<   quality)JPEGWEBP)r   r   r   r0   THUMBNAIL_DEBUGTHUMBNAIL_DEFAULT_STORAGETHUMBNAIL_DEFAULT_STORAGE_ALIASTHUMBNAIL_MEDIA_ROOTTHUMBNAIL_MEDIA_URLTHUMBNAIL_BASEDIRTHUMBNAIL_SUBDIRTHUMBNAIL_PREFIXTHUMBNAIL_QUALITYTHUMBNAIL_PROGRESSIVETHUMBNAIL_EXTENSIONTHUMBNAIL_PRESERVE_EXTENSIONS THUMBNAIL_TRANSPARENCY_EXTENSIONTHUMBNAIL_NAMERTHUMBNAIL_PROCESSORSTHUMBNAIL_SOURCE_GENERATORSTHUMBNAIL_CHECK_CACHE_MISSTHUMBNAIL_ALIASESTHUMBNAIL_DEFAULT_OPTIONSTHUMBNAIL_CACHE_DIMENSIONSTHUMBNAIL_WIDGET_OPTIONSTHUMBNAIL_IMAGE_SAVE_OPTIONSr	   r
   r   r4   r4   X   sB   
 O 	= 
 '8#   	        %)! (-$
 7O:$# "' 
 !% "' !'1 r
 r
	$ r
   r4   )djangodjango.confr   r!   r   r   r4   r	   r
   r   <module>rX      s<     3	 	L0, L0^k{ kZ :r
   