o
    LDi=                     @   s  d dl mZ d dlmZ d dlmZmZmZmZm	Z	 d dl
mZmZmZmZmZmZ d dlmZ d dlmZmZmZ d dlmZmZ d dlmZ zd d	lZesQJ d d
lmZ W n eyi   G dd deZY nw G dd deZ G dd de Z!G dd de Z"G dd de Z#G dd de Z$G dd de Z%G dd deZ&G dd deZ'G dd de Z(G dd  d e Z)ed! Z*G d"d# d#e Z+e	e+e,f Z-G d$d% d%ed&d'Z.G d(d) d)eZ/G d*d+ d+e Z0G d,d- d-e Z1G d.d/ d/e Z2G d0d1 d1e2Z3G d2d3 d3e2Z4G d4d5 d5e Z5G d6d7 d7e Z6G d8d9 d9e Z7G d:d; d;e Z8G d<d= d=e Z9G d>d? d?eZ:G d@dA dAe Z;G dBdC dCeZ<G dDdE dEe;Z=G dFdG dGe;Z>G dHdI dIe>Z?G dJdK dKe Z@G dLdM dMe@ZAG dNdO dOe@ZBG dPdQ dQe@ZCG dRdS dSe@ZDG dTdU dUe ZEG dVdW dWe;ZFG dXdY dYe;ZGe	e=e>eFeGe?f ZHG dZd[ d[e ZIG d\d] d]e ZJG d^d_ d_e ZKee+ ee8 ee0 d	S )`    )Iterable)Enum)	AnnotatedAnyCallableOptionalUnion)PYDANTIC_V2
CoreSchemaGetJsonSchemaHandlerJsonSchemaValue_model_rebuild"with_info_plain_validator_function)logger)AnyUrl	BaseModelField)Literal	TypedDict)
deprecatedN)EmailStrc                   @   s   e Zd Zedeedef  fddZededefddZ	eded	edefd
dZ
edededefddZedee deegef defddZdS )r   return.c                 c   s    | j V  d S N)validate)cls r   b/var/www/www-root/data/www/77.83.87.30/venv/lib/python3.10/site-packages/fastapi/openapi/models.py__get_validators__   s   zEmailStr.__get_validators__vc                 C      t d t|S Nzpemail-validator not installed, email fields will be treated as str.
To install, run: pip install email-validatorr   warningstr)r   r   r   r   r   r         zEmailStr.validate_EmailStr__input_value_c                 C   r   r    r!   )r   r%   r&   r   r   r   	_validate&   r$   zEmailStr._validatecore_schemahandlerc                 C   s
   dddS )Nstringemail)typeformatr   )r   r(   r)   r   r   r   __get_pydantic_json_schema__.      
z%EmailStr.__get_pydantic_json_schema__sourcec                 C   s
   t | jS r   )r   r'   )r   r0   r)   r   r   r   __get_pydantic_core_schema__4   r/   z%EmailStr.__get_pydantic_core_schema__N)__name__
__module____qualname__classmethodr   r   r   r   r#   r   r'   r
   r   r   r.   r,   r1   r   r   r   r   r      s.    r   c                   @   s*   e Zd ZerddiZdS G dd dZdS )BaseModelWithConfigextraallowc                   @      e Zd ZdZdS )zBaseModelWithConfig.Configr8   Nr2   r3   r4   r7   r   r   r   r   ConfigA       r;   N)r2   r3   r4   r	   model_configr;   r   r   r   r   r6   ;   s    r6   c                   @   s>   e Zd ZU dZee ed< dZee ed< dZ	ee
 ed< dS )ContactNnameurlr+   )r2   r3   r4   r?   r   r#   __annotations__r@   r   r+   r   r   r   r   r   r>   E      
 r>   c                   @   6   e Zd ZU eed< dZee ed< dZee ed< dS )Licenser?   N
identifierr@   )	r2   r3   r4   r#   rA   rE   r   r@   r   r   r   r   r   rD   K      
 rD   c                   @   sn   e Zd ZU eed< dZee ed< dZee ed< dZee ed< dZ	ee
 ed< dZee ed< eed< dS )	InfotitleNsummarydescriptiontermsOfServicecontactlicenseversion)r2   r3   r4   r#   rA   rI   r   rJ   rK   rL   r>   rM   rD   r   r   r   r   rG   Q   s   
 rG   c                   @   sH   e Zd ZU dZeeee  eddf e	d< ee	d< dZ
