§
    ó¦Be¸  ã                  óÈ   — d dl mZ d dlZd dlmZ d dlmZ d dlmZm	Z	 d dl
mZ d dlmZ d dlmZmZ erd d	lmZ d d
lmZ  ej        e¦  «        Z G d„ de¦  «        Zd„ ZdS )é    )ÚannotationsN)ÚTYPE_CHECKING)ÚDocument)ÚBokehSessionContextÚ_RequestProxy)ÚServerSession)Úsettings)Úgenerate_jwt_tokenÚgenerate_session_id)ÚDocumentPatchedEvent)ÚSessionCallbackc                  ó(   — e Zd ZdZdd„Zdd„Zd	„ Zd
S )ÚServerSessionStubzf
    Stubs out ServerSession methods since the session is only used for
    warming up the cache.
    Úeventr   ÚreturnÚNonec                ó   — d S ©N© ©Úselfr   s     ú0lib/python3.11/site-packages/panel/io/session.pyÚ_document_patchedz#ServerSessionStub._document_patched   ó   € Øˆó    r   c                ó   — d S r   r   r   s     r   Ú_session_callback_addedz)ServerSessionStub._session_callback_added   r   r   c                ó   — d S r   r   r   s     r   Ú_session_callback_removedz+ServerSessionStub._session_callback_removed    r   r   N)r   r   r   r   )r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r   r      sU   € € € € € ðð ð
ð ð ð ðð ð ð ðð ð ð ð r   r   c           	     óÖ  ‡— t          j        ¦   «         }t          j        ¦   «         }t          ||¬¦  «        }t	          |||i i i dœ¬¦  «        }t          ¦   «         }t          |d |¦  «        Št          d i i i ¬¦  «        ‰_        ˆfd„|_	        |  
                    |¦  «         |j        j        }t          ¦   «         |j        _        t          ||d |¬¦  «        }||j        _        |S )N)Ú
secret_keyÚsigned)ÚheadersÚcookiesÚ	arguments)r%   r&   Úextra_payload)r)   r(   r'   c                 ó   •— ‰ S r   r   )Úsession_contexts   €r   ú<lambda>z"generate_session.<locals>.<lambda>9   s   ø€  ?€ r   )Úio_loopÚtoken)r	   Úsecret_key_bytesÚsign_sessionsr   r
   r   r   r   Ú_requestÚ_session_contextÚinitialize_documentÚ	callbacksÚ_session_callbacksÚsetr   )	Úapplicationr%   r1   Ú
session_idr/   Údocr5   Úsessionr,   s	           @r   Úgenerate_sessionr<   #   s  ø€ ÝÔ*Ñ,Ô,€JÝÔ*Ñ,Ô,€MÝ$ØØðñ ô €Jõ ØØØØ"$°À"ÐEÐEð	ñ ô €Eõ ‰*Œ*€CÝ)ØØØñô €Oõ
  -Ø˜ B°ð ñ  ô  €OÔð 3Ð2Ð2Ð2€CÔØ×#Ò# CÑ(Ô(Ð(ð ”Ô0€IÝ'*¡u¤u€C„MÔ$Ý 
¨C¸ÀUÐKÑKÔK€GØ'0€C„MÔ$Ø€Nr   )Ú
__future__r   ÚloggingÚtypingr   Úbokeh.documentr   Úbokeh.server.contextsr   r   Úbokeh.server.sessionr   Úbokeh.settingsr	   Úbokeh.util.tokenr
   r   Úbokeh.document.eventsr   Úbokeh.server.callbacksr   Ú	getLoggerr    Úlogr   r<   r   r   r   ú<module>rI      s  ðØ "Ð "Ð "Ð "Ð "Ð "à €€€à  Ð  Ð  Ð  Ð  Ð  à #Ð #Ð #Ð #Ð #Ð #Ø DÐ DÐ DÐ DÐ DÐ DÐ DÐ DØ .Ð .Ð .Ð .Ð .Ð .Ø #Ð #Ð #Ð #Ð #Ð #Ø DÐ DÐ DÐ DÐ DÐ DÐ DÐ Dàð 7Ø:Ð:Ð:Ð:Ð:Ð:Ø6Ð6Ð6Ð6Ð6Ð6ð €gÔ˜Ñ!Ô!€ðð ð ð ð ˜ñ ô ð ðð ð ð ð r   