+
    CO|j9  ã                  ó  € R t ^ RIHt ^ RIHtHt ^ RIHt ^ RI	H
t
 ^ RIHt ^RIHt ^RIHt ]'       d   ^ RIHs ^ R	IHs ^ R
IHs ^ RIHt MRsRsRsR R lt ! R R]]]R,          3,          4      t ! R R]4      tRR.tR# )z Azure Key Vault settings source.)Úannotations)ÚIteratorÚMapping)ÚTYPE_CHECKING)Úto_snake)Ú	FieldInfo)Ú	InitState)ÚEnvSettingsSource©ÚTokenCredential©ÚResourceNotFoundError©ÚSecretClient)ÚBaseSettingsNc               ó   € V ^8„  d   QhRR/# )é   ÚreturnÚNone© )Úformats   "ÚbC:\Users\alokc\chatbot\backend\venv\Lib\site-packages\pydantic_settings/sources/providers/azure.pyÚ__annotate__r      s   € ÷ ñ  ñ ó    c                 ój   €  ^ RI Hs ^ RIHs ^ RIHs R#   \         d   p \        R4      T hRp ? ii ; i)é    r
   r   r   zdAzure Key Vault dependencies are not installed, run `pip install pydantic-settings[azure-key-vault]`N)Úazure.core.credentialsr   Úazure.core.exceptionsr   Úazure.keyvault.secretsr   ÚImportError)Úes    r   Úimport_azure_key_vaultr!      s3   € ð
Ý:Ý?ß7øÜô ÜØró
àð	ûðús   ‚ –2¡-­2c                  ór   € ] tR t^)t$ R]R&   R]R&   R]R&   R R ltR	 R
 ltR R ltR R ltR R lt	Rt
R# )ÚAzureKeyVaultMappingzdict[str, str | None]Ú_loaded_secretsr   Ú_secret_clientz	list[str]Ú_secret_namesc          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# )
r   Úsecret_clientr   Úcase_sensitiveÚboolÚsnake_case_conversionÚ
env_prefixú
str | Noner   r   r   )r   s   "r   r   Ú!AzureKeyVaultMapping.__annotate__.   s<   € ÷ ?ñ ?à#ð?ð ð?ð  $ð	?ð
 ð?ð 
ñ?r   c                	ó„   € / V n         Wn        W n        W0n        V'       d   TMR V n        V P                  4       V n        R# )Ú N)r$   r%   Ú_case_sensitiveÚ_snake_case_conversionÚ_env_prefixÚ_load_remoteÚ_secret_map)Úselfr(   r)   r+   r,   s   &&&&&r   Ú__init__ÚAzureKeyVaultMapping.__init__.   s;   € ð  "ˆÔØ+ÔØ-ÔØ&;Ô#ß)3™:¸ˆÔØ+/×+<Ñ+<Ó+>ˆÖr   c               ó   € V ^8„  d   QhRR/# )r   r   zdict[str, str]r   )r   s   "r   r   r.   <   s   € ÷ =ñ =˜nñ =r   c           
     	óà  € R  V P                   P                  4        4       pV P                  '       do   / pV Fd  pVP                  V P                  4      '       d4   W2V P                   \        V\        V P                  4      R 4       2&   KW  W2\        V4      &   Kf  	  V# V P                  '       d   V Uu/ uF  q3VbK  	  up# V Uu/ uF  q3P                  4       VbK  	  up# u upi u upi )c              3  óˆ   "  € T F8  qP                   '       g   K  VP                  '       g   K*  VP                   x € K:  	  R # 5i©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N)	r%   Úlist_properties_of_secretsr2   Ú
startswithr3   r   Úlenr1   Úlower)r6   Úsecret_namesÚname_mapr=   s   &   r   r4   Ú!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   Â8C&Ã
C+c               ó    € V ^8„  d   QhRRRR/# )r   ÚkeyÚstrr   r-   r   )r   s   "r   r   r.   O   s   € ÷ -ñ -˜sð - zñ -r   c                	ó,  € TpV P                   '       d^   VP                  V P                  4      '       d1   V P                   \        V\	        V P                  4      R  4       2pM.\        V4      pM"V P
                  '       g   VP                  4       pW P                  9  d`   W P                  9   dE   V P                  P                  V P                  V,          4      P                  V P                  V&   M\        V4      hV P                  V,          # r<   )r2   rD   r3   r   rE   r1   rF   r$   r5   r%   Ú
get_secretÚvalueÚKeyError)r6   rK   Únew_keys   && r   Ú__getitem__Ú AzureKeyVaultMapping.__getitem__O   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               ó   € V ^8„  d   QhRR/# )r   r   Úintr   )r   s   "r   r   r.   c   s   € ÷ %ñ %˜ñ %r   c                	ó,   € \        V P                  4      # r<   )rE   r5   ©r6   s   &r   Ú__len__ÚAzureKeyVaultMapping.__len__c   s   € Ü�4×#Ñ#Ó$Ð$r   c               ó   € V ^8„  d   QhRR/# )r   r   zIterator[str]r   )r   s   "r   r   r.   f   s   € ÷ -ñ -˜-ñ -r   c                	óH   € \        V P                  P                  4       4      # r<   )Úiterr5   ÚkeysrW   s   &r   Ú__iter__ÚAzureKeyVaultMapping.__iter__f   s   € Ü�D×$Ñ$×)Ñ)Ó+Ó,Ð,r   )r1   r3   r$   r%   r5   r2   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__r7   r4   rR   rX   r^   Ú__static_attributes__r   r   r   r#   r#   )   s2   ‡ Ø*Ó*Ø Ó ØÓõ?õ=õ&-õ(%÷-ñ -r   r#   c                  ór   a € ] tR t^jt$ R]R&   R]R&   RR V 3R llltR R ltR	 V 3R
 lltR R ltRt	V ;t
