
    i                        d Z ddlmZmZmZmZmZ ddlmZ ddl	m
Z
 ddlmZ ddlmZmZmZ ddlmZmZ d	ed
edededeeee   f   f
dZdedeeeef   fdZdededeeeeef   eeeef      f   fdZdedeeef   fdZy)zACode generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.    )AnyDictget_type_hintsListTuple)	BaseModel)	FieldInfo   )marshal_json)FormMetadataMultipartFormMetadatafind_field_metadata)_is_set_val_to_string
field_nameexplodeobj	delimiterformc                 0   t        |      s|S t        |t              rg }|j                  j                  }|D ]q  }||   }|j
                  |j
                  n|}	|	dk(  r(t        ||      }
t        |
      s@|rt        |
      g||	<   R|j                  |	 | t        |
              s t        |      dkD  r|j                  |      g|| <   |S t        |t              r}g }|j                         D ]C  \  }}t        |      s|rt        |      g||<   $|j                  | | t        |              E t        |      dkD  r|j                  |      g|| <   |S t        |t              rg }|D ]Q  }t        |      s|r'| |vrg || <   ||    j                  t        |             8|j                  t        |             S t        |      dkD  r,|j                  |D cg c]  }t        |       c}      g|| <   |S t        |      g|| <   |S c c}w )N r   )r   
isinstancer   	__class__model_fieldsaliasgetattrr   appendlenjoinr   itemsr   str)r   r   r   r   r   r    
obj_fieldsname	obj_fieldobj_field_namevalkeyvalueitems                 Y/var/www/html/eduruby.in/venv/lib/python3.12/site-packages/mistralai_azure/utils/forms.py_populate_formr+      s3    3<#y!+.==+E+E
 	RD"4(I090KY__QUN##t$C3<(6s(;'<^$/	{>#;N:OPQ	R u:> )u 56DB KA 
C	))+ 	IJC5>+E23S	uYKu0E/FGH	I u:> )u 56D( K' 
C	 		4E5>!T)')D$Z ''u(=>^E23		4 u:> )e/LdD	/L MND K +3/0ZK	 0Ms   #Hfile_objreturnc                    | j                   j                  }d}d}d}|D ]S  }||   }t        |t              }||j                  rt        | |d      }5|dk(  rt        | |d      }Ht        | |      }U |dk(  s|t        d      |||fS )z@Extract file name, content, and content type from a file object.r   Ncontent_typez invalid multipart/form-data file)r   r   r   r   contentr   
ValueError)r,   file_fields	file_namer0   r/   file_field_name
file_fieldfile_metadatas           r*   _extract_file_propertiesr7   Y   s    (0(:(:(G(GKIGL& ; 1
+J8MN   h>G."8_dCL/:I; B'/;<<g|++    
media_typerequestc           
         i }g }t        |t              st        d      |j                  j                  }t        |j                        }|D ]  }||   }t        ||      }t        |      s!t        |t              }	|	s4|j                  r|j                  n|}
|	j                  rt        |t              rW|D ]Q  }t        |      st        |      \  }}}||j                  |
dz   |||ff       :|j                  |
dz   ||ff       S t        |      \  }}}||j                  |
|||ff       |j                  |
||ff       |	j                  r%|j                  |
d t!        |||         dff       0t        |t              r9g }|D ](  }t        |      s|j                  t#        |             * |||
dz   <   yt#        |      ||
<    | ||fS )Nzinvalid request body typez[]zapplication/json)r   r   	TypeErrorr   r   r   r   r   r   r   r   filer   r7   r   jsonr   r   )r9   r:   r   filesrequest_fieldsrequest_field_typesr#   fieldr&   field_metadataf_namer,   r3   r0   r/   valuesr(   s                    r*   serialize_multipart_formrF   u   s    D#%Egy)344+2+<+<+I+IN():):; 33t$gt$s|,U4IJ %#t$ # 	LH"8, 7OPX7Y4Iw#/ftmi,5W%XYftmi5I%JK	L 4LC3P0	7L+LL&9g|*L!MNLL&9g*>!?@  LL&S"5d";<"#   #t$  9E"5> MM."789
 '-Vd]#-c2Vg33h tU""r8   datac                    i }t        | t              r| j                  j                  }t	        | j                        }|D ]  }||   }t        | |      }t        |      s t        |t              }|3|j                  |j                  n|}|j                  rt        |||         g||<   m|j                  dk(  rt        ||j                  |d|       t        d|        |S t        | t               r5| j#                         D ]   \  }	}
t        |
      st%        |
      g||	<   " |S t'        dt)        |        d      )Nr   ,zInvalid form style for field zInvalid request body type z for form data)r   r   r   r   r   r   r   r   r   r   r>   r   styler+   r   r1   r   r    r   r<   type)rG   r   data_fieldsdata_field_typesr#   rB   r&   metadatarD   r'   r(   s              r*   serialize_form_datarO      sN   !#D$	",0NN,G,G)$..9 	MD%E$%C3<*5,?H$)KK$;U[[F}} ,S2B42H IJV>>V+" (( %'DTF%KLL3	MB K 
D$	**, 	4JCu~+E23S		4 K 4T$ZLOPPr8   N)__doc__typingr   r   r   r   r   pydanticr   pydantic.fieldsr	   serializersr   rN   r   r   r   rE   r   r   r!   boolr+   r7   rF   rO    r8   r*   <module>rW      s    G   % % 
 ,??? 
? 	?
 sDI~
?D,s ,uS#s]/C ,8@#@#!@#
3S#XU38_ 556@#F'c 'd38n 'r8   