ee e	d< dS )ServerVariableN   )
min_lengthenumdefaultrJ   )r2   r3   r4   rR   r   r   listr#   r   rA   rJ   r   r   r   r   rO   [   s   
 "rO   c                   @   sF   e Zd ZU eeef ed< dZee ed< dZ	ee
eef  ed< dS )Serverr@   NrJ   	variables)r2   r3   r4   r   r   r#   rA   rJ   r   rV   dictrO   r   r   r   r   rU   a   s   
 rU   c                   @   s    e Zd ZU eddZeed< dS )	Reference$refaliasrefN)r2   r3   r4   r   r\   r#   rA   r   r   r   r   rX   g   s   
 rX   c                   @   s.   e Zd ZU eed< dZeeeef  ed< dS )DiscriminatorpropertyNameNmapping)r2   r3   r4   r#   rA   r_   r   rW   r   r   r   r   r]   k   s   
 r]   c                   @   s^   e Zd ZU dZee ed< dZee ed< dZee ed< dZ	ee
 ed< dZee
 ed< dS )XMLNr?   	namespaceprefix	attributewrapped)r2   r3   r4   r?   r   r#   rA   ra   rb   rc   boolrd   r   r   r   r   r`   p   s   
 r`   c                   @   s&   e Zd ZU dZee ed< eed< dS )ExternalDocumentationNrJ   r@   )r2   r3   r4   rJ   r   r#   rA   r   r   r   r   r   rf   x   s   
 rf   )arraybooleanintegernullnumberobjectr*   c                   @   s  e Zd ZU edddZee ed< edddZee ed< edddZ	ee ed< edd	dZ
ee ed
< edddZee ed< edddZee ed< edddZee ed< edddZeeedf  ed< edddZee ed< dZeed  ed< dZeed  ed< dZeed  ed< edddZed ed< edddZed ed< dZed ed< edddZed ed< dZeeedf  ed < dZeed  ed!< dZeeded f  ed"< dZed ed#< dZeeedf  ed$< dZeeedf  ed%< dZ ed ed&< dZ!ed ed'< dZ"ed ed(< dZ#ed ed)< dZ$eee%ee% f  ed*< dZ&eee'  ed+< dZ(ee' ed,< edd-d.Z)ee* ed/< dZ+ee* ed0< dZ,ee* ed1< dZ-ee* ed2< dZ.ee* ed3< edd-d4Z/ee0 ed5< edd-d4Z1ee0 ed6< dZ2ee ed7< edd-d4Z3ee0 ed8< edd-d4Z4ee0 ed9< dZ5ee6 ed:< edd-d4Z7ee0 ed;< edd-d4Z8ee0 ed<< edd-d4Z9ee0 ed=< edd-d4Z:ee0 ed>< dZ;eee  ed?< dZ<eeee=e f  ed@< dZ>ee edA< dZ?ee edB< dZ@ee edC< dZAed edD< dZBee edE< dZCee edF< dZDee' edG< dZEee6 edH< dZFee6 edI< dZGee6 edJ< dZHeee'  edK< dZIeeJ edL< dZKeeL edM< dZMeeN edN< dZOePee' eQdOf edP< dS )QSchemaNz$schemarS   r[   schema_z$vocabulary
vocabularyz$ididz$anchoranchorz$dynamicAnchordynamicAnchorrY   r\   z$dynamicRef
dynamicRefz$defsSchemaOrBooldefsz$commentcommentallOfanyOfoneOfnotnot_ifif_thenelseelse_dependentSchemasprefixItemsitemscontains
propertiespatternPropertiesadditionalPropertiespropertyNamesunevaluatedItemsunevaluatedPropertiesr,   rR   constr   )rS   gt
multipleOfmaximumexclusiveMaximumminimumexclusiveMinimum)rS   ge	maxLength	minLengthpatternmaxItemsminItemsuniqueItemsmaxContainsminContainsmaxPropertiesminPropertiesrequireddependentRequiredr-   contentEncodingcontentMediaTypecontentSchemarH   rJ   rS   r   readOnly	writeOnlyexamplesdiscriminatorxmlexternalDocsznDeprecated in OpenAPI 3.1.0 that now uses JSON Schema 2020-12, although still supported. Use examples instead.example)Rr2   r3   r4   r   ro   r   r#   rA   rp   rq   rr   rs   r\   rt   rv   rW   rw   rx   rT   ry   rz   r|   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r,   
SchemaTyperR   r   r   r   floatr   r   r   r   r   intr   r   r   r   r   re   r   r   r   r   r   r   setr-   r   r   r   rH   rJ   rS   r   r   r   r   r   r]   r   r`   r   rf   r   r   typing_deprecatedr   r   r   r   rm      s   
  rm   c                   @   s\   e Zd ZU ee ed< ee ed< ee ed< ee ed< er%ddiZ	d	S G dd dZ
