ó
    >:jÐ  ã                  óî   • S r SSKJr  SSKJrJr  SSKJr  SSK	J
r
  SSKJr  SSKJr  \(       a  SS	KJq  SS
KJq  SSKJq  SSKJr  OSqSqSqSS jr " S S\\\S-  4   5      r " S S\5      rSS/rg)z Azure Key Vault settings source.é    )Úannotations)ÚIteratorÚMapping)ÚTYPE_CHECKING)Úto_snake)Ú	FieldInfoé   )ÚEnvSettingsSource©ÚTokenCredential©ÚResourceNotFoundError©ÚSecretClient)ÚBaseSettingsNc                 óf   •  SSK Jq  SSKJq  SSKJq  g ! [         a  n [        S5      U eS n A ff = f)Nr   r   r   r   zdAzure Key Vault dependencies are not installed, run `pip install pydantic-settings[azure-key-vault]`)Úazure.core.credentialsr   Úazure.core.exceptionsr   Úazure.keyvault.secretsr   ÚImportError)Úes    Úf/home/mande/repo/quber/.venv/lib/python3.13/site-packages/pydantic_settings/sources/providers/azure.pyÚimport_azure_key_vaultr      s3   € ð
Ý:Ý?Þ7øÜó ÜØró
àð	ûðús   ‚ •
0Ÿ+«0c                  óz   • \ rS rSr% S\S'   S\S'   S\S'             SS jrSS	 jrSS
 jrSS jrSS jr	Sr
g)ÚAzureKeyVaultMappingé(   zdict[str, str | None]Ú_loaded_secretsr   Ú_secret_clientz	list[str]Ú_secret_namesc                ó€   • 0 U l         Xl        X l        X0l        U(       a  UOSU l        U R                  5       U l        g )NÚ )r   r   Ú_case_sensitiveÚ_snake_case_conversionÚ_env_prefixÚ_load_remoteÚ_secret_map)ÚselfÚsecret_clientÚcase_sensitiveÚsnake_case_conversionÚ
env_prefixs        r   Ú__init__ÚAzureKeyVaultMapping.__init__-   s;   € ð  "ˆÔØ+ÔØ-ÔØ&;Ô#Þ)3™:¸ˆÔØ+/×+<Ñ+<Ó+>ˆÕó    c           
     óÞ  • S U R                   R                  5        5       nU R                  (       am  0 nU Hc  nUR                  U R                  5      (       a3  X2U R                   [        U[        U R                  5      S  5       3'   MV  X2[        U5      '   Me     U$ U R                  (       a  U Vs0 s H  o3U_M     sn$ U Vs0 s H  o3R                  5       U_M     sn$ s  snf s  snf )Nc              3  ó„   #   • U  H6  oR                   (       d  M  UR                  (       d  M(  UR                   v •  M8     g 7f©N)ÚnameÚenabled)Ú.0Úsecrets     r   Ú	<genexpr>Ú4AzureKeyVaultMapping._load_remote.<locals>.<genexpr><   s+   é € ð '
Ú&V˜F×ZeÕZe‹KÐjp×jxÕjx‹KˆF�KŽKÒ&Vùs   ‚A šA ­A )	r   Úlist_properties_of_secretsr#   Ú
startswithr$   r   Úlenr"   Úlower)r'   Úsecret_namesÚname_mapr2   s       r   r%   Ú!AzureKeyVaultMapping._load_remote;   sÙ   € ñ'
Ø&*×&9Ñ&9×&TÑ&TÔ&Vó'
ˆð ×&×&Ø')ˆHÛ$�Ø—?‘? 4×#3Ñ#3×4Ñ4Ø_c × 0Ñ 0Ð1´(¸4ÄÀD×DTÑDTÓ@UÐ@WÐ;XÓ2YÐ1ZÐ[Ó\à/3œX d›^Ó,ñ	 %ð
 ˆOà××Ù+7Ó8ª< 4˜$’J©<Ñ8Ð8á/;Ó<ª| t—
‘
“˜dÒ"©|Ñ<Ð<ùò 9ùâ<s   Â5C%ÃC*c                ó  • UnU R                   (       a\  UR                  U R                  5      (       a0  U R                   [        U[	        U R                  5      S  5       3nO-[        U5      nO!U R
                  (       d  UR                  5       nX R                  ;  aZ  X R                  ;   a@  U R                  R                  U R                  U   5      R                  U R                  U'   O[        U5      eU R                  U   $ r1   )r#   r9   r$   r   r:   r"   r;   r   r&   r   Ú
get_secretÚvalueÚKeyError)r'   ÚkeyÚnew_keys      r   Ú__getitem__Ú AzureKeyVaultMapping.__getitem__N   sÖ   € Øˆà×&×&Ø�~‰~˜d×.Ñ.×/Ñ/Ø!×-Ñ-Ð.¬x¸¼CÀ×@PÑ@PÓ<QÐ<SÐ8TÓ/UÐ.VÐW‘ä" 3›-‘à×%×%Ø—i‘i“kˆGà×.Ñ.Ó.Ø×*Ñ*Ó*Ø04×0CÑ0C×0NÑ0NÈt×O_ÑO_Ð`gÑOhÓ0i×0oÑ0o�×$Ñ$ WÒ-ä˜s“mÐ#à×#Ñ# GÑ,Ð,r.   c                ó,   • [        U R                  5      $ r1   )r:   r&   ©r'   s    r   Ú__len__ÚAzureKeyVaultMapping.__len__b   s   € Ü�4×#Ñ#Ó$Ð$r.   c                óH   • [        U R                  R                  5       5      $ r1   )Úiterr&   ÚkeysrH   s    r   Ú__iter__ÚAzureKeyVaultMapping.__iter__e   s   € Ü�D×$Ñ$×)Ñ)Ó+Ó,Ð,r.   )r"   r$   r   r   r&   r#   N)
r(   r   r)   Úboolr*   rP   r+   ú
str | NoneÚreturnÚNone)rR   zdict[str, str])rC   ÚstrrR   rQ   )rR   Úint)rR   zIterator[str])Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__r,   r%   rE   rI   rN   Ú__static_attributes__© r.   r   r   r   (   s]   ‡ Ø*Ó*Ø Ó ØÓð?à#ð?ð ð?ð  $ð	?ð
 ð?ð 
