Ë
    tPêjñ  ã                   óü  — d dl Z d dlmZ d dlmZmZ d dlZd dlZd dlZd dl	m
Z
 d dlmZmZmZ ddlmZ dd	lmZ  G d
„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z ej0                  «       d„ «       Zej3                  «        ej4                  dd ej6                  ddg«      dd¬«      ej8                  dej:                  ded   fd„«       «       «       Zej3                  «        ej>                  d«       ej4                  de d d!¬"«       ej4                  d#e d$d!¬"«      ej8                  dej:                  de d%e d&e fd'„«       «       «       «       «       Z!ej3                  «        ej>                  d«      ej8                  dej:                  de fd(„«       «       «       Z"ej3                  «        ej>                  d«      ej8                  dej:                  de fd)„«       «       «       Z#y)*é    N)ÚSequence)ÚFinalÚLiteral)ÚTable)ÚNotRequiredÚReadOnlyÚ	TypedDicté   )ÚCredentialsManagementClienté   )Úcli_context_valuesc                   ó$   — e Zd ZU eee      ed<   y)Ú_CredentialInfoÚcustom_llm_providerN)Ú__name__Ú
__module__Ú__qualname__r   r   ÚstrÚ__annotations__© ó    úr/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/litellm/proxy/client/cli/commands/credentials.pyr   r      s   … Ø! +¨cÑ"2Ñ3Ô3r   r   c                   ó:   — e Zd ZU eee      ed<   eee      ed<   y)Ú_CredentialItemÚcredential_nameÚcredential_infoN)r   r   r   r   r   r   r   r   r   r   r   r   r      s"   … Ø˜k¨#Ñ.Ñ/Ó/Ø˜k¨/Ñ:Ñ;Ô;r   r   c                   ó$   — e Zd ZU eee      ed<   y)Ú_CredentialsListViewÚcredentialsN)r   r   r   r   r   r   r   r   r   r   r   r      s   … Ø˜( ?Ñ3Ñ4Ô4r   r   c                   ó(   — e Zd ZU eeeef      ed<   y)Ú_JsonObjectViewÚvalueN)r   r   r   r   Údictr   Úobjectr   r   r   r   r!   r!      s   … Ø�D˜˜f˜Ñ%Ñ&Ô&r   r!   c                   ó   — e Zd ZU ee   ed<   y)Ú_JsonBodyViewÚbodyN)r   r   r   r   r$   r   r   r   r   r&   r&       s   … Ø
�6Ñ
Ôr   r&   c                   ó   — y)z/Manage credentials for the LiteLLM proxy serverNr   r   r   r   r   r   $   s   � r   z--formatÚoutput_formatÚtableÚjsonzOutput format (table or json))ÚtypeÚdefaultÚhelpÚctx)r*   r+   c           
      ó0  — t        | «      }t        |d   |d   «      }|j                  «       }t        |t        «      sJ ‚|dk(  rt        j                  |¬«       yt        d¬«      }|j                  dd¬	«       |j                  d
d¬	«       d|j                  dg «      i}|d   D ]X  }|j                  di «      }|j                  t        |j                  dd«      «      t        |j                  dd«      «      «       ŒZ t        j                  |«       y)zList all credentialsÚbase_urlÚapi_keyr+   ©ÚdataÚCredentials)ÚtitlezCredential NameÚcyan)ÚstylezCustom LLM ProviderÚgreenr   r   r   Ú r   N)r   r   ÚlistÚ
isinstancer#   ÚrichÚ
print_jsonr   Ú
add_columnÚgetÚadd_rowr   Úprint)	r/   r)   ÚcontextÚclientÚresponser*   ÚlistedÚcredÚinfos	            r   r;   r;   )   s  € ô (¨Ó,€GÜ/°¸
Ñ0CÀWÈYÑEWÓX€FØ—k‘k“m€HÜ�h¤Ô%Ð%Ð%à˜ÒÜ�‰˜XÖ&ä =Ô1ˆð 	×ÑÐ*°&ÐÔ9Ø×ÑÐ.°gÐÔ>ð 0=¸h¿l¹lÈ=ÐZ\Ó>]Ð.^ˆØ˜=Ñ)ò 	ˆDØ—8‘8Ð-¨rÓ2ˆDØ�M‰MÜ�D—H‘HÐ.°Ó3Ó4Ü�D—H‘HÐ2°BÓ7Ó8õð	ô 	�
‰
�5Õr   r   z--infoz&JSON string containing credential infoT)r,   r.   Úrequiredz--valuesz(JSON string containing credential valuesrH   Úvaluesc                 óJ  — t        | «      }t        |d   |d   «      }	 dt        j                  |«      i}dt        j                  |«      i}	 |j                  ||d   |d   «      }	t        j                  |	¬«       y# t        j                  $ r}t        j                  d|› �«      ‚d}~ww xY w# t        j                  j                  $ rÔ}t        j                  d|j                  j                  › �d¬	«       	 d
|j                  j                  «       i}
t        j                  |
d
   ¬«       t        j"                  «       ‚# t        j                  $ rA t        j                  |j                  j                   d¬	«       Y t        j"                  «       ‚w xY wd}~ww xY w)zCreate a new credentialr1   r2   r"   zInvalid JSON: Nr3   úError: HTTP T©Úerrr'   )r   r   r+   ÚloadsÚJSONDecodeErrorÚclickÚBadParameterÚcreater=   r>   ÚrequestsÚ
