� L�g� ���ddlmZddlZddlZddlmZmZddlZddlm Z ddl m Z m Z ddl mZddlmZmZmZmZmZGd�d ��ZdS) �)� annotationsN)� b64decode� b64encode)� BadSignature)�MutableHeaders�Secret)�HTTPConnection)�ASGIApp�Message�Receive�Scope�Sendc�,�eZdZ d d!d�Zd"d�ZdS)#�SessionMiddleware�session�u�/�laxFN�appr � secret_key� str | Secret�session_cookie�str�max_age� int | None�path� same_site�'typing.Literal['lax', 'strict', 'none']� https_only�bool�domain� str | None�return�Nonec ���||_tjt|����|_||_||_||_d|z|_|r|xjdz c_|�|xjd|��z c_dSdS)Nzhttponly; samesite=z; securez ; domain=) r� itsdangerous�TimestampSignerr�signerrrr�security_flags) �selfrrrrrrrr!s �m/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/starlette/middleware/sessions.py�__init__zSessionMiddleware.__init__s������"�2�3�z�?�?�C�C�� �,����� ��� �3�i�?��� � .� � � �:� -� � � � � � � �#7�v�#7�#7� 7� � � � � � ��scoper �receiver �sendrc�������K��ddvr���|����d{V��dSt���}d��j|jvr�|j�j�d��} �j�|�j���}tj t|�����d<d�n#t$ri�d<Yn wxYwi�d<d ����fd � }���||���d{V��dS)N�type)�http� websocketT�utf-8)rrF�messager r#r$c���K�|ddk�r"�dr�ttj�d���d����}�j�|��}t |���}d��j|� d���j �j r d�j �d�nd �j � ��}|� d |��nQ�sOt |���}d ��jd �j d�j ���}|� d |���|���d{V��dS)Nr2zhttp.response.startrr5)r.z?{session_cookie}={data}; path={path}; {max_age}{security_flags}zMax-Age=z; �)r�datarrr)z Set-Cookiez?{session_cookie}={data}; path={path}; {expires}{security_flags}�nullz'expires=Thu, 01 Jan 1970 00:00:00 GMT; )rr9r�expiresr))r�json�dumps�encoder(�signr�formatr�decoderrr)�append)r6r9�headers� header_value�initial_session_was_emptyr.r*r0s ����r+� send_wrapperz0SessionMiddleware.__call__.<locals>.send_wrapper9sk������v��"7�7�7���#�?�$�T�Z��i�0@�%A�%A�%H�%H��%Q�%Q�R�R�D��;�+�+�D�1�1�D�,�7�;�;�;�G�#d�#k�#k�'+�':�!�[�[��1�1�!�Y�?C�|� S� ;�4�<� ;� ;� ;� ;�QS�'+�':� $l�$�$�L��N�N�<��>�>�>�>�2� ?�,�7�;�;�;�G�#d�#k�#k�'+�':�#�!�Y� I�'+�':� $l�$�$�L��N�N�<��>�>�>��$�w�-�-� � � � � � � � � r-)r6r r#r$) rr r�cookiesr>r(�unsignrr<�loadsrr)r*r.r/r0� connectionr9rFrEs`` ` @r+�__call__zSessionMiddleware.__call__&sa�������� ��=� 5� 5� 5��(�(�5�'�4�0�0� 0� 0� 0� 0� 0� 0� 0� �F�#�E�*�*� �$(�!� � �*�"4� 4� 4��%�d�&9�:�A�A�'�J�J�D� &��{�)�)�$�� �)�E�E��#'�:�i��o�o�#>�#>��i� �,1�)�)��� &� &� &�#%��i� � � � &���� "�E�)� � � � � � � � � � �8�h�h�u�g�|�4�4�4�4�4�4�4�4�4�4�4s�5AB=�=C�C)rrrrFN)rr rrrrrrrrrrrr r!r"r#r$)r.r r/r r0rr#r$)�__name__� __module__� __qualname__r,rK�r-r+rrsU������ (�/��=B� �!�8�8�8�8�8�,/5�/5�/5�/5�/5�/5r-r)� __future__rr<�typing�base64rrr&�itsdangerous.excr�starlette.datastructuresrr�starlette.requestsr �starlette.typesr r r r rrrOr-r+�<module>rWs���"�"�"�"�"�"� � � � � � � � �'�'�'�'�'�'�'�'�����)�)�)�)�)�)�;�;�;�;�;�;�;�;�-�-�-�-�-�-�B�B�B�B�B�B�B�B�B�B�B�B�B�B�F5�F5�F5�F5�F5�F5�F5�F5�F5�F5r-
Memory