+
    Tj                     z    ^ RI Ht ^ RIHtHt ^ RIHt ]! ]P                  4      t ! R R4      t	 ! R R4      t
R# )	    )settings)	constantsutils)SimpleLazyObjectc                   f   a  ] tR t^t o RtRR ltR tR tR tR t	]
R 4       t]
R	 4       tR
tV tR# )Messagez
Represent an actual message that can be stored in any of the supported
storage classes (typically session- or cookie-based) and rendered in a view
or template.
Nc                >    \        V4      V n        W n        W0n        R # N)intlevelmessage
extra_tagsselfr   r   r   s   &&&&Y/var/www/idalgo/venv/lib/python3.14/site-packages/django/contrib/messages/storage/base.py__init__Message.__init__   s    Z
$    c                    \        V P                  4      V n        V P                  e   \        V P                  4      V n        R# RV n        R# )z
Prepare the message for serialization by forcing the ``message``
and ``extra_tags`` to str in case they are lazy translations.
N)strr   r   r   s   &r   _prepareMessage._prepare   s4    
 4<<(26//2M#doo.SWr   c                    \        V\        4      '       g   \        # V P                  VP                  8H  ;'       d    V P                  VP                  8H  # r
   )
isinstancer   NotImplementedr   r   )r   others   &&r   __eq__Message.__eq__   s=    %))!!zzU[[(JJT\\U]]-JJr   c                ,    \        V P                  4      # r
   )r   r   r   s   &r   __str__Message.__str__!   s    4<<  r   c                    V P                   '       d   R V P                   : 2MRpRV P                   RV P                  : V R2# )z, extra_tags= zMessage(level=z
, message=)r   r   r   )r   r   s   & r   __repr__Message.__repr__$   sA    <@OOO}T__$78QS


|:dll5Ej\QRSSr   c                ^    R P                  R V P                  V P                  3 4       4      # ) c              3   8   "   T F  q'       g   K  Vx  K  	  R # 5ir
    ).0tags   & r   	<genexpr>Message.tags.<locals>.<genexpr>*   s     P'HC'Hs   	
)joinr   	level_tagr   s   &r   tagsMessage.tags(   s$    xxP'HPPPr   c                B    \         P                  V P                  R 4      # r$   )
LEVEL_TAGSgetr   r   s   &r   r2   Message.level_tag,   s    ~~djj"--r   r&   r
   )__name__
__module____qualname____firstlineno____doc__r   r   r   r!   r'   propertyr3   r2   __static_attributes____classdictcell__)__classdict__s   @r   r   r      sP     %
XK
!T Q Q . .r   r   c                      a a ] tR t^1t oRtV 3R ltR tR tR tR t	]
R 4       tR tR	 tR
 tR tRR ltR tRR lt]
! ]]]4      tRtVtV ;t# )BaseStoragez
This is the base backend for temporary message storage.

This is not a complete class; to be a usable storage backend, it must be
subclassed and the two methods ``_get`` and ``_store`` overridden.
c                ^   < Wn         . V n        R V n        R V n        \        SV `  ! V/ VB  R# )FN)request_queued_messagesused	added_newsuperr   )r   rF   argskwargs	__class__s   &&*,r   r   BaseStorage.__init__9   s0     "	$)&)r   c                `    \        V P                  4      \        V P                  4      ,           # r
   )len_loaded_messagesrG   r   s   &r   __len__BaseStorage.__len__@   s#    4(()C0E0E,FFFr   c                    R V n         V P                  '       d-   V P                  P                  V P                  4       . V n        \	        V P                  4      # )T)rH   rG   rQ   extenditerr   s   &r   __iter__BaseStorage.__iter__C   sH    	   !!(()>)>?$&D!D))**r   c                J    WP                   9   ;'       g    WP                  9   # r
   )rQ   rG   )r   items   &&r   __contains__BaseStorage.__contains__J   s"    ,,,MM8M8M0MMr   c                R    R V P                   P                   RV P                  : R2# )<z