d	S )
ExamplerI   rJ   valueexternalValuer7   r8   c                   @   r9   )zExample.Configr8   Nr:   r   r   r   r   r;      r<   r;   N)r2   r3   r4   r   r#   rA   r   r   r	   __pydantic_config__r;   r   r   r   r   r      s   
 r   F)totalc                   @      e Zd ZdZdZdZdZdS )ParameterInTypequeryheaderpathcookieN)r2   r3   r4   r   r   r   r   r   r   r   r   r      
    r   c                   @   sn   e Zd ZU dZee ed< dZeeee	de
f f  ed< dZee ed< dZee ed< dZee ed< dS )EncodingNcontentTypeHeaderheadersstyleexplodeallowReserved)r2   r3   r4   r   r   r#   rA   r   rW   r   rX   r   r   re   r   r   r   r   r   r      s   
  r   c                   @   sv   e Zd ZU edddZeeeef  e	d< dZ
ee e	d< dZeeeeeef f  e	d< dZeeeef  e	d< dS )	MediaTypeNschemarn   ro   r   r   encoding)r2   r3   r4   r   ro   r   r   rm   rX   rA   r   r   r   rW   r#   r   r   r   r   r   r   r   r      s
   
   r   c                   @   s   e Zd ZU dZee ed< dZee ed< dZ	ee ed< dZ
ee ed< dZee ed< dZee ed< eddd	Zeeeef  ed
< dZee ed< dZeeeeeef f  ed< dZeeeef  ed< dS )ParameterBaseNrJ   r   r   r   r   r   r   rn   ro   r   r   content)r2   r3   r4   rJ   r   r#   rA   r   re   r   r   r   r   r   ro   r   rm   rX   r   r   r   rW   r   r   r   r   r   r   r   r     s   
   r   c                   @   s(   e Zd ZU eed< eddZeed< dS )	Parameterr?   inrZ   in_N)r2   r3   r4   r#   rA   r   r   r   r   r   r   r   r     s   
 r   c                   @   s   e Zd ZdS )r   N)r2   r3   r4   r   r   r   r   r     s    r   c                   @   s>   e Zd ZU dZee ed< eeef ed< dZ	ee
 ed< dS )RequestBodyNrJ   r   r   )r2   r3   r4   rJ   r   r#   rA   rW   r   r   re   r   r   r   r   r     rB   r   c                   @   s   e Zd ZU dZee ed< dZee ed< dZee	ee
eef f  ed< dZee
eef  ed< dZee ed< dZee ed< dS )LinkNoperationRefoperationId
parametersrequestBodyrJ   server)r2   r3   r4   r   r   r#   rA   r   r   rW   r   r   r   rJ   r   rU   r   r   r   r   r   "  s   
  r   c                   @   sn   e Zd ZU eed< dZeeeee	e
f f  ed< dZeeeef  ed< dZeeeeee
f f  ed< dS )ResponserJ   Nr   r   links)r2   r3   r4   r#   rA   r   r   rW   r   r   rX   r   r   r   r   r   r   r   r   r   +  s
   
  $r   c                   @   s"  e Zd ZU dZeee  ed< dZee ed< dZ	ee ed< dZ
ee ed< dZee ed< dZeeeeef   ed< dZeeeef  ed< dZeeeeeef f  ed	< dZeeeeeed
f ef f  ed< dZee ed< dZeeeeee f   ed< dZeee  ed< dS )	OperationNtagsrI   rJ   r   r   r   r   	responsesPathItem	callbacksr   securityservers)r2   r3   r4   r   r   rT   r#   rA   rI   rJ   r   rf   r   r   r   r   rX   r   r   r   rW   r   r   r   r   re   r   r   rU   r   r   r   r   r   2  s   
  ( r   c                   @   s   e Zd ZU edddZee ed< dZee ed< dZ	ee ed< dZ
ee ed< dZee ed< dZee ed	< dZee ed
< dZee ed< dZee ed< dZee ed< dZee ed< dZeee  ed< dZeeeeef   ed< dS )r   NrY   rn   r\   rI   rJ   getputpostdeleteoptionsheadpatchtracer   r   )r2   r3   r4   r   r\   r   r#   rA   rI   rJ   r   r   r   r   r   r   r   r   r   r   rT   rU   r   r   r   rX   r   r   r   r   r   B  s   
  r   c                   @   r   )SecuritySchemeTypeapiKeyhttpoauth2openIdConnectN)r2   r3   r4   r   r   r   r   r   r   r   r   r   R  r   r   c                   @   s0   e Zd ZU eddZeed< dZee	 ed< dS )SecurityBaser,   rZ   type_NrJ   )
