§
    9ˆtjõ­  ã                  óL  — U d Z ddlmZ ddl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mZ ddl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¬¦  «        Z0 ede-¬¦  «        Z1e ed¦  «        d&d„¦   «         ¦   «         Z2ed&d„¦   «         Z2ed'd!„¦   «         Z2d(d)d%„Z2 ee3¦  «        Z4dS )*z"Configuration for Pydantic models.é    )ÚannotationsN)ÚPattern)ÚTYPE_CHECKINGÚAnyÚCallableÚLiteralÚTypeVarÚUnionÚcastÚoverload)Ú	TypeAliasÚ	TypedDictÚUnpackÚ
deprecatedé   )Úgetattr_migration)ÚAliasGenerator)ÚPydanticUserError)ÚPydanticDeprecatedSince211)ÚGenerateSchema)ÚComputedFieldInfoÚ	FieldInfo)Ú
ConfigDictÚwith_configÚ	JsonValueÚJsonDictr   ÚJsonSchemaExtraCallable)ÚallowÚignoreÚforbidc                  óR  — 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d0<   	 ded1<   	 d2ed3<   	 ded4<   	 ded5<   	 d6ed7<   	 d8ed9<   	 ded:<   	 d;ed<<   	 ded=<   	 d>ed?<   	 ded@<   	 dedA<   	 dBedC<   	 dedD<   	 dedE<   	 dedF<   	 dedG<   	 dedH<   dIS )Jr   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['iso8601', 'seconds', 'milliseconds']Úser_json_temporalz+Literal['seconds', 'milliseconds', 'infer']Úval_temporal_unitz 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_stringsÚvalidate_by_aliasÚvalidate_by_nameÚserialize_by_aliasÚurl_preserve_empty_pathÚpolymorphic_serializationN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú__annotations__© ó    úM/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/pydantic/config.pyr   r   $   s‚  € € € € € € Ø9Ð9àÐÐÑØOà7Ð7Ð7Ñ7Ø_àUÐUÐUÑUØeàÐÐÑØ\àÐÐÑØ\àÐÐÑØIàÐÐÑØ?àÐÐÑØ?àÐÐÑðqðf €L€L�Lðð ÐÐÑð$ðL ÐÐÑð$ðL ÐÐÑð1ðf "Ð!Ð!Ñ!ð4ðl ÐÐÑðð ÐÐÑð MàAÐAÐAÑAð8ðt $Ð#Ð#Ñ#ðð ÐÐÑØvà@Ð@Ð@Ñ@ØYà9Ð9Ð9Ñ9ðð €L€L�Lðð: KÐJÐJÑJðEðN 4Ð3Ð3Ñ3ðð EÐDÐDÑDðð, CÐBÐBÑBðð$ 5Ð4Ð4Ñ4ðð 5Ð4Ð4Ñ4ð
ð >Ð=Ð=Ñ=ðð ÐÐÑØTàÐÐÑØYà8Ð8Ð8Ñ8ð[ðz ÐÐÑð)ðV ÐÐÑð
ð .Ð-Ð-Ñ-Ø?à2Ð2Ð2Ñ2ðð 6Ð5Ð5Ñ5ð'ðR LÐKÐKÑKð7ðr  ÐÐÑð#ðJ 5Ð4Ð4Ñ4ð$ðL !Ð Ð Ñ ðð #Ð"Ð"Ñ"ð&ðP 9Ð8Ð8Ñ8ðð* ÐÐÑð"ðH ÐÐÑð$ðL ÐÐÑððB "Ð!Ð!Ñ!ðð( $Ð#Ð#Ñ#ðð rZ   r   F)ÚtotalÚ_TypeT)ÚboundzePassing `config` as a keyword argument is deprecated. Pass `config` as a positional argument instead.ÚconfigÚreturnúCallable[[_TypeT], _TypeT]c                ó   — d S ©NrY   ©r_   s    r[   r   r   Ã  s   € àFIÀcrZ   c               ó   — d S rc   rY   rd   s    r[   r   r   È  s   € ØFIÀcrZ   úUnpack[ConfigDict]c                 ó   — d S rc   rY   rd   s    r[   r   r   Ì  s   € ØMPÈSrZ   úConfigDict | NoneÚkwargsr   c               ó$  ‡— | �|rt          d¦  «        ‚t          |¦  «        dk    rI|                     d¦  «        x}�2t          j        dt
          d¬¦  «         t          t          |¦  «        Šn| �| nt          t          |¦  «        Šdˆfd„}|S )a   !!! abstract "Usage Documentation"
        [Configuration with other types](../concepts/config.md#configuration-on-other-supported-types)

    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 TD(TypedDict):
            x: str

        ta = TypeAdapter(TD)

        print(ta.validate_python({'x': 'ABC'}))
        #> {'x': 'abc'}
        ```

    /// deprecated-removed | v2.11 v3
    Passing `config` as a keyword argument.
    ///

    /// version-changed | v2.11
    Keyword arguments can be provided directly instead of a config dictionary.
    ///
    Nz2Cannot specify both `config` and keyword argumentsr   r_   zdPassing `config` as a keyword argument is deprecated. Pass `config` as a positional argument insteadé   )ÚcategoryÚ
stacklevelÚclass_r]   r`   c               ól   •— 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._utilsrp   r   rT   Ú__pydantic_config__)rn   rp   Úfinal_configs     €r[   Úinnerzwith_config.<locals>.innerÿ  sb   ø€ ð 	5Ð4Ð4Ð4Ð4Ð4àˆ>˜&Ñ!Ô!ð 	Ý#ØZ¨v¬ÐZÐZÐZØ+ðñ ô ð ð &2ˆÔ"ØˆrZ   )rn   r]   r`   r]   )Ú
ValueErrorÚlenÚgetÚwarningsÚwarnr   r   r   )r_   ri   Úkwargs_confru   rt   s       @r[   r   r   Ð  s¹   ø€ ðD Ð˜fÐÝÐMÑNÔNÐNå
ˆ6�{„{�aÒÐ¨F¯JªJ°xÑ,@Ô,@Ð@˜[ÐMÝŒØrÝ/Øð	
ñ 	
ô 	
ð 	
õ
 �J¨Ñ4Ô4ˆˆà!'Ð!3�v�v½½jÈ&Ñ9QÔ9Qˆðð ð ð ð ð ð €LrZ   )r_   r   r`   ra   )r_   rf   r`   ra   rc   )r_   rh   ri   r   r`   ra   )5rW   Ú
__future__r   Ú_annotationsry   Úrer   Útypingr   r   r   r   r	   r
   r   r   Útyping_extensionsr   r   r   r   Ú
_migrationr   Úaliasesr   Úerrorsr   r   Ú_internal._generate_schemar   Ú_GenerateSchemaÚfieldsr   r   Ú__all__r)   ÚfloatÚstrr%   Úlistr   rX   Údictr   ÚJsonEncoderÚtyper   ÚExtraValuesr   r]   r   rT   Ú__getattr__rY   rZ   r[   ú<module>r�      s¦  ðØ (Ð (Ð (à 2Ð 2Ð 2Ð 2Ð 2Ð 2à €€€Ø Ð Ð Ð Ð Ð Ø XÐ XÐ XÐ XÐ XÐ XÐ XÐ XÐ XÐ XÐ XÐ XÐ XÐ XÐ XÐ XÐ XÐ XÐ XÐ Xà FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ Fà )Ð )Ð )Ð )Ð )Ð )Ø #Ð #Ð #Ð #Ð #Ð #Ø %Ð %Ð %Ð %Ð %Ð %Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0àð 5ØMÐMÐMÐMÐMÐMØ4Ð4Ð4Ð4Ð4Ð4Ð4Ð4à
'€ð ˜S %¨¨d°D¸$¸{Ô:KÈZÐWÔX€	Ð XÐ XÐ XÑ XØ˜3 	˜>Ô*€Ð *Ð *Ð *Ñ *à˜�u˜c�zÔ"€à%*ØˆhˆZ˜ÐÔØˆh˜˜Sœ	Ð" DÐ(Ô)ð+ô&Ð ð ð ð ñ ð
 Ð1Ô2€ðYð Yð Yð Yð Y� %ð Yñ Yô Yð Yðx$ 
ˆ� Ð	&Ñ	&Ô	&€ð 
Ø€ÐsÑtÔtØ IÐ IÐ Iñ uÔtñ 
„à Ið 
Ø IÐ IÐ Iñ 
„Ø Ið 
Ø PÐ PÐ Pñ 
„Ø Pð=ð =ð =ð =ð =ð@  Ð Ñ)Ô)€€€rZ   