
    i,                     *   S SK r S SKrS SKrS SK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  S SK	Jr  S SK	Jr  S S	K	Jr  S S
K	Jr  S SK	Jr  S SK	Jr  S SK	Jr  S SKrS SKJr  S SKJr  S SKJrJr  S SKJr  \ R:                  " \5      rSr S/r!\"r#\"r$\"r%\"r&S\"S\\\#\$\RN                  \\S4   4      4S jr(SSS.r)S\RT                  S\\"   S\\"   S\\"   S\\"   S\+S \\"\RN                  4   S!\\\%\&4      S\\\,\"   4   4S" jr-S#\RN                  S \\"\RN                  4   S!\\\%\&4      SS4S$ jr.S%\RN                  S&\#S \\#\RN                  4   S'\\\%\&4      SS4
S( jr/S)\\%\&4   S\\0\\%\&4   4   4S* jr1S#\RN                  SS4S+ jr2g),    N)
EntryPointDistribution)entry_points)version_info)Any)Callable)Dict)List)Optional)Tuple)cast)Set)Union)Table)DefaultPlaceholder)consoleselect_from_list)__version__zanaconda_cli.subcommandcloudgroupreturnc                 6   [         R                  S:X  aN  [         R                  S::  a:  [        [        [
        S4   [        5       R                  U [        5       5      5      nO [        [        5       R                  U S95      n/ nU H}  n[        R                  " 5          [        R                  " S[        S9  UR                  5       nS S S 5        UR                  UR                   UR"                  WUR$                  45        M     U$ ! , (       d  f       NG= f)N   	   .)r   ignore)category)r   majorminorr   r   r   r   gettupleselectwarningscatch_warningsfilterwarningsDeprecationWarningloadappendnamevaluedist)r   found_entry_pointsloadedentry_pointmodules        9lib/python3.13/site-packages/anaconda_cli_base/plugins.py_load_entry_points_for_groupr0   '   s    
 Q<#5#5#:!*c/"Nueg.

 #<>#8#8u#8#EFF)$$&##H7IJ"-"2"2"4F ' 	{''):):FKDTDTUV * M '&s   *D


D	anaconda.comanaconda.org)r   orgctxathostnameusernamepasswordhelpauth_handlersauth_handlers_dropdownc                 `   U(       dd  U(       d]  U(       dV  U R                   R                  R                  SS5      (       d+  U R                   R                  R                  SS5      (       a  SnUc$  [        U5      S:  a  [	        SU5      nOUu  nUu  pX;  a[  SR                  U V	V
s/ s H
  u  pSU
 3PM     sn
n	5      nU S	U 3n[        R                  " U5        [        R                  " 5       eXa   nU(       a  S
/nX4$ US:X  a  / nU(       a  UR                  SU/5        U(       a  UR                  SU/5        U(       a  UR                  SU/5        S[        [           S[        4S jnU" / SQ5      n[        R                  SUS-    U-   [        l         [        R                  R!                  S5      n[        R                  SU [        R                  US-   S -   [        l        UnX4$ U R$                  nU[&        R(                  S'   X4$ s  sn
n	f ! ["         a     N9f = f)zSelect the appropriate auth handler, and construct its arguments, depending on
user input. Isolated to enable better testing to support legacy anaconda.org login
flows.
siteNtokenr2      zchoose destination: z
* z. is not an allowed value for --at. Use one of --helpz
--hostnamez
--usernamez
--passwordsubcommandsr   c                     SR                  U 5      nU  H#  n [        R                  R                  U5      s  $    [	        SU S35      e! [         a     MC  f = f)N/zMust use a valid subcommand '')joinsysargvindex
ValueError)rB   subcommands_strss      r/   _find_subcommand_index=_select_auth_handler_and_args.<locals>._find_subcommand_index   s^    !hh{3O 88>>!,, ! <_<MQOPP " s   A


AAloginlogoutwhoamiz--at   ANACONDA_DEFAULT_SITE)objparamsr   lenr   rF   r   printtyperAbortextendliststrintrG   rH   rI   rJ   argsosenviron)r4   r5   r6   r7   r8   r9   r:   r;   default_auth_handler_display_namehandlersmsghandlerr_   legacy_client_argsrM   subcommand_indexat_indexs                      r/   _select_auth_handler_and_argsrk   E   s"   $ 	77>>fd++77>>gt,, 
z%&*!"79OPB '=#!*GR	77:PQ:PqtL>":PQ
 B8*MckkmG zZ =Y 
~	
  %%|X&>?%%|X&>?%%|X&>?	QS	 	Qc 	Q 22OP882.236HH	xx~~f-Hxx	*SXXhln-EECH " =	 xx /1

*+=o R\  		s   *H
!AH   
H-,H-appc                   ^^ S[         R                  S[        S[        [           S[        [           4S jnT VVs/ s H  u  pEUPM	     nnn[         R
                  " S SU 3US9[         R
                  " S SS	9[         R
                  " S SS	9[         R
                  " S SS	9[         R
                  " S
SS5      4S[         R                  S[        [           S[        [           S[        [           S[        [           S[        SS 4UU4S jjjnSSSS.nS H"  n	U R                  U	SSS.SX   S9n
U
" U5        M$     g s  snnf )Nr4   rc   r5   r   c                     U R                   R                  SS5      SL nU(       a;  U R                  5       n[        R                  " U5        [
        R                  " 5       eU$ )Nr9   FT)rV   r   get_helpr   rX   rY   Exit)r4   rc   r5   	show_helphelp_strs        r/   handler_help._add_auth_actions_to_app.<locals>.handler_help   sF    JJNN651T9	||~HMM(#**,	    zChoose from )r9   callbackThiddenFrA   z-hr6   r7   r8   r9   c                   > U R                   R                  R                  S5      nU(       a  U(       a  [        S5      e[	        U U=(       d    UUUUUT	T
S9u  pxU" U R
                  R                  /UQU R                   S9$ )Nr5   z--at was specified twice)r4   r5   r6   r7   r8   r9   r:   r;   )r_   rU   )rU   rV   r   rJ   rk   commandr(   )r4   r5   r6   r7   r8   r9   ctx_atrg   r_   r:   r;   s            r/   _action)_add_auth_actions_to_app.<locals>._action   s{     ##D)b7885|'#9	
 S[[--55377CCru   zSign into Anaconda serviceszSign out from Anaconda serviceszDisplay account informationrO   )allow_extra_argsignore_unknown_optionsAuthentication)context_settingsrich_help_panelr9   )rY   Contextr   r   r]   Optionboolrz   )rl   r:   r;   rs   	site_namerc   
site_namesr|   help_docaction	decorators    ``        r/   _add_auth_actions_to_appr      sd   %-- C Xc] xPS}  1GG0F	)0FJG "LLj\2\
 #(,,tD"A"',,tD"A"',,tD"A\\%48D]]DSMD 3-D 3-D 3-D D 
D D8 /3/H .KK26RVW,!	   
	 	' .G Hs   D?subcommand_appr(   auth_handler_selectorsc                    XU'   US:X  a   SSK Jn  U" 5       nUR                  R                  R	                  5        HS  u  pgUnXgR
                  :w  a  USUR
                   S3-  nXeR                  :X  a  US-  nXU'   UR                  Xh45        MU     gUS:X  a  g[        R                  U5      =n
(       a  XU
'   UR                  X45        gg! [         a  n	U	eSn	A	ff = f)	zLoad a specific auth handler, populating the dropdown and auth_handlers
mappings as we go. This allows users to dynamically select a specific
implementation when logging in or out.
authr   )AnacondaAuthSitesConfigz ()z [cyan]\[default][/cyan]Nr   )anaconda_auth.configr   sitesrootitemsdomaindefault_siter'   ImportErrorAUTH_HANDLER_ALIASESr   )r   r(   r:   r   r   site_configr   r=   rd   ealiass              r/   _load_auth_handlerr      s     )$v~	D13K#.#4#4#9#9#?#?#A	(+ bQ$77L 8 88 $??L+9i(&--y.GH $B 
&**40	0	0-e%%un5 
1  	G	s   BC 
C!CC!itemc                 N    U u  pSU;   a  SU 4$ US:X  a  SU 4$ US:X  a  SU 4$ SU 4$ )Ndefaultr   r1   r?   r2   rS   r    )r   r(   rd   s      r/   _sort_selectorsr   
  sL     DL 4y~%4y~%4y4yru   c                 j  ^ [        [        5      n0 n/ nS[        41mU H  u  pEpgUb'  TR                  UR                  UR
                  45        [        UR                  R                  [        5      (       a  SUR                  l        SUR                   Vs/ s H  oR                  PM     sn;   a  [        XdX#5        U R                  UUU[        ;   SS9  M     U(       a0  [        U[        S9n	[!        U UU	S9  ["        R%                  S	WW5        U R'                  S
SS9SU4S jj5       n
gs  snf )z"Load all subcommands from plugins.zanaconda-cli-baseNTrP   Plugins)r(   rx   r   )key)rl   r:   r;   z Loaded subcommand '%s' from '%s'versionsrw   c                     > [        SSSS9n T H  u  pU R                  X5        M     [        R                  " U 5        [        R
                  " 5       e)NPackageVersionz
bold green)header_style)r   add_rowr   rX   rY   rp   )tablepluginversionplugin_versionss      r/   r   -load_registered_subcommands.<locals>.versionsD  sA    iF.OFMM&*  /ejjlru   )r   N)r0   PLUGIN_GROUP_NAMEr   addr(   r   
isinstanceinfono_args_is_helpr   registered_commandsr   	add_typerHIDDEN_PLUGINSsortedr   r   logdebugrz   )rl   subcommand_entry_pointsr:   r   r(   r)   r   distributioncmdr;   r   r   s              @r/   load_registered_subcommandsr     s?   :;LM35MEG	k*-O 6M1^ #!2!2L4H4H IJn))99;MNN26N/>+M+MN+MCxx+MNNm 	>)%	 	 	
 6M* !'(>O!T '#9	
 			.	
 	[[D[) *7 Os   D0)3loggingr`   rG   r"   importlib.metadatar   r   r   r   typingr   r   r	   r
   r   r   r   r   r   rY   
rich.tabler   typer.modelsr   anaconda_cli_base.consoler   r   anaconda_cli_baser   	getLogger__name__r   r   r   r]   
PluginName
ModuleNameSiteNameSiteDisplayNameTyperr0   r   r   r   r\   rk   r   r   r^   r   r   r   ru   r/   <module>r      sP    	 
  7 +             + ? )!-   

	%
JU<;M5NN
OP2  \	\ 	\ sm	\
 sm\ sm\ \ U[[()\ !x'@!AB\ 8T#Y\~<	<U[[()< !x'@!AB< 
	<~$6KK$6
$6 
EKK/0$6 !x'@!AB	$6
 
$6N
/)
*
3h/0012U[[ 2T 2ru   