
    Yj                    l    d dl mZ d dlmZmZ ddlmZmZmZm	Z	m
Z
 ddlmZ 	 	 d	 	 	 	 	 	 	 	 	 	 	 d	dZy)
    )annotations)Mappingcast   )BodyOmitNotGiven	FileTypesRequestFiles)openapi_dumpsNc           	        t        | t              st        d      |t        |t              st        d      t        t        t        t
        f   |       }t        t        t        t
        f   |xs i       }i ||j                         D ci c]  \  }}t        |t        t        f      r||! }	}}|sL|Jt        |	      |hk(  r;|	|   }t        |t              st        d      dd|j                  d      ||   d   fS t        t        |t              r|j                         n|xs g       }
|j                         D ]r  \  }\  }}||	vr|	j                  |      }|rt        |      }n0t        |t              st        d|d      |j                  d      }|
j                  |d||ff       t |	xs d|
dd	fS c c}}w )
zNPrepare explicitly encoded form fields without flattening their JSON contents.z(Multipart request body must be a mappingNz&Multipart extra_body must be a mappingz*Raw multipart alternative must be a stringzutf-8r   zMultipart field z must be a stringzmultipart/form-data)
isinstancer   	TypeErrorr   strobjectitemsr   r	   setencodelistpopr   append)body
extra_body	encodingsraw_body_fieldexisting_filesoriginal	overrideskeyvaluemergedfilesnamecontent_typeas_jsondatas                  P/var/www/html/vmm-quimica/venv/lib/python3.12/site-packages/openai/_multipart.pyencode_multipartr(      s    dG$BCCjW&E@AAGCK($/HWS&[):+;<I+Dh+D)+D+J+J+LxZS%T^_dgkmufvTwc5jxFx n8S[^L\=\~&%%HIIT5<<0)N2KA2NNN)-",^W"ENL`^`*E *3): 
9%%|Wv

4  'DeS)"24(:K LMM<<(DdT4678
9 >T5$(===/ ys   G-G)NN)r   r   r   zBody | Noner   zMapping[str, tuple[str, bool]]r   z
str | Noner   zRequestFiles | NonereturnzGtuple[dict[str, object] | None, RequestFiles | None, bytes | None, str])
__future__r   typingr   r   _typesr   r   r	   r
   r   _utils._jsonr   r(        r'   <module>r0      s\    #   A A ' "&*.%>
%>%> .%> 	%>
 (%> M%>r/   