� ��g*��|�dZddlZddlmZmZmZddlmZmZm Z ddl m Z ddl m Z mZe eeefZe eeefZe deeeefeeeeffZded efd �Zd eee ee fefd efd �Zd eee ee fefd efd �Zdeded e edffd�ZdS)zQuery string handling.�N)�Iterable�Mapping�Sequence)�Any� SupportsInt�Union)�istr�)�QUERY_PART_QUOTER� QUERY_QUOTER�v�returnc�&�t|��}|turt|��St|t��r|St|t��rbt j|��rtd���t j|��rtd���tt |����S|tur1t|t��rtt|����Std� ||�����)z%Convert a query variable to a string.zfloat('inf') is not supportedzfloat('nan') is not supportedzMInvalid variable type: value should be str, int or float, got {!r} of type {}) �type�int�str� isinstance�float�math�isinf� ValueError�isnan�boolr� TypeError�format)r �clss �[/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/yarl/_query.py� query_varrs��� �q�'�'�C� �c�z�z��1�v�v� ��!�S�������!�U���� �:�a�=�=� >��<�=�=� =� �:�a�=�=� >��<�=�=� =��5��8�8�}�}�� �$���:�a��5�5���3�q�6�6�{�{�� � ��V�A�s�^�^� � ���itemsc�X��t��fd�|D��}d�|��S)z�Return a query string from a sequence of (key, value) pairs. value is a single value or a sequence of values for the key The sequence of values must be a list or tuple. c ���g|]}\}}t|��turt|ttf��r|n|fD]@}�|���d�t|��tur|nt |��������A�~S��=)rrr�list�tupler)�.0�k�valr �quoters �r� <listcomp>z8get_str_query_from_sequence_iterable.<locals>.<listcomp>2s���� � � � �A�s���9�9�C�'�'�J�s�T�5�M�,J�,J�'�C�C�QT�PV�  � � � �6�!�9�9�F�F�v�v�4��7�7�c�>�>�a�a�y��|�|�D�D�F�F� � � � r�&�r �join�r �pairsr*s @r�$get_str_query_from_sequence_iterabler1(sD����F� � � � �� � � �E� �8�8�E�?�?�rc�X��t��fd�|D��}d�|��S)z�Return a query string from an iterable. The iterable must contain (key, value) pairs. The values are not allowed to be sequences, only single values are allowed. For sequences, use `_get_str_query_from_sequence_iterable`. c ���g|]C\}}�|���d�t|��tur|nt|��������DSr#)rrr)r'r(r r*s �rr+z/get_str_query_from_iterable.<locals>.<listcomp>Isb��� � � �KO�1�a�6�6�!�9�9�F�F�v�v�4��7�7�c�>�>�a�a�y��|�|�D�D�F�F� � � rr,r-r/s @r�get_str_query_from_iterabler4<sD����F� � � � �SX� � � �E� �8�8�E�?�?�r�args�kwargsc��|r|rd}t|���|}n+t|��dkr |d}ntd���|�dS|sdSt|��tur!t |�����St|��t ust|t ��rt|��St|t��r!t |�����St|tttf��rd}t|���t|t��rt|��Std���)z*Return a query string from supported args.z7Either kwargs or single query parameter must be presentr rN�zAInvalid query type: bytes, bytearray and memoryview are forbiddenzRInvalid query type: only str, mapping or sequence of (key, value) pairs is allowed)r�lenr�dictr1r rrr r�bytes� bytearray� memoryviewrrr4)r5r6�msg�querys r� get_str_queryr@OsN���T� � "�K�C��S�/�/� !���� �T���a����Q�����R�S�S�S� �}��t� ���r� �E�{�{�d���3�E�K�K�M�M�B�B�B� �E�{�{�c���Z��s�3�3���E�"�"�"��%��!�!�C�3�E�K�K�M�M�B�B�B��%�%��J�7�8�8��Q����n�n���%��"�"�2� +�5�1�1�1� � 4� � �r)�__doc__r�collections.abcrrr�typingrrr� multidictr �_quotersr r rr� SimpleQuery� QueryVariabler&�Queryrr1r4r@�rr�<module>rJs����� � � � �7�7�7�7�7�7�7�7�7�7�*�*�*�*�*�*�*�*�*�*�������5�5�5�5�5�5�5�5��C��e�+�,� ��k�8�K�#8�8�9� � ��#�w�s�M�)�*�H�U�3� �;M�5N�,O�O� �� ��������,� �E�%��T� �*�M�9�:� ;�������(� �E�%��T� �*�K�7�8� 9�������&#��#��#��c�4�i�0@�#�#�#�#�#�#r
Memory