: request=>)rM   r<   rF   r   s   &r   r'   BaseStorage.__repr__M   s'    4>>../z$,,9IKKr   c                    \        V R4      '       g$   V P                  4       w  rT;'       g    . V n        V P                  # )z[
Return a list of loaded messages, retrieving them first if they have
not been loaded yet.
_loaded_data)hasattr_getrb   )r   messagesall_retrieveds   &  r   rQ   BaseStorage._loaded_messagesP   s9     t^,,&*iik#H (BD   r   c                    \        R4      h)a  
Retrieve a list of stored messages. Return a tuple of the messages
and a flag indicating whether or not all the messages originally
intended to be stored in this storage were, in fact, stored and
retrieved; e.g., ``(messages, all_retrieved)``.

**This method must be implemented by a subclass.**

If it is possible to tell if the backend was not used (as opposed to
just containing no messages) then ``None`` should be returned in
place of ``messages``.
z6subclasses of BaseStorage must provide a _get() methodNotImplementedError)r   rK   rL   s   &*,r   rd   BaseStorage._get[   s     "D
 	
r   c                    \        R4      h)z
Store a list of messages and return a list of any messages which could
not be stored.

One type of object must be able to be stored, ``Message``.

**This method must be implemented by a subclass.**
z8subclasses of BaseStorage must provide a _store() methodri   )r   re   responserK   rL   s   &&&*,r   _storeBaseStorage._storel   s     "F
 	
r   c                8    V F  pVP                  4        K  	  R# )z)
Prepare a list of messages for storage.
N)r   )r   re   r   s   && r   _prepare_messagesBaseStorage._prepare_messagesy   s      G  r   c                   V P                  V P                  4       V P                  '       d   V P                  V P                  V4      # V P                  '       d/   V P
                  V P                  ,           pV P                  W!4      # R# )z
Store all unread messages.

If the backend has yet to be iterated, store previously stored messages
again. Otherwise, only store messages added after the last iteration.
N)rq   rG   rH   rn   rI   rQ   )r   rm   re   s   && r   updateBaseStorage.update   sk     	t445999;;t44h??^^^,,t/D/DDH;;x22 r   c                    V'       g   R# \        V4      pWP                  8  d   R# RV n        \        WVR7      pV P                  P                  V4       R# )z
Queue a message to be stored.

The message is only queued if it contained something and its level is
not less than the recording level (``self.level``).
NT)r   )r   r   rI   r   rG   appendr   s   &&&&r   addBaseStorage.add   sG     E
::%Z@$$W-r   c                    \        V R4      '       g%   \        \        R\        P                  4      V n        V P
                  # )z
Return the minimum recorded level.

The default level is the ``MESSAGE_LEVEL`` setting. If this is
not found, the ``INFO`` level is used.
_levelMESSAGE_LEVEL)rc   getattrr   r   INFOr{   r   s   &r   
_get_levelBaseStorage._get_level   s/     tX&&!(OY^^LDK{{r   c                Z    Vf   \        V R4      '       d   V =R# \        V4      V n        R# )z{
Set a custom minimum recorded level.

If set to ``None``, the default level will be used (see the
``_get_level`` method).
Nr{   )rc   r{   r   )r   values   &&r   
_set_levelBaseStorage._set_level   s%     =WT844e*DKr   )r{   rb   rG   rI   rF   rH   r6   r
   )r:   r;   r<   r=   r>   r   rR   rW   r[   r'   r?   rQ   rd   rn   rq   rt   rx   r   r   r   r@   rA   __classcell__)rM   rB   s   @@r   rD   rD   1   so     *G+NL ! !
"
3.$	
% ZZ8EEr   rD   N)django.confr   django.contrib.messagesr   r   django.utils.functionalr   get_level_tagsr7   r   rD   r,   r   r   <module>r      s5      4 4e223
&. &.RF9 F9r   