# )ÚAzureKeyVaultSettingsSourcerL   Ú_urlr   Ú_credentialc               óD   € V ^8„  d   QhRRRRRRRRR	R
RRRRRRRR
RRRR/# )r   Úsettings_clsztype[BaseSettings]ÚurlrL   Ú
credentialr   Údash_to_underscorer*   r)   zbool | Noner+   r,   r-   Úenv_parse_none_strÚenv_parse_enumsÚ_init_statezInitState | Noner   r   r   )r   s   "r   r   Ú(AzureKeyVaultSettingsSource.__annotate__n   sx   € ÷ 
ñ 
à(ð
ð ð
ð $ð	
ð
 !ð
ð $ð
ð  $ð
ð ð
ð 'ð
ð %ð
ð &ð
ð 
ñ
r   c                	ó¢   <€ \        4        W n        W0n        W@n        W`n        \
        ST `  TV'       d   R MTTV'       d   RMRRVV	V
R7       R# )TÚ__z--F)r)   r,   Úenv_nested_delimiterÚenv_ignore_emptyro   rp   rq   N)r!   rh   ri   Ú_dash_to_underscorer2   Úsuperr7   )r6   rk   rl   rm   rn   r)   r+   r,   ro   rp   rq   Ú	__class__s   &&&&&&&&&&&€r   r7   Ú$AzureKeyVaultSettingsSource.__init__n   sT   ø€ ô 	Ô ØŒ	Ø%ÔØ#5Ô Ø&;Ô#Ü‰ÑØß#8™4¸nØ!ß)>¡ÀDØ"Ø1Ø+Ø#ð 	ö 		
r   c               ó   € V ^8„  d   QhRR/# )r   r   zMapping[str, str | None]r   )r   s   "r   r   rr   ‹   s   € ÷ 
ñ 
Ð 8ñ 
r   c                	óž   € \        V P                  V P                  R 7      p\        VV P                  V P
                  V P                  R7      # ))Ú	vault_urlrm   )r(   r)   r+   r,   )r   rh   ri   r#   r)   r2   r,   )r6   r(   s   & r   Ú_load_env_varsÚ*AzureKeyVaultSettingsSource._load_env_vars‹   sA   € Ü$¨t¯y©yÀT×EUÑEUÔVˆÜ#Ø'Ø×.Ñ.Ø"&×"=Ñ"=Ø—‘ô	
ð 	
r   c               ó$   € V ^8„  d   QhRRRRRR/# )r   Úfieldr   Ú
field_namerL   r   zlist[tuple[str, str, bool]]r   )r   s   "r   r   rr   ”   s"   € ÷ >ñ >¨ð >Àð >ÐHcñ >r   c                	óx  <€ V P                   '       d8   \        SV `	  W4       Uu. uF  q3^ ,          V^,          V^,          3NK  	  ppV# V P                  '       dG   \        SV `	  W4       Uu. uF,  q3^ ,          V^,          P	                  RR4      V^,          3NK.  	  up# \        SV `	  W4      # u upi u upi )r   Ú_Ú-)r2   rx   Ú_extract_field_inforw   Úreplace)r6   r�   r‚   ÚxÚ
field_infory   s   &&&  €r   r†   Ú/AzureKeyVaultSettingsSource._extract_field_info”   s­   ø€ Ø×&×&Ð&Ü6;±gÑ6QÐRWÔ6dÓeÑ6d°˜Q�4  1¥ q¨¥tÓ,Ñ6dˆJÐeØÐà×#×#Ð#ÜBGÁ'ÑB]Ð^cÔBpÓqÑBp¸Q�q•T˜1˜Q�4Ÿ<™<¨¨SÓ1°1°Qµ4Ó8ÑBpÑqÐqä‰wÑ*¨5Ó=Ð=ùò fùò rs   ¥"B2Á.2B7c               ó   € V ^8„  d   QhRR/# )r   r   rL   r   )r   s   "r   r   rr   ž   s   € ÷ sñ s˜#ñ sr   c                	ól   € V P                   P                   R V P                  : RV P                  : R2# )z(url=z, env_nested_delimiter=Ú))ry   r`   rh   ru   rW   s   &r   Ú__repr__Ú$AzureKeyVaultSettingsSource.__repr__ž   s4   € Ø—.‘.×)Ñ)Ð*¨%°·	±	©}Ð<SÐTX×TmÑTmÑSpÐpqÐrÐrr   )ri   rw   r2   rh   )FNFNNNN)r`   ra   rb   rc   rd   r7   r~   r†   rŽ   re   Ú__classcell__)ry   s   @r   rg   rg   j   s3   ø‡ Ø
ƒIØ Ó ÷
ò 
õ:
÷>ð >÷só sr   rg   )Ú__doc__Ú
__future__r   Ú_annotationsÚcollections.abcr   r   Útypingr   Úpydantic.alias_generatorsr   Úpydantic.fieldsr   Úutilsr   Úenvr	   r   r   r   r   r   r   Úpydantic_settings.mainr   r!   rL   r#   rg   Ú__all__r   r   r   Ú<module>rœ      sx   ðÙ &å 2ç -Ý  å .Ý %å Ý "çÝ6Ý;Ý3æ3à€OØ ÐØ€Lõô>-˜7 3¨¨d­
 ?Õ3ô >-ôB5sÐ"3ô 5sðp "Ð#@Ð
A‚r   