
    U th                    x   d dl mZ d dlmZmZmZmZmZmZ d dl	m
Z
mZ d dlmZmZ ddlmZmZmZ ddlmZ  ed          Zed	         Zed
         Zeeeeedf         Zeeee         ee         df         Zeeef         Z G d d          Z e            Z e j!        Z!e j"        Z"e j#        Z# G d d          Z$dS )    )annotations)AnyListTupleUnionMappingTypeVar)parse_qs	urlencode)Literalget_args   )	NOT_GIVENNotGiven
NotGivenOr)flatten_T)commarepeatindicesbrackets)dotsr   NzMapping[str, Any]c                  l    e Zd ZU ded<   ded<   ddddd
Zd dZeedd!dZeedd"dZd#dZ	d$dZ
dS )%QuerystringArrayFormatarray_formatNestedFormatnested_formatr   r   r   r   returnNonec               "    || _         || _        d S Nr   )selfr   r   s      ^/var/www/html/mycamper/aliexpress-site/backend/venv/lib/python3.11/site-packages/openai/_qs.py__init__zQuerystring.__init__   s     )*    querystrMapping[str, object]c                     t          |          S r#   )r
   )r$   r(   s     r%   parsezQuerystring.parse$   s    r'   paramsParamsNotGivenOr[ArrayFormat]NotGivenOr[NestedFormat]c               L    t          |                     |||                    S )Nr   )r   stringify_items)r$   r-   r   r   s       r%   	stringifyzQuerystring.stringify(   s7       )+ !  
 
 	
r'   list[tuple[str, str]]c                    t           ||          t           fd|                                D                       S )N)qsr   r   c                D    g | ]\  }}                     ||          S  )_stringify_item).0keyvalueoptsr$   s      r%   
<listcomp>z/Querystring.stringify_items.<locals>.<listcomp>C   s/    ```:3,,S%>>```r'   )Optionsr   items)r$   r-   r   r   r=   s   `   @r%   r2   zQuerystring.stringify_items7   sX     %'
 
 

 `````QWQ]Q]Q_Q_```aaar'   r;   r<   Datar=   r?   c           
     T    t          |t                    rbg }|j        }|                                D ]B\  }}|                                         |dk    r| d| n| d| d||                     C|S t          |t          t          f          r|j        }|dk    r$|d	                     fd|D                       fgS |dk    r3g }|D ],}	|                                         ||	|                     -|S |d	k    rt          d
          |dk    r8g }|dz   }|D ],}	|                                         ||	|                     -|S t          d| dd	                    t          t                                                              |          }
|
sg S ||
fgS )Nr   .[]r   ,c              3  F   K   | ]}|                     |          V  d S r#   )_primitive_value_to_str)r:   itemr$   s     r%   	<genexpr>z.Querystring._stringify_item.<locals>.<genexpr>_   s7       j jY]Yi!=!=d!C!CYiYiYiYi j jr'   r   r   z-The array indices format is not supported yetr   z[]zUnknown array_format value: z, choose from z, )
isinstancer   r   r@   extendr9   listtupler   joinNotImplementedErrorr   r   rH   )r$   r;   r<   r=   r@   r   subkeysubvaluer   rI   
serialiseds   `          r%   r9   zQuerystring._stringify_itemE   s9    eW%% 	+-E .M$)KKMM   ((-:f-D-D3)))))SJ\J\SYJ\J\J\ 	     LedE]++ 	,Lw&&  j j j jPU j j jjj  ))! H HDLL!5!5c4!F!FGGGG**)*YZZZ++Dj! H HDLL!5!5c4!F!FGGGG)q<qqtyyYabmYnYnOoOoqq   11%88
 	Ij!""r'   PrimitiveDatac                @    |du rdS |du rdS |dS t          |          S )NTtrueFfalse )r)   )r$   r<   s     r%   rH   z#Querystring._primitive_value_to_stry   s4    D==6e^^7]25zzr'   N)r   r   r   r   r    r!   )r(   r)   r    r*   )r-   r.   r   r/   r   r0   r    r)   )r-   r.   r   r/   r   r0   r    r4   )r;   r)   r<   rA   r=   r?   r    r4   )r<   rT   r    r)   )__name__
__module____qualname____annotations__r&   r,   r   r3   r2   r9   rH   r8   r'   r%   r   r      s         
 %-&0	+ + + + + +    1:2;
 
 
 
 
 
& 1:2;b b b b b b2# 2# 2# 2#h     r'   r   c                  8    e Zd ZU ded<   ded<   efeedddZdS )r?   r   r   r   r   r   r6   r   r/   r0   r    r!   c                   t          |t                    r|j        n|| _        t          |t                    r|j        n|| _        d S r#   )rK   r   r   r   )r$   r6   r   r   s       r%   r&   zOptions.__init__   sH     0:,/Q/QcBOOWc1;M81T1TgR--Zgr'   N)r6   r   r   r/   r   r0   r    r!   )rY   rZ   r[   r\   _qsr   r&   r8   r'   r%   r?   r?      sg          h 1:2;h h h h h h h hr'   r?   )%
__future__r   typingr   r   r   r   r   r	   urllib.parser
   r   typing_extensionsr   r   _typesr   r   r   _utilsr   r   r   r   r)   intfloatboolrT   rA   r.   r   r_   r,   r3   r2   r?   r8   r'   r%   <module>ri      s   " " " " " " < < < < < < < < < < < < < < < < , , , , , , , , / / / / / / / / 3 3 3 3 3 3 3 3 3 3      WT]] >?)*c3tT12 ]DIuSz3FFG	d	j j j j j j j jZ kmm	M	%h h h h h h h h h hr'   