ô?ô=ô&-ô(%÷-r.   r   c                  óœ   ^ • \ rS rSr% S\S'   S\S'         S                   SU 4S jjjrSS jrSU 4S jjrSS	 jrS
r	U =r
$ )ÚAzureKeyVaultSettingsSourceéi   rT   Ú_urlr   Ú_credentialc
           
     ó”   >• [        5         X l        X0l        X@l        X`l        [
        T
U ]  UU(       a  SOUUU(       a  SOSSUU	S9  g )NTÚ__z--F)r)   r+   Úenv_nested_delimiterÚenv_ignore_emptyÚenv_parse_none_strÚenv_parse_enums)r   r`   ra   Ú_dash_to_underscorer#   Úsuperr,   )r'   Úsettings_clsÚurlÚ
credentialÚdash_to_underscorer)   r*   r+   rf   rg   Ú	__class__s             €r   r,   Ú$AzureKeyVaultSettingsSource.__init__m   sQ   ø€ ô 	Ô ØŒ	Ø%ÔØ#5Ô Ø&;Ô#Ü‰ÑØÞ#8™4¸nØ!Þ)>¡ÀDØ"Ø1Ø+ð 	ò 	
r.   c                ó’   • [        U R                  U R                  S9n[        UU R                  U R
                  U R                  S9$ )N)Ú	vault_urlrl   )r(   r)   r*   r+   )r   r`   ra   r   r)   r#   r+   )r'   r(   s     r   Ú_load_env_varsÚ*AzureKeyVaultSettingsSource._load_env_varsˆ   sA   € Ü$¨t¯y©yÀT×EUÑEUÑVˆÜ#Ø'Ø×.Ñ.Ø"&×"=Ñ"=Ø—‘ñ	
ð 	
r.   c                óæ   >• U R                   (       a!  [        S [        TU ]  X5       5       5      nU$ U R                  (       a  [        S [        TU ]  X5       5       5      $ [        TU ]  X5      $ )Nc              3  ó<   #   • U  H  oS    US   US   4v •  M     g7f)r   r	   é   Nr\   ©r4   Úxs     r   r6   ÚBAzureKeyVaultSettingsSource._extract_field_info.<locals>.<genexpr>“   s#   é € ÐiÒ:h°Q ™t Q q¡T¨1¨Q©4Õ0Ò:hùs   ‚c              3  ó\   #   • U  H"  oS    US   R                  SS5      US   4v •  M$     g7f)r   r	   Ú_Ú-rv   N)Úreplacerw   s     r   r6   ry   —   s.   é € ÐuÒFtÀ˜1™˜q ™tŸ|™|¨C°Ó5°q¸±tÕ<ÒFtùs   ‚*,)r#   Úlistri   Ú_extract_field_inforh   )r'   ÚfieldÚ
field_nameÚ
field_inforn   s       €r   r   Ú/AzureKeyVaultSettingsSource._extract_field_info‘   sb   ø€ Ø×&×&ÜÑi¼%¹'Ñ:UÐV[Ô:hÓiÓiˆJØÐà×#×#ÜÑuÄeÁgÑFaÐbgÔFtÓuÓuÐuä‰wÑ*¨5Ó=Ð=r.   c                ól   • U R                   R                   SU R                  < SU R                  < S3$ )Nz(url=z, env_nested_delimiter=Ú))rn   rV   r`   rd   rH   s    r   Ú__repr__Ú$AzureKeyVaultSettingsSource.__repr__›   s4   € Ø—.‘.×)Ñ)Ð*¨%°·	±	©}Ð<SÐTX×TmÑTmÑSpÐpqÐrÐrr.   )ra   rh   r#   r`   )FNFNNN)rj   ztype[BaseSettings]rk   rT   rl   r   rm   rP   r)   úbool | Noner*   rP   r+   rQ   rf   rQ   rg   rˆ   rR   rS   )rR   zMapping[str, str | None])r€   r   r�   rT   rR   zlist[tuple[str, str, bool]])rR   rT   )rV   rW   rX   rY   rZ   r,   rr   r   r†   r[   Ú__classcell__)rn   s   @r   r^   r^   i   s¤   ø‡ Ø
ƒIØ Ó ð $)Ø&*Ø&+Ø!%Ø)-Ø'+ð
à(ð
ð ð
ð $ð	
ð
 !ð
ð $ð
ð  $ð
ð ð
ð 'ð
ð %ð
ð 
÷
ð 
ô6
÷>÷sò sr.   r^   )rR   rS   )Ú__doc__Ú
__future__r   Ú_annotationsÚcollections.abcr   r   Útypingr   Úpydantic.alias_generatorsr   Úpydantic.fieldsr   Úenvr
   r   r   r   r   r   r   Úpydantic_settings.mainr   r   rT   r   r^   Ú__all__r\   r.   r   Ú<module>r”      su   ðÙ &å 2ç -Ý  å .Ý %å "æÝ6Ý;Ý3æ3à€OØ ÐØ€Lôô>-˜7 3¨¨d©
 ?Ñ3ô >-ôB3sÐ"3ô 3sðl "Ð#@Ð
A�r.   