r2   r3   r4   r   r   r   rA   rJ   r   r#   r   r   r   r   r   Y  s   
 r   c                   @   s   e Zd ZdZdZdZdS )APIKeyInr   r   r   N)r2   r3   r4   r   r   r   r   r   r   r   r   ^  s    r   c                   @   s>   e Zd ZU eejddZeed< eddZe	ed< e
ed< dS )	APIKeyr,   rn   r   r   rZ   r   r?   N)r2   r3   r4   r   r   r   r   rA   r   r   r#   r   r   r   r   r   d  s   
 r   c                   @   ,   e Zd ZU eejddZeed< eed< dS )HTTPBaser,   rn   r   schemeN)	r2   r3   r4   r   r   r   r   rA   r#   r   r   r   r   r   j     
 r   c                   @   s.   e Zd ZU dZed ed< dZee ed< dS )
HTTPBearerbearerr   NbearerFormat)	r2   r3   r4   r   r   rA   r   r   r#   r   r   r   r   r   o  s   
 r   c                   @   s2   e Zd ZU dZee ed< i Zeeef ed< dS )	OAuthFlowN
refreshUrlscopes)	r2   r3   r4   r   r   r#   rA   r   rW   r   r   r   r   r   t  s   
 r   c                   @      e Zd ZU eed< dS )OAuthFlowImplicitauthorizationUrlNr2   r3   r4   r#   rA   r   r   r   r   r   y     
 r   c                   @   r   )OAuthFlowPasswordtokenUrlNr   r   r   r   r   r   }  r   r   c                   @   r   )OAuthFlowClientCredentialsr   Nr   r   r   r   r   r     r   r   c                   @   s   e Zd ZU eed< eed< dS )OAuthFlowAuthorizationCoder   r   Nr   r   r   r   r   r     s   
 r   c                   @   sN   e Zd ZU dZee ed< dZee ed< dZ	ee
 ed< dZee ed< dS )
OAuthFlowsNimplicitpasswordclientCredentialsauthorizationCode)r2   r3   r4   r   r   r   rA   r   r   r  r   r  r   r   r   r   r   r     s
   
 r   c                   @   r   )OAuth2r,   rn   r   flowsN)	r2   r3   r4   r   r   r   r   rA   r   r   r   r   r   r    r   r  c                   @   r   )OpenIdConnectr,   rn   r   openIdConnectUrlN)	r2   r3   r4   r   r   r   r   rA   r#   r   r   r   r   r    s
   
 r  c                   @   sX  e Zd ZU dZeeeeee	f f  e
d< dZeeeeee	f f  e
d< dZeeeeee	f f  e
d< dZeeeeee	f f  e
d< dZeeeeee	f f  e
d< dZeeeeee	f f  e
d< dZeeeeee	f f  e
d< dZeeeeee	f f  e
d	< dZeeeeeeef e	ef f  e
d
< dZeeeeee	f f  e
d< dS )
ComponentsNschemasr   r   r   requestBodiesr   securitySchemesr   r   	pathItems)r2   r3   r4   r  r   rW   r#   r   rm   rX   rA   r   r   r   r   r   r   r	  r   r   r   r
  SecuritySchemer   r   r   r   r   r  r   r   r   r   r    s   
         *$r  c                   @   rC   )Tagr?   NrJ   r   )	r2   r3   r4   r#   rA   rJ   r   r   rf   r   r   r   r   r    rF   r  c                   @   s   e Zd ZU eed< eed< dZee ed< dZee	e
  ed< dZeeeeeef f  ed< dZeeeeeef f  ed< dZee ed< dZee	eee	e f   ed	< dZee	e  ed
< dZee ed< dS )OpenAPIopenapiinfoNjsonSchemaDialectr   pathswebhooks
componentsr   r   r   )r2   r3   r4   r#   rA   rG   r  r   r   rT   rU   r  rW   r   r   r   r  rX   r  r  r   r   r  r   rf   r   r   r   r   r    s   
    r  )Lcollections.abcr   rR   r   typingr   r   r   r   r   fastapi._compatr	   r
   r   r   r   r   fastapi.loggerr   pydanticr   r   r   typing_extensionsr   r   r   r   email_validatorr   ImportErrorr#   r6   r>   rD   rG   rO   rU   rX   r]   r`   rf   r   rm   re   ru   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r   r   r   r   <module>   s~     $

Y	