U
    nËj£  ã                   @   sæ  U d dl 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 e jdk�r”G dd„ dƒZG dd„ dƒZG d	d
„ d
ƒZG dd„ dƒZG dd„ dƒZG dd„ dƒZG dd„ dƒZG dd„ dƒZG dd„ dƒZG dd„ dƒZG dd„ dƒZG dd„ dƒZG dd„ dƒZG dd „ d ƒZG d!d"„ d"ƒZG d#d$„ d$ƒZG d%d&„ d&ƒZd'd(lmZm Z  d)d*œee ee!eeeeed+ f ef ee"ee"ef f f d,œd-d.„Z#nèd'd/l$mZ d'd0l$mZ d'd1l$mZ d'd2l$mZ d'd3l$mZ d'd4l$mZ d'd5l$mZ d'd6l$mZ d'd7l$mZ d'd8l$mZ d'd9l$mZ d'd:l$mZ d'd;l$mZ d'd<l$mZ d'd=l$mZ d'd>l$mZ d'd?l$mZ d'd(l$mZm Z  d'd@l$m#Z# e dAƒZ%ee e&dB< ee eee"ef  dCœdDdE„Z'ee ee	e"e(f dFf eee"ef  dGœdHdI„Z)dS )Jé    N)ÚAnyÚDictÚListÚLiteralÚSequenceÚTupleÚTypeÚUnion)ÚModelNameMap)é   é   c                   @   s   e Zd ZdS )ÚAnyUrlN©Ú__name__Ú
__module__Ú__qualname__© r   r   ú:/tmp/pip-unpacked-wheel-yktl02hi/fastapi/_compat/may_v1.pyr      s   r   c                   @   s   e Zd ZdS )Ú
BaseConfigNr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )Ú	BaseModelNr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )ÚColorNr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )Ú
CoreSchemaNr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )ÚErrorWrapperNr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )Ú	FieldInfoNr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )ÚGetJsonSchemaHandlerNr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )ÚJsonSchemaValueNr   r   r   r   r   r       s   r   c                   @   s   e Zd ZdS )Ú
ModelFieldNr   r   r   r   r   r   #   s   r   c                   @   s   e Zd ZdS )Ú	NameEmailNr   r   r   r   r   r   &   s   r   c                   @   s   e Zd ZdS )ÚRequiredParamNr   r   r   r   r   r   )   s   r   c                   @   s   e Zd ZdS )ÚSecretBytesNr   r   r   r   r   r   ,   s   r   c                   @   s   e Zd ZdS )Ú	SecretStrNr   r   r   r   r   r    /   s   r    c                   @   s   e Zd ZdS )Ú	UndefinedNr   r   r   r   r   r!   2   s   r!   c                   @   s   e Zd ZdS )ÚUndefinedTypeNr   r   r   r   r   r"   5   s   r"   c                   @   s   e Zd ZdS )ÚUrlNr   r   r   r   r   r#   8   s   r#   é   )ÚValidationErrorÚcreate_modelT)Úseparate_input_output_schemas)Z
validationZserialization)ÚfieldsÚmodel_name_mapr'   Úreturnc                 C   s   i i fS )Nr   )r(   r)   r'   r   r   r   Úget_definitions=   s    r+   )r   )r   )r   )r   )r   )r   )r   )r   )r   )r   )r   )r   )r   )r    )r!   )r"   )r#   )r+   ÚRequestÚRequestErrorModel)Úerrorsr*   c                 C   s^   g }| D ]P}t |tƒr4t|gtd� ¡ }| |¡ qt |tƒrN| t|ƒ¡ q| |¡ q|S )N)r.   Úmodel)	Ú
isinstancer   r%   r-   r.   ÚextendÚlistÚ_normalize_errorsÚappend)r.   Z
use_errorsÚerrorZ
new_errorsr   r   r   r3   d   s    
 ÿ

r3   .)r.   Ú
loc_prefixr*   c                    s   ‡ fdd„t | ƒD ƒ}|S )Nc              	      s$   g | ]}|d ˆ |  d d¡ i–‘qS )Úlocr   )Úget)Ú.0Úerr©r6   r   r   Ú
<listcomp>v   s   ÿz._regenerate_error_with_loc.<locals>.<listcomp>)r3   )r.   r6   Zupdated_loc_errorsr   r;   r   Ú_regenerate_error_with_locs   s    
þr=   )*ÚsysÚtypingr   r   r   r   r   r   r   r	   Zfastapi.typesr
   Úversion_infor   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   Zv2r%   r&   ÚboolÚstrr+   Zv1r-   Ú__annotations__r3   Úintr=   r   r   r   r   Ú<module>   sx    (üÿýÿû  þ