+
    i                       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 ]'       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)EnvSettingsSourceTokenCredentialResourceNotFoundErrorSecretClient)BaseSettingsNc                   V ^8  d   QhRR/# )   returnNone )formats   "ڃC:\Users\petid\OneDrive\Desktop\Maestro\MAESTRO\maestro-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+      '
&VFZeZeKjpjxjxKFKK&Vs   AAAN)	r$   list_properties_of_secretsr1   
startswithr2   r   lenr0   lower)r5   secret_namesname_mapr<   s   &   r   r3   !AzureKeyVaultMapping._load_remote;   s    '
&*&9&9&T&T&V'
 &&&')H$??4#3#344_c 0 01(4DDTDT@U@W;X2Y1Z[\/3Xd^,	 %
 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-   N   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;   )r1   rC   r2   r   rD   r0   rE   r#   r4   r$   
get_secretvalueKeyError)r5   rJ   new_keys   && r   __getitem__ AzureKeyVaultMapping.__getitem__N   s    &&&~~d..//!--.xC@P@P<Q<S8T/U.VW"3-%%%iikG...***040C0C0N0NtO_O_`gOh0i0o0o$$W-sm###G,,r   c                   V ^8  d   QhRR/# )r   r   intr   )r   s   "r   r   r-   b   s     % % %r   c                	,    \        V P                  4      # r;   )rD   r4   r5   s   &r   __len__AzureKeyVaultMapping.__len__b   s    4##$$r   c                   V ^8  d   QhRR/# )r   r   zIterator[str]r   )r   s   "r   r   r-   e   s     - -- -r   c                	H    \        V P                  P                  4       4      # r;   )iterr4   keysrV   s   &r   __iter__AzureKeyVaultMapping.__iter__e   s    D$$))+,,r   )r0   r2   r#   r$   r4   r1   N)__name__
__module____qualname____firstlineno____annotations__r6   r3   rQ   rW   r]   __static_attributes__r   r   r   r"   r"   (   s2    **  ?=&-(%- -r   r"   c                  r   a  ] tR t^it$ 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
# )AzureKeyVaultSettingsSourcerK   _urlr
   _credentialc               @    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   settings_clsztype[BaseSettings]urlrK   
credentialr
   dash_to_underscorer)   r(   zbool | Noner*   r+   r,   env_parse_none_strenv_parse_enumsr   r   r   )r   s   "r   r   (AzureKeyVaultSettingsSource.__annotate__m   sn     
 
(
 
 $	

 !
 $
  $
 
 '
 %
 

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	R7       R# )T__z--F)r(   r+   env_nested_delimiterenv_ignore_emptyrn   ro   N)r    rg   rh   _dash_to_underscorer1   superr6   )r5   rj   rk   rl   rm   r(   r*   r+   rn   ro   	__class__s   &&&&&&&&&&r   r6   $AzureKeyVaultSettingsSource.__init__m   sQ     	 	%#5 &;##84n!)>D"1+ 	 	
r   c                   V ^8  d   QhRR/# )r   r   zMapping[str, str | None]r   )r   s   "r   r   rp      s     
 
 8 
r   c                	    \        V P                  V P                  R 7      p\        VV P                  V P
                  V P                  R7      # ))	vault_urlrl   )r'   r(   r*   r+   )r   rg   rh   r"   r(   r1   r+   )r5   r'   s   & r   _load_env_vars*AzureKeyVaultSettingsSource._load_env_vars   sA    $tyyTEUEUV#'.."&"="=	
 	
r   c               $    V ^8  d   QhRRRRRR/# )r   fieldr   
field_namerK   r   zlist[tuple[str, str, bool]]r   )r   s   "r   r   rp      s"     > > > >Hc >r   c                	   < V P                   '       d"   \        R  \        SV `  W4       4       4      pV# V P                  '       d    \        R \        SV `  W4       4       4      # \        SV `  W4      # )c              3  T   "   T F  q^ ,          V^,          V^,          3x  K   	  R# 5i)r   Nr   r>   xs   & r   r@   BAzureKeyVaultSettingsSource._extract_field_info.<locals>.<genexpr>   s#     i:hQtQqT1Q40:hs   &(c              3  t   "   T F.  q^ ,          V^,          P                  RR4      V^,          3x  K0  	  R# 5i)r   _-N)replacer   s   & r   r@   r      s.     uFt1qt||C5qt<Fts   68)r1   listrv   _extract_field_inforu   )r5   r   r   
field_inforw   s   &&& r   r   /AzureKeyVaultSettingsSource._extract_field_info   sh    &&&i%':UV[:hiiJ###uegFabgFtuuuw*5==r   c                   V ^8  d   QhRR/# )r   r   rK   r   )r   s   "r   r   rp      s     s s# sr   c                	l    V P                   P                   R V P                  : RV P                  : R2# )z(url=z, env_nested_delimiter=))rw   r_   rg   rs   rV   s   &r   __repr__$AzureKeyVaultSettingsSource.__repr__   s4    ..))*%		}<STXTmTmSppqrrr   )rh   ru   r1   rg   )FNFNNN)r_   r`   ra   rb   rc   r6   r|   r   r   rd   __classcell__)rw   s   @r   rf   rf   i   s3    
I  
 
6
> >s sr   rf   )__doc__
__future__r   _annotationscollections.abcr   r   typingr   pydantic.alias_generatorsr   pydantic.fieldsr   envr   r   r
   r   r   r   r   pydantic_settings.mainr   r    rK   r"   rf   __all__r   r   r   <module>r      su    & 2 -   . % "6;33O L>-73d
?3 >-B3s"3 3sl "#@
Ar   