o
    i                     @   s   d Z ddlmZ ddlmZmZmZ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mZ ddlmZmZmZmZ 		dd
edededee def
ddZdededeeef dee dee f
ddZdd Zdedeeef defddZdd Zd	S )zACode generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.    )Decimal)AnyDictget_type_hintsListOptionalUnionget_args
get_origin)	BaseModel)	FieldInfo   )PathParamMetadatafind_field_metadata)_get_serialized_params_is_set_populate_from_globals_val_to_stringN
server_urlpathpath_paramsgblsreturnc                 C   s^   i }t |||g }t|rt |d || | D ]\}}|d| d |d}qt| d| S )N{}r   /)_populate_path_paramsr   itemsreplaceremove_suffix)r   r   r   r   path_param_valuesglobals_already_populatedkeyvalue r$   Y/var/www/html/karishye-ai-python/venv/lib/python3.10/site-packages/mistralai/utils/url.pygenerate_url   s   r&   r    skip_fieldsc              	   C   sx  g }t | ts	|S | jj}t| j}|D ]$}||v rq|| }t|t}	|	d u r*qt| r3t| |nd }
t	||
t|\}
}|rE|
| t|
sJq|jd urR|jn|}|	j}|d urrt|	||
|| }| D ]\}}|||< qhqg }|	jdkr9t |
tr|
D ]}t|sq|
t| qd|||< qt |
tr|
D ])}t|
| sq|	jr|
| dt|
|   q|
| dt|
|   qd|||< qt |
ttttttfs.|
jj}|D ]B}|| }t|t}|d u rq|jd ur|jn|}t|
|}t|sq|	jr|
| dt|  q|
| dt|  qd|||< qt|
r9t|
||< q|S )Nsimple,=)
isinstancer   	__class__model_fieldsr   r   r   r   getattrr   appendaliasserializationr   r   styler   r   joinr   explodestrintfloatcomplexboolr   )r   r   r    r'   r!   path_param_fieldspath_param_field_typesnamefieldparam_metadataparamglobal_foundf_namer1   serialized_paramsr"   r#   pp_valspp_valpp_keyparam_fieldsparam_fieldparam_value_metadata
param_nameparam_field_valr$   r$   r%   r   1   s   










r   c                 C   s   t | tu otd t| v S N)r
   r   typer	   )r=   r$   r$   r%   is_optional   s   rM   url_with_paramsparamsc                 C   s*   |  D ]\}}| d| d |} q| S )Nr   r   )r   r   )rN   rO   r"   r#   r$   r$   r%   template_url   s   rP   c                 C   s$   |r|  |r| d t|  S | S rK   )endswithlen)input_stringsuffixr$   r$   r%   r      s   r   rK   )__doc__decimalr   typingr   r   r   r   r   r   r	   r
   pydanticr   pydantic.fieldsr   metadatar   r   valuesr   r   r   r   r5   r&   r   rM   rP   r   r$   r$   r$   r%   <module>   sB    (



\