exceptionsÚ	HTTPErrorÚechorE   Ústatus_codeÚtextÚAbort)r/   r   rH   rJ   rC   rD   r   Úcredential_valuesÚerE   Ú
error_bodys              r   rS   rS   N   s]  € ô" (¨Ó,€GÜ/°¸
Ñ0CÀWÈYÑEWÓX€Fð7Ø3:¼D¿J¹JÀtÓ<LÐ2MˆØ5<¼d¿j¹jÈÓ>PÐ4QÐð
Ø Ÿ-™-¨¸ÈÑ9QÐSdÐelÑSmÓnˆÜ�‰˜XÖ&øô ×Ñò 7Ü× Ñ  >°!°Ð!5Ó6Ð6ûð7ûô ×Ñ×(Ñ(ò Ü�
‰
�\ !§*¡*×"8Ñ"8Ð!9Ð:ÀÕEð	2Ø06¸¿
¹
¿¹Ó8IÐ/JˆJÜ�O‰O ¨FÑ!3Õ4ô �k‰k‹mÐøô ×#Ñ#ò 	2Ü�J‰J�q—z‘z—‘¨DÖ1Ü�k‰k‹mÐð	2þðúsS   Ÿ.A> Á/B1 Á>B.ÂB)Â)B.Â1F"Ã.FÃ=5EÄ2FÅ>FÆFÆFÆFÆF"c                 óv  — t        | «      }t        |d   |d   «      }	 |j                  |«      }t        j                  |¬«       y# t
        j                  j                  $ rÔ}t        j                  d|j                  j                  › �d¬«       	 d|j                  j                  «       i}t        j                  |d   ¬«       t        j                  «       ‚# t        j                  $ rA t        j                  |j                  j                  d¬«       Y t        j                  «       ‚w xY wd}~ww xY w)	zDelete a credential by namer1   r2   r3   rL   TrM   r'   N)r   r   Údeleter=   r>   rT   rU   rV   rQ   rW   rE   rX   r+   rP   rY   rZ   )r/   r   rC   rD   rE   r\   r]   s          r   r_   r_   t   sð   € ô
 (¨Ó,€GÜ/°¸
Ñ0CÀWÈYÑEWÓX€Fð
Ø Ÿ-™-¨Ó8ˆÜ�‰˜XÖ&øÜ×Ñ×(Ñ(ò Ü�
‰
�\ !§*¡*×"8Ñ"8Ð!9Ð:ÀÕEð	2Ø06¸¿
¹
¿¹Ó8IÐ/JˆJÜ�O‰O ¨FÑ!3Õ4ô �k‰k‹mÐøô ×#Ñ#ò 	2Ü�J‰J�q—z‘z—‘¨DÖ1Ü�k‰k‹mÐð	2þðús;   Ÿ'A ÁD8Á$.D3Â5CÃD3Ã>D0ÄD3Ä/D0Ä0D3Ä3D8c                 óŒ   — t        | «      }t        |d   |d   «      }|j                  |«      }t        j                  |¬«       y)zGet a credential by namer1   r2   r3   N)r   r   r@   r=   r>   )r/   r   rC   rD   rE   s        r   r@   r@   ˆ   s>   € ô
 (¨Ó,€GÜ/°¸
Ñ0CÀWÈYÑEWÓX€FØ—j‘j Ó1€HÜ‡O�O˜Ö"r   )$r+   Úcollections.abcr   Útypingr   r   rQ   rT   r=   Ú
rich.tabler   Útyping_extensionsr   r   r	   r   r   Ú_cli_contextr   r   r   r   r!   r&   ÚgroupÚcommandÚoptionÚChoiceÚpass_contextÚContextr;   Úargumentr   rS   r_   r@   r   r   r   ú<module>rm      s7  ðÛ Ý $ß !ã Û Û Ý ß >Ñ >å 6Ý ,ô4�iô 4ô<�iô <ô
5˜9ô 5ô'�iô 'ô�Iô ð €‡�ƒñ:ó ð:ð ×ÑÓØ€‡�ØØØ	ˆ�‰�w Ð'Ó	(ØØ	(ôð ×Ñðˆe�m‰mð ¨G°OÑ,Dò ó óó ðð8 ×ÑÓØ€‡�Ð!Ó"Ø€‡�ØØ	Ø	1Øô	ð €‡�ØØ	Ø	3Øô	ð ×Ñð�—‘ð °ð ¸3ð Èò ó óóó #ó ðð. ×ÑÓØ€‡�Ð!Ó"Ø×Ñð�—‘ð °ò ó ó #ó ðð" ×ÑÓØ€‡�Ð!Ó"Ø×Ñð#ˆU�]‰]ð #¨Sò #ó ó #ó ñ#r   