File: //usr/local/lib/python3.10/dist-packages/aiohttp/__pycache__/formdata.cpython-310.pyc
o
���g� � @ s� d dl Z d dlZd dlmZmZmZmZ d dlmZ d dl m
Z
mZ ddlm
Z
mZmZ ddlmZ ddlmZ d ZG d
d� d�ZdS )� N)�Any�Iterable�List�Optional)� urlencode)� MultiDict�MultiDictProxy� )�hdrs� multipart�payload)�guess_filename)�Payload)�FormDatac
@ s� e Zd ZdZ d dd�dee ded ee d
eddf
dd
�Z e
defdd��Zdddd�dededee dee dee ddfdd�Zdeddfdd�Z
dejfdd�Zdejfdd�Zdefdd�ZdS )!r ztHelper class for form body generation.
Supports multipart/form-data and application/x-www-form-urlencoded.
� TNF)�default_to_multipart�fields�quote_fields�charsetr �returnc C sd t �d�| _g | _|| _d| _|| _|| _t|t �r!t
|�� �}n
t|t
tf�s+|f}| j
|� d S )N� form-dataF)r �MultipartWriter�_writer�_fields�
_is_multipart�
_is_processed�
_quote_fields�_charset�
isinstance�dict�list�items�tuple�
add_fields)�selfr r r r r r �;/usr/local/lib/python3.10/dist-packages/aiohttp/formdata.py�__init__ s
zFormData.__init__c C s | j S �N)r �r$ r r r% �is_multipart* s zFormData.is_multipart)�content_type�filename�content_transfer_encoding�name�valuer* r+ r, c C s" t |tj�r
d| _nt |tttf�r$d}|d u r$|d u r$t�|t � |}t
d|i�}|d ur9t |t�s9td| ��|d u rHt |tj�rHt
||�}|d urS||d<