o
    iT                     @   s  d dl mZmZmZmZmZmZ d dlmZm	Z	 d dl
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 dd	lmZ d
ddddgdd
iddiddd dddddd
iddddiddddddd
iddgdddddddgdd
idd d!d"d#dd$dd%idd&gd&dd
iidgidd'd(idd
idd
id)dd(gd*d+dd,idd-d
d.d/g d0d1id-gd2gd3d4dd,idd5ddd6d d d7id5gd2gd3g
ZG d8d9 d9eZerd:d:d:d;d<ed=ee d>ee d?eeeef  d@ef
dAdBZd:S erejZd:S ejZd:S )C    )TYPE_CHECKINGAnyDictListOptionalUnion)	BaseModelField)PYDANTIC_V2
ConfigDictExtramin_length_arg   )DataType)Discriminator)ExternalDocumentation)	Reference)XMLstringemail)typeformatobjectnamer   z$refz#/components/schemas/Addressintegerint32)r   r   minimum)r   addressage)r   required
properties)r   additionalPropertiesz!#/components/schemas/ComplexModelint64)idr   Puma)r   r#   )r   r    r   examplemessagecoded   iX  )r   r   maximum)r&   r'   allOfz#/components/schemas/ErrorModel	rootCausepropertyNamepetType)r   r-   )r   discriminatorr    r   zSA representation of a cat. Note that `Cat` will be used as the discriminator value.z#/components/schemas/PethuntingSkillzThe measured skill for huntinglazy)cluelessr0   adventurous
aggressive)r   descriptiondefaultenum)r   r    r   )r4   r*   zSA representation of a dog. Note that `Dog` will be used as the discriminator value.packSizez$the size of the pack the dog is from)r   r   r4   r5   r   c                   @   sz  e Zd ZU dZ	 dZee ed< 	 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
< 	 edddZee ed< 	 edddZee e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< 	 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d4ddiedZeee  ed< 	 ed4ddiedZeee  ed< 	 	 dZee ed< 	 dZ eee!e"d f   ed< 	 dZ#eee!e"d f   ed< 	 dZ$eee!e"d f   ed< 	 edddZ%ee!e"d f  ed< 	 dZ&ee!e"d f  ed < 	 dZ'ee(ee!e"d f f  ed!< 	 dZ)ee!ee"d f  ed"< 	 dZ*ee ed#< 	 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Z0ee ed(< 	 dZ1ee ed)< 	 dZ2ee3 ed*< 	 dZ4ee5 ed+< 	 dZ6ee ed,< 	 dZ7ee ed-< 	 e8re9d.d/d0e:id1Z;dS G d2d3 d3Z<dS )5Schemaa=  
    The Schema Object allows the definition of input and output data types.
    These types can be objects, but also primitives and arrays.
    This object is an extended subset of the [JSON Schema Specification Wright Draft 00](https://json-schema.org/).

    For more information about the properties,
    see [JSON Schema Core](https://tools.ietf.org/html/draft-wright-json-schema-00)
    and [JSON Schema Validation](https://tools.ietf.org/html/draft-wright-json-schema-validation-00).
    Unless stated otherwise, the property definitions follow the JSON Schema.
    Ntitleg        )r5   gt
multipleOfr)   exclusiveMaximumr   exclusiveMinimumr   )r5   ge	maxLength	minLengthpatternmaxItemsminItemsuniqueItemsmaxPropertiesminPropertiesr5   r   r   r6   r   r*   oneOfanyOfnot)r5   alias
schema_notitemsr    r!   r4   r   schema_formatnullabler.   readOnly	writeOnlyxmlexternalDocsr%   
deprecatedallowTexamples)extrapopulate_by_namejson_schema_extrac                   @   s   e Zd ZejZdZdeiZdS )zSchema.ConfigTrU   N)	__name__
__module____qualname__r   rT   rV   allow_population_by_field_name	_examplesschema_extra r_   r_   e/var/www/html/karishye-ai-python/venv/lib/python3.10/site-packages/openapi_pydantic/v3/v3_0/schema.pyConfigR  s    ra   r_   )=rY   rZ   r[   __doc__r9   r   str__annotations__r	   r;   floatr)   r<   boolr   r=   r?   intr@   rA   rB   rC   rD   rE   rF   r   r   r   r6   r   r   r   r*   r   r   rG   rH   rK   rL   r    r   r!   r4   rM   r5   rN   r.   r   rO   rP   rQ   r   rR   r   r%   rS   r
   r   r]   model_configra   r_   r_   r_   r`   r8   p   s   
 


&&	
  	


r8   N)strictfrom_attributescontextobjri   rj   rk   returnc                C   s   d S )Nr_   )rl   ri   rj   rk   r_   r_   r`   schema_validateZ  s   rn   ) typingr   r   r   r   r   r   pydanticr   r	   openapi_pydantic.compatr
   r   r   r   datatyper   r.   r   external_documentationr   	referencer   rQ   r   r]   r8   rf   rc   rn   model_validate	parse_objr_   r_   r_   r`   <module>   s     
	

	

	c   k

