Ë
    &V.j‹  ã                  ó~  — U d Z ddlm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mZmZ ddlmZ ddlmZ dd	lmZ erdd
lmZ ddlmZmZ dZee e!e"e#ded   df   Z$de%d<   e
e"e$f   Z&de%d<   e	egef   Z'ee	e&gdf   e	e&ee   gdf   f   Z(de%d<   ed   Z) G d„ ded¬«      Z* ede+¬«      Z,dd„Z- ee.«      Z/y)z"Configuration for Pydantic models.é    )Úannotations)ÚPattern)ÚTYPE_CHECKINGÚAnyÚCallableÚDictÚListÚTypeÚTypeVarÚUnion)ÚLiteralÚ	TypeAliasÚ	TypedDicté   )Úgetattr_migration)ÚAliasGenerator)ÚPydanticUserError)ÚGenerateSchema)ÚComputedFieldInfoÚ	FieldInfo)Ú
ConfigDictÚwith_configNÚ	JsonValueÚJsonDictr   ÚJsonSchemaExtraCallable)ÚallowÚignoreÚforbidc                  óü  — e Zd ZU dZded<   	 ded<   	 ded<   	 ded	<   	 ded
<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 ded<   	 d ed!<   	 ded"<   	 d#ed$<   	 d%ed&<   	 d'ed(<   	 d'ed)<   	 d*ed+<   	 ded,<   	 ded-<   	 d.ed/<   	 ded0<   	 ded1<   	 d2ed3<   	 d4ed5<   	 ded6<   	 d7ed8<   	 ded9<   	 d:ed;<   	 ded<<   	 ded=<   	 d>ed?<   y@)Ar   z/A TypedDict for configuring Pydantic behaviour.z
str | NoneÚtitlezCallable[[type], str] | NoneÚmodel_title_generatorz:Callable[[str, FieldInfo | ComputedFieldInfo], str] | NoneÚfield_title_generatorÚboolÚstr_to_lowerÚstr_to_upperÚstr_strip_whitespaceÚintÚstr_min_lengthz
int | NoneÚstr_max_lengthzExtraValues | NoneÚextraÚfrozenÚpopulate_by_nameÚuse_enum_valuesÚvalidate_assignmentÚarbitrary_types_allowedÚfrom_attributesÚloc_by_aliasz,Callable[[str], str] | AliasGenerator | NoneÚalias_generatorztuple[type, ...]Úignored_typesÚallow_inf_nanz)JsonDict | JsonSchemaExtraCallable | NoneÚjson_schema_extraz&dict[type[object], JsonEncoder] | NoneÚjson_encodersÚstrictz0Literal['always', 'never', 'subclass-instances']Úrevalidate_instanceszLiteral['iso8601', 'float']Úser_json_timedeltaz Literal['utf8', 'base64', 'hex']Úser_json_bytesÚval_json_bytesz'Literal['null', 'constants', 'strings']Úser_json_inf_nanÚvalidate_defaultÚvalidate_returnztuple[str | Pattern[str], ...]Úprotected_namespacesÚhide_input_in_errorsÚdefer_buildzdict[str, object] | NoneÚplugin_settingsztype[_GenerateSchema] | NoneÚschema_generatorÚ+json_schema_serialization_defaults_requiredz,Literal['validation', 'serialization', None]Újson_schema_mode_overrideÚcoerce_numbers_to_strz"Literal['rust-regex', 'python-re']Úregex_engineÚvalidation_error_causeÚuse_attribute_docstringsz%bool | Literal['all', 'keys', 'none']Úcache_stringsN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú__annotations__© ó    úQC:\xampp\htdocs\tradingbinance\backend\.venv\Lib\site-packages\pydantic/config.pyr   r   "   sò  … Ù9àÓØOà7Ó7Ø_àUÓUØeàÓØ\àÓØ\àÓØIàÓØ?àÓØ?àÓð>ð@ ƒLðð Óðð< Óð$ðL Óð1ðf "Ó!ð4ðl Óðð Óð MàAÓAð8ðt $Ó#ðð ÓØvà@Ó@ØYà9Ó9ðð ƒLðð4 KÓJð|ð| 4Ó3ðð 5Ó4ðð 5Ó4ðð >Ó=ðð ÓØTàÓØYà8Ó8ð[ðz Óð)ðV Óðð .Ó-Ø?à2Ó2ðð 26Ó5ð$ðL  LÓKð4ðl  Óð#ðJ 5Ó4ð"ðH !Ó ðð #Ó"ð#ðJ 9Ó8ðrQ   r   F)ÚtotalÚ_TypeT)Úboundc                ó   ‡ — dˆ fd„}|S )a)  Usage docs: https://docs.pydantic.dev/2.10/concepts/config/#configuration-with-dataclass-from-the-standard-library-or-typeddict

    A convenience decorator to set a [Pydantic configuration](config.md) on a `TypedDict` or a `dataclass` from the standard library.

    Although the configuration can be set using the `__pydantic_config__` attribute, it does not play well with type checkers,
    especially with `TypedDict`.

    !!! example "Usage"

        ```python
        from typing_extensions import TypedDict

        from pydantic import ConfigDict, TypeAdapter, with_config

        @with_config(ConfigDict(str_to_lower=True))
        class Model(TypedDict):
            x: str

        ta = TypeAdapter(Model)

        print(ta.validate_python({'x': 'ABC'}))
        #> {'x': 'abc'}
        ```
    c               óh   •— ddl m}  || «      rt        d| j                  › d�d¬«      ‚‰| _        | S )Nr   )Úis_model_classzCannot use `with_config` on z as it is a Pydantic modelzwith-config-on-model)Úcode)Ú_internal._utilsrX   r   rK   Ú__pydantic_config__)Úclass_rX   Úconfigs     €rR   Úinnerzwith_config.<locals>.inner  sA   ø€ õ 	5á˜&Ô!Ü#Ø.¨v¯©Ð.?Ð?YÐZØ+ôð ð &,ˆÔ"ØˆrQ   )r\   rT   ÚreturnrT   rP   )r]   r^   s   ` rR   r   r   î  s   ø€ õ4ð €LrQ   )r]   r   r_   zCallable[[_TypeT], _TypeT])0rN   Ú
__future__r   Ú_annotationsÚrer   Útypingr   r   r   r   r	   r
   r   r   Útyping_extensionsr   r   r   Ú
_migrationr   Úaliasesr   Úerrorsr   Ú_internal._generate_schemar   Ú_GenerateSchemaÚfieldsr   r   Ú__all__r'   ÚfloatÚstrr#   r   rO   r   ÚJsonEncoderr   ÚExtraValuesr   ÚtyperT   r   rK   Ú__getattr__rP   rQ   rR   Ú<module>rr      sö   ðÚ (å 2å ß Q× QÓ Qç ;Ñ ;å )Ý #Ý %áÝMß4à
'€ð ˜S %¨¨d°D¸$¸{Ñ:KÈZÐWÑX€	ˆ9Ó XØ˜3 	˜>Ñ*€ˆ)Ó *à˜�u˜c�zÑ"€à%*ØˆhˆZ˜ÐÑØˆh˜˜S™	Ð" DÐ(Ñ)ð+ñ&Ð ˜ó ð
 Ð1Ñ2€ôF� %õ FñR 
� Ô	&€ó(ñV   Ó